psxinterpreter: use cycle_multiplier also
[pcsx_rearmed.git] / libpcsxcore / r3000a.c
index ba22d45..d8268e2 100644 (file)
@@ -61,6 +61,7 @@ void psxReset() {
        psxRegs.CP0.r[12] = 0x10900000; // COP0 enabled | BEV = 1 | TS = 1
        psxRegs.CP0.r[15] = 0x00000002; // PRevID = Revision ID, same as R3000A
 
+       psxCpu->ApplyConfig();
        psxCpu->Reset();
 
        psxHwReset();
@@ -123,7 +124,7 @@ void psxBranchTest() {
                psxRcntUpdate();
 
        if (psxRegs.interrupt) {
-               if ((psxRegs.interrupt & (1 << PSXINT_SIO)) && !Config.Sio) { // sio
+               if ((psxRegs.interrupt & (1 << PSXINT_SIO))) { // sio
                        if ((psxRegs.cycle - psxRegs.intCycle[PSXINT_SIO].sCycle) >= psxRegs.intCycle[PSXINT_SIO].cycle) {
                                psxRegs.interrupt &= ~(1 << PSXINT_SIO);
                                sioInterrupt();
@@ -138,7 +139,7 @@ void psxBranchTest() {
                if (psxRegs.interrupt & (1 << PSXINT_CDREAD)) { // cdr read
                        if ((psxRegs.cycle - psxRegs.intCycle[PSXINT_CDREAD].sCycle) >= psxRegs.intCycle[PSXINT_CDREAD].cycle) {
                                psxRegs.interrupt &= ~(1 << PSXINT_CDREAD);
-                               cdrPlaySeekReadInterrupt();
+                               cdrPlayReadInterrupt();
                        }
                }
                if (psxRegs.interrupt & (1 << PSXINT_GPUDMA)) { // gpu dma