Fixed the DSP LLE debugger, it also automatically shows the disassembly on image load.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2998 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
XTra.KrazzY 2009-04-18 19:06:47 +00:00
parent ab5354d644
commit 5f0ac1db68
4 changed files with 17 additions and 12 deletions

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Version="9.00"
Name="Plugin_DSP_LLE"
ProjectGUID="{3D8156A9-64D1-4C8E-ADBE-1B319030E4A4}"
RootNamespace="Plugin_DSP_LLE"
@ -583,10 +583,6 @@
/>
</References>
<Files>
<Filter
Name="DSP"
>
</Filter>
<Filter
Name="Logging"
>

View File

@ -93,8 +93,7 @@ void DSPDebuggerLLE::CreateGUIControls()
void DSPDebuggerLLE::OnClose(wxCloseEvent& event)
{
wxWindow::Destroy();
event.Skip();
Hide();
}
void DSPDebuggerLLE::OnChangeState(wxCommandEvent& event)
@ -218,7 +217,6 @@ void DSPDebuggerLLE::RebuildDisAsmListView()
char Temp2[256];
sprintf(Temp2, "0x%04x", dsp_imem_read(CurrentPC));
AssemblerSettings settings;
DSPDisassembler disasm(settings);
std::string op_str;
disasm.DisOpcode(binbuf, 2, &settings.pc, &op_str);

View File

@ -54,6 +54,7 @@ public:
bool CanDoStep();
void DebugBreak();
void Refresh();
private:
DECLARE_EVENT_TABLE();
@ -153,7 +154,6 @@ private:
void OnDoubleClick(wxListEvent& event);
void CreateGUIControls();
void Refresh();
void FocusOnPC();
void UnselectAll();
};

View File

@ -162,8 +162,13 @@ void DoState(unsigned char **ptr, int mode)
void DllDebugger(HWND _hParent, bool Show)
{
#if defined(HAVE_WX) && HAVE_WX
DSPDebuggerLLE *debugger = new DSPDebuggerLLE(NULL);
debugger->Show();
if(!m_DebuggerFrame)
m_DebuggerFrame = new DSPDebuggerLLE(NULL);
if(Show)
m_DebuggerFrame->Show();
else
m_DebuggerFrame->Hide();
#endif
}
@ -181,7 +186,8 @@ THREAD_RETURN dsp_thread(void* lpParameter)
void DSP_DebugBreak()
{
#if defined(HAVE_WX) && HAVE_WX
m_DebuggerFrame->DebugBreak();
if(m_DebuggerFrame)
m_DebuggerFrame->DebugBreak();
#endif
}
@ -233,6 +239,11 @@ void Initialize(void *init)
g_hDSPThread = new Common::Thread(dsp_thread, NULL);
}
soundStream = AudioCommon::InitSoundStream();
#if defined(HAVE_WX) && HAVE_WX
if(m_DebuggerFrame)
m_DebuggerFrame->Refresh();
#endif
}
void DSP_StopSoundStream()