summaryrefslogtreecommitdiff
path: root/Source/Core/DSPCore
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/DSPCore')
-rw-r--r--Source/Core/DSPCore/Src/DSPCore.cpp3
-rw-r--r--Source/Core/DSPCore/Src/DspIntArithmetic.cpp8
2 files changed, 5 insertions, 6 deletions
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();
}