summaryrefslogtreecommitdiff
path: root/libpcsxcore/cdrom.c
diff options
context:
space:
mode:
authorSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-30 13:25:46 +0000
committerSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-30 13:25:46 +0000
commit275e41b282b624fd530befeb140275d3963841f0 (patch)
treeb8c37c951be549c265b991ac125ffeb50a5022ed /libpcsxcore/cdrom.c
parent23a47828f4e274b24bf1a2c120471acba32402c7 (diff)
downloadpcsxr-275e41b282b624fd530befeb140275d3963841f0.tar.gz
cdrom.c
- seperate burst from normal dma - Burst used in Rebel Assault 2 mission select git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@58922 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/cdrom.c')
-rw-r--r--libpcsxcore/cdrom.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c
index 44a3b9ed..af770d12 100644
--- a/libpcsxcore/cdrom.c
+++ b/libpcsxcore/cdrom.c
@@ -1438,6 +1438,11 @@ void cdrWrite3(unsigned char rt) {
case 0x00:
cdr.pTransfer += 12;
break;
+
+ case 0x20:
+ cdr.pTransfer += 0;
+ break;
+
default:
break;
}
@@ -1492,7 +1497,14 @@ void psxDma3(u32 madr, u32 bcr, u32 chcr) {
psxCpu->Clear(madr, cdsize / 4);
cdr.pTransfer += cdsize;
- CDRDMA_INT( cdsize / 4 );
+
+ // burst vs normal
+ if( chcr == 0x11400100 ) {
+ CDRDMA_INT( (cdsize/4) / 4 );
+ }
+ else if( chcr == 0x11000000 ) {
+ CDRDMA_INT( (cdsize/4) * 1 );
+ }
return;
default: