From: "Luke Bishop" <lbishop AT calvin DOT stemnet DOT nf DOT ca>
Newsgroups: comp.os.msdos.djgpp
Subject: RE: Locked Streams In Allegro
Date: 8 Mar 1998 22:55:30 GMT
Organization: The Zone
Lines: 11
Message-ID: <01bd4a2b$dbc657e0$2d48a5c6@technoid>
NNTP-Posting-Host: n072h045.thezone.net
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Precedence: bulk

	OK, I found a way (I think) to avoid the need for an interrupt-based
stream.  All I need to do is use a LARGE buffer (about 500K ought to do...)
and fill it BETWEEN INDIVIDUAL FRAMES.  Because the sound status will never
change mid-frame, all the same sounds will need to be played.  Then, when
the between frame callback is called, it OVERWRITES the old frame-data just
slightly (0.05 seconds) ahead of the playing position with the new frame's
sound data.  A special routine will monitor the use of the stream and
adjust the refills to avoid 'studdering' or alternately choppyness.  It IS
complicated and needs its own type of stream (the default ALLEGRO one will
not work) but it should do the trick.