Debugger: Fixed minor assembler issues

This commit is contained in:
Souryo 2017-08-19 14:36:00 -04:00
parent 1131c83a77
commit b5ab77d547
3 changed files with 16 additions and 8 deletions

View file

@ -924,7 +924,12 @@ void Debugger::StopCodeRunner()
//Break debugger when code has finished executing
SetNextStatement(_returnToAddress);
Debugger::Instance->Step(1);
if(CheckFlag(DebuggerFlags::DebuggerWindowEnabled)) {
Step(1);
} else {
Run();
}
}
void Debugger::GetNesHeader(uint8_t* header)

View file

@ -32,6 +32,14 @@ namespace Mesen.GUI.Debugger
}
}
public static void OpenAssembler(string code = "", UInt16 startAddress = 0, UInt16 blockLength = 0)
{
frmAssembler frm = new frmAssembler(code, startAddress, blockLength);
_openedWindows.Add(frm);
frm.FormClosed += Debugger_FormClosed;
frm.Show();
}
public static frmDebugger GetDebugger()
{
int index = _openedWindows.FindIndex((form) => form.GetType() == typeof(frmDebugger));

View file

@ -874,19 +874,14 @@ namespace Mesen.GUI.Debugger
}
}
private void OpenAssembler(string code, UInt16 startAddress, UInt16 blockLength = 0)
private void mnuAssembler_Click(object sender, EventArgs e)
{
DebugWindowManager.OpenDebugWindow(DebugWindow.Assembler);
}
private void mnuAssembler_Click(object sender, EventArgs e)
{
this.OpenAssembler(string.Empty, 0x8000);
}
private void ctrlDebuggerCode_OnEditCode(AssemblerEventArgs args)
{
this.OpenAssembler(args.Code, args.StartAddress, args.BlockLength);
DebugWindowManager.OpenAssembler(args.Code, args.StartAddress, args.BlockLength);
}
private void mnuCode_DropDownOpening(object sender, EventArgs e)