diff options
Diffstat (limited to 'libpcsxcore/cdrom.c')
-rw-r--r-- | libpcsxcore/cdrom.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c index 3a2eb1f..556b512 100644 --- a/libpcsxcore/cdrom.c +++ b/libpcsxcore/cdrom.c @@ -1413,13 +1413,15 @@ void psxDma3(u32 madr, u32 bcr, u32 chcr) { psxCpu->Clear(madr, cdsize / 4); pTransfer += cdsize; - - // burst vs normal if( chcr == 0x11400100 ) { + HW_DMA3_MADR = SWAPu32(madr + cdsize); CDRDMA_INT( (cdsize/4) / 4 ); } else if( chcr == 0x11000000 ) { - CDRDMA_INT( (cdsize/4) * 1 ); + // CDRDMA_INT( (cdsize/4) * 1 ); + // halted + psxRegs.cycle += (cdsize/4) * 24/2; + CDRDMA_INT(16); } return; |