summaryrefslogtreecommitdiff
path: root/src/citra_qt/main.cpp
diff options
context:
space:
mode:
authorGravatar Tony Wasserka2015-04-04 12:57:31 +0200
committerGravatar Tony Wasserka2015-07-13 22:27:20 +0200
commit902fa4da52737d43e04c2a028658ad9840811a89 (patch)
tree0a2346b4e08b5865c3369247f5720453b170e0c6 /src/citra_qt/main.cpp
parentGPU: Be robust against nullptr addresses; properly reset busy bits in the tri... (diff)
downloadyuzu-902fa4da52737d43e04c2a028658ad9840811a89.tar.gz
yuzu-902fa4da52737d43e04c2a028658ad9840811a89.tar.xz
yuzu-902fa4da52737d43e04c2a028658ad9840811a89.zip
Add CiTrace recording support.
This is exposed in the GUI as a new "CiTrace Recording" widget. Playback is implemented by a standalone 3DS homebrew application (which only runs reliably within Citra currently; on an actual 3DS it will often crash still).
Diffstat (limited to 'src/citra_qt/main.cpp')
-rw-r--r--src/citra_qt/main.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index d23bafafc..6bfb6e417 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -32,6 +32,7 @@
32#include "debugger/graphics_breakpoints.h" 32#include "debugger/graphics_breakpoints.h"
33#include "debugger/graphics_cmdlists.h" 33#include "debugger/graphics_cmdlists.h"
34#include "debugger/graphics_framebuffer.h" 34#include "debugger/graphics_framebuffer.h"
35#include "debugger/graphics_tracing.h"
35#include "debugger/graphics_vertex_shader.h" 36#include "debugger/graphics_vertex_shader.h"
36#include "debugger/profiler.h" 37#include "debugger/profiler.h"
37 38
@@ -94,6 +95,10 @@ GMainWindow::GMainWindow() : emu_thread(nullptr)
94 addDockWidget(Qt::RightDockWidgetArea, graphicsVertexShaderWidget); 95 addDockWidget(Qt::RightDockWidgetArea, graphicsVertexShaderWidget);
95 graphicsVertexShaderWidget->hide(); 96 graphicsVertexShaderWidget->hide();
96 97
98 auto graphicsTracingWidget = new GraphicsTracingWidget(Pica::g_debug_context, this);
99 addDockWidget(Qt::RightDockWidgetArea, graphicsTracingWidget);
100 graphicsTracingWidget->hide();
101
97 QMenu* debug_menu = ui.menu_View->addMenu(tr("Debugging")); 102 QMenu* debug_menu = ui.menu_View->addMenu(tr("Debugging"));
98 debug_menu->addAction(profilerWidget->toggleViewAction()); 103 debug_menu->addAction(profilerWidget->toggleViewAction());
99 debug_menu->addAction(disasmWidget->toggleViewAction()); 104 debug_menu->addAction(disasmWidget->toggleViewAction());
@@ -104,6 +109,7 @@ GMainWindow::GMainWindow() : emu_thread(nullptr)
104 debug_menu->addAction(graphicsBreakpointsWidget->toggleViewAction()); 109 debug_menu->addAction(graphicsBreakpointsWidget->toggleViewAction());
105 debug_menu->addAction(graphicsFramebufferWidget->toggleViewAction()); 110 debug_menu->addAction(graphicsFramebufferWidget->toggleViewAction());
106 debug_menu->addAction(graphicsVertexShaderWidget->toggleViewAction()); 111 debug_menu->addAction(graphicsVertexShaderWidget->toggleViewAction());
112 debug_menu->addAction(graphicsTracingWidget->toggleViewAction());
107 113
108 // Set default UI state 114 // Set default UI state
109 // geometry: 55% of the window contents are in the upper screen half, 45% in the lower half 115 // geometry: 55% of the window contents are in the upper screen half, 45% in the lower half