Skip to content

Commit 38d6ec9

Browse files
authored
Merge pull request #17 from allkern/master
Merge master work into hw-renderer
2 parents f768c01 + 7ef2045 commit 38d6ec9

File tree

21 files changed

+1290
-255
lines changed

21 files changed

+1290
-255
lines changed

CMakeLists.txt

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,13 @@ check_ipo_supported(RESULT LTO_SUPPORTED OUTPUT LTO_ERROR)
6161
# And this part tells CMake where to find and install the file itself
6262
add_executable(iris MACOSX_BUNDLE ${OSX_ICON} ${WIN_ICON})
6363

64-
if (LTO_SUPPORTED)
65-
message(STATUS "IPO/LTO enabled")
66-
set_property(TARGET iris PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
67-
else()
68-
message(STATUS "IPO/LTO not supported: ${LTO_ERROR}")
64+
if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
65+
if (LTO_SUPPORTED)
66+
message(STATUS "IPO/LTO enabled")
67+
set_property(TARGET iris PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
68+
else()
69+
message(STATUS "IPO/LTO not supported: ${LTO_ERROR}")
70+
endif()
6971
endif()
7072

7173
set_property(TARGET iris PROPERTY CXX_STANDARD 20)
@@ -97,6 +99,7 @@ target_sources(iris PRIVATE
9799
frontend/ui/spu2.cpp
98100
frontend/ui/state.cpp
99101
frontend/ui/statusbar.cpp
102+
frontend/ui/vu_disassembly.cpp
100103
src/ps2.c
101104
src/ps2_elf.c
102105
src/ps2_iso9660.c

frontend/iris.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,7 @@ void update_window(iris::instance* iris) {
231231
if (iris->show_gs_debugger) show_gs_debugger(iris);
232232
if (iris->show_spu2_debugger) show_spu2_debugger(iris);
233233
if (iris->show_memory_viewer) show_memory_viewer(iris);
234+
if (iris->show_vu_disassembler) show_vu_disassembler(iris);
234235
if (iris->show_status_bar && !iris->fullscreen) show_status_bar(iris);
235236
if (iris->show_breakpoints) show_breakpoints(iris);
236237
if (iris->show_about_window) show_about_window(iris);

frontend/iris.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ struct instance {
143143
bool show_settings = false;
144144
bool show_memory_card_tool = false;
145145
bool show_imgui_demo = false;
146+
bool show_vu_disassembler = false;
146147

147148
// Special windows
148149
bool show_bios_setting_window = false;
@@ -215,6 +216,7 @@ void show_iop_dma(iris::instance* iris);
215216
void show_gs_debugger(iris::instance* iris);
216217
void show_spu2_debugger(iris::instance* iris);
217218
void show_memory_viewer(iris::instance* iris);
219+
void show_vu_disassembler(iris::instance* iris);
218220
void show_status_bar(iris::instance* iris);
219221
void show_breakpoints(iris::instance* iris);
220222
void show_about_window(iris::instance* iris);

frontend/settings.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ int parse_toml_settings(iris::instance* iris) {
9999
iris->show_gs_debugger = debugger["show_gs_debugger"].value_or(false);
100100
iris->show_spu2_debugger = debugger["show_spu2_debugger"].value_or(false);
101101
iris->show_memory_viewer = debugger["show_memory_viewer"].value_or(false);
102+
iris->show_vu_disassembler = debugger["show_vu_disassembler"].value_or(false);
102103
iris->show_status_bar = debugger["show_status_bar"].value_or(true);
103104
iris->show_breakpoints = debugger["show_breakpoints"].value_or(false);
104105
iris->show_imgui_demo = debugger["show_imgui_demo"].value_or(false);
@@ -265,6 +266,7 @@ void close_settings(iris::instance* iris) {
265266
{ "show_gs_debugger", iris->show_gs_debugger },
266267
{ "show_spu2_debugger", iris->show_spu2_debugger },
267268
{ "show_memory_viewer", iris->show_memory_viewer },
269+
{ "show_vu_disassembler", iris->show_vu_disassembler },
268270
{ "show_status_bar", iris->show_status_bar },
269271
{ "show_breakpoints", iris->show_breakpoints },
270272
{ "show_imgui_demo", iris->show_imgui_demo }

frontend/ui/menubar.cpp

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -303,38 +303,39 @@ void show_main_menubar(iris::instance* iris) {
303303
ImGui::EndMenu();
304304
}
305305
if (BeginMenu("Tools")) {
306-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " ImGui Demo", NULL, &iris->show_imgui_demo));
306+
if (MenuItem(ICON_MS_BUILD " ImGui Demo", NULL, &iris->show_imgui_demo));
307307

308308
ImGui::EndMenu();
309309
}
310310
if (BeginMenu("Debug")) {
311311
SeparatorText("EE");
312312
// if (BeginMenu(ICON_MS_BUG_REPORT " EE")) {
313-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Control##ee", NULL, &iris->show_ee_control));
314-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " State##ee", NULL, &iris->show_ee_state));
315-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Logs##ee", NULL, &iris->show_ee_logs));
316-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Interrupts##ee", NULL, &iris->show_ee_interrupts));
313+
if (MenuItem(ICON_MS_SETTINGS " Control##ee", NULL, &iris->show_ee_control));
314+
if (MenuItem(ICON_MS_EDIT_NOTE " State##ee", NULL, &iris->show_ee_state));
315+
if (MenuItem(ICON_MS_TERMINAL " Logs##ee", NULL, &iris->show_ee_logs));
316+
if (MenuItem(ICON_MS_BOLT " Interrupts##ee", NULL, &iris->show_ee_interrupts));
317317

318318
// ImGui::EndMenu();
319319
// }
320320

321321
SeparatorText("IOP");
322322
// if (BeginMenu(ICON_MS_BUG_REPORT " IOP")) {
323-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Control##iop", NULL, &iris->show_iop_control));
324-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " State##iop", NULL, &iris->show_iop_state));
325-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Logs##iop", NULL, &iris->show_iop_logs));
326-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Interrupts##iop", NULL, &iris->show_iop_interrupts));
327-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Modules##iop", NULL, &iris->show_iop_modules));
323+
if (MenuItem(ICON_MS_SETTINGS " Control##iop", NULL, &iris->show_iop_control));
324+
if (MenuItem(ICON_MS_EDIT_NOTE " State##iop", NULL, &iris->show_iop_state));
325+
if (MenuItem(ICON_MS_TERMINAL " Logs##iop", NULL, &iris->show_iop_logs));
326+
if (MenuItem(ICON_MS_BOLT " Interrupts##iop", NULL, &iris->show_iop_interrupts));
327+
if (MenuItem(ICON_MS_EXTENSION " Modules##iop", NULL, &iris->show_iop_modules));
328328

329329
// ImGui::EndMenu();
330330
// }
331331

332332
Separator();
333333

334-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Breakpoints", NULL, &iris->show_breakpoints));
335-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " GS debugger", NULL, &iris->show_gs_debugger));
336-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " SPU2 debugger", NULL, &iris->show_spu2_debugger));
337-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " Memory viewer", NULL, &iris->show_memory_viewer));
334+
if (MenuItem(ICON_MS_BUG_REPORT " Breakpoints", NULL, &iris->show_breakpoints));
335+
if (MenuItem(ICON_MS_BRUSH " GS debugger", NULL, &iris->show_gs_debugger));
336+
if (MenuItem(ICON_MS_MUSIC_NOTE " SPU2 debugger", NULL, &iris->show_spu2_debugger));
337+
if (MenuItem(ICON_MS_MEMORY " Memory viewer", NULL, &iris->show_memory_viewer));
338+
if (MenuItem(ICON_MS_VIEW_IN_AR " VU disassembler", NULL, &iris->show_vu_disassembler));
338339

339340
Separator();
340341

@@ -353,13 +354,14 @@ void show_main_menubar(iris::instance* iris) {
353354
iris->show_gs_debugger = false;
354355
iris->show_spu2_debugger = false;
355356
iris->show_memory_viewer = false;
357+
iris->show_vu_disassembler = false;
356358
iris->show_breakpoints = false;
357359
}
358360

359361
ImGui::EndMenu();
360362
}
361363
if (BeginMenu("Help")) {
362-
if (MenuItem(ICON_MS_LINE_START_CIRCLE " About")) {
364+
if (MenuItem(ICON_MS_INFO " About")) {
363365
iris->show_about_window = true;
364366
}
365367

0 commit comments

Comments
 (0)