diff --git a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.ITraceable.cs b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.ITraceable.cs index 966d3f0f72..7bb0ce2ee7 100644 --- a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.ITraceable.cs +++ b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.ITraceable.cs @@ -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)); diff --git a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.cs b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.cs index f4b694c9e3..fc3093815f 100644 --- a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.cs +++ b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/Ares64/Ares64.cs @@ -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);