diff options
Diffstat (limited to 'src/emu')
| -rw-r--r-- | src/emu/x64run_private.c | 2 | ||||
| -rwxr-xr-x | src/emu/x86int3.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/emu/x64run_private.c b/src/emu/x64run_private.c index 480c84d2..0616b4cf 100644 --- a/src/emu/x64run_private.c +++ b/src/emu/x64run_private.c @@ -1257,7 +1257,7 @@ void PrintTrace(x64emu_t* emu, uintptr_t ip, int dynarec) } else if((peek==0x55 /*|| peek==0x53*/) && !is32bits) { if(!printFunctionAddr(*(uintptr_t*)(R_RSP), " STACK_TOP: ")) printf_log(LOG_NONE, " STACK_TOP: %p ", (void*)*(uintptr_t*)(R_RSP)); - } else if((peek==0x55 || peek==0x56) && is32bits) { + } else if((peek==0x55 || peek==0x56 || peek==0x53) && is32bits) { if(!printFunctionAddr(*(uint32_t*)(R_RSP), " STACK_TOP: ")) printf_log(LOG_NONE, " STACK_TOP: %p ", (void*)(uintptr_t)*(uint32_t*)(R_RSP)); } else if(peek==0xF3 && PK(1)==0x0F && PK(2)==0x1E && PK(3)==0xFA && !is32bits) { diff --git a/src/emu/x86int3.c b/src/emu/x86int3.c index 540959c6..b2d800c9 100755 --- a/src/emu/x86int3.c +++ b/src/emu/x86int3.c @@ -113,7 +113,7 @@ void x86Int3(x64emu_t* emu, uintptr_t* addr) perr = 1; } else if(!strcmp(s, "opendir")) { snprintf(buff, 255, "%04d|%p: Calling %s(\"%s\")", tid, from_ptrv(*(ptr_t*)from_ptr(R_ESP)), s, from_ptrv(*(ptr_t*)from_ptr(R_ESP+4))); - perr = 1; + perr = 2; } else if(strstr(s, "__open")==s || !strcmp(s, "open") || !strcmp(s, "my_open64")) { tmp = from_ptrv(*(ptr_t*)from_ptr(R_ESP+4)); snprintf(buff, 255, "%04d|%p: Calling %s(\"%s\", %d (,%d))", tid, from_ptrv(*(ptr_t*)from_ptr(R_ESP)), s, (tmp)?tmp:"(nil)", *(int*)from_ptr(R_ESP+8), *(int*)from_ptr(R_ESP+12)); |