Debugger - better checking if something exists or not

This commit is contained in:
adelikat 2014-12-20 13:12:03 +00:00
parent 38c4b7f16b
commit 0916638e40
2 changed files with 21 additions and 6 deletions

View File

@ -50,6 +50,22 @@ namespace BizHawk.Client.EmuHawk
}
}
private bool CanSetCpu
{
get
{
try
{
Disassembler.Cpu = Disassembler.Cpu;
return true;
}
catch (NotImplementedException)
{
return false;
}
}
}
#endregion
public void UpdateValues()

View File

@ -86,14 +86,11 @@ namespace BizHawk.Client.EmuHawk
private void EngageDebugger()
{
if (Disassembler != null)
if (CanDisassemble)
{
try
{
// Quick way to check if setting is implemented
Disassembler.Cpu = Disassembler.Cpu;
if (Disassembler.AvailableCpus.Count() > 1)
if (CanSetCpu && Disassembler.AvailableCpus.Count() > 1)
{
var c = new ComboBox
{
@ -139,7 +136,6 @@ namespace BizHawk.Client.EmuHawk
RegisterPanel.ParentDebugger = this;
RegisterPanel.GenerateUI();
// TODO: handle if unavailable
BreakPointControl1.Core = Core;
BreakPointControl1.MCS = MCS;
BreakPointControl1.ParentDebugger = this;
@ -179,6 +175,7 @@ namespace BizHawk.Client.EmuHawk
Owner = Global.Config.RamSearchSettings.FloatingWindow ? null : GlobalWin.MainForm;
}
#region Disassembler TODO refacotor
private readonly List<DisasmOp> lines = new List<DisasmOp>();
@ -224,6 +221,8 @@ namespace BizHawk.Client.EmuHawk
}
}
#endregion
#region Menu Items
#region File