From: Eric B. <ebo...@us...> - 2001-09-22 08:58:50
|
Update of /cvsroot/alleg/allegro/src/win In directory usw-pr-cvs1:/tmp/cvs-serv786/src/win Modified Files: wdsound.c Log Message: Javier contributed the backward playing support for the DirectSound driver Index: wdsound.c =================================================================== RCS file: /cvsroot/alleg/allegro/src/win/wdsound.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- wdsound.c 2001/08/19 09:00:06 1.22 +++ wdsound.c 2001/09/22 08:58:47 1.23 @@ -12,10 +12,12 @@ * * By Stefan Schimanski. * - * Various bugfixes by Patrick Hogan and Javier Gonzalez. + * Various bugfixes by Patrick Hogan. * * Custom loop points support added by Eric Botcazou. * + * Backward playing support and bugfixes by Javier Gonzalez. + * * See readme.txt for copyright information. [...457 lines suppressed...] } } if (ds_voices[voice].ds_buffer) { + pos = position; + + if (ds_voices[voice].reversed) + pos = ds_voices[voice].len - 1 - pos; + hr = IDirectSoundBuffer_SetCurrentPosition(ds_voices[voice].ds_buffer, - position * ds_voices[voice].bytes_per_sample); + pos * ds_voices[voice].bytes_per_sample); if (FAILED(hr)) { _TRACE("digi_directsound_set_position() failed (%s).\n", ds_err(hr)); } @@ -979,3 +1086,4 @@ IDirectSoundBuffer_SetPan(ds_voices[voice].ds_loop_buffer, ds_pan); } } + |