diff options
| author | SND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-10-30 13:25:46 +0000 |
|---|---|---|
| committer | SND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-10-30 13:25:46 +0000 |
| commit | 275e41b282b624fd530befeb140275d3963841f0 (patch) | |
| tree | b8c37c951be549c265b991ac125ffeb50a5022ed /libpcsxcore/cdrom.c | |
| parent | 23a47828f4e274b24bf1a2c120471acba32402c7 (diff) | |
| download | pcsxr-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.c | 14 |
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: |
