about summary refs log tree commit diff stats
path: root/src/emu
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-02-22 19:58:58 +0100
committerptitSeb <sebastien.chev@gmail.com>2024-02-22 19:59:09 +0100
commit3a6df996dc85257a5496ecb28a72579df225a176 (patch)
treec0665cff00588c817f524495b80f4fd30a3f95d6 /src/emu
parent61413769775bb9428c6f2b89037d32ea580d5a75 (diff)
downloadbox64-3a6df996dc85257a5496ecb28a72579df225a176.tar.gz
box64-3a6df996dc85257a5496ecb28a72579df225a176.zip
Added 67 FF /2 opcode ([ARM64_DYNAREC] too)
Diffstat (limited to 'src/emu')
-rw-r--r--src/emu/x64run67.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/emu/x64run67.c b/src/emu/x64run67.c
index 6a5b2143..842d6740 100644
--- a/src/emu/x64run67.c
+++ b/src/emu/x64run67.c
@@ -449,7 +449,20 @@ uintptr_t Run67(x64emu_t *emu, rex_t rex, int rep, uintptr_t addr)
             }

         }

         break;

-            

+    

+    case 0xFF:

+        nextop = F8;

+        switch((nextop>>3)&7) {

+            case 2:                 /* CALL NEAR Ed */

+                GETED32(0);

+                tmp64u = (uintptr_t)getAlternate((void*)ED->q[0]);

+                Push64(emu, addr);

+                addr = tmp64u;

+                break;

+            default:

+                return 0;

+        }

+        break;

     default:

         return 0;

     }