summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authornakeee <nakeee@gmail.com>2009-06-30 10:33:08 +0000
committernakeee <nakeee@gmail.com>2009-06-30 10:33:08 +0000
commit22aa9128ee81f2340a0ca44b47b75047ce2cdcc6 (patch)
tree09759e37109b4dde4548f12ad4d99110e11d537f /Source
parent292b3f675f16e7e2ca98f884787607928460cc47 (diff)
DSPLLE enabled int on reset
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3622 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/DSPCore/Src/DSPCore.cpp6
-rw-r--r--Source/Core/DSPCore/Src/DSPCore.h1
2 files changed, 2 insertions, 5 deletions
diff --git a/Source/Core/DSPCore/Src/DSPCore.cpp b/Source/Core/DSPCore/Src/DSPCore.cpp
index 3217bf0fb8..35e7255039 100644
--- a/Source/Core/DSPCore/Src/DSPCore.cpp
+++ b/Source/Core/DSPCore/Src/DSPCore.cpp
@@ -137,10 +137,8 @@ void DSPCore_Shutdown()
void DSPCore_Reset()
{
- _assert_msg_(MASTER_LOG, !g_dsp.exception_in_progress_hack, "reset while exception");
g_dsp.pc = DSP_RESET_VECTOR;
- g_dsp.exception_in_progress_hack = false;
-
+ g_dsp.r[DSP_REG_SR] |= SR_INT_ENABLE;
g_dsp.r[DSP_REG_WR0] = 0xffff;
g_dsp.r[DSP_REG_WR1] = 0xffff;
g_dsp.r[DSP_REG_WR2] = 0xffff;
@@ -160,7 +158,7 @@ void DSPCore_CheckExternalInterrupt()
if (dsp_SR_is_flag_set(SR_INT_ENABLE))
{
// level 7 is the interrupt exception. is it?
- // DSPCore_SetException(7);
+ DSPCore_SetException(7);
g_dsp.cr &= ~CR_EXTERNAL_INT;
}
}
diff --git a/Source/Core/DSPCore/Src/DSPCore.h b/Source/Core/DSPCore/Src/DSPCore.h
index eab5773c03..2d88a8ccae 100644
--- a/Source/Core/DSPCore/Src/DSPCore.h
+++ b/Source/Core/DSPCore/Src/DSPCore.h
@@ -178,7 +178,6 @@ struct SDSP
u8 reg_stack_ptr[4];
u8 exceptions; // pending exceptions?
- bool exception_in_progress_hack; // is this the same as "exception enabled"?
// Let's make stack depth 32 for now. The real DSP has different depths
// for the different stacks, but it would be strange if any ucode relied on stack