TraceInfo Trace(uint addr, uint opcode) { return(new TraceInfo { Disassembly = $"{addr:X8}: {opcode:X8} {Darm.DisassembleStuff(addr, opcode)}".PadRight(54), RegisterInfo = regs.TraceString() }); }
TraceInfo Trace(uint addr, uint opcode) { return(new TraceInfo { Disassembly = string.Format("{2:X8}: {0:X8} {1}", opcode, Darm.DisassembleStuff(addr, opcode), addr).PadRight(54), RegisterInfo = regs.TraceString() }); }
public override string Disassemble(MemoryDomain m, uint addr, out int length) { if (Cpu == "ARM v4 (Thumb)") { addr &= unchecked ((uint)~1); int op = m.PeekByte((int)addr) | m.PeekByte((int)addr + 1) << 8; string ret = Darm.DisassembleStuff(addr | 1, (uint)op); length = 2; return(ret); } else { addr &= unchecked ((uint)~3); int op = m.PeekByte((int)addr) | m.PeekByte((int)addr + 1) << 8 | m.PeekByte((int)addr + 2) << 16 | m.PeekByte((int)addr + 3) << 24; string ret = Darm.DisassembleStuff(addr, (uint)op); length = 4; return(ret); } }