summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-05 16:26:46 +0000
committerSND\shalma_cp <SND\shalma_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-10-05 16:26:46 +0000
commitc80b2c86362c8ba4524ae06b411c042fb180f59f (patch)
treec97e73429acba01da51c85fbe081289a28c52807
parent449489239322b89c5335eb936a67ec56693002bc (diff)
downloadpcsxr-c80b2c86362c8ba4524ae06b411c042fb180f59f.tar.gz
BIOS: cdriso.c
- use faster seeking times - GetStatus fix for BIOS ID (startup) git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@58103 e17a0e51-4ae3-4d35-97c3-1a29b211df97
-rw-r--r--libpcsxcore/cdriso.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/libpcsxcore/cdriso.c b/libpcsxcore/cdriso.c
index 9f1dd1a9..489c49d8 100644
--- a/libpcsxcore/cdriso.c
+++ b/libpcsxcore/cdriso.c
@@ -219,7 +219,7 @@ static void *playthread(void *param)
// BIOS CD Player: Fast forward / reverse seek
if( cdr.FastForward ) {
// ~+0.25 sec
- cddaCurOffset += CD_FRAMESIZE_RAW * 75/4;
+ cddaCurOffset += CD_FRAMESIZE_RAW * 75 * 3;
#if 0
// Bad idea: too much static
@@ -231,7 +231,7 @@ static void *playthread(void *param)
}
else if( cdr.FastBackward ) {
// ~-0.25 sec
- cddaCurOffset -= CD_FRAMESIZE_RAW * 75/4;
+ cddaCurOffset -= CD_FRAMESIZE_RAW * 75 * 3;
if( cddaCurOffset & 0x80000000 ) {
cddaCurOffset = 0;
cdr.FastBackward = 0;
@@ -918,7 +918,13 @@ static long CALLBACK ISOgetStatus(struct CdrStat *stat) {
sec2msf(sect, (u8 *)stat->Time);
if (subHandle != NULL || subChanMixed) {
- stat->Type = ti[ ((struct SubQ *) subbuffer)->TrackNumber ].type;
+ int track_no;
+
+ // BIOS - boot ID
+ track_no = ((struct SubQ *) subbuffer)->TrackNumber;
+ if( track_no == 0 ) track_no = 1;
+
+ stat->Type = ti[ track_no ].type;
}
else
stat->Type = ti[ cdr.CurTrack ].type;