X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fcdrom.c;fp=libpcsxcore%2Fcdrom.c;h=1615e1867ddfbbd9b9ded85a7235523d348d3c04;hb=2f326fa15ff26df057ef10da232ebc07a410803a;hp=83a6de04dad8743f4e89a9b1afdc93901c82ffed;hpb=98c546239bc51eecf56e00e10fd98fa3f79dd221;p=pcsx_rearmed.git diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c index 83a6de04..1615e186 100644 --- a/libpcsxcore/cdrom.c +++ b/libpcsxcore/cdrom.c @@ -583,19 +583,15 @@ static int cdrSeekTime(unsigned char *target) int cyclesSinceRS = psxRegs.cycle - cdr.LastReadSeekCycles; seekTime = MAX_VALUE(seekTime, 20000); - // need this stupidly long penalty or else Spyro2 intro desyncs - // note: if misapplied this breaks MGS cutscenes among other things - if (cdr.DriveState == DRIVESTATE_PAUSED && cyclesSinceRS > cdReadTime * 50) - seekTime += cdReadTime * 25; // Transformers Beast Wars Transmetals does Setloc(x),SeekL,Setloc(x),ReadN // and then wants some slack time - else if (cdr.DriveState == DRIVESTATE_PAUSED || cyclesSinceRS < cdReadTime *3/2) + if (cdr.DriveState == DRIVESTATE_PAUSED || cyclesSinceRS < cdReadTime *3/2) seekTime += cdReadTime; seekTime = MIN_VALUE(seekTime, PSXCLK * 2 / 3); - CDR_LOG("seek: %.2f %.2f (%.2f) st %d\n", (float)seekTime / PSXCLK, + CDR_LOG("seek: %.2f %.2f (%.2f) st %d di %d\n", (float)seekTime / PSXCLK, (float)seekTime / cdReadTime, (float)cyclesSinceRS / cdReadTime, - cdr.DriveState); + cdr.DriveState, diff); return seekTime; }