X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=plugins%2Fdfsound%2Fregisters.c;h=f6c30588e3854215748fa5939073299633b51ed1;hb=174c454a98a71475b72958c9f76293af7d6fb502;hp=19a0a46b2d61d9bf696e3cd33815c71d2d537f41;hpb=6d866bb7894b252fc430a24a97769511d5ead1ca;p=pcsx_rearmed.git diff --git a/plugins/dfsound/registers.c b/plugins/dfsound/registers.c index 19a0a46b..f6c30588 100644 --- a/plugins/dfsound/registers.c +++ b/plugins/dfsound/registers.c @@ -22,7 +22,6 @@ #include "externals.h" #include "registers.h" #include "regs.h" -#include "reverb.h" /* // adsr time values (in ms) by James Higgs ... see the end of @@ -168,8 +167,9 @@ void CALLBACK SPUwriteRegister(unsigned long reg, unsigned short val) case 14: // loop? //WaitForSingleObject(s_chan[ch].hMutex,2000); // -> no multithread fuckups s_chan[ch].pLoop=spuMemC+((unsigned long)((val<<3)&~0xf)); - s_chan[ch].bIgnoreLoop=1; + //s_chan[ch].bIgnoreLoop=1; //ReleaseMutex(s_chan[ch].hMutex); // -> oki, on with the thread + dwChannelDead&=~(1<>4)-0xc0; - if(s_chan[ch].pLoop==NULL) return 0; return (unsigned short)((s_chan[ch].pLoop-spuMemC)>>3); } } @@ -436,6 +430,7 @@ void SoundOn(int start,int end,unsigned short val) // SOUND ON PSX COMAND dwNewChannel|=(1< turn off fmod + if(ch>0&&s_chan[ch-1].bFMod==2) + s_chan[ch-1].bFMod=0; } } }