Example #1
0
void InterpreterDisAsmFrame::InstrKey(wxListEvent& event)
{
	long i = m_list->GetFirstSelected();
	if(i < 0 || !CPU)
	{
		event.Skip();
		return;
	}

	const u64 start_pc = PC - m_item_count*4;
	const u64 pc = start_pc + i*4;

	switch(event.GetKeyCode())
	{
	case 'E':
		// TODO:: Syphurith: It is said the InstructionEditorDialog would be immediately destroyed.
		InstructionEditorDialog(this, pc, CPU, decoder.get(), disasm);
		DoUpdate();
		return;
	case 'R':
		// TODO:: Syphurith: Eh Similiar for this one.
		RegisterEditorDialog(this, pc, CPU, decoder.get(), disasm);
		DoUpdate();
		return;
	}

	event.Skip();
}
Example #2
0
void InterpreterDisAsmFrame::InstrKey(wxListEvent& event)
{
	long i = m_list->GetFirstSelected();
	if(i < 0 || !CPU)
	{
		event.Skip();
		return;
	}

	const u64 start_pc = PC - m_item_count*4;
	const u64 pc = start_pc + i*4;

	switch(event.GetKeyCode())
	{
	case 'E':
		InstructionEditorDialog(this, pc, CPU, decoder, disasm);
		DoUpdate();
		return;
	case 'R':
		RegisterEditorDialog(this, pc, CPU, decoder, disasm);
		DoUpdate();
		return;
	}

	event.Skip();
}