summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinWX/FrameTools.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/DolphinWX/FrameTools.cpp')
-rw-r--r--Source/Core/DolphinWX/FrameTools.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/Source/Core/DolphinWX/FrameTools.cpp b/Source/Core/DolphinWX/FrameTools.cpp
index de080a8587..0c27b52308 100644
--- a/Source/Core/DolphinWX/FrameTools.cpp
+++ b/Source/Core/DolphinWX/FrameTools.cpp
@@ -58,6 +58,7 @@
#include "Core/IPC_HLE/WII_IPC_HLE_Device_usb.h"
#include "Core/IPC_HLE/WII_IPC_HLE_WiiMote.h"
#include "Core/PowerPC/PowerPC.h"
+#include "Core/PowerPC/PPCSymbolDB.h"
#include "DiscIO/NANDContentLoader.h"
@@ -78,7 +79,9 @@
#include "DolphinWX/WXInputBase.h"
#include "DolphinWX/WxUtils.h"
#include "DolphinWX/Cheats/CheatsWindow.h"
+#include "DolphinWX/Debugger/BreakpointWindow.h"
#include "DolphinWX/Debugger/CodeWindow.h"
+#include "DolphinWX/Debugger/WatchWindow.h"
#include "InputCommon/ControllerInterface/ControllerInterface.h"
@@ -285,6 +288,7 @@ wxMenuBar* CFrame::CreateMenu()
const wxString MenuText[] = {
wxTRANSLATE("&Registers"),
+ wxTRANSLATE("&Watch"),
wxTRANSLATE("&Breakpoints"),
wxTRANSLATE("&Memory"),
wxTRANSLATE("&JIT"),
@@ -655,7 +659,16 @@ void CFrame::BootGame(const std::string& filename)
}
}
if (!bootfile.empty())
+ {
StartGame(bootfile);
+ if (UseDebugger && g_pCodeWindow)
+ {
+ if (g_pCodeWindow->m_WatchWindow)
+ g_pCodeWindow->m_WatchWindow->LoadAll();
+ if (g_pCodeWindow->m_BreakpointWindow)
+ g_pCodeWindow->m_BreakpointWindow->LoadAll();
+ }
+ }
}
// Open file to boot
@@ -1162,6 +1175,24 @@ void CFrame::DoStop()
}
}
+ if (UseDebugger && g_pCodeWindow)
+ {
+ if (g_pCodeWindow->m_WatchWindow)
+ {
+ g_pCodeWindow->m_WatchWindow->SaveAll();
+ PowerPC::watches.Clear();
+ }
+ if (g_pCodeWindow->m_BreakpointWindow)
+ {
+ g_pCodeWindow->m_BreakpointWindow->SaveAll();
+ PowerPC::breakpoints.Clear();
+ PowerPC::memchecks.Clear();
+ g_pCodeWindow->m_BreakpointWindow->NotifyUpdate();
+ }
+ g_symbolDB.Clear();
+ Host_NotifyMapLoaded();
+ }
+
// TODO: Show the author/description dialog here
if (Movie::IsRecordingInput())
DoRecordingSave();