diff --git a/Source/Core/DSPCore/Src/DSPCore.cpp b/Source/Core/DSPCore/Src/DSPCore.cpp index c8f02fb0d9..06fe875911 100644 --- a/Source/Core/DSPCore/Src/DSPCore.cpp +++ b/Source/Core/DSPCore/Src/DSPCore.cpp @@ -223,7 +223,8 @@ int DSPCore_RunCycles(int cycles) switch (core_state) { case DSPCORE_RUNNING: -#if 1 // Set to 0 to disable breakpoints, for a speed boost. + // Seems to slow things down +#if defined(_DEBUG) || defined(DEBUGFAST) cycles = DSPInterpreter::RunCyclesDebug(cycles); #else cycles = DSPInterpreter::RunCycles(cycles); diff --git a/Source/Core/DSPCore/Src/DspIntArithmetic.cpp b/Source/Core/DSPCore/Src/DspIntArithmetic.cpp index 0a44ec26c0..4687f97b21 100644 --- a/Source/Core/DSPCore/Src/DspIntArithmetic.cpp +++ b/Source/Core/DSPCore/Src/DspIntArithmetic.cpp @@ -42,12 +42,10 @@ void clr(const UDSPInstruction& opc) // Clears $acR.l - low 16 bits of accumulator $acR. void clrl(const UDSPInstruction& opc) { - u16 reg = DSP_REG_ACL0 + ((opc.hex >> 8) & 0x1); - g_dsp.r[reg] = 0; + u8 reg = (opc.hex >> 8) & 0x1; + g_dsp.r[DSP_REG_ACL0 + reg] = 0; + Update_SR_Register64(dsp_get_long_acc(reg)); - // Should this be 64bit? - // nakee: it says the whole reg in duddie's doc sounds weird - Update_SR_Register64((s64)reg); zeroWriteBackLog(); }