mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-04-04 14:08:37 +00:00
commit
7b28d9d7ba
38 changed files with 519 additions and 611 deletions
|
|
@ -25,25 +25,25 @@ InterpreterDisAsmFrame::InterpreterDisAsmFrame(wxWindow* parent)
|
|||
, decoder(nullptr)
|
||||
, disasm(nullptr)
|
||||
{
|
||||
wxBoxSizer& s_p_main = *new wxBoxSizer(wxVERTICAL);
|
||||
wxBoxSizer& s_b_main = *new wxBoxSizer(wxHORIZONTAL);
|
||||
wxBoxSizer* s_p_main = new wxBoxSizer(wxVERTICAL);
|
||||
wxBoxSizer* s_b_main = new wxBoxSizer(wxHORIZONTAL);
|
||||
|
||||
m_list = new wxListView(this);
|
||||
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_pc = *new wxButton(this, wxID_ANY, "Go To PC");
|
||||
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");
|
||||
|
||||
m_btn_step = new wxButton(this, wxID_ANY, "Step");
|
||||
m_btn_run = new wxButton(this, wxID_ANY, "Run");
|
||||
m_btn_pause = new wxButton(this, wxID_ANY, "Pause");
|
||||
|
||||
s_b_main.Add(&b_go_to_addr, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main.Add(&b_go_to_pc, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main.Add(m_btn_step, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main.Add(m_btn_run, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main.Add(m_btn_pause, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main.Add(m_choice_units, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(b_go_to_addr, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(b_go_to_pc, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(m_btn_step, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(m_btn_run, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(m_btn_pause, wxSizerFlags().Border(wxALL, 5));
|
||||
s_b_main->Add(m_choice_units, wxSizerFlags().Border(wxALL, 5));
|
||||
|
||||
//Registers
|
||||
m_regs = new wxTextCtrl(this, wxID_ANY, wxEmptyString,
|
||||
|
|
@ -59,15 +59,15 @@ InterpreterDisAsmFrame::InterpreterDisAsmFrame(wxWindow* parent)
|
|||
m_regs ->SetFont(wxFont(8, wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL));
|
||||
m_calls->SetFont(wxFont(8, wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL));
|
||||
|
||||
wxBoxSizer& s_w_list = *new wxBoxSizer(wxHORIZONTAL);
|
||||
s_w_list.Add(m_list, 2, wxEXPAND | wxLEFT | wxDOWN, 5);
|
||||
s_w_list.Add(m_regs, 1, wxEXPAND | wxRIGHT | wxDOWN, 5);
|
||||
s_w_list.Add(m_calls,1, wxEXPAND | wxRIGHT | wxDOWN, 5);
|
||||
wxBoxSizer* s_w_list = new wxBoxSizer(wxHORIZONTAL);
|
||||
s_w_list->Add(m_list, 2, wxEXPAND | wxLEFT | wxDOWN, 5);
|
||||
s_w_list->Add(m_regs, 1, wxEXPAND | wxRIGHT | wxDOWN, 5);
|
||||
s_w_list->Add(m_calls,1, wxEXPAND | wxRIGHT | wxDOWN, 5);
|
||||
|
||||
s_p_main.Add(&s_b_main, 0, wxEXPAND | wxLEFT | wxRIGHT, 5);
|
||||
s_p_main.Add(&s_w_list, 1, wxEXPAND | wxDOWN, 5);
|
||||
s_p_main->Add(s_b_main, 0, wxEXPAND | wxLEFT | wxRIGHT, 5);
|
||||
s_p_main->Add(s_w_list, 1, wxEXPAND | wxDOWN, 5);
|
||||
|
||||
SetSizer(&s_p_main);
|
||||
SetSizer(s_p_main);
|
||||
Layout();
|
||||
|
||||
m_list->InsertColumn(0, "ASM");
|
||||
|
|
@ -76,19 +76,20 @@ InterpreterDisAsmFrame::InterpreterDisAsmFrame(wxWindow* parent)
|
|||
m_list->InsertItem(m_list->GetItemCount(), wxEmptyString);
|
||||
}
|
||||
|
||||
Connect(m_regs->GetId(), wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler(InterpreterDisAsmFrame::OnUpdate));
|
||||
Connect(b_go_to_addr.GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(InterpreterDisAsmFrame::Show_Val));
|
||||
Connect(b_go_to_pc.GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(InterpreterDisAsmFrame::Show_PC));
|
||||
Connect(m_btn_step->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(InterpreterDisAsmFrame::DoStep));
|
||||
Connect(m_btn_run->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(InterpreterDisAsmFrame::DoRun));
|
||||
Connect(m_btn_pause->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(InterpreterDisAsmFrame::DoPause));
|
||||
Connect(m_list->GetId(), wxEVT_COMMAND_LIST_KEY_DOWN, wxListEventHandler(InterpreterDisAsmFrame::InstrKey));
|
||||
Connect(m_list->GetId(), wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler(InterpreterDisAsmFrame::DClick));
|
||||
Connect(m_choice_units->GetId(), wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler(InterpreterDisAsmFrame::OnSelectUnit));
|
||||
Connect(wxEVT_SIZE, wxSizeEventHandler(InterpreterDisAsmFrame::OnResize));
|
||||
m_app_connector.Connect(m_list->GetId(), wxEVT_MOUSEWHEEL, wxMouseEventHandler(InterpreterDisAsmFrame::MouseWheel), (wxObject*)0, this);
|
||||
m_app_connector.Connect(wxEVT_KEY_DOWN, wxKeyEventHandler(InterpreterDisAsmFrame::OnKeyDown), (wxObject*)0, this);
|
||||
m_app_connector.Connect(wxEVT_DBG_COMMAND, wxCommandEventHandler(InterpreterDisAsmFrame::HandleCommand), (wxObject*)0, this);
|
||||
m_regs ->Bind(wxEVT_TEXT, &InterpreterDisAsmFrame::OnUpdate, this);
|
||||
b_go_to_addr ->Bind(wxEVT_BUTTON, &InterpreterDisAsmFrame::Show_Val, this);
|
||||
b_go_to_pc ->Bind(wxEVT_BUTTON, &InterpreterDisAsmFrame::Show_PC, this);
|
||||
m_btn_step ->Bind(wxEVT_BUTTON, &InterpreterDisAsmFrame::DoStep, this);
|
||||
m_btn_run ->Bind(wxEVT_BUTTON, &InterpreterDisAsmFrame::DoRun, this);
|
||||
m_btn_pause ->Bind(wxEVT_BUTTON, &InterpreterDisAsmFrame::DoPause, this);
|
||||
m_list ->Bind(wxEVT_LIST_KEY_DOWN, &InterpreterDisAsmFrame::InstrKey, this);
|
||||
m_list ->Bind(wxEVT_LIST_ITEM_ACTIVATED, &InterpreterDisAsmFrame::DClick, this);
|
||||
m_list ->Bind(wxEVT_MOUSEWHEEL, &InterpreterDisAsmFrame::MouseWheel, this);
|
||||
m_choice_units->Bind(wxEVT_CHOICE, &InterpreterDisAsmFrame::OnSelectUnit, this);
|
||||
|
||||
Bind(wxEVT_SIZE, &InterpreterDisAsmFrame::OnResize, this);
|
||||
Bind(wxEVT_KEY_DOWN, &InterpreterDisAsmFrame::OnKeyDown, this);
|
||||
wxGetApp().Bind(wxEVT_DBG_COMMAND, &InterpreterDisAsmFrame::HandleCommand, this);
|
||||
|
||||
ShowAddr(CentrePc(PC));
|
||||
UpdateUnitList();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue