diff options
| author | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2013-02-12 13:09:27 +0000 |
|---|---|---|
| committer | SND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2013-02-12 13:09:27 +0000 |
| commit | d9504fef70f8c9f371fdd210b1c38502aee6e097 (patch) | |
| tree | fe58e3ea21aeaf829e8d5bb2a208cb81a4ee4a54 /plugins/dfsound/spu.c | |
| parent | 720d4be596d3aa7529d9e97eacb744e90b4a8e3f (diff) | |
| download | pcsxr-d9504fef70f8c9f371fdd210b1c38502aee6e097.tar.gz | |
Patch 13831, Castlevania Chronicles fix (ckain);
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@82818 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'plugins/dfsound/spu.c')
| -rwxr-xr-x | plugins/dfsound/spu.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/plugins/dfsound/spu.c b/plugins/dfsound/spu.c index 6d2564e4..5a28dafe 100755 --- a/plugins/dfsound/spu.c +++ b/plugins/dfsound/spu.c @@ -732,9 +732,10 @@ static void *MAINThread(void *arg) //////////////////////////////////////////// irq check #if 1 - // ?? (-8) - if( Check_IRQ( (start-spuMemC)-8, 0 ) || - Check_IRQ( (start-spuMemC)-0, 0 ) ) + // Check channel/loop IRQs (e.g. Castlevania Chronicles) and at pos-8 for unknown reason + if( Check_IRQ( (s_chan[ch].pCurr)-spuMemC, 0 ) || + Check_IRQ( (start-spuMemC)-0, 0 ) || + Check_IRQ( (start-spuMemC)-8, 0 ) ) { #else if(irqCallback && (spuCtrl&0x40)) // some callback and irq active? @@ -747,7 +748,7 @@ static void *MAINThread(void *arg) #endif { s_chan[ch].iIrqDone=1; // -> debug flag - irqCallback(); // -> call main emu + //irqCallback(); // -> call main emu (checked & called on Check_IRQ) if(iSPUIRQWait) // -> option: wait after irq for main emu { |
