X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfsound%2Fspu.c;h=bea8414e80e8e11f7c4bb023c5bd31d53af082e4;hp=36ac018b3a900154eb6dc73f87f32cc33d220db8;hb=587fa7de9b496a0b7fa1d52d393733886602ca83;hpb=b17618c006c1a79ea0aa38c5e452a384f7f2bc95 diff --git a/plugins/dfsound/spu.c b/plugins/dfsound/spu.c index 36ac018b..bea8414e 100644 --- a/plugins/dfsound/spu.c +++ b/plugins/dfsound/spu.c @@ -762,6 +762,8 @@ static void *MAINThread(void *arg) bIRQReturn=1; lastch=ch; lastns=ns_to=d; + if(d==0) + break; } MixADSR(ch, ns_from, ns_to); @@ -794,7 +796,8 @@ static void *MAINThread(void *arg) { unsigned char *start=s_chan[ch].pCurr; - bIRQReturn |= skip_block(ch); + // no need for bIRQReturn since the channel is silent + iSpuAsyncWait |= skip_block(ch); if(start == s_chan[ch].pCurr) { // looping on self