summaryrefslogtreecommitdiff
path: root/libpcsxcore
diff options
context:
space:
mode:
authorSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-12 18:02:25 +0000
committerSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-12 18:02:25 +0000
commita70262ef5be8096c23f4236f719dd7eb02c8944b (patch)
tree06bb89b69cbea9abcab82c2a20cefb363838e6ee /libpcsxcore
parent9e49d5d705aa46b30419d73205ed96a82aa0879a (diff)
downloadpcsxr-a70262ef5be8096c23f4236f719dd7eb02c8944b.tar.gz
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@58348 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore')
-rw-r--r--libpcsxcore/cdrom.c54
1 files changed, 31 insertions, 23 deletions
diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c
index 1ec126da..74d85cab 100644
--- a/libpcsxcore/cdrom.c
+++ b/libpcsxcore/cdrom.c
@@ -862,12 +862,12 @@ void cdrReadInterrupt() {
if (!ret) {
SPU_playADPCMchannel(&cdr.Xa);
cdr.FirstSector = 0;
-
-
- // Crash Team Racing: music, speech
-
- // signal ADPCM data ready
- psxHu32ref(0x1070) |= SWAP32((u32)0x200);
+
+
+ // Crash Team Racing: music, speech
+
+ // signal ADPCM data ready
+ psxHu32ref(0x1070) |= SWAP32((u32)0x200);
}
else cdr.FirstSector = -1;
}
@@ -885,9 +885,9 @@ void cdrReadInterrupt() {
cdr.Readed = 0;
- // G-Police: Don't autopause ADPCM even if mode set (music)
- if ((cdr.Transfer[4 + 2] & 0x80) && (cdr.Mode & 0x2) &&
- (cdr.Transfer[4 + 2] & 0x4) != 0x4 ) { // EOF
+ // G-Police: Don't autopause ADPCM even if mode set (music)
+ if ((cdr.Transfer[4 + 2] & 0x80) && (cdr.Mode & 0x2) &&
+ (cdr.Transfer[4 + 2] & 0x4) != 0x4 ) { // EOF
#ifdef CDR_LOG
CDR_LOG("cdrReadInterrupt() Log: Autopausing read\n");
#endif
@@ -897,18 +897,26 @@ void cdrReadInterrupt() {
else {
CDREAD_INT((cdr.Mode & 0x80) ? (cdReadTime / 2) : cdReadTime);
}
-
- /*
- Hokuto no Ken 2: $A0 - return FORM1 + FORM2
- Judge Dredd: $C8 - only FORM1
- Xenogears: $C8 - only FORM1
- */
-
- if( (cdr.Mode & 0x40) == 0 || (cdr.Transfer[4+2] & 0x4) != 0x4 )
- cdr.Stat = DataReady;
- psxHu32ref(0x1070) |= SWAP32((u32)0x4);
- }
+ /*
+ Hokuto no Ken 2: $A0 - return FORM1 + FORM2
+ Judge Dredd: $C8 - only FORM1
+ Xenogears: $C8 - only FORM1
+ */
+/*
+ if( (cdr.Mode & 0x40) == 0 || (cdr.Transfer[4+2] & 0x4) != 0x4 )
+ {
+#ifdef CDR_LOG
+ CDR_LOG( "DATA READY\n" );
+#endif
+*/
+ cdr.Stat = DataReady;
+/*
+ } else {
+ cdr.Stat = Acknowledge;
+ }
+*/
+ psxHu32ref(0x1070) |= SWAP32((u32)0x4);
}
/*
@@ -1246,9 +1254,9 @@ void cdrWrite1(unsigned char rt) {
case CdlGetlocL:
cdr.Ctrl |= 0x80;
cdr.Stat = NoIntr;
-
- // G-Police: in-game music needs longer time
- AddIrqQueue(cdr.Cmd, 0x4000);
+
+ // G-Police: in-game music needs longer time
+ AddIrqQueue(cdr.Cmd, 0x4000);
break;
case CdlGetlocP: