#include #include #include #include "..\\..\\N64 System.h" #include "Debugger UI.h" CPj64Module _Module; CDebugger::CDebugger (CN64System * System, CMipsMemory *& MMU) : m_MemoryDump(NULL), m_MemoryView(NULL), m_MemorySearch(NULL), m_DebugTLB(NULL), m_MMU(MMU), m_System(System) { } CDebugger::~CDebugger (void) { Debug_Reset(); } void CDebugger::Debug_Reset ( void ) { if (m_MemoryDump) { m_MemoryDump->HideWindow(); delete m_MemoryDump; m_MemoryDump = NULL; } if (m_MemoryView) { m_MemoryView->HideWindow(); delete m_MemoryView; m_MemoryView = NULL; } if (m_MemorySearch) { m_MemorySearch->HideWindow(); delete m_MemorySearch; m_MemorySearch = NULL; } if (m_DebugTLB) { m_DebugTLB->HideWindow(); delete m_DebugTLB; m_DebugTLB = NULL; } } void CDebugger::Debug_ShowMemoryDump() { if (m_MMU == NULL) { return; } if (m_MemoryDump == NULL) { m_MemoryDump = new CDumpMemory(m_System, m_MMU, this); } if (m_MemoryDump) { m_MemoryDump->ShowWindow(); } } void CDebugger::Debug_ShowMemoryWindow ( void ) { if (m_MMU == NULL) { return; } if (m_MemoryView == NULL) { m_MemoryView = new CDebugMemoryView(m_MMU, this); } if (m_MemoryView) { m_MemoryView->ShowWindow(); } } void CDebugger::Debug_ShowMemoryLocation ( DWORD Address, bool VAddr ) { Debug_ShowMemoryWindow(); if (m_MemoryView) { m_MemoryView->ShowAddress(Address,VAddr); } } void CDebugger::Debug_ShowTLBWindow (void) { if (m_MMU == NULL) { return; } if (m_DebugTLB == NULL) { m_DebugTLB = new CDebugTlb(m_MMU, this); } if (m_DebugTLB) { m_DebugTLB->ShowWindow(); } } void CDebugger::Debug_RefreshTLBWindow(void) { if (m_DebugTLB) { m_DebugTLB->RefreshTLBWindow(); } } void CDebugger::Debug_ShowMemorySearch() { if (m_MemorySearch == NULL) { m_MemorySearch = new CDebugMemorySearch(m_System, m_MMU, this); } if (m_MemorySearch) { m_MemorySearch->ShowWindow(); } }