summaryrefslogtreecommitdiff
path: root/src/citra_qt/main.cpp
diff options
context:
space:
mode:
authorGravatar Mathieu Vaillancourt2014-04-18 18:30:53 -0400
committerGravatar Mathieu Vaillancourt2014-04-18 18:34:23 -0400
commite5f09b8be65c06927164428b5d400024e2388dbc (patch)
tree0f0fd4035bcc88c0de5a47a7d3c64b4f67453897 /src/citra_qt/main.cpp
parentMerge branch 'hle-interface' (diff)
downloadyuzu-e5f09b8be65c06927164428b5d400024e2388dbc.tar.gz
yuzu-e5f09b8be65c06927164428b5d400024e2388dbc.tar.xz
yuzu-e5f09b8be65c06927164428b5d400024e2388dbc.zip
UI/debugger changes
Diffstat (limited to 'src/citra_qt/main.cpp')
-rw-r--r--src/citra_qt/main.cpp39
1 files changed, 23 insertions, 16 deletions
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index 08fd03b24..f9bf6e881 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -15,10 +15,10 @@
15#include "hotkeys.hxx" 15#include "hotkeys.hxx"
16 16
17//debugger 17//debugger
18#include "disasm.hxx" 18#include "debugger/disassembler.hxx"
19#include "cpu_regs.hxx" 19#include "debugger/registers.hxx"
20#include "callstack.hxx" 20#include "debugger/callstack.hxx"
21#include "ramview.hxx" 21#include "debugger/ramview.hxx"
22 22
23#include "core/system.h" 23#include "core/system.h"
24#include "core/loader.h" 24#include "core/loader.h"
@@ -36,17 +36,22 @@ GMainWindow::GMainWindow()
36 ui.horizontalLayout->addWidget(render_window); 36 ui.horizontalLayout->addWidget(render_window);
37 //render_window->hide(); 37 //render_window->hide();
38 38
39 disasm = new GDisAsmView(this, render_window->GetEmuThread()); 39 disasmWidget = new DisassemblerWidget(this, render_window->GetEmuThread());
40 addDockWidget(Qt::BottomDockWidgetArea, disasm); 40 addDockWidget(Qt::BottomDockWidgetArea, disasmWidget);
41 disasm->hide(); 41 disasmWidget->hide();
42 42
43 arm_regs = new GARM11RegsView(this); 43 registersWidget = new RegistersWidget(this);
44 addDockWidget(Qt::RightDockWidgetArea, arm_regs); 44 addDockWidget(Qt::RightDockWidgetArea, registersWidget);
45 arm_regs->hide(); 45 registersWidget->hide();
46
47 callstackWidget = new CallstackWidget(this);
48 addDockWidget(Qt::RightDockWidgetArea, callstackWidget);
49 callstackWidget->hide();
46 50
47 QMenu* debug_menu = ui.menu_View->addMenu(tr("Debugging")); 51 QMenu* debug_menu = ui.menu_View->addMenu(tr("Debugging"));
48 debug_menu->addAction(disasm->toggleViewAction()); 52 debug_menu->addAction(disasmWidget->toggleViewAction());
49 debug_menu->addAction(arm_regs->toggleViewAction()); 53 debug_menu->addAction(registersWidget->toggleViewAction());
54 debug_menu->addAction(callstackWidget->toggleViewAction());
50 55
51 // Set default UI state 56 // Set default UI state
52 // geometry: 55% of the window contents are in the upper screen half, 45% in the lower half 57 // geometry: 55% of the window contents are in the upper screen half, 45% in the lower half
@@ -78,8 +83,9 @@ GMainWindow::GMainWindow()
78 connect(ui.action_Hotkeys, SIGNAL(triggered()), this, SLOT(OnOpenHotkeysDialog())); 83 connect(ui.action_Hotkeys, SIGNAL(triggered()), this, SLOT(OnOpenHotkeysDialog()));
79 84
80 // BlockingQueuedConnection is important here, it makes sure we've finished refreshing our views before the CPU continues 85 // BlockingQueuedConnection is important here, it makes sure we've finished refreshing our views before the CPU continues
81 connect(&render_window->GetEmuThread(), SIGNAL(CPUStepped()), disasm, SLOT(OnCPUStepped()), Qt::BlockingQueuedConnection); 86 connect(&render_window->GetEmuThread(), SIGNAL(CPUStepped()), disasmWidget, SLOT(OnCPUStepped()), Qt::BlockingQueuedConnection);
82 connect(&render_window->GetEmuThread(), SIGNAL(CPUStepped()), arm_regs, SLOT(OnCPUStepped()), Qt::BlockingQueuedConnection); 87 connect(&render_window->GetEmuThread(), SIGNAL(CPUStepped()), registersWidget, SLOT(OnCPUStepped()), Qt::BlockingQueuedConnection);
88 connect(&render_window->GetEmuThread(), SIGNAL(CPUStepped()), callstackWidget, SLOT(OnCPUStepped()), Qt::BlockingQueuedConnection);
83 89
84 // Setup hotkeys 90 // Setup hotkeys
85 RegisterHotkey("Main Window", "Load Image", QKeySequence::Open); 91 RegisterHotkey("Main Window", "Load Image", QKeySequence::Open);
@@ -124,8 +130,9 @@ void GMainWindow::BootGame(const char* filename)
124 ERROR_LOG(BOOT, "Failed to load ROM: %s", error_str.c_str()); 130 ERROR_LOG(BOOT, "Failed to load ROM: %s", error_str.c_str());
125 } 131 }
126 132
127 disasm->Init(); 133 disasmWidget->Init();
128 arm_regs->OnCPUStepped(); 134 registersWidget->OnCPUStepped();
135 callstackWidget->OnCPUStepped();
129 136
130 render_window->GetEmuThread().start(); 137 render_window->GetEmuThread().start();
131} 138}