diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-04 21:47:40 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-04 21:47:40 +0100 |
| commit | 68d4683010600d87b0967dc4ef701f1226e78679 (patch) | |
| tree | 920e0a01541477943ccc2674b14fbee9715cfb94 /src | |
| parent | 3bcb9e0f3883d6d2fa57d70e0a1e2d707faf4e1f (diff) | |
| download | box64-68d4683010600d87b0967dc4ef701f1226e78679.tar.gz box64-68d4683010600d87b0967dc4ef701f1226e78679.zip | |
Added REX 98 CWDE/CDQE opcode
Diffstat (limited to 'src')
| -rwxr-xr-x | src/emu/x64run.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/emu/x64run.c b/src/emu/x64run.c index 80a96b2c..11c63814 100755 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -410,6 +410,13 @@ x64emurun: GD->dword[0] = (uint32_t)(uintptr_t)ED; break; + case 0x98: /* CWDE */ + if(rex.w) + emu->regs[_AX].q[0] = emu->regs[_AX].sdword[0]; + else + emu->regs[_AX].sdword[0] = emu->regs[_AX].sword[0]; + break; + case 0xB8: /* MOV EAX,Id */ case 0xB9: /* MOV ECX,Id */ case 0xBA: /* MOV EDX,Id */ |