diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-04 20:32:25 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-04 20:32:25 +0100 |
| commit | 3f025f1310eaea11670f8907455c8d5ece2136d3 (patch) | |
| tree | 34420385b6606a563a69e5857706fe5cf4982c1c /src | |
| parent | b3f3a2b30c060fdd22d09e86acaf9db385440881 (diff) | |
| download | box64-3f025f1310eaea11670f8907455c8d5ece2136d3.tar.gz box64-3f025f1310eaea11670f8907455c8d5ece2136d3.zip | |
Added REX B8..BF MOV opcodes
Diffstat (limited to 'src')
| -rwxr-xr-x | src/emu/x64run.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/emu/x64run.c b/src/emu/x64run.c index 326d9cca..5c7045e6 100755 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -405,6 +405,20 @@ x64emurun: GD->dword[0] = (uint32_t)(uintptr_t)ED; break; + case 0xB8: /* MOV EAX,Id */ + case 0xB9: /* MOV ECX,Id */ + case 0xBA: /* MOV EDX,Id */ + case 0xBB: /* MOV EBX,Id */ + case 0xBC: /* ... */ + case 0xBD: + case 0xBE: + case 0xBF: + if(rex.w) + emu->regs[(opcode&7)+(rex.b<<3)].q[0] = F64; + else + emu->regs[(opcode&7)+(rex.b<<3)].dword[0] = F32; + break; + case 0xC1: /* GRP2 Ed,Ib */ nextop = F8; GETED; |