about summary refs log tree commit diff stats
path: root/src/emu
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2021-03-16 20:32:37 +0100
committerptitSeb <sebastien.chev@gmail.com>2021-03-16 20:32:37 +0100
commitb553c3f3ac7fe752dca6c27be72bec5969a1c955 (patch)
treeaaff157a1de3962b8190609c49ba70f3a1edde73 /src/emu
parent551542f99a2bcd690f19e1bb17ac16172feef583 (diff)
downloadbox64-b553c3f3ac7fe752dca6c27be72bec5969a1c955.tar.gz
box64-b553c3f3ac7fe752dca6c27be72bec5969a1c955.zip
[DYNAREC] Added 70..7F opcodes (and fixed ORR/AND bitmask coding/decoding, that's some convoluted encoding here)
Diffstat (limited to 'src/emu')
-rwxr-xr-xsrc/emu/x64emu.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/emu/x64emu.c b/src/emu/x64emu.c
index 2a167f81..c80e6d56 100755
--- a/src/emu/x64emu.c
+++ b/src/emu/x64emu.c
@@ -62,7 +62,7 @@ static void internalX64Setup(x64emu_t* emu, box64context_t *context, uintptr_t s
         emu->sbiidx[i] = &emu->regs[i];
     emu->sbiidx[4] = &emu->zero;
     emu->x64emu_parity_tab = x86emu_parity_tab;
-    emu->eflags.x32 = 0x202; // default flags?
+    emu->eflags.x64 = 0x202; // default flags?
     // own stack?
     emu->stack2free = (ownstack)?(void*)stack:NULL;
     emu->init_stack = (void*)stack;
@@ -368,7 +368,10 @@ const char* DumpCPURegs(x64emu_t* emu, uintptr_t ip)
         if (i%5==4) {
             if(i==4) {
                 if(emu->df) {
-                    strcat(buff, "FLAGS=??????\n");
+#define FLAG_CHAR(f) (ACCESS_FLAG(F_##f##F)) ? #f : "?"
+                    sprintf(tmp, "flags=%s%s%s%s%s%s\n", FLAG_CHAR(O), FLAG_CHAR(C), FLAG_CHAR(P), FLAG_CHAR(A), FLAG_CHAR(Z), FLAG_CHAR(S));
+                    strcat(buff, tmp);
+#undef FLAG_CHAR
                 } else {
 #define FLAG_CHAR(f) (ACCESS_FLAG(F_##f##F)) ? #f : "-"
                     sprintf(tmp, "FLAGS=%s%s%s%s%s%s\n", FLAG_CHAR(O), FLAG_CHAR(C), FLAG_CHAR(P), FLAG_CHAR(A), FLAG_CHAR(Z), FLAG_CHAR(S));