fix some bugs with Ares64 tracer, fix trace header too

This commit is contained in:
CasualPokePlayer 2022-04-15 18:50:58 -07:00
parent 20ecfb81ea
commit 8ea09eebf5
2 changed files with 11 additions and 6 deletions
src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64

View File

@ -13,6 +13,16 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
private void MakeTrace(IntPtr disasm)
{
var disasmStr = Mershul.PtrToStringUtf8(disasm);
if (!disasmStr.StartsWith("CPU")) // garbage, ignore
{
return;
}
disasmStr = disasmStr.Remove(0, 5); // remove "CPU "
disasmStr = disasmStr.Replace("\n", ""); // remove newlines
disasmStr = Regex.Replace(disasmStr, @"\{.*\}", ""); // remove any {*} patterns
disasmStr = disasmStr.PadRight(36); // pad
var regs = GetCpuFlagsAndRegisters();
var regsStr = "";
foreach (var r in regs)
@ -25,11 +35,6 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
regsStr = regsStr.Remove(regsStr.Length - 1, 1);
var disasmStr = Mershul.PtrToStringUtf8(disasm);
disasmStr = disasmStr.Remove(0, 5); // remove "CPU "
disasmStr = disasmStr.Replace("\n", ""); // remove newlines
disasmStr = Regex.Replace(disasmStr, @"\{.*\}", ""); // remove any {*} patterns
Tracer.Put(new(
disassembly: disasmStr,
registerInfo: regsStr));

View File

@ -116,7 +116,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Nintendo.Ares64
PostInit();
Tracer = new TraceBuffer("r3400: PC, mnemonic, operands, registers (GPRs, Load/Link Bit, MultHI, MultLO, Implementation/Revision, Control/Status, FGRs)");
Tracer = new TraceBuffer("r3400: PC, mnemonic, operands, registers (GPRs, MultLO, MultHI)");
_serviceProvider.Register(Tracer);
_disassembler = new(_core);