[UI] Host breakpoint shortcut (pauses WinDbg)

This commit is contained in:
Triang3l 2019-04-17 16:40:35 +03:00
parent ab4d344fb0
commit 63e135590c
2 changed files with 13 additions and 1 deletions

View File

@ -14,6 +14,7 @@
#include "third_party/imgui/imgui.h"
#include "xenia/base/clock.h"
#include "xenia/base/debugging.h"
#include "xenia/base/logging.h"
#include "xenia/base/platform.h"
#include "xenia/base/profiling.h"
@ -142,6 +143,9 @@ bool EmulatorWindow::Initialize() {
case 0x13: { // VK_PAUSE
CpuBreakIntoDebugger();
} break;
case 0x03: { // VK_CANCEL
CpuBreakIntoHostDebugger();
} break;
case 0x70: { // VK_F1
ShowHelpWebsite();
@ -208,8 +212,13 @@ bool EmulatorWindow::Initialize() {
cpu_menu->AddChild(MenuItem::Create(MenuItem::Type::kSeparator));
{
cpu_menu->AddChild(MenuItem::Create(
MenuItem::Type::kString, L"&Break and Show Debugger", L"Pause/Break",
MenuItem::Type::kString, L"&Break and Show Guest Debugger",
L"Pause/Break",
std::bind(&EmulatorWindow::CpuBreakIntoDebugger, this)));
cpu_menu->AddChild(MenuItem::Create(
MenuItem::Type::kString, L"&Break into Host Debugger",
L"Ctrl+Pause/Break",
std::bind(&EmulatorWindow::CpuBreakIntoHostDebugger, this)));
}
main_menu->AddChild(std::move(cpu_menu));
@ -366,6 +375,8 @@ void EmulatorWindow::CpuBreakIntoDebugger() {
}
}
void EmulatorWindow::CpuBreakIntoHostDebugger() { xe::debugging::Break(); }
void EmulatorWindow::GpuTraceFrame() {
emulator()->graphics_system()->RequestFrameTrace();
}

View File

@ -51,6 +51,7 @@ class EmulatorWindow {
void CpuTimeScalarSetHalf();
void CpuTimeScalarSetDouble();
void CpuBreakIntoDebugger();
void CpuBreakIntoHostDebugger();
void GpuTraceFrame();
void GpuClearCaches();
void ShowHelpWebsite();