diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-11-04 15:14:25 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-11-04 15:14:25 +0100 |
| commit | 787646b3cc6aac98522a37bc7538f35ea7bb45c4 (patch) | |
| tree | e85471956111142134e681746276dc5c0fe5cb8a | |
| parent | f0d5e9d01ef74346da13f88f7d1b6678980e622b (diff) | |
| download | box64-787646b3cc6aac98522a37bc7538f35ea7bb45c4.tar.gz box64-787646b3cc6aac98522a37bc7538f35ea7bb45c4.zip | |
[TRACE] Improved trace
| -rw-r--r-- | src/emu/x64emu.c | 2 | ||||
| -rw-r--r-- | src/emu/x64run_private.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/emu/x64emu.c b/src/emu/x64emu.c index 95077d4a..8ac3e179 100644 --- a/src/emu/x64emu.c +++ b/src/emu/x64emu.c @@ -397,7 +397,7 @@ void ResetFlags(x64emu_t *emu) const char* DumpCPURegs(x64emu_t* emu, uintptr_t ip, int is32bits) { - static char buff[1000]; + static char buff[4096]; static const char* regname[] = {"RAX", "RCX", "RDX", "RBX", "RSP", "RBP", "RSI", "RDI", " R8", " R9", "R10", "R11", "R12", "R13", "R14", "R15"}; static const char* regname32[]={"EAX", "ECX", "EDX", "EBX", "ESP", "EBP", "ESI", "EDI"}; diff --git a/src/emu/x64run_private.c b/src/emu/x64run_private.c index 5056ff90..296d27a7 100644 --- a/src/emu/x64run_private.c +++ b/src/emu/x64run_private.c @@ -1124,11 +1124,11 @@ void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec) printFunctionAddr(nextaddr, "=> "); } else if(peek==0xFF) { if(PK(1)==0x25) { - uintptr_t nextaddr = *(uintptr_t*)(ip + 6 + PK32(2)); + uintptr_t nextaddr = is32bits?(*(uint32_t*)PK32(2)):(*(uintptr_t*)(ip + 6 + PK32(2))); if(!printFunctionAddr(nextaddr, "=> ")) printf_log(LOG_NONE, " => %p", (void*)nextaddr); } else if((PK(1)==0x14) && (PK(2)==0x25)) { - uintptr_t nextaddr = *(uintptr_t*)(uintptr_t)PK32(3); + uintptr_t nextaddr = is32bits?(*(uint32_t*)(uintptr_t)PK32(3)):(*(uintptr_t*)(uintptr_t)PK32(3)); printf_log(LOG_NONE, " => %p", (void*)nextaddr); printFunctionAddr(nextaddr, "=> "); } else if((PK(1)==0x14) && (PK(2)==0xC2) && rex.rex==0x41) { |