mirror of https://github.com/PCSX2/pcsx2.git
IOP DMA: Only acknowledge SPU2 DMA interrupt if DMA hasn't been cancelled
Fixes Gregory Horror Show bad audio
This commit is contained in:
parent
3b771a6a94
commit
c998a51f71
|
@ -103,8 +103,11 @@ void spu2DMA4Irq()
|
||||||
Console.Warning("spu2DMA4Irq()");
|
Console.Warning("spu2DMA4Irq()");
|
||||||
#endif
|
#endif
|
||||||
SPU2interruptDMA4();
|
SPU2interruptDMA4();
|
||||||
HW_DMA4_CHCR &= ~0x01000000;
|
if (HW_DMA4_CHCR & 0x01000000)
|
||||||
psxDmaInterrupt(4);
|
{
|
||||||
|
HW_DMA4_CHCR &= ~0x01000000;
|
||||||
|
psxDmaInterrupt(4);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void psxDma7(u32 madr, u32 bcr, u32 chcr) // SPU2's Core 1
|
void psxDma7(u32 madr, u32 bcr, u32 chcr) // SPU2's Core 1
|
||||||
|
@ -128,8 +131,11 @@ void spu2DMA7Irq()
|
||||||
Console.Warning("spu2DMA7Irq()");
|
Console.Warning("spu2DMA7Irq()");
|
||||||
#endif
|
#endif
|
||||||
SPU2interruptDMA7();
|
SPU2interruptDMA7();
|
||||||
HW_DMA7_CHCR &= ~0x01000000;
|
if (HW_DMA7_CHCR & 0x01000000)
|
||||||
psxDmaInterrupt2(0);
|
{
|
||||||
|
HW_DMA7_CHCR &= ~0x01000000;
|
||||||
|
psxDmaInterrupt2(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef DISABLE_PSX_GPU_DMAS
|
#ifndef DISABLE_PSX_GPU_DMAS
|
||||||
|
|
Loading…
Reference in New Issue