diff options
Diffstat (limited to 'libpcsxcore')
| -rwxr-xr-x | libpcsxcore/cdrom.c | 5 | ||||
| -rwxr-xr-x | libpcsxcore/misc.c | 8 |
2 files changed, 6 insertions, 7 deletions
diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c index 2cac3a75..69d665a6 100755 --- a/libpcsxcore/cdrom.c +++ b/libpcsxcore/cdrom.c @@ -445,9 +445,6 @@ static void ReadTrack(const u8 *time) { cdr.RErr = CDR_readTrack(tmp); memcpy(cdr.Prev, tmp, 3); - if (CheckSBI(time)) - return; - subq = (struct SubQ *)CDR_getBufferSub(); if (subq != NULL && cdr.CurTrack == 1) { crc = calcCrc((u8 *)subq + 12, 10); @@ -851,6 +848,8 @@ void cdrInterrupt() { SetResultSize(8); memcpy(&cdr.Result, &cdr.subq, 8); + if (!cdr.Play && CheckSBI(cdr.Result+5)) + memset(cdr.Result+2, 0, 6); if (!cdr.Play && !cdr.Reading) cdr.Result[1] = 0; // HACK? break; diff --git a/libpcsxcore/misc.c b/libpcsxcore/misc.c index 152123a4..02b28467 100755 --- a/libpcsxcore/misc.c +++ b/libpcsxcore/misc.c @@ -337,10 +337,10 @@ int CheckCdrom() { if (Config.PsxAuto) { // autodetect system (pal or ntsc) if((CdromId[2] == 'e') || (CdromId[2] == 'E') || - !strncmp(CdromId, "\0DTLS3035", 10) || - !strncmp(CdromId, "PBPX95001", 10) || // according to redump.org, these PAL - !strncmp(CdromId, "PBPX95007", 10) || // discs have a non-standard ID; - !strncmp(CdromId, "PBPX95008", 10)) // add more serials if they are discovered. + !strncmp(CdromId, "DTLS3035", 8) || + !strncmp(CdromId, "PBPX95001", 9) || // according to redump.org, these PAL + !strncmp(CdromId, "PBPX95007", 9) || // discs have a non-standard ID; + !strncmp(CdromId, "PBPX95008", 9)) // add more serials if they are discovered. Config.PsxType = PSX_TYPE_PAL; // pal else Config.PsxType = PSX_TYPE_NTSC; // ntsc } |
