summaryrefslogtreecommitdiff
path: root/libpcsxcore/cdrom.c
diff options
context:
space:
mode:
authorSND\dario86_cp <SND\dario86_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2014-02-26 19:59:12 +0000
committerSND\dario86_cp <SND\dario86_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2014-02-26 19:59:12 +0000
commitfb2006a065129496c7f223ccab2008be4da4b8f8 (patch)
tree4c4da2012cdc779e46bcb01a486a9a1d218d846f /libpcsxcore/cdrom.c
parentb2a6f1a70027737fd34df818be1310ca1d965234 (diff)
downloadpcsxr-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-xlibpcsxcore/cdrom.c5
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;