summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-12-19 17:02:57 +0000
committerSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-12-19 17:02:57 +0000
commit7e22403d70784ed92dabde8badb71b9ed730404d (patch)
treedaf1a446f94871083b0a095e06fd7bb99f950964
parent42b45ab2a55567f160e6318f0a1975ac80f0a5ce (diff)
downloadpcsxr-7e22403d70784ed92dabde8badb71b9ed730404d.tar.gz
cdriso.c
- (utunnels) 2048 tweaks git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@61321 e17a0e51-4ae3-4d35-97c3-1a29b211df97
-rw-r--r--libpcsxcore/cdriso.c27
1 files changed, 15 insertions, 12 deletions
diff --git a/libpcsxcore/cdriso.c b/libpcsxcore/cdriso.c
index a19ddd72..ebeb0c93 100644
--- a/libpcsxcore/cdriso.c
+++ b/libpcsxcore/cdriso.c
@@ -805,7 +805,8 @@ static long CALLBACK ISOopen(void) {
cddaBigEndian = FALSE;
subChanMixed = FALSE;
- subChanRaw = FALSE;
+ subChanRaw = FALSE;
+ isMode1ISO = FALSE;
if (parseccd(GetIsoFile()) == 0) {
SysPrintf("[+ccd]");
@@ -945,17 +946,19 @@ static long CALLBACK ISOreadTrack(unsigned char *time) {
if (subChanRaw) DecodeRawSubData();
}
- else if(isMode1ISO) {
- fseek(cdHandle, MSF2SECT(btoi(time[0]), btoi(time[1]), btoi(time[2])) * MODE1_DATA_SIZE, SEEK_SET);
- fread(cdbuffer + 12, 1, MODE1_DATA_SIZE, cdHandle);
- memset(cdbuffer, 0, 12); //not really necessary, fake mode 2 header
- cdbuffer[0] = (time[0]);
- cdbuffer[1] = (time[1]);
- cdbuffer[2] = (time[2]);
- cdbuffer[3] = 1; //mode 1
- } else {
- fseek(cdHandle, MSF2SECT(btoi(time[0]), btoi(time[1]), btoi(time[2])) * CD_FRAMESIZE_RAW + 12, SEEK_SET);
- fread(cdbuffer, 1, DATA_SIZE, cdHandle);
+ else {
+ if(isMode1ISO) {
+ fseek(cdHandle, MSF2SECT(btoi(time[0]), btoi(time[1]), btoi(time[2])) * MODE1_DATA_SIZE, SEEK_SET);
+ fread(cdbuffer + 12, 1, MODE1_DATA_SIZE, cdHandle);
+ memset(cdbuffer, 0, 12); //not really necessary, fake mode 2 header
+ cdbuffer[0] = (time[0]);
+ cdbuffer[1] = (time[1]);
+ cdbuffer[2] = (time[2]);
+ cdbuffer[3] = 1; //mode 1
+ } else {
+ fseek(cdHandle, MSF2SECT(btoi(time[0]), btoi(time[1]), btoi(time[2])) * CD_FRAMESIZE_RAW + 12, SEEK_SET);
+ fread(cdbuffer, 1, DATA_SIZE, cdHandle);
+ }
if (subHandle != NULL) {
fseek(subHandle, MSF2SECT(btoi(time[0]), btoi(time[1]), btoi(time[2])) * SUB_FRAMESIZE, SEEK_SET);