aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authornotaz2014-12-21 02:20:41 +0200
committernotaz2014-12-21 02:31:24 +0200
commitbdd050c3ed792381df2e744fee5b7ee80b93fd68 (patch)
tree39c7d34f94ae90e890cdf1ae9a0f5d14e88cb5c1 /plugins
parentc4c66b22ae607aa8dc5e6983f7ab030ead01faae (diff)
downloadpcsx_rearmed-bdd050c3ed792381df2e744fee5b7ee80b93fd68.tar.gz
pcsx_rearmed-bdd050c3ed792381df2e744fee5b7ee80b93fd68.tar.bz2
pcsx_rearmed-bdd050c3ed792381df2e744fee5b7ee80b93fd68.zip
spu: fix first sample, don't play ahead
Diffstat (limited to 'plugins')
-rw-r--r--plugins/dfsound/spu.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/plugins/dfsound/spu.c b/plugins/dfsound/spu.c
index 2c13ca1..835555d 100644
--- a/plugins/dfsound/spu.c
+++ b/plugins/dfsound/spu.c
@@ -5,7 +5,7 @@
copyright : (C) 2002 by Pete Bernert
email : BlackDove@addcom.de
- Portions (C) Gražvydas "notaz" Ignotas, 2010-2012
+ Portions (C) Gražvydas "notaz" Ignotas, 2010-2012,2014
***************************************************************************/
/***************************************************************************
@@ -253,14 +253,13 @@ INLINE void StartSound(int ch)
s_chan[ch].SB[26]=0; // init mixing vars
s_chan[ch].SB[27]=0;
- s_chan[ch].iSBPos=28;
+ s_chan[ch].iSBPos=27;
+ s_chan[ch].SB[28]=0;
s_chan[ch].SB[29]=0; // init our interpolation helpers
s_chan[ch].SB[30]=0;
-
- if(spu_config.iUseInterpolation>=2) // gauss interpolation?
- {s_chan[ch].spos=0x30000L;s_chan[ch].SB[28]=0;} // -> start with more decoding
- else {s_chan[ch].spos=0x10000L;s_chan[ch].SB[31]=0;} // -> no/simple interpolation starts with one 44100 decoding
+ s_chan[ch].SB[31]=0;
+ s_chan[ch].spos=0;
spu.dwNewChannel&=~(1<<ch); // clear new channel bit
}