X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=libpcsxcore%2Fcdrom.c;h=33b76fabb0cf20369ba2ac5fe5aae61890910590;hp=87a7c198c0849ca9be28eee37d78bb63634f4f21;hb=4feed8d3c6c867a45cae54fa7399041c3b5dd2c1;hpb=9f21ebfe5570056501063c4165a0debf880f534f diff --git a/libpcsxcore/cdrom.c b/libpcsxcore/cdrom.c index 87a7c198..33b76fab 100644 --- a/libpcsxcore/cdrom.c +++ b/libpcsxcore/cdrom.c @@ -1905,9 +1905,10 @@ void cdrWrite3(unsigned char rt) { if (cdr.Reading && !cdr.ResultReady) { int left = psxRegs.intCycle[PSXINT_CDREAD].sCycle + psxRegs.intCycle[PSXINT_CDREAD].cycle - psxRegs.cycle; int time = (cdr.Mode & MODE_SPEED) ? (cdReadTime / 2) : cdReadTime; - if (left < time / 2) { // rearmed guesswork hack - //printf("-- resched %d -> %d\n", left, time / 2); - CDREAD_INT(time / 2); + if (Config.CdrReschedule != 2) + if (left < time / 2 || Config.CdrReschedule) { // rearmed guesswork hack + //printf("-- resched %d -> %d\n", left, time); + CDREAD_INT(time); } }