diff options
| author | SND\dario86_cp <SND\dario86_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2014-02-26 19:59:12 +0000 |
|---|---|---|
| committer | SND\dario86_cp <SND\dario86_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2014-02-26 19:59:12 +0000 |
| commit | fb2006a065129496c7f223ccab2008be4da4b8f8 (patch) | |
| tree | 4c4da2012cdc779e46bcb01a486a9a1d218d846f /libpcsxcore/cdrom.c | |
| parent | b2a6f1a70027737fd34df818be1310ca1d965234 (diff) | |
| download | pcsxr-fb2006a065129496c7f223ccab2008be4da4b8f8.tar.gz | |
- fixed region autodetection for some rare discs;
- fixed copy protection regression in r82129 by notaz from one year ago; I hope this won't break anything (issue #11594).
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@89219 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/cdrom.c')
| -rwxr-xr-x | libpcsxcore/cdrom.c | 5 |
1 files changed, 2 insertions, 3 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; |
