Some Change in Gui.

This commit is contained in:
Zangetsu38
2015-11-23 00:47:08 +01:00
parent f0f8f50e12
commit 4bdd9f443f
17 changed files with 157 additions and 156 deletions
+2 -2
View File
@@ -3,8 +3,8 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "AutoPause.h" #include "AutoPause.h"
cfg::bool_entry g_cfg_debug_autopause_syscall(cfg::root.misc, "Auto Pause at System Call"); cfg::bool_entry g_cfg_debug_autopause_syscall(cfg::root.misc, "Automatically pause at system call");
cfg::bool_entry g_cfg_debug_autopause_func_call(cfg::root.misc, "Auto Pause at Function Call"); cfg::bool_entry g_cfg_debug_autopause_func_call(cfg::root.misc, "Automatically pause at function call");
debug::autopause& debug::autopause::get_instance() debug::autopause& debug::autopause::get_instance()
{ {
+1 -1
View File
@@ -14,7 +14,7 @@
logs::channel cellAudio("cellAudio", logs::level::notice); logs::channel cellAudio("cellAudio", logs::level::notice);
cfg::bool_entry g_cfg_audio_dump_to_file(cfg::root.audio, "Dump to file"); cfg::bool_entry g_cfg_audio_dump_to_file(cfg::root.audio, "Dump to file");
cfg::bool_entry g_cfg_audio_convert_to_u16(cfg::root.audio, "Convert to 16 bit"); cfg::bool_entry g_cfg_audio_convert_to_u16(cfg::root.audio, "Convert to 16-bit");
cfg::bool_entry g_cfg_audio_downmix_to_2ch(cfg::root.audio, "Downmix to Stereo", true); cfg::bool_entry g_cfg_audio_downmix_to_2ch(cfg::root.audio, "Downmix to Stereo", true);
void audio_config::on_init(const std::shared_ptr<void>& _this) void audio_config::on_init(const std::shared_ptr<void>& _this)
+5 -5
View File
@@ -19,15 +19,15 @@ class GSRender;
#define CMD_DEBUG 0 #define CMD_DEBUG 0
cfg::bool_entry g_cfg_rsx_write_color_buffers(cfg::root.video, "Write Color Buffers"); cfg::bool_entry g_cfg_rsx_write_color_buffers(cfg::root.video, "Write color buffers");
cfg::bool_entry g_cfg_rsx_write_depth_buffer(cfg::root.video, "Write Depth Buffer"); cfg::bool_entry g_cfg_rsx_write_depth_buffer(cfg::root.video, "Write depth buffer");
cfg::bool_entry g_cfg_rsx_read_color_buffers(cfg::root.video, "Read Color Buffers"); cfg::bool_entry g_cfg_rsx_read_color_buffers(cfg::root.video, "Read color buffers");
cfg::bool_entry g_cfg_rsx_read_depth_buffer(cfg::root.video, "Read Depth Buffer"); cfg::bool_entry g_cfg_rsx_read_depth_buffer(cfg::root.video, "Read depth buffer");
cfg::bool_entry g_cfg_rsx_log_programs(cfg::root.video, "Log shader programs"); cfg::bool_entry g_cfg_rsx_log_programs(cfg::root.video, "Log shader programs");
cfg::bool_entry g_cfg_rsx_vsync(cfg::root.video, "VSync"); cfg::bool_entry g_cfg_rsx_vsync(cfg::root.video, "VSync");
cfg::bool_entry g_cfg_rsx_debug_output(cfg::root.video, "Debug output"); cfg::bool_entry g_cfg_rsx_debug_output(cfg::root.video, "Debug output");
cfg::bool_entry g_cfg_rsx_overlay(cfg::root.video, "Debug overlay"); cfg::bool_entry g_cfg_rsx_overlay(cfg::root.video, "Debug overlay");
cfg::bool_entry g_cfg_rsx_gl_legacy_buffers(cfg::root.video, "Use Legacy OpenGL Buffers (Debug)"); cfg::bool_entry g_cfg_rsx_gl_legacy_buffers(cfg::root.video, "Use legacy OpenGL buffers (Debug)");
cfg::bool_entry g_cfg_rsx_use_gpu_texture_scaling(cfg::root.video, "Use GPU texture scaling"); cfg::bool_entry g_cfg_rsx_use_gpu_texture_scaling(cfg::root.video, "Use GPU texture scaling");
bool user_asked_for_frame_capture = false; bool user_asked_for_frame_capture = false;
+3 -3
View File
@@ -16,10 +16,10 @@
cfg::map_entry<double> g_cfg_rsx_frame_limit(cfg::root.video, "Frame limit", cfg::map_entry<double> g_cfg_rsx_frame_limit(cfg::root.video, "Frame limit",
{ {
{ "Off", 0. }, { "Off", 0. },
{ "59.94", 59.94 },
{ "50", 50. },
{ "60", 60. },
{ "30", 30. }, { "30", 30. },
{ "50", 50. },
{ "59.94", 59.94 },
{ "60", 60. },
{ "Auto", -1. }, { "Auto", -1. },
}); });
+8 -8
View File
@@ -5,13 +5,13 @@
//TODO::Get the enable configuration from ini. //TODO::Get the enable configuration from ini.
AutoPauseManagerDialog::AutoPauseManagerDialog(wxWindow* parent) AutoPauseManagerDialog::AutoPauseManagerDialog(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "Auto Pause Manager") : wxDialog(parent, wxID_ANY, "Automatic pause settings")
{ {
SetMinSize(wxSize(400, 360)); SetMinSize(wxSize(400, 360));
wxBoxSizer* s_main = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_main = new wxBoxSizer(wxVERTICAL);
wxStaticText* s_description = new wxStaticText(this, wxID_ANY, "To use auto pause: enter the ID(s) of a function or a system call. Restart of the game is required to apply. You can enable/disable this in the settings.", wxDefaultPosition, wxDefaultSize, 0); wxStaticText* s_description = new wxStaticText(this, wxID_ANY, "To use auto pause: enter the ID(s) of a function or a system call. You must restart your emulated game or application for changed settings to take effect. You can enable/disable this in the settings.", wxDefaultPosition, wxDefaultSize, 0);
s_description->Wrap(400); s_description->Wrap(400);
s_main->Add(s_description, 0, wxALL, 5); s_main->Add(s_description, 0, wxALL, 5);
@@ -114,11 +114,11 @@ void AutoPauseManagerDialog::UpdateList(void)
if (m_entries[i] < 1024) if (m_entries[i] < 1024)
{ {
m_list->SetItem(i, 1, "System Call"); m_list->SetItem(i, 1, "System call");
} }
else else
{ {
m_list->SetItem(i, 1, "Function Call"); m_list->SetItem(i, 1, "Function call");
} }
} }
m_list->SetColumnWidth(0, wxLIST_AUTOSIZE_USEHEADER); m_list->SetColumnWidth(0, wxLIST_AUTOSIZE_USEHEADER);
@@ -176,7 +176,7 @@ void AutoPauseManagerDialog::OnRemove(wxCommandEvent& event)
void AutoPauseManagerDialog::OnSave(wxCommandEvent& event) void AutoPauseManagerDialog::OnSave(wxCommandEvent& event)
{ {
SaveEntries(); SaveEntries();
LOG_SUCCESS(HLE,"Auto Pause: File pause.bin was updated."); LOG_SUCCESS(HLE,"Automatic pause: file pause.bin was updated.");
//event.Skip(); //event.Skip();
} }
@@ -193,7 +193,7 @@ void AutoPauseManagerDialog::OnReload(wxCommandEvent& event)
} }
AutoPauseSettingsDialog::AutoPauseSettingsDialog(wxWindow* parent, u32 *entry) AutoPauseSettingsDialog::AutoPauseSettingsDialog(wxWindow* parent, u32 *entry)
: wxDialog(parent, wxID_ANY, "Auto Pause Setting") : wxDialog(parent, wxID_ANY, "Automatic pause Setting")
, m_presult(entry) , m_presult(entry)
{ {
m_entry = *m_presult; m_entry = *m_presult;
@@ -202,7 +202,7 @@ AutoPauseSettingsDialog::AutoPauseSettingsDialog(wxWindow* parent, u32 *entry)
wxBoxSizer* s_main = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_main = new wxBoxSizer(wxVERTICAL);
wxStaticText* s_description = new wxStaticText(this, wxID_ANY, "Specify ID of System Call or Function Call below. You need to use a Hexadecimal ID.", wxDefaultPosition, wxDefaultSize, 0); wxStaticText* s_description = new wxStaticText(this, wxID_ANY, "Specify ID of system call or function call below. You need to use a hexadecimal ID.", wxDefaultPosition, wxDefaultSize, 0);
s_description->Wrap(400); s_description->Wrap(400);
s_main->Add(s_description, 0, wxALL, 5); s_main->Add(s_description, 0, wxALL, 5);
@@ -220,7 +220,7 @@ AutoPauseSettingsDialog::AutoPauseSettingsDialog(wxWindow* parent, u32 *entry)
m_id->SetValue(fmt::format("%08x", m_entry)); m_id->SetValue(fmt::format("%08x", m_entry));
SetTitle("Auto Pause Setting: " + m_id->GetValue()); SetTitle("Automatic pause setting: " + m_id->GetValue());
Bind(wxEVT_BUTTON, &AutoPauseSettingsDialog::OnOk, this, wxID_OK); Bind(wxEVT_BUTTON, &AutoPauseSettingsDialog::OnOk, this, wxID_OK);
Bind(wxEVT_TEXT, &AutoPauseSettingsDialog::OnUpdateValue, this, wxID_STATIC); Bind(wxEVT_TEXT, &AutoPauseSettingsDialog::OnUpdateValue, this, wxID_STATIC);
+2 -2
View File
@@ -10,12 +10,12 @@ BEGIN_EVENT_TABLE(CgDisasm, wxFrame)
END_EVENT_TABLE() END_EVENT_TABLE()
CgDisasm::CgDisasm(wxWindow* parent) CgDisasm::CgDisasm(wxWindow* parent)
: wxFrame(parent, wxID_ANY, "Cg Disasm", wxDefaultPosition, wxSize(640, 480)) : wxFrame(parent, wxID_ANY, "Cg disassembler", wxDefaultPosition, wxSize(640, 480))
{ {
wxMenuBar* menubar = new wxMenuBar(); wxMenuBar* menubar = new wxMenuBar();
wxMenu* menu_general = new wxMenu(); wxMenu* menu_general = new wxMenu();
menubar->Append(menu_general, "&Open"); menubar->Append(menu_general, "&File");
menu_general->Append(id_open_file, "Open &Cg binary program"); menu_general->Append(id_open_file, "Open &Cg binary program");
wxNotebook* nb_cg = new wxNotebook(this, wxID_ANY); wxNotebook* nb_cg = new wxNotebook(this, wxID_ANY);
+1 -1
View File
@@ -8,7 +8,7 @@ protected:
FrameBase( FrameBase(
wxWindow* parent, wxWindow* parent,
wxWindowID id = wxID_ANY, wxWindowID id = wxID_ANY,
const wxString& frame_name = "UnknownFrame", const wxString& frame_name = "Unknown frame",
const std::string& ini_name = {}, const std::string& ini_name = {},
wxSize defsize = wxDefaultSize, wxSize defsize = wxDefaultSize,
wxPoint defposition = wxDefaultPosition, wxPoint defposition = wxDefaultPosition,
+10 -9
View File
@@ -8,7 +8,7 @@
#include <algorithm> #include <algorithm>
static const std::string m_class_name = "GameViewer"; static const std::string m_class_name = "Game viewer";
// Auxiliary classes // Auxiliary classes
class sortGameData class sortGameData
@@ -69,11 +69,11 @@ void GameViewer::InitPopupMenu()
m_popup->Append(boot_item); m_popup->Append(boot_item);
m_popup->Append(1, "Configure"); m_popup->Append(1, "Configure");
m_popup->AppendSeparator(); m_popup->AppendSeparator();
m_popup->Append(2, "Remove Game"); m_popup->Append(2, "Remove game");
m_popup->Append(3, "Remove Custom Configuration"); m_popup->Append(3, "Remove custom configuration");
m_popup->AppendSeparator(); m_popup->AppendSeparator();
m_popup->Append(4, "Open Game Folder"); m_popup->Append(4, "Open game folder");
m_popup->Append(5, "Open Config Folder"); m_popup->Append(5, "Open config folder");
Bind(wxEVT_MENU, &GameViewer::BootGame, this, 0); Bind(wxEVT_MENU, &GameViewer::BootGame, this, 0);
Bind(wxEVT_MENU, &GameViewer::ConfigureGame, this, 1); Bind(wxEVT_MENU, &GameViewer::ConfigureGame, this, 1);
Bind(wxEVT_MENU, &GameViewer::RemoveGame, this, 2); Bind(wxEVT_MENU, &GameViewer::RemoveGame, this, 2);
@@ -169,6 +169,7 @@ void GameViewer::LoadPSF()
{ {
game.category = "Game Data"; game.category = "Game Data";
game.icon_path = dir + "/ICON0.PNG"; game.icon_path = dir + "/ICON0.PNG";
continue;
} }
m_game_data.push_back(game); m_game_data.push_back(game);
@@ -347,12 +348,12 @@ void ColumnsArr::Init()
m_img_list = new wxImageList(80, 44); m_img_list = new wxImageList(80, 44);
m_columns.clear(); m_columns.clear();
m_columns.emplace_back(0, 90, "Icon"); m_columns.emplace_back(0, 90, "");
m_columns.emplace_back(1, 160, "Name"); m_columns.emplace_back(1, 160, "Name");
m_columns.emplace_back(2, 85, "Serial"); m_columns.emplace_back(2, 85, "Serial");
m_columns.emplace_back(3, 55, "FW"); m_columns.emplace_back(3, 60, "Min. FW");
m_columns.emplace_back(4, 55, "App version"); m_columns.emplace_back(4, 80, "Soft. version");
m_columns.emplace_back(5, 75, "Category"); m_columns.emplace_back(5, 75, "Soft. type");
m_columns.emplace_back(6, 160, "Path"); m_columns.emplace_back(6, 160, "Path");
m_col_icon = &m_columns[0]; m_col_icon = &m_columns[0];
m_col_name = &m_columns[1]; m_col_name = &m_columns[1];
+2 -2
View File
@@ -59,8 +59,8 @@ InterpreterDisAsmFrame::InterpreterDisAsmFrame(wxWindow* parent)
m_list = new wxListView(this); m_list = new wxListView(this);
m_choice_units = new wxChoice(this, wxID_ANY); m_choice_units = new wxChoice(this, wxID_ANY);
wxButton* b_go_to_addr = new wxButton(this, wxID_ANY, "Go To Address"); wxButton* b_go_to_addr = new wxButton(this, wxID_ANY, "Go to address");
wxButton* b_go_to_pc = new wxButton(this, wxID_ANY, "Go To PC"); wxButton* b_go_to_pc = new wxButton(this, wxID_ANY, "Go to PC");
m_btn_step = new wxButton(this, wxID_ANY, "Step"); m_btn_step = new wxButton(this, wxID_ANY, "Step");
m_btn_run = new wxButton(this, wxID_ANY, "Run"); m_btn_run = new wxButton(this, wxID_ANY, "Run");
+21 -21
View File
@@ -27,7 +27,7 @@
#include "KernelExplorer.h" #include "KernelExplorer.h"
KernelExplorer::KernelExplorer(wxWindow* parent) KernelExplorer::KernelExplorer(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "Kernel Explorer", wxDefaultPosition, wxSize(700, 450)) : wxDialog(parent, wxID_ANY, "Kernel explorer", wxDefaultPosition, wxSize(700, 450))
{ {
this->SetBackgroundColour(wxColour(240,240,240)); //This fix the ugly background color under Windows this->SetBackgroundColour(wxColour(240,240,240)); //This fix the ugly background color under Windows
wxBoxSizer* s_panel = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_panel = new wxBoxSizer(wxVERTICAL);
@@ -71,7 +71,7 @@ void KernelExplorer::Update()
const u32 total_memory_usage = vm_block->used(); const u32 total_memory_usage = vm_block->used();
const auto& root = m_tree->AddRoot(fmt::format("Process, ID = 0x00000001, Total Memory Usage = 0x%x (%0.2f MB)", total_memory_usage, (float)total_memory_usage / (1024 * 1024))); const auto& root = m_tree->AddRoot(fmt::format("Process, ID = 0x00000001, Total memory usage = 0x%x (%0.2f MB)", total_memory_usage, (float)total_memory_usage / (1024 * 1024)));
union name64 union name64
{ {
@@ -106,21 +106,21 @@ void KernelExplorer::Update()
std::vector<lv2_obj_rec> lv2_types(256); std::vector<lv2_obj_rec> lv2_types(256);
lv2_types[SYS_MEM_OBJECT] = m_tree->AppendItem(root, "Memory"); lv2_types[SYS_MEM_OBJECT] = m_tree->AppendItem(root, "Memory");
lv2_types[SYS_MUTEX_OBJECT] = m_tree->AppendItem(root, "Mutexes"); lv2_types[SYS_MUTEX_OBJECT] = m_tree->AppendItem(root, "Mutexes");
lv2_types[SYS_COND_OBJECT] = m_tree->AppendItem(root, "Condition Variables"); lv2_types[SYS_COND_OBJECT] = m_tree->AppendItem(root, "Condition variables");
lv2_types[SYS_RWLOCK_OBJECT] = m_tree->AppendItem(root, "Reader Writer Locks"); lv2_types[SYS_RWLOCK_OBJECT] = m_tree->AppendItem(root, "Reader writer locks");
lv2_types[SYS_INTR_TAG_OBJECT] = m_tree->AppendItem(root, "Interrupt Tags"); lv2_types[SYS_INTR_TAG_OBJECT] = m_tree->AppendItem(root, "Interrupt tags");
lv2_types[SYS_INTR_SERVICE_HANDLE_OBJECT] = m_tree->AppendItem(root, "Interrupt Service Handles"); lv2_types[SYS_INTR_SERVICE_HANDLE_OBJECT] = m_tree->AppendItem(root, "Interrupt service handles");
lv2_types[SYS_EVENT_QUEUE_OBJECT] = m_tree->AppendItem(root, "Event Queues"); lv2_types[SYS_EVENT_QUEUE_OBJECT] = m_tree->AppendItem(root, "Event queues");
lv2_types[SYS_EVENT_PORT_OBJECT] = m_tree->AppendItem(root, "Event Ports"); lv2_types[SYS_EVENT_PORT_OBJECT] = m_tree->AppendItem(root, "Event ports");
lv2_types[SYS_TRACE_OBJECT] = m_tree->AppendItem(root, "Traces"); lv2_types[SYS_TRACE_OBJECT] = m_tree->AppendItem(root, "Traces");
lv2_types[SYS_SPUIMAGE_OBJECT] = m_tree->AppendItem(root, "SPU Images"); lv2_types[SYS_SPUIMAGE_OBJECT] = m_tree->AppendItem(root, "SPU Images");
lv2_types[SYS_PRX_OBJECT] = m_tree->AppendItem(root, "Modules"); lv2_types[SYS_PRX_OBJECT] = m_tree->AppendItem(root, "Modules");
lv2_types[SYS_SPUPORT_OBJECT] = m_tree->AppendItem(root, "SPU Ports"); lv2_types[SYS_SPUPORT_OBJECT] = m_tree->AppendItem(root, "SPU Ports");
lv2_types[SYS_LWMUTEX_OBJECT] = m_tree->AppendItem(root, "Light Weight Mutexes"); lv2_types[SYS_LWMUTEX_OBJECT] = m_tree->AppendItem(root, "Light weight mutexes");
lv2_types[SYS_TIMER_OBJECT] = m_tree->AppendItem(root, "Timers"); lv2_types[SYS_TIMER_OBJECT] = m_tree->AppendItem(root, "Timers");
lv2_types[SYS_SEMAPHORE_OBJECT] = m_tree->AppendItem(root, "Semaphores"); lv2_types[SYS_SEMAPHORE_OBJECT] = m_tree->AppendItem(root, "Semaphores");
lv2_types[SYS_LWCOND_OBJECT] = m_tree->AppendItem(root, "Light Weight Condition Variables"); lv2_types[SYS_LWCOND_OBJECT] = m_tree->AppendItem(root, "Light weight condition variables");
lv2_types[SYS_EVENT_FLAG_OBJECT] = m_tree->AppendItem(root, "Event Flags"); lv2_types[SYS_EVENT_FLAG_OBJECT] = m_tree->AppendItem(root, "Event flags");
idm::select<lv2_obj>([&](u32 id, lv2_obj& obj) idm::select<lv2_obj>([&](u32 id, lv2_obj& obj)
{ {
@@ -158,7 +158,7 @@ void KernelExplorer::Update()
case SYS_INTR_TAG_OBJECT: case SYS_INTR_TAG_OBJECT:
{ {
auto& tag = static_cast<lv2_int_tag&>(obj); auto& tag = static_cast<lv2_int_tag&>(obj);
m_tree->AppendItem(node, fmt::format("Intr Tag: ID = 0x%08x", id)); m_tree->AppendItem(node, fmt::format("Intr tag: ID = 0x%08x", id));
break; break;
} }
case SYS_INTR_SERVICE_HANDLE_OBJECT: case SYS_INTR_SERVICE_HANDLE_OBJECT:
@@ -170,14 +170,14 @@ void KernelExplorer::Update()
case SYS_EVENT_QUEUE_OBJECT: case SYS_EVENT_QUEUE_OBJECT:
{ {
auto& eq = static_cast<lv2_event_queue&>(obj); auto& eq = static_cast<lv2_event_queue&>(obj);
m_tree->AppendItem(node, fmt::format("Event Queue: ID = 0x%08x \"%s\", %s, Key = %#llx, Events = %zu/%d, Waiters = %zu", id, +name64(eq.name), m_tree->AppendItem(node, fmt::format("Event queue: ID = 0x%08x \"%s\", %s, Key = %#llx, Events = %zu/%d, Waiters = %zu", id, +name64(eq.name),
eq.type == SYS_SPU_QUEUE ? "SPU" : "PPU", eq.key, eq.events.size(), eq.size, eq.sq.size())); eq.type == SYS_SPU_QUEUE ? "SPU" : "PPU", eq.key, eq.events.size(), eq.size, eq.sq.size()));
break; break;
} }
case SYS_EVENT_PORT_OBJECT: case SYS_EVENT_PORT_OBJECT:
{ {
auto& ep = static_cast<lv2_event_port&>(obj); auto& ep = static_cast<lv2_event_port&>(obj);
m_tree->AppendItem(node, fmt::format("Event Port: ID = 0x%08x, Name = %#llx", id, ep.name)); m_tree->AppendItem(node, fmt::format("Event port: ID = 0x%08x, Name = %#llx", id, ep.name));
break; break;
} }
case SYS_TRACE_OBJECT: case SYS_TRACE_OBJECT:
@@ -216,7 +216,7 @@ void KernelExplorer::Update()
case SYS_SEMAPHORE_OBJECT: case SYS_SEMAPHORE_OBJECT:
{ {
auto& sema = static_cast<lv2_sema&>(obj); auto& sema = static_cast<lv2_sema&>(obj);
m_tree->AppendItem(node, fmt::format("Semaphore: ID = 0x%08x \"%s\", Count = %d, Max Count = %d, Waiters = %#zu", id, +name64(sema.name), m_tree->AppendItem(node, fmt::format("Semaphore: ID = 0x%08x \"%s\", Count = %d, Max count = %d, Waiters = %#zu", id, +name64(sema.name),
sema.val.load(), sema.max, sema.sq.size())); sema.val.load(), sema.max, sema.sq.size()));
break; break;
} }
@@ -229,7 +229,7 @@ void KernelExplorer::Update()
case SYS_EVENT_FLAG_OBJECT: case SYS_EVENT_FLAG_OBJECT:
{ {
auto& ef = static_cast<lv2_event_flag&>(obj); auto& ef = static_cast<lv2_event_flag&>(obj);
m_tree->AppendItem(node, fmt::format("Event Flag: ID = 0x%08x \"%s\", Type = 0x%x, Pattern = 0x%llx, Wq = %zu", id, +name64(ef.name), m_tree->AppendItem(node, fmt::format("Event flag: ID = 0x%08x \"%s\", Type = 0x%x, Pattern = 0x%llx, Wq = %zu", id, +name64(ef.name),
ef.type, ef.pattern.load(), +ef.waiters)); ef.type, ef.pattern.load(), +ef.waiters));
break; break;
} }
@@ -240,12 +240,12 @@ void KernelExplorer::Update()
} }
}); });
lv2_types.emplace_back(m_tree->AppendItem(root, "Memory Containers")); lv2_types.emplace_back(m_tree->AppendItem(root, "Memory containers"));
idm::select<lv2_memory_container>([&](u32 id, lv2_memory_container&) idm::select<lv2_memory_container>([&](u32 id, lv2_memory_container&)
{ {
lv2_types.back().count++; lv2_types.back().count++;
m_tree->AppendItem(lv2_types.back().node, fmt::format("Memory Container: ID = 0x%08x", id)); m_tree->AppendItem(lv2_types.back().node, fmt::format("Memory container: ID = 0x%08x", id));
}); });
lv2_types.emplace_back(m_tree->AppendItem(root, "PPU Threads")); lv2_types.emplace_back(m_tree->AppendItem(root, "PPU Threads"));
@@ -264,15 +264,15 @@ void KernelExplorer::Update()
m_tree->AppendItem(lv2_types.back().node, fmt::format("SPU Thread: ID = 0x%08x '%s'", id, spu.get_name())); m_tree->AppendItem(lv2_types.back().node, fmt::format("SPU Thread: ID = 0x%08x '%s'", id, spu.get_name()));
}); });
lv2_types.emplace_back(m_tree->AppendItem(root, "SPU Thread Groups")); lv2_types.emplace_back(m_tree->AppendItem(root, "SPU Thread groups"));
idm::select<lv2_spu_group>([&](u32 id, lv2_spu_group& tg) idm::select<lv2_spu_group>([&](u32 id, lv2_spu_group& tg)
{ {
lv2_types.back().count++; lv2_types.back().count++;
m_tree->AppendItem(lv2_types.back().node, fmt::format("SPU Thread Group: ID = 0x%08x '%s'", id, tg.name.c_str())); m_tree->AppendItem(lv2_types.back().node, fmt::format("SPU Thread group: ID = 0x%08x '%s'", id, tg.name.c_str()));
}); });
lv2_types.emplace_back(m_tree->AppendItem(root, "File Descriptors")); lv2_types.emplace_back(m_tree->AppendItem(root, "File descriptors"));
idm::select<lv2_fs_object>([&](u32 id, lv2_fs_object& fo) idm::select<lv2_fs_object>([&](u32 id, lv2_fs_object& fo)
{ {
+14 -14
View File
@@ -79,7 +79,7 @@ MainFrame::MainFrame()
wxMenuBar* menubar = new wxMenuBar(); wxMenuBar* menubar = new wxMenuBar();
wxMenu* menu_boot = new wxMenu(); wxMenu* menu_boot = new wxMenu();
menubar->Append(menu_boot, "&Boot"); menubar->Append(menu_boot, "&File");
menu_boot->Append(id_boot_elf, "Boot &ELF / SELF file"); menu_boot->Append(id_boot_elf, "Boot &ELF / SELF file");
menu_boot->Append(id_boot_game, "Boot &game"); menu_boot->Append(id_boot_game, "Boot &game");
menu_boot->AppendSeparator(); menu_boot->AppendSeparator();
@@ -92,28 +92,28 @@ MainFrame::MainFrame()
menu_sys->Append(id_sys_pause, "&Pause")->Enable(false); menu_sys->Append(id_sys_pause, "&Pause")->Enable(false);
menu_sys->Append(id_sys_stop, "&Stop\tCtrl + S")->Enable(false); menu_sys->Append(id_sys_stop, "&Stop\tCtrl + S")->Enable(false);
menu_sys->AppendSeparator(); menu_sys->AppendSeparator();
menu_sys->Append(id_sys_send_open_menu, "Send &open system menu cmd")->Enable(false); menu_sys->Append(id_sys_send_open_menu, "Press &PS button")->Enable(false);
menu_sys->Append(id_sys_send_exit, "Send &exit cmd")->Enable(false); menu_sys->Append(id_sys_send_exit, "Send &exit cmd")->Enable(false);
wxMenu* menu_conf = new wxMenu(); wxMenu* menu_conf = new wxMenu();
menubar->Append(menu_conf, "&Config"); menubar->Append(menu_conf, "&Config");
menu_conf->Append(id_config_emu, "&Settings"); menu_conf->Append(id_config_emu, "&Settings");
menu_conf->Append(id_config_pad, "&PAD Settings"); menu_conf->Append(id_config_pad, "&Controller settings");
menu_conf->AppendSeparator(); menu_conf->AppendSeparator();
menu_conf->Append(id_config_autopause_manager, "&Auto Pause Settings"); menu_conf->Append(id_config_autopause_manager, "&Auto pause settings");
//menu_conf->AppendSeparator(); //menu_conf->AppendSeparator();
//menu_conf->Append(id_config_vfs_manager, "Virtual &File System Manager"); //menu_conf->Append(id_config_vfs_manager, "Virtual &File system manager");
//menu_conf->Append(id_config_vhdd_manager, "Virtual &HDD Manager"); //menu_conf->Append(id_config_vhdd_manager, "Virtual &hard drive manager");
//menu_conf->Append(id_config_savedata_manager, "Save &Data Utility"); //menu_conf->Append(id_config_savedata_manager, "Save &data utility");
wxMenu* menu_tools = new wxMenu(); wxMenu* menu_tools = new wxMenu();
menubar->Append(menu_tools, "&Tools"); menubar->Append(menu_tools, "&Tools");
//menu_tools->Append(id_tools_compiler, "&ELF Compiler"); //menu_tools->Append(id_tools_compiler, "&ELF Compiler");
menu_tools->Append(id_tools_cg_disasm, "&Cg Disasm")->Enable(); menu_tools->Append(id_tools_cg_disasm, "&Cg Disasm")->Enable();
menu_tools->Append(id_tools_kernel_explorer, "&Kernel Explorer")->Enable(false); menu_tools->Append(id_tools_kernel_explorer, "&Kernel explorer")->Enable(false);
menu_tools->Append(id_tools_memory_viewer, "&Memory Viewer")->Enable(false); menu_tools->Append(id_tools_memory_viewer, "&Memory viewer")->Enable(false);
menu_tools->Append(id_tools_rsx_debugger, "&RSX Debugger")->Enable(false); menu_tools->Append(id_tools_rsx_debugger, "&RSX Debugger")->Enable(false);
menu_tools->Append(id_tools_string_search, "&String Search")->Enable(false); menu_tools->Append(id_tools_string_search, "&String search")->Enable(false);
menu_tools->AppendSeparator(); menu_tools->AppendSeparator();
menu_tools->Append(id_tools_decrypt_sprx_libraries, "&Decrypt SPRX libraries"); menu_tools->Append(id_tools_decrypt_sprx_libraries, "&Decrypt SPRX libraries");
menu_tools->Append(id_tools_install_firmware, "&Install Firmware"); menu_tools->Append(id_tools_install_firmware, "&Install Firmware");
@@ -130,7 +130,7 @@ MainFrame::MainFrame()
m_game_viewer = new GameViewer(this); m_game_viewer = new GameViewer(this);
m_debugger_frame = new DebuggerPanel(this); m_debugger_frame = new DebuggerPanel(this);
AddPane(m_game_viewer, "Game List", wxAUI_DOCK_CENTRE); AddPane(m_game_viewer, "PS3 software", wxAUI_DOCK_CENTRE);
AddPane(m_log_frame, "Log", wxAUI_DOCK_BOTTOM); AddPane(m_log_frame, "Log", wxAUI_DOCK_BOTTOM);
AddPane(m_debugger_frame, "Debugger", wxAUI_DOCK_RIGHT); AddPane(m_debugger_frame, "Debugger", wxAUI_DOCK_RIGHT);
@@ -634,7 +634,7 @@ void MainFrame::UpdateUI(wxEvent& event)
// Emulation // Emulation
wxMenuItem& pause = *menubar.FindItem(id_sys_pause); wxMenuItem& pause = *menubar.FindItem(id_sys_pause);
wxMenuItem& stop = *menubar.FindItem(id_sys_stop); wxMenuItem& stop = *menubar.FindItem(id_sys_stop);
pause.SetItemLabel(is_running ? "&Pause\tCtrl + P" : is_ready ? "&Start\tCtrl + E" : "&Resume\tCtrl + E"); pause.SetItemLabel(is_running ? "&Pause\tCtrl + P" : is_ready ? "&Start\tCtrl + F" : "&Resume\tCtrl + F");
pause.Enable(!is_stopped); pause.Enable(!is_stopped);
stop.Enable(!is_stopped); stop.Enable(!is_stopped);
@@ -642,7 +642,7 @@ void MainFrame::UpdateUI(wxEvent& event)
wxMenuItem& send_exit = *menubar.FindItem(id_sys_send_exit); wxMenuItem& send_exit = *menubar.FindItem(id_sys_send_exit);
wxMenuItem& send_open_menu = *menubar.FindItem(id_sys_send_open_menu); wxMenuItem& send_open_menu = *menubar.FindItem(id_sys_send_open_menu);
bool enable_commands = !is_stopped; bool enable_commands = !is_stopped;
send_open_menu.SetItemLabel(wxString::Format("Send &%s system menu cmd", (m_sys_menu_opened ? "close" : "open"))); send_open_menu.SetItemLabel(wxString::Format("Press &PS buton %s", (m_sys_menu_opened ? "close" : "open")));
send_open_menu.Enable(enable_commands); send_open_menu.Enable(enable_commands);
send_exit.Enable(enable_commands); send_exit.Enable(enable_commands);
@@ -669,7 +669,7 @@ void MainFrame::OnKeyDown(wxKeyEvent& event)
{ {
switch(event.GetKeyCode()) switch(event.GetKeyCode())
{ {
case 'E': case 'e': if(Emu.IsPaused()) Emu.Resume(); else if(Emu.IsReady()) Emu.Run(); return; case 'F': case 'f': if(Emu.IsPaused()) Emu.Resume(); else if(Emu.IsReady()) Emu.Run(); return;
case 'P': case 'p': if(Emu.IsRunning()) Emu.Pause(); return; case 'P': case 'p': if(Emu.IsRunning()) Emu.Pause(); return;
case 'S': case 's': if(!Emu.IsStopped()) Emu.Stop(); return; case 'S': case 's': if(!Emu.IsStopped()) Emu.Stop(); return;
case 'R': case 'r': if(!Emu.GetPath().empty()) {Emu.Stop(); Emu.Run();} return; case 'R': case 'r': if(!Emu.GetPath().empty()) {Emu.Stop(); Emu.Run();} return;
+1 -1
View File
@@ -6,7 +6,7 @@
#include "MemoryStringSearcher.h" #include "MemoryStringSearcher.h"
MemoryStringSearcher::MemoryStringSearcher(wxWindow* parent) MemoryStringSearcher::MemoryStringSearcher(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "String Searcher", wxDefaultPosition, wxSize(545, 64)) : wxDialog(parent, wxID_ANY, "String searcher", wxDefaultPosition, wxSize(545, 64))
, exit(false) , exit(false)
{ {
this->SetBackgroundColour(wxColour(240,240,240)); this->SetBackgroundColour(wxColour(240,240,240));
+4 -4
View File
@@ -5,7 +5,7 @@
#include "MemoryViewer.h" #include "MemoryViewer.h"
MemoryViewerPanel::MemoryViewerPanel(wxWindow* parent) MemoryViewerPanel::MemoryViewerPanel(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "Memory Viewer", wxDefaultPosition, wxSize(700, 450)) : wxDialog(parent, wxID_ANY, "Memory viewer", wxDefaultPosition, wxSize(700, 450))
{ {
exit = false; exit = false;
m_addr = 0; m_addr = 0;
@@ -19,7 +19,7 @@ MemoryViewerPanel::MemoryViewerPanel(wxWindow* parent)
wxBoxSizer* s_tools = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* s_tools = new wxBoxSizer(wxHORIZONTAL);
//Tools: Memory Viewer Options //Tools: Memory Viewer Options
wxStaticBoxSizer* s_tools_mem = new wxStaticBoxSizer(wxHORIZONTAL, this, "Memory Viewer Options"); wxStaticBoxSizer* s_tools_mem = new wxStaticBoxSizer(wxHORIZONTAL, this, "Memory viewer options");
wxStaticBoxSizer* s_tools_mem_addr = new wxStaticBoxSizer(wxHORIZONTAL, this, "Address"); wxStaticBoxSizer* s_tools_mem_addr = new wxStaticBoxSizer(wxHORIZONTAL, this, "Address");
t_addr = new wxTextCtrl(this, wxID_ANY, "00000000", wxDefaultPosition, wxSize(60, -1), wxTE_PROCESS_ENTER); t_addr = new wxTextCtrl(this, wxID_ANY, "00000000", wxDefaultPosition, wxSize(60, -1), wxTE_PROCESS_ENTER);
@@ -46,7 +46,7 @@ MemoryViewerPanel::MemoryViewerPanel(wxWindow* parent)
s_tools_mem->Add(s_tools_mem_buttons); s_tools_mem->Add(s_tools_mem_buttons);
//Tools: Raw Image Preview Options //Tools: Raw Image Preview Options
wxStaticBoxSizer* s_tools_img = new wxStaticBoxSizer(wxHORIZONTAL, this, "Raw Image Preview"); wxStaticBoxSizer* s_tools_img = new wxStaticBoxSizer(wxHORIZONTAL, this, "Raw image preview");
wxStaticBoxSizer* s_tools_img_size = new wxStaticBoxSizer(wxHORIZONTAL, this, "Size"); wxStaticBoxSizer* s_tools_img_size = new wxStaticBoxSizer(wxHORIZONTAL, this, "Size");
sc_img_size_x = new wxSpinCtrl(this, wxID_ANY, "256", wxDefaultPosition, wxSize(60, -1)); sc_img_size_x = new wxSpinCtrl(this, wxID_ANY, "256", wxDefaultPosition, wxSize(60, -1));
@@ -223,7 +223,7 @@ void MemoryViewerPanel::ShowMemory()
void MemoryViewerPanel::ShowImage(wxWindow* parent, u32 addr, int mode, u32 width, u32 height, bool flipv) void MemoryViewerPanel::ShowImage(wxWindow* parent, u32 addr, int mode, u32 width, u32 height, bool flipv)
{ {
wxString title = wxString::Format("Raw Image @ 0x%x", addr); wxString title = wxString::Format("Raw image @ 0x%x", addr);
wxDialog* f_image_viewer = new wxDialog(parent, wxID_ANY, title, wxDefaultPosition, wxDefaultSize, wxMINIMIZE_BOX | wxCLOSE_BOX | wxCAPTION | wxCLIP_CHILDREN); wxDialog* f_image_viewer = new wxDialog(parent, wxID_ANY, title, wxDefaultPosition, wxDefaultSize, wxMINIMIZE_BOX | wxCLOSE_BOX | wxCAPTION | wxCLIP_CHILDREN);
f_image_viewer->SetBackgroundColour(wxColour(240,240,240)); //This fix the ugly background color under Windows f_image_viewer->SetBackgroundColour(wxColour(240,240,240)); //This fix the ugly background color under Windows
+14 -14
View File
@@ -8,7 +8,7 @@
extern KeyboardPadConfig g_kbpad_config; extern KeyboardPadConfig g_kbpad_config;
PADManager::PADManager(wxWindow* parent) PADManager::PADManager(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "PAD Settings") : wxDialog(parent, wxID_ANY, "Controller settings")
, m_button_id(0) , m_button_id(0)
, m_key_pressed(false) , m_key_pressed(false)
{ {
@@ -18,20 +18,20 @@ PADManager::PADManager(wxWindow* parent)
wxBoxSizer* s_subpanel = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel = new wxBoxSizer(wxVERTICAL);
wxBoxSizer* s_subpanel2 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel2 = new wxBoxSizer(wxVERTICAL);
// Left Analog Stick // Left analog Stick
wxStaticBoxSizer* s_round_stick_l = new wxStaticBoxSizer(wxVERTICAL, this, "Left Analog Stick"); wxStaticBoxSizer* s_round_stick_l = new wxStaticBoxSizer(wxVERTICAL, this, "Left analog stick");
wxBoxSizer* s_subpanel_lstick_1 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_lstick_1 = new wxBoxSizer(wxVERTICAL);
wxBoxSizer* s_subpanel_lstick_2 = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* s_subpanel_lstick_2 = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer* s_subpanel_lstick_3 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_lstick_3 = new wxBoxSizer(wxVERTICAL);
// D-Pad // Directional pad
wxStaticBoxSizer* s_round_pad_controls = new wxStaticBoxSizer(wxVERTICAL, this, "D-Pad"); wxStaticBoxSizer* s_round_pad_controls = new wxStaticBoxSizer(wxVERTICAL, this, "Directional pad");
wxBoxSizer* s_subpanel_pad_1 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_pad_1 = new wxBoxSizer(wxVERTICAL);
wxBoxSizer* s_subpanel_pad_2 = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* s_subpanel_pad_2 = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer* s_subpanel_pad_3 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_pad_3 = new wxBoxSizer(wxVERTICAL);
// Left shifts // L buttons
wxStaticBoxSizer* s_round_pad_shifts_l = new wxStaticBoxSizer(wxVERTICAL, this, "Left Shifts"); wxStaticBoxSizer* s_round_pad_shifts_l = new wxStaticBoxSizer(wxVERTICAL, this, "L buttons");
wxStaticBoxSizer* s_round_pad_l1 = new wxStaticBoxSizer(wxVERTICAL, this, "L1"); wxStaticBoxSizer* s_round_pad_l1 = new wxStaticBoxSizer(wxVERTICAL, this, "L1");
wxStaticBoxSizer* s_round_pad_l2 = new wxStaticBoxSizer(wxVERTICAL, this, "L2"); wxStaticBoxSizer* s_round_pad_l2 = new wxStaticBoxSizer(wxVERTICAL, this, "L2");
wxStaticBoxSizer* s_round_pad_l3 = new wxStaticBoxSizer(wxVERTICAL, this, "L3"); wxStaticBoxSizer* s_round_pad_l3 = new wxStaticBoxSizer(wxVERTICAL, this, "L3");
@@ -41,8 +41,8 @@ PADManager::PADManager(wxWindow* parent)
wxStaticBoxSizer* s_round_pad_select = new wxStaticBoxSizer(wxVERTICAL, this, "Select"); wxStaticBoxSizer* s_round_pad_select = new wxStaticBoxSizer(wxVERTICAL, this, "Select");
wxStaticBoxSizer* s_round_pad_start = new wxStaticBoxSizer(wxVERTICAL, this, "Start"); wxStaticBoxSizer* s_round_pad_start = new wxStaticBoxSizer(wxVERTICAL, this, "Start");
// Right shifts // R buttons
wxStaticBoxSizer* s_round_pad_shifts_r = new wxStaticBoxSizer(wxVERTICAL, this, "Right Shifts"); wxStaticBoxSizer* s_round_pad_shifts_r = new wxStaticBoxSizer(wxVERTICAL, this, "R buttons");
wxStaticBoxSizer* s_round_pad_r1 = new wxStaticBoxSizer(wxVERTICAL, this, "R1"); wxStaticBoxSizer* s_round_pad_r1 = new wxStaticBoxSizer(wxVERTICAL, this, "R1");
wxStaticBoxSizer* s_round_pad_r2 = new wxStaticBoxSizer(wxVERTICAL, this, "R2"); wxStaticBoxSizer* s_round_pad_r2 = new wxStaticBoxSizer(wxVERTICAL, this, "R2");
wxStaticBoxSizer* s_round_pad_r3 = new wxStaticBoxSizer(wxVERTICAL, this, "R3"); wxStaticBoxSizer* s_round_pad_r3 = new wxStaticBoxSizer(wxVERTICAL, this, "R3");
@@ -57,8 +57,8 @@ PADManager::PADManager(wxWindow* parent)
wxBoxSizer* s_subpanel_buttons_2 = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* s_subpanel_buttons_2 = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer* s_subpanel_buttons_3 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_buttons_3 = new wxBoxSizer(wxVERTICAL);
// Right Analog Stick // Right analog stick
wxStaticBoxSizer* s_round_stick_r = new wxStaticBoxSizer(wxVERTICAL, this, "Right Analog Stick"); wxStaticBoxSizer* s_round_stick_r = new wxStaticBoxSizer(wxVERTICAL, this, "Right analog stick");
wxBoxSizer* s_subpanel_rstick_1 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_rstick_1 = new wxBoxSizer(wxVERTICAL);
wxBoxSizer* s_subpanel_rstick_2 = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* s_subpanel_rstick_2 = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer* s_subpanel_rstick_3 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_subpanel_rstick_3 = new wxBoxSizer(wxVERTICAL);
@@ -119,13 +119,13 @@ PADManager::PADManager(wxWindow* parent)
s_subpanel_lstick_2->Add(b_right_lstick); s_subpanel_lstick_2->Add(b_right_lstick);
s_subpanel_lstick_3->Add(b_down_lstick); s_subpanel_lstick_3->Add(b_down_lstick);
// D-Pad // Directional pad
s_subpanel_pad_1->Add(b_up); s_subpanel_pad_1->Add(b_up);
s_subpanel_pad_2->Add(b_left); s_subpanel_pad_2->Add(b_left);
s_subpanel_pad_2->Add(b_right); s_subpanel_pad_2->Add(b_right);
s_subpanel_pad_3->Add(b_down); s_subpanel_pad_3->Add(b_down);
// Left shifts // L button
s_round_pad_l1->Add(b_shift_l1); s_round_pad_l1->Add(b_shift_l1);
s_round_pad_l2->Add(b_shift_l2); s_round_pad_l2->Add(b_shift_l2);
s_round_pad_l3->Add(b_shift_l3); s_round_pad_l3->Add(b_shift_l3);
@@ -134,7 +134,7 @@ PADManager::PADManager(wxWindow* parent)
s_round_pad_select->Add(b_select); s_round_pad_select->Add(b_select);
s_round_pad_start->Add(b_start); s_round_pad_start->Add(b_start);
// Right shifts // R button
s_round_pad_r1->Add(b_shift_r1); s_round_pad_r1->Add(b_shift_r1);
s_round_pad_r2->Add(b_shift_r2); s_round_pad_r2->Add(b_shift_r2);
s_round_pad_r3->Add(b_shift_r3); s_round_pad_r3->Add(b_shift_r3);
+40 -40
View File
@@ -20,7 +20,7 @@ enum GCMEnumTypes
}; };
RSXDebugger::RSXDebugger(wxWindow* parent) RSXDebugger::RSXDebugger(wxWindow* parent)
: wxDialog(parent, wxID_ANY, "RSX Debugger", wxDefaultPosition, wxSize(700, 450)) : wxDialog(parent, wxID_ANY, "RSX debugger", wxDefaultPosition, wxSize(700, 450))
, m_item_count(37) , m_item_count(37)
, m_addr(0x0) , m_addr(0x0)
, m_cur_texture(0) , m_cur_texture(0)
@@ -33,7 +33,7 @@ RSXDebugger::RSXDebugger(wxWindow* parent)
wxBoxSizer* s_tools = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_tools = new wxBoxSizer(wxVERTICAL);
// Controls // Controls
wxStaticBoxSizer* s_controls = new wxStaticBoxSizer(wxHORIZONTAL, this, "RSX Debugger Controls"); wxStaticBoxSizer* s_controls = new wxStaticBoxSizer(wxHORIZONTAL, this, "RSX debugger controls");
// Controls: Address // Controls: Address
wxStaticBoxSizer* s_controls_addr = new wxStaticBoxSizer(wxHORIZONTAL, this, "Address:"); wxStaticBoxSizer* s_controls_addr = new wxStaticBoxSizer(wxHORIZONTAL, this, "Address:");
@@ -84,9 +84,9 @@ RSXDebugger::RSXDebugger(wxWindow* parent)
wxPanel* p_texture = new wxPanel(nb_rsx, wxID_ANY); wxPanel* p_texture = new wxPanel(nb_rsx, wxID_ANY);
wxPanel* p_settings = new wxPanel(nb_rsx, wxID_ANY); wxPanel* p_settings = new wxPanel(nb_rsx, wxID_ANY);
nb_rsx->AddPage(p_commands, "RSX Commands"); nb_rsx->AddPage(p_commands, "RSX commands");
nb_rsx->AddPage(p_captured_frame, "Captured Frame"); nb_rsx->AddPage(p_captured_frame, "Captured frame");
nb_rsx->AddPage(p_captured_draw_calls, "Captured Draw Calls"); nb_rsx->AddPage(p_captured_draw_calls, "Capturded draw calls");
nb_rsx->AddPage(p_flags, "Flags"); nb_rsx->AddPage(p_flags, "Flags");
nb_rsx->AddPage(p_lightning, "Lightning"); nb_rsx->AddPage(p_lightning, "Lightning");
@@ -177,12 +177,12 @@ RSXDebugger::RSXDebugger(wxWindow* parent)
//Buffers //Buffers
wxBoxSizer* s_buffers1 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_buffers1 = new wxBoxSizer(wxVERTICAL);
wxBoxSizer* s_buffers2 = new wxBoxSizer(wxVERTICAL); wxBoxSizer* s_buffers2 = new wxBoxSizer(wxVERTICAL);
wxStaticBoxSizer* s_buffers_colorA = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color Buffer A"); wxStaticBoxSizer* s_buffers_colorA = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color buffer A");
wxStaticBoxSizer* s_buffers_colorB = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color Buffer B"); wxStaticBoxSizer* s_buffers_colorB = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color buffer B");
wxStaticBoxSizer* s_buffers_colorC = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color Buffer C"); wxStaticBoxSizer* s_buffers_colorC = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color buffer C");
wxStaticBoxSizer* s_buffers_colorD = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color Buffer D"); wxStaticBoxSizer* s_buffers_colorD = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Color buffer D");
wxStaticBoxSizer* s_buffers_depth = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Depth Buffer"); wxStaticBoxSizer* s_buffers_depth = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Depth buffer");
wxStaticBoxSizer* s_buffers_stencil = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Stencil Buffer"); wxStaticBoxSizer* s_buffers_stencil = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Stencil buffer");
wxStaticBoxSizer* s_buffers_text = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Texture"); wxStaticBoxSizer* s_buffers_text = new wxStaticBoxSizer(wxHORIZONTAL, p_buffers, "Texture");
//Buffers and textures //Buffers and textures
@@ -790,7 +790,7 @@ void RSXDebugger::GetFlags()
LIST_FLAGS_ADD("Stencil test", render->m_set_stencil_test); LIST_FLAGS_ADD("Stencil test", render->m_set_stencil_test);
LIST_FLAGS_ADD("Primitive restart", render->m_set_restart_index); LIST_FLAGS_ADD("Primitive restart", render->m_set_restart_index);
LIST_FLAGS_ADD("Two sided lighting", render->m_set_two_side_light_enable); LIST_FLAGS_ADD("Two sided lighting", render->m_set_two_side_light_enable);
LIST_FLAGS_ADD("Point Sprite", render->m_set_point_sprite_control); LIST_FLAGS_ADD("Point sprite", render->m_set_point_sprite_control);
LIST_FLAGS_ADD("Lighting ", render->m_set_specular); LIST_FLAGS_ADD("Lighting ", render->m_set_specular);
*/ */
@@ -885,11 +885,11 @@ void RSXDebugger::GetSettings()
render->m_color_mask_g, render->m_color_mask_g,
render->m_color_mask_b, render->m_color_mask_b,
render->m_color_mask_a)); render->m_color_mask_a));
LIST_SETTINGS_ADD("Context DMA Color A", wxString::Format("0x%x", render->m_context_dma_color_a)); LIST_SETTINGS_ADD("Context DMA color A", wxString::Format("0x%x", render->m_context_dma_color_a));
LIST_SETTINGS_ADD("Context DMA Color B", wxString::Format("0x%x", render->m_context_dma_color_b)); LIST_SETTINGS_ADD("Context DMA color B", wxString::Format("0x%x", render->m_context_dma_color_b));
LIST_SETTINGS_ADD("Context DMA Color C", wxString::Format("0x%x", render->m_context_dma_color_c)); LIST_SETTINGS_ADD("Context DMA color C", wxString::Format("0x%x", render->m_context_dma_color_c));
LIST_SETTINGS_ADD("Context DMA Color D", wxString::Format("0x%x", render->m_context_dma_color_d)); LIST_SETTINGS_ADD("Context DMA color D", wxString::Format("0x%x", render->m_context_dma_color_d));
LIST_SETTINGS_ADD("Context DMA Zeta", wxString::Format("0x%x", render->m_context_dma_z)); LIST_SETTINGS_ADD("Context DMA zeta", wxString::Format("0x%x", render->m_context_dma_z));
LIST_SETTINGS_ADD("Depth bounds", wxString::Format("Min:%f, Max:%f", render->m_depth_bounds_min, render->m_depth_bounds_max)); LIST_SETTINGS_ADD("Depth bounds", wxString::Format("Min:%f, Max:%f", render->m_depth_bounds_min, render->m_depth_bounds_max));
LIST_SETTINGS_ADD("Depth func", !(render->m_set_depth_func) ? "(none)" : wxString::Format("0x%x (%s)", LIST_SETTINGS_ADD("Depth func", !(render->m_set_depth_func) ? "(none)" : wxString::Format("0x%x (%s)",
render->m_depth_func, render->m_depth_func,
@@ -905,16 +905,16 @@ void RSXDebugger::GetSettings()
LIST_SETTINGS_ADD("Stencil func", !(render->m_set_stencil_func) ? "(none)" : wxString::Format("0x%x (%s)", LIST_SETTINGS_ADD("Stencil func", !(render->m_set_stencil_func) ? "(none)" : wxString::Format("0x%x (%s)",
render->m_stencil_func, render->m_stencil_func,
ParseGCMEnum(render->m_stencil_func, CELL_GCM_ENUM))); ParseGCMEnum(render->m_stencil_func, CELL_GCM_ENUM)));
LIST_SETTINGS_ADD("Surface Pitch A", wxString::Format("0x%x", render->m_surface_pitch_a)); LIST_SETTINGS_ADD("Surface pitch A", wxString::Format("0x%x", render->m_surface_pitch_a));
LIST_SETTINGS_ADD("Surface Pitch B", wxString::Format("0x%x", render->m_surface_pitch_b)); LIST_SETTINGS_ADD("Surface pitch B", wxString::Format("0x%x", render->m_surface_pitch_b));
LIST_SETTINGS_ADD("Surface Pitch C", wxString::Format("0x%x", render->m_surface_pitch_c)); LIST_SETTINGS_ADD("Surface pitch C", wxString::Format("0x%x", render->m_surface_pitch_c));
LIST_SETTINGS_ADD("Surface Pitch D", wxString::Format("0x%x", render->m_surface_pitch_d)); LIST_SETTINGS_ADD("Surface pitch D", wxString::Format("0x%x", render->m_surface_pitch_d));
LIST_SETTINGS_ADD("Surface Pitch Z", wxString::Format("0x%x", render->m_surface_pitch_z)); LIST_SETTINGS_ADD("Surface pitch Z", wxString::Format("0x%x", render->m_surface_pitch_z));
LIST_SETTINGS_ADD("Surface Offset A", wxString::Format("0x%x", render->m_surface_offset_a)); LIST_SETTINGS_ADD("Surface offset A", wxString::Format("0x%x", render->m_surface_offset_a));
LIST_SETTINGS_ADD("Surface Offset B", wxString::Format("0x%x", render->m_surface_offset_b)); LIST_SETTINGS_ADD("Surface offset B", wxString::Format("0x%x", render->m_surface_offset_b));
LIST_SETTINGS_ADD("Surface Offset C", wxString::Format("0x%x", render->m_surface_offset_c)); LIST_SETTINGS_ADD("Surface offset C", wxString::Format("0x%x", render->m_surface_offset_c));
LIST_SETTINGS_ADD("Surface Offset D", wxString::Format("0x%x", render->m_surface_offset_d)); LIST_SETTINGS_ADD("Surface offset D", wxString::Format("0x%x", render->m_surface_offset_d));
LIST_SETTINGS_ADD("Surface Offset Z", wxString::Format("0x%x", render->m_surface_offset_z)); LIST_SETTINGS_ADD("Surface offset Z", wxString::Format("0x%x", render->m_surface_offset_z));
LIST_SETTINGS_ADD("Viewport", wxString::Format("X:%d, Y:%d, W:%d, H:%d", LIST_SETTINGS_ADD("Viewport", wxString::Format("X:%d, Y:%d, W:%d, H:%d",
render->m_viewport_x, render->m_viewport_x,
render->m_viewport_y, render->m_viewport_y,
@@ -972,8 +972,8 @@ void RSXDebugger::SetPrograms(wxListEvent& event)
// wxDEFAULT_DIALOG_STYLE | wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxRESIZE_BORDER); // wxDEFAULT_DIALOG_STYLE | wxMINIMIZE_BOX | wxMAXIMIZE_BOX | wxRESIZE_BORDER);
//wxBoxSizer& s_panel = *new wxBoxSizer(wxHORIZONTAL); //wxBoxSizer& s_panel = *new wxBoxSizer(wxHORIZONTAL);
//wxStaticBoxSizer& s_vp_box = *new wxStaticBoxSizer(wxHORIZONTAL, &d_editor, "Vertex Program"); //wxStaticBoxSizer& s_vp_box = *new wxStaticBoxSizer(wxHORIZONTAL, &d_editor, "Vertex program");
//wxStaticBoxSizer& s_fp_box = *new wxStaticBoxSizer(wxHORIZONTAL, &d_editor, "Fragment Program"); //wxStaticBoxSizer& s_fp_box = *new wxStaticBoxSizer(wxHORIZONTAL, &d_editor, "Fragment program");
//wxTextCtrl* t_vp_edit = new wxTextCtrl(&d_editor, wxID_ANY, program.vp_shader, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); //wxTextCtrl* t_vp_edit = new wxTextCtrl(&d_editor, wxID_ANY, program.vp_shader, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
//wxTextCtrl* t_fp_edit = new wxTextCtrl(&d_editor, wxID_ANY, program.fp_shader, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE); //wxTextCtrl* t_fp_edit = new wxTextCtrl(&d_editor, wxID_ANY, program.fp_shader, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
//t_vp_edit->SetFont(wxFont(8, wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL)); //t_vp_edit->SetFont(wxFont(8, wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL));
@@ -1017,10 +1017,10 @@ const char* RSXDebugger::ParseGCMEnum(u32 value, u32 type)
case 0x0200: return "Never"; case 0x0200: return "Never";
case 0x0201: return "Less"; case 0x0201: return "Less";
case 0x0202: return "Equal"; case 0x0202: return "Equal";
case 0x0203: return "Less or Equal"; case 0x0203: return "Less or equal";
case 0x0204: return "Greater"; case 0x0204: return "Greater";
case 0x0205: return "Not Equal"; case 0x0205: return "Not equal";
case 0x0206: return "Greater or Equal"; case 0x0206: return "Greater or equal";
case 0x0207: return "Always"; case 0x0207: return "Always";
case 0x0: return "Zero"; case 0x0: return "Zero";
@@ -1043,12 +1043,12 @@ const char* RSXDebugger::ParseGCMEnum(u32 value, u32 type)
case 0x8007: return "Min"; case 0x8007: return "Min";
case 0x8008: return "Max"; case 0x8008: return "Max";
case 0x800A: return "Substract"; case 0x800A: return "Substract";
case 0x800B: return "Reverse Substract"; case 0x800B: return "Reverse substract";
case 0xF005: return "Reverse Substract Signed"; case 0xF005: return "Reverse substract signed";
case 0xF006: return "Add Signed"; case 0xF006: return "Add signed";
case 0xF007: return "Reverse Add Signed"; case 0xF007: return "Reverse add signed";
default: return "Wrong Value!"; default: return "Wrong value!";
} }
} }
case CELL_GCM_PRIMITIVE_ENUM: case CELL_GCM_PRIMITIVE_ENUM:
@@ -1066,7 +1066,7 @@ const char* RSXDebugger::ParseGCMEnum(u32 value, u32 type)
case 9: return "QUAD_STRIP"; case 9: return "QUAD_STRIP";
case 10: return "POLYGON"; case 10: return "POLYGON";
default: return "Wrong Value!"; default: return "Wrong value!";
} }
} }
default: return "Unknown!"; default: return "Unknown!";
@@ -1136,7 +1136,7 @@ wxString RSXDebugger::DisAsmCommand(u32 cmd, u32 count, u32 currentAddr, u32 ioA
break; break;
case_16(NV4097_SET_TEXTURE_OFFSET, 0x20): case_16(NV4097_SET_TEXTURE_OFFSET, 0x20):
DISASM("Texture Offset[%d]: %08x", index, (u32)args[0]); DISASM("Texture offset[%d]: %08x", index, (u32)args[0]);
switch ((args[1] & 0x3) - 1) switch ((args[1] & 0x3) - 1)
{ {
case CELL_GCM_LOCATION_LOCAL: DISASM("(Local memory);"); break; case CELL_GCM_LOCATION_LOCAL: DISASM("(Local memory);"); break;
@@ -1162,7 +1162,7 @@ wxString RSXDebugger::DisAsmCommand(u32 cmd, u32 count, u32 currentAddr, u32 ioA
if((cmd & RSX_METHOD_NON_INCREMENT_CMD_MASK) == RSX_METHOD_NON_INCREMENT_CMD) if((cmd & RSX_METHOD_NON_INCREMENT_CMD_MASK) == RSX_METHOD_NON_INCREMENT_CMD)
{ {
DISASM("Non Increment cmd"); DISASM("Non increment cmd");
} }
DISASM("[0x%08x(", cmd); DISASM("[0x%08x(", cmd);
+26 -26
View File
@@ -270,21 +270,21 @@ SettingsDialog::SettingsDialog(wxWindow* parent, const std::string& path)
s_module_search_box->Bind(wxEVT_TEXT, &SettingsDialog::OnSearchBoxTextChanged, this); s_module_search_box->Bind(wxEVT_TEXT, &SettingsDialog::OnSearchBoxTextChanged, this);
// Graphics // Graphics
wxStaticBoxSizer* s_round_gs_render = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Render"); wxStaticBoxSizer* s_round_gs_render = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Rendering API");
wxStaticBoxSizer* s_round_gs_d3d_adapter = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "D3D Adapter"); wxStaticBoxSizer* s_round_gs_d3d_adapter = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "D3D Adapter");
wxStaticBoxSizer* s_round_gs_res = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Resolution"); wxStaticBoxSizer* s_round_gs_res = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Resolution");
wxStaticBoxSizer* s_round_gs_aspect = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Aspect ratio"); wxStaticBoxSizer* s_round_gs_aspect = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Aspect ratio");
wxStaticBoxSizer* s_round_gs_frame_limit = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Frame limit"); wxStaticBoxSizer* s_round_gs_frame_limit = new wxStaticBoxSizer(wxVERTICAL, p_graphics, "Frame limit");
// Input / Output // Input / Output
wxStaticBoxSizer* s_round_io_pad_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Pad Handler"); wxStaticBoxSizer* s_round_io_pad_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Controller handler");
wxStaticBoxSizer* s_round_io_keyboard_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Keyboard Handler"); wxStaticBoxSizer* s_round_io_keyboard_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Keyboard handler");
wxStaticBoxSizer* s_round_io_mouse_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Mouse Handler"); wxStaticBoxSizer* s_round_io_mouse_handler = new wxStaticBoxSizer(wxVERTICAL, p_io, "Mouse handler");
wxStaticBoxSizer* s_round_io_camera = new wxStaticBoxSizer(wxVERTICAL, p_io, "Camera"); wxStaticBoxSizer* s_round_io_camera = new wxStaticBoxSizer(wxVERTICAL, p_io, "Camera");
wxStaticBoxSizer* s_round_io_camera_type = new wxStaticBoxSizer(wxVERTICAL, p_io, "Camera type"); wxStaticBoxSizer* s_round_io_camera_type = new wxStaticBoxSizer(wxVERTICAL, p_io, "Camera type");
// Audio // Audio
wxStaticBoxSizer* s_round_audio_out = new wxStaticBoxSizer(wxVERTICAL, p_audio, "Audio Out"); wxStaticBoxSizer* s_round_audio_out = new wxStaticBoxSizer(wxVERTICAL, p_audio, "Audio out");
// Networking // Networking
wxStaticBoxSizer* s_round_net_status = new wxStaticBoxSizer(wxVERTICAL, p_networking, "Connection status"); wxStaticBoxSizer* s_round_net_status = new wxStaticBoxSizer(wxVERTICAL, p_networking, "Connection status");
@@ -313,23 +313,23 @@ SettingsDialog::SettingsDialog(wxWindow* parent, const std::string& path)
wxCheckBox* chbox_core_load_liblv2 = new wxCheckBox(p_core, wxID_ANY, "Load liblv2.sprx only"); wxCheckBox* chbox_core_load_liblv2 = new wxCheckBox(p_core, wxID_ANY, "Load liblv2.sprx only");
wxCheckBox* chbox_core_load_libreq = new wxCheckBox(p_core, wxID_ANY, "Load required libraries"); wxCheckBox* chbox_core_load_libreq = new wxCheckBox(p_core, wxID_ANY, "Load required libraries");
wxCheckBox* chbox_vfs_enable_host_root = new wxCheckBox(p_system, wxID_ANY, "Enable /host_root/"); wxCheckBox* chbox_vfs_enable_host_root = new wxCheckBox(p_system, wxID_ANY, "Enable /host_root/");
wxCheckBox* chbox_gs_log_prog = new wxCheckBox(p_graphics, wxID_ANY, "Log Shader Programs"); wxCheckBox* chbox_gs_log_prog = new wxCheckBox(p_graphics, wxID_ANY, "Log shader programs");
wxCheckBox* chbox_gs_dump_depth = new wxCheckBox(p_graphics, wxID_ANY, "Write Depth Buffer"); wxCheckBox* chbox_gs_dump_depth = new wxCheckBox(p_graphics, wxID_ANY, "Write depth buffer");
wxCheckBox* chbox_gs_dump_color = new wxCheckBox(p_graphics, wxID_ANY, "Write Color Buffers"); wxCheckBox* chbox_gs_dump_color = new wxCheckBox(p_graphics, wxID_ANY, "Write color buffers");
wxCheckBox* chbox_gs_read_color = new wxCheckBox(p_graphics, wxID_ANY, "Read Color Buffers"); wxCheckBox* chbox_gs_read_color = new wxCheckBox(p_graphics, wxID_ANY, "Read color buffers");
wxCheckBox* chbox_gs_read_depth = new wxCheckBox(p_graphics, wxID_ANY, "Read Depth Buffer"); wxCheckBox* chbox_gs_read_depth = new wxCheckBox(p_graphics, wxID_ANY, "Read depth buffer");
wxCheckBox* chbox_gs_vsync = new wxCheckBox(p_graphics, wxID_ANY, "VSync"); wxCheckBox* chbox_gs_vsync = new wxCheckBox(p_graphics, wxID_ANY, "VSync");
wxCheckBox* chbox_gs_debug_output = new wxCheckBox(p_graphics, wxID_ANY, "Debug Output"); wxCheckBox* chbox_gs_debug_output = new wxCheckBox(p_graphics, wxID_ANY, "Debug output");
wxCheckBox* chbox_gs_overlay = new wxCheckBox(p_graphics, wxID_ANY, "Debug Overlay"); wxCheckBox* chbox_gs_overlay = new wxCheckBox(p_graphics, wxID_ANY, "Debug overlay");
wxCheckBox* chbox_gs_gl_legacy_buffers = new wxCheckBox(p_graphics, wxID_ANY, "Use Legacy OpenGL Buffers"); wxCheckBox* chbox_gs_gl_legacy_buffers = new wxCheckBox(p_graphics, wxID_ANY, "Use legacy OpenGL buffers");
wxCheckBox* chbox_gs_gpu_texture_scaling = new wxCheckBox(p_graphics, wxID_ANY, "Use GPU texture scaling"); wxCheckBox* chbox_gs_gpu_texture_scaling = new wxCheckBox(p_graphics, wxID_ANY, "Use GPU texture scaling");
wxCheckBox* chbox_audio_dump = new wxCheckBox(p_audio, wxID_ANY, "Dump to file"); wxCheckBox* chbox_audio_dump = new wxCheckBox(p_audio, wxID_ANY, "Dump to file");
wxCheckBox* chbox_audio_conv = new wxCheckBox(p_audio, wxID_ANY, "Convert to 16 bit"); wxCheckBox* chbox_audio_conv = new wxCheckBox(p_audio, wxID_ANY, "Convert to 16-bit");
wxCheckBox* chbox_audio_dnmx = new wxCheckBox(p_audio, wxID_ANY, "Downmix to Stereo"); wxCheckBox* chbox_audio_dnmx = new wxCheckBox(p_audio, wxID_ANY, "Downmix to Stereo");
wxCheckBox* chbox_hle_exitonstop = new wxCheckBox(p_misc, wxID_ANY, "Exit RPCS3 when process finishes"); wxCheckBox* chbox_hle_exitonstop = new wxCheckBox(p_misc, wxID_ANY, "Exit RPCS3 when process finishes");
wxCheckBox* chbox_hle_always_start = new wxCheckBox(p_misc, wxID_ANY, "Always start after boot"); wxCheckBox* chbox_hle_always_start = new wxCheckBox(p_misc, wxID_ANY, "Always start after boot");
wxCheckBox* chbox_dbg_ap_systemcall = new wxCheckBox(p_misc, wxID_ANY, "Auto Pause at System Call"); wxCheckBox* chbox_dbg_ap_systemcall = new wxCheckBox(p_misc, wxID_ANY, "Automatically pause at system call");
wxCheckBox* chbox_dbg_ap_functioncall = new wxCheckBox(p_misc, wxID_ANY, "Auto Pause at Function Call"); wxCheckBox* chbox_dbg_ap_functioncall = new wxCheckBox(p_misc, wxID_ANY, "Automatically pause at function call");
{ {
// Sort string vector alphabetically // Sort string vector alphabetically
@@ -388,27 +388,27 @@ SettingsDialog::SettingsDialog(wxWindow* parent, const std::string& path)
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Core", "Load required libraries" }, chbox_core_load_libreq)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Core", "Load required libraries" }, chbox_core_load_libreq));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "VFS", "Enable /host_root/" }, chbox_vfs_enable_host_root)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "VFS", "Enable /host_root/" }, chbox_vfs_enable_host_root));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Renderer" }, cbox_gs_render)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Rendering API" }, cbox_gs_render));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Resolution" }, cbox_gs_resolution)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Resolution" }, cbox_gs_resolution));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Aspect ratio" }, cbox_gs_aspect)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Aspect ratio" }, cbox_gs_aspect));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Frame limit" }, cbox_gs_frame_limit)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Video", "Frame limit" }, cbox_gs_frame_limit));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Log shader programs" }, chbox_gs_log_prog)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Log shader programs" }, chbox_gs_log_prog));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Write Depth Buffer" }, chbox_gs_dump_depth)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Write depth buffer" }, chbox_gs_dump_depth));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Write Color Buffers" }, chbox_gs_dump_color)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Write color buffers" }, chbox_gs_dump_color));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Read Color Buffers" }, chbox_gs_read_color)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Read color buffers" }, chbox_gs_read_color));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Read Depth Buffer" }, chbox_gs_read_depth)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Read depth buffer" }, chbox_gs_read_depth));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "VSync" }, chbox_gs_vsync)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "VSync" }, chbox_gs_vsync));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Debug output" }, chbox_gs_debug_output)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Debug output" }, chbox_gs_debug_output));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Debug overlay" }, chbox_gs_overlay)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Debug overlay" }, chbox_gs_overlay));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Use Legacy OpenGL Buffers (Debug)" }, chbox_gs_gl_legacy_buffers)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Use legacy OpenGL buffers (Debug)" }, chbox_gs_gl_legacy_buffers));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Use GPU texture scaling" }, chbox_gs_gpu_texture_scaling)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Video", "Use GPU texture scaling" }, chbox_gs_gpu_texture_scaling));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Audio", "Renderer" }, cbox_audio_out)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Audio", "Renderer" }, cbox_audio_out));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Dump to file" }, chbox_audio_dump)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Dump to file" }, chbox_audio_dump));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Convert to 16 bit" }, chbox_audio_conv)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Convert to 16-bit" }, chbox_audio_conv));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Downmix to Stereo" }, chbox_audio_dnmx)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Audio", "Downmix to Stereo" }, chbox_audio_dnmx));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Pad" }, cbox_pad_handler)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Controller" }, cbox_pad_handler));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Keyboard" }, cbox_keyboard_handler)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Keyboard" }, cbox_keyboard_handler));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Mouse" }, cbox_mouse_handler)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Mouse" }, cbox_mouse_handler));
pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Camera" }, cbox_camera)); pads.emplace_back(std::make_unique<combobox_pad>(cfg_location{ "Input/Output", "Camera" }, cbox_camera));
@@ -420,8 +420,8 @@ SettingsDialog::SettingsDialog(wxWindow* parent, const std::string& path)
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Exit RPCS3 when process finishes" }, chbox_hle_exitonstop)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Exit RPCS3 when process finishes" }, chbox_hle_exitonstop));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Always start after boot" }, chbox_hle_always_start)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Always start after boot" }, chbox_hle_always_start));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Auto Pause at System Call" }, chbox_dbg_ap_systemcall)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Automatically pause at system call" }, chbox_dbg_ap_systemcall));
pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Auto Pause at Function Call" }, chbox_dbg_ap_functioncall)); pads.emplace_back(std::make_unique<checkbox_pad>(cfg_location{ "Miscellaneous", "Automatically pause at function call" }, chbox_dbg_ap_functioncall));
#ifdef _MSC_VER #ifdef _MSC_VER
Microsoft::WRL::ComPtr<IDXGIFactory4> dxgi_factory; Microsoft::WRL::ComPtr<IDXGIFactory4> dxgi_factory;
+3 -3
View File
@@ -83,7 +83,7 @@ cfg::map_entry<std::function<std::shared_ptr<MouseHandlerBase>()>> g_cfg_mouse_h
{ "Basic", &std::make_shared<BasicMouseHandler> }, { "Basic", &std::make_shared<BasicMouseHandler> },
}); });
cfg::map_entry<std::function<std::shared_ptr<PadHandlerBase>()>> g_cfg_pad_handler(cfg::root.io, "Pad", "Keyboard", cfg::map_entry<std::function<std::shared_ptr<PadHandlerBase>()>> g_cfg_pad_handler(cfg::root.io, "Controller", "Keyboard",
{ {
{ "Null", &std::make_shared<NullPadHandler> }, { "Null", &std::make_shared<NullPadHandler> },
{ "Keyboard", &std::make_shared<KeyboardPadHandler> }, { "Keyboard", &std::make_shared<KeyboardPadHandler> },
@@ -93,12 +93,12 @@ cfg::map_entry<std::function<std::shared_ptr<PadHandlerBase>()>> g_cfg_pad_handl
#endif #endif
}); });
cfg::map_entry<std::function<std::shared_ptr<GSRender>()>> g_cfg_gs_render(cfg::root.video, "Renderer", "OpenGL", cfg::map_entry<std::function<std::shared_ptr<GSRender>()>> g_cfg_gs_render(cfg::root.video, "Rendering API", "OpenGL",
{ {
{ "Null", &std::make_shared<NullGSRender> }, { "Null", &std::make_shared<NullGSRender> },
{ "OpenGL", &std::make_shared<GLGSRender> }, { "OpenGL", &std::make_shared<GLGSRender> },
#ifdef _MSC_VER #ifdef _MSC_VER
{ "D3D12", &std::make_shared<D3D12GSRender> }, { "DirectX 12", &std::make_shared<D3D12GSRender> },
#endif #endif
#ifdef _WIN32 #ifdef _WIN32
{ "Vulkan", &std::make_shared<VKGSRender> }, { "Vulkan", &std::make_shared<VKGSRender> },