Fix the DSPLLE debugger window.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7007 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Glenn Rice 2011-01-31 04:36:49 +00:00
parent 424b8fd6b3
commit b6251ba674
10 changed files with 24 additions and 19 deletions

View File

@ -251,7 +251,7 @@ int DSPCore_RunCycles(int cycles)
if (dspjit)
{
cyclesLeft = cycles;
CompiledCode pExecAddr = (CompiledCode)dspjit->enterDispatcher;
DSPCompiledCode pExecAddr = (DSPCompiledCode)dspjit->enterDispatcher;
pExecAddr();
if (g_dsp.external_interrupt_waiting)

View File

@ -37,7 +37,7 @@ DSPEmitter::DSPEmitter() : gpr(*this), storeIndex(-1), storeIndex2(-1)
AllocCodeSpace(COMPILED_CODE_SIZE);
blocks = new CompiledCode[MAX_BLOCKS];
blocks = new DSPCompiledCode[MAX_BLOCKS];
blockLinks = new Block[MAX_BLOCKS];
blockSize = new u16[MAX_BLOCKS];
unresolvedJumps = new std::list<u16>[MAX_BLOCKS];
@ -52,7 +52,7 @@ DSPEmitter::DSPEmitter() : gpr(*this), storeIndex(-1), storeIndex2(-1)
//clear all of the block references
for(int i = 0x0000; i < MAX_BLOCKS; i++)
{
blocks[i] = (CompiledCode)stubEntryPoint;
blocks[i] = (DSPCompiledCode)stubEntryPoint;
blockLinks[i] = 0;
blockSize[i] = 0;
}
@ -70,7 +70,7 @@ void DSPEmitter::ClearIRAM() {
// ClearCodeSpace();
for(int i = 0x0000; i < 0x1000; i++)
{
blocks[i] = (CompiledCode)stubEntryPoint;
blocks[i] = (DSPCompiledCode)stubEntryPoint;
blockLinks[i] = 0;
blockSize[i] = 0;
}
@ -338,7 +338,7 @@ void DSPEmitter::Compile(u16 start_addr)
#endif
}
blocks[start_addr] = (CompiledCode)entryPoint;
blocks[start_addr] = (DSPCompiledCode)entryPoint;
// Mark this block as a linkable destination if it does not contain
// any unresolved CALL's
@ -356,7 +356,7 @@ void DSPEmitter::Compile(u16 start_addr)
if (unresolvedJumps[i].size() < size)
{
// Mark the block to be recompiled again
blocks[i] = (CompiledCode)stubEntryPoint;
blocks[i] = (DSPCompiledCode)stubEntryPoint;
blockLinks[i] = 0;
blockSize[i] = 0;
}

View File

@ -28,7 +28,7 @@
#define MAX_BLOCKS 0x10000
typedef u32 (*CompiledCode)();
typedef u32 (*DSPCompiledCode)();
typedef const u8 *Block;
class DSPEmitter : public Gen::XCodeBlock, NonCopyable
@ -264,7 +264,7 @@ public:
void SaveDSPRegs();
private:
CompiledCode *blocks;
DSPCompiledCode *blocks;
Block blockLinkEntry;
u16 compileSR;

View File

@ -14,4 +14,4 @@ set(SRCS Src/BreakpointDlg.cpp
Src/RegisterWindow.cpp)
add_library(debwx STATIC ${SRCS})
target_link_libraries(debwx common debugger_ui_util)
target_link_libraries(debwx common core debugger_ui_util)

View File

@ -139,6 +139,7 @@ CCodeWindow::CCodeWindow(const SCoreStartupParameter& _LocalCoreStartupParameter
, m_BreakpointWindow(NULL)
, m_MemoryWindow(NULL)
, m_JitWindow(NULL)
, m_SoundWindow(NULL)
, m_VideoWindow(NULL)
, codeview(NULL)
{

View File

@ -37,6 +37,7 @@ class CBreakPointWindow;
class CMemoryWindow;
class CJitWindow;
class CCodeView;
class DSPDebuggerLLE;
class GFXDebuggerPanel;
class CCodeWindow
@ -107,6 +108,7 @@ class CCodeWindow
CBreakPointWindow* m_BreakpointWindow;
CMemoryWindow* m_MemoryWindow;
CJitWindow* m_JitWindow;
DSPDebuggerLLE* m_SoundWindow;
GFXDebuggerPanel* m_VideoWindow;
// Settings

View File

@ -38,6 +38,7 @@
#include "MemoryWindow.h"
#include "JitWindow.h"
#include "DebuggerPanel.h"
#include "DSPDebugWindow.h"
#include "FileUtil.h"
#include "CodeWindow.h"
@ -516,7 +517,6 @@ void CCodeWindow::ToggleJitWindow(bool bShow)
void CCodeWindow::ToggleSoundWindow(bool bShow)
{
// TODO: Resurrect DSP debugger window.
#if 0
GetMenuBar()->FindItem(IDM_SOUNDWINDOW)->Check(bShow);
if (bShow)
{
@ -531,7 +531,6 @@ void CCodeWindow::ToggleSoundWindow(bool bShow)
Parent->DoRemovePage(m_SoundWindow, false);
m_SoundWindow = NULL;
}
#endif
}
void CCodeWindow::ToggleVideoWindow(bool bShow)

View File

@ -39,11 +39,13 @@ BEGIN_EVENT_TABLE(DSPDebuggerLLE, wxPanel)
END_EVENT_TABLE()
DSPDebuggerLLE::DSPDebuggerLLE(wxWindow* parent)
: wxPanel(parent, wxID_ANY, wxDefaultPosition, wxSize(700, 800),
DSPDebuggerLLE::DSPDebuggerLLE(wxWindow* parent, wxWindowID id)
: wxPanel(parent, id, wxDefaultPosition, wxDefaultSize,
wxTAB_TRAVERSAL, _("DSP LLE Debugger"))
, m_CachedStepCounter(-1)
{
m_DebuggerFrame = this;
// notify wxAUI which frame to use
m_mgr.SetManagedWindow(this);

View File

@ -47,7 +47,7 @@ class CMemoryView;
class DSPDebuggerLLE : public wxPanel
{
public:
DSPDebuggerLLE(wxWindow *parent);
DSPDebuggerLLE(wxWindow *parent, wxWindowID id = wxID_ANY);
virtual ~DSPDebuggerLLE();
void Refresh();
@ -86,15 +86,15 @@ private:
void OnClose(wxCloseEvent& event);
void OnChangeState(wxCommandEvent& event);
void OnRightClick(wxListEvent& event);
void OnDoubleClick(wxListEvent& event);
//void OnRightClick(wxListEvent& event);
//void OnDoubleClick(wxListEvent& event);
void OnAddrBoxChange(wxCommandEvent& event);
void OnSymbolListChange(wxCommandEvent& event);
bool JumpToAddress(u16 addr);
void FocusOnPC();
void UnselectAll();
//void UnselectAll();
};
extern DSPDebuggerLLE* m_DebuggerFrame;

View File

@ -50,6 +50,8 @@ GFXDebuggerPanel::GFXDebuggerPanel(wxWindow *parent, wxWindowID id, const wxPoin
const wxSize& size, long style, const wxString &title)
: wxPanel(parent, id, position, size, style, title)
{
g_pdebugger = this;
CreateGUIControls();
LoadSettings();
@ -57,6 +59,7 @@ GFXDebuggerPanel::GFXDebuggerPanel(wxWindow *parent, wxWindowID id, const wxPoin
GFXDebuggerPanel::~GFXDebuggerPanel()
{
g_pdebugger = NULL;
GFXDebuggerPauseFlag = false;
}
@ -134,8 +137,6 @@ static const int numPauseEventMap = sizeof(pauseEventMap)/sizeof(PauseEventMap);
void GFXDebuggerPanel::CreateGUIControls()
{
g_pdebugger = this;
// Basic settings
CenterOnParent();