X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfsound%2Fadsr.c;h=387a83b24ad08125d955abb00a953b241c1ed4f1;hp=2496e461a2cb5e45f39b979f5b0a8bdbba559948;hb=9098b863732585e49d22dba266c4f342ed1ecaa6;hpb=ef79bbde537d6b9c745a7d86cb9df1d04c35590d diff --git a/plugins/dfsound/adsr.c b/plugins/dfsound/adsr.c index 2496e461..387a83b2 100644 --- a/plugins/dfsound/adsr.c +++ b/plugins/dfsound/adsr.c @@ -86,7 +86,10 @@ INLINE int MixADSR(int ch) // MIX ADSR if(s_chan[ch].ADSRX.EnvelopeVol<0) { s_chan[ch].ADSRX.EnvelopeVol=0; - s_chan[ch].bOn=0; + // don't stop if this chan can still cause irqs + if(!(spuCtrl&0x40) || (s_chan[ch].pCurr > pSpuIrq && s_chan[ch].pLoop > pSpuIrq)) + //s_chan[ch].bOn=0; + s_chan[ch].pCurr=(unsigned char *)-1; //s_chan[ch].bReverb=0; //s_chan[ch].bNoise=0; }