diff --git a/plugins/spu2-x/src/Mixer.cpp b/plugins/spu2-x/src/Mixer.cpp index d539a779a0..b301d8c65d 100644 --- a/plugins/spu2-x/src/Mixer.cpp +++ b/plugins/spu2-x/src/Mixer.cpp @@ -183,10 +183,11 @@ static void __forceinline __fastcall GetNextDataBuffered( V_Core& thiscore, V_Vo { if(vc.LoopFlags & XAFLAG_LOOP_END) { + thiscore.Regs.ENDX |= (1 << voice); + if( vc.LoopFlags & XAFLAG_LOOP ) { vc.NextA=vc.LoopStartA; - thiscore.Regs.ENDX|=1<= 0 ); // ADSR should never be negative... diff --git a/plugins/spu2-x/src/Spu2.cpp b/plugins/spu2-x/src/Spu2.cpp index 5303858c2b..d5763ea730 100644 --- a/plugins/spu2-x/src/Spu2.cpp +++ b/plugins/spu2-x/src/Spu2.cpp @@ -239,7 +239,6 @@ void V_Voice::Stop() { ADSR.Value = 0; ADSR.Phase = 0; - //Cores[core].Regs.ENDX|=(1<