diff --git a/BizHawk.Emulation/Consoles/Nintendo/GBA/Meteor.cs b/BizHawk.Emulation/Consoles/Nintendo/GBA/Meteor.cs index d2c21a8630..dc4b56fe7c 100644 --- a/BizHawk.Emulation/Consoles/Nintendo/GBA/Meteor.cs +++ b/BizHawk.Emulation/Consoles/Nintendo/GBA/Meteor.cs @@ -114,7 +114,8 @@ namespace BizHawk.Emulation.Consoles.Nintendo.GBA { VsyncNum = 262144, VsyncDen = 4389, - CpuTraceAvailable = true + CpuTraceAvailable = true, + TraceHeader = " -Addr--- -Opcode- -Instruction------------------- -R0----- -R1----- -R2----- -R3----- -R4----- -R5----- -R6----- -R7----- -R8----- -R9----- -R10---- -R11---- -R12---- -R13(SP) -R14(LR) -R15(PC) -CPSR--- -SPSR---" }; public CoreOutputComm CoreOutputComm { get { return _CoreOutputComm; } } diff --git a/BizHawk.Emulation/Interfaces/CoreComms.cs b/BizHawk.Emulation/Interfaces/CoreComms.cs index 1bf8979869..7400bf9b42 100644 --- a/BizHawk.Emulation/Interfaces/CoreComms.cs +++ b/BizHawk.Emulation/Interfaces/CoreComms.cs @@ -53,6 +53,8 @@ namespace BizHawk public int ScreenLogicalOffsetX, ScreenLogicalOffsetY; public bool CpuTraceAvailable = false; + + public string TraceHeader = "Instructions"; } public class TraceBuffer diff --git a/BizHawk.MultiClient/output/dll/libmeteor.dll b/BizHawk.MultiClient/output/dll/libmeteor.dll index c8a67b858d..dcf3915798 100644 Binary files a/BizHawk.MultiClient/output/dll/libmeteor.dll and b/BizHawk.MultiClient/output/dll/libmeteor.dll differ diff --git a/BizHawk.MultiClient/tools/TraceLogger.cs b/BizHawk.MultiClient/tools/TraceLogger.cs index 7a8d274ca7..cbce82b8d7 100644 --- a/BizHawk.MultiClient/tools/TraceLogger.cs +++ b/BizHawk.MultiClient/tools/TraceLogger.cs @@ -65,6 +65,7 @@ namespace BizHawk.MultiClient LoggingEnabled.Checked = true; Global.CoreInputComm.Tracer.Enabled = true; SetTracerBoxTitle(); + Restart(); } public void UpdateValues() @@ -83,6 +84,7 @@ namespace BizHawk.MultiClient if (Global.Emulator.CoreOutputComm.CpuTraceAvailable) { ClearList(); + TraceView.Columns[0].Text = Global.Emulator.CoreOutputComm.TraceHeader; } else { diff --git a/libmeteor/source/interpreter.cpp b/libmeteor/source/interpreter.cpp index b5ae37ab1d..66731435a9 100644 --- a/libmeteor/source/interpreter.cpp +++ b/libmeteor/source/interpreter.cpp @@ -74,7 +74,7 @@ namespace AMeteor if (traceenabled) { std::stringstream ss; - ss << IOS_TRACE << R(15) << ':' << std::setw(4) << code << " "; + ss << IOS_TRACE << R(15) - 2 << ':' << std::setw(4) << code << " "; ss.setf(std::ios::left, std::ios::adjustfield); ss << std::setw(32) << std::setfill(' ') << Disassembler::Instruction(R(15), (uint16_t)code).ToString(); ss.setf(std::ios::right, std::ios::adjustfield); @@ -126,7 +126,7 @@ namespace AMeteor if (traceenabled) { std::stringstream ss; - ss << IOS_TRACE << R(15) << ':' << std::setw(8) << code << ' '; + ss << IOS_TRACE << R(15) - 4 << ':' << std::setw(8) << code << ' '; ss.setf(std::ios::left, std::ios::adjustfield); ss << std::setw(32) << std::setfill(' ') << Disassembler::Instruction(R(15), (uint32_t)code).ToString(); ss.setf(std::ios::right, std::ios::adjustfield);