summaryrefslogtreecommitdiff
path: root/Source/Core/DSPCore
diff options
context:
space:
mode:
authornakeee <nakeee@gmail.com>2009-07-05 10:17:52 +0000
committernakeee <nakeee@gmail.com>2009-07-05 10:17:52 +0000
commitdf3abc6a2a7bb30015b9c21d276b0c8320efae00 (patch)
treea62ab0e5b562af1e1662e8abbc2d900da35ca108 /Source/Core/DSPCore
parentd3d65d20305580cd427330e2ca78904734498595 (diff)
DSPLLE: small loop fix (ector pls take a look)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3679 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DSPCore')
-rw-r--r--Source/Core/DSPCore/Src/DSPInterpreter.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/Source/Core/DSPCore/Src/DSPInterpreter.cpp b/Source/Core/DSPCore/Src/DSPInterpreter.cpp
index e054c61237..a04e0654ea 100644
--- a/Source/Core/DSPCore/Src/DSPInterpreter.cpp
+++ b/Source/Core/DSPCore/Src/DSPInterpreter.cpp
@@ -80,11 +80,7 @@ void HandleLoop()
const u16 rCallAddress = g_dsp.r[DSP_REG_ST0];
const u16 rLoopAddress = g_dsp.r[DSP_REG_ST2];
- // This does not always work correctly!
- // The loop end tends to point to the second part of
- // two-byte instructions!
- // 0179 1104 019f bloopi #0x04, 0x019f in zelda, for example
- if (g_dsp.pc == (rLoopAddress + 1))
+ if (g_dsp.pc == (rLoopAddress + opSize[rLoopAddress]))
{
rLoopCounter--;
if (rLoopCounter > 0)