diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-04-10 14:36:02 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-04-10 14:36:02 +0200 |
| commit | 4f38801ba67a36a227bf1d8df67f439efef6172d (patch) | |
| tree | 145d5d091ce45bc6e31a376d9be30079502a5c64 | |
| parent | 2a4649f6ef02be3f2286d569e52b6c9e99b046b5 (diff) | |
| parent | 31b41f5b9435f4bc3d60125faf396019b47012fd (diff) | |
| download | box64-4f38801ba67a36a227bf1d8df67f439efef6172d.tar.gz box64-4f38801ba67a36a227bf1d8df67f439efef6172d.zip | |
Merge branch 'main' of https://github.com/ptitSeb/box64 into main
| -rwxr-xr-x | src/emu/x64run.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/emu/x64run.c b/src/emu/x64run.c index 3c83e6b0..c0b7fea5 100755 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -1299,14 +1299,22 @@ x64emurun: case 0: /* INC Ed */ if(rex.w) ED->q[0] = inc64(emu, ED->q[0]); - else - ED->q[0] = inc32(emu, ED->dword[0]); + else { + if(MODREG) + ED->q[0] = inc32(emu, ED->dword[0]); + else + ED->dword[0] = inc32(emu, ED->dword[0]); + } break; case 1: /* DEC Ed */ if(rex.w) ED->q[0] = dec64(emu, ED->q[0]); - else - ED->q[0] = dec32(emu, ED->dword[0]); + else { + if(MODREG) + ED->q[0] = dec32(emu, ED->dword[0]); + else + ED->dword[0] = dec32(emu, ED->dword[0]); + } break; case 2: /* CALL NEAR Ed */ tmp64u = (uintptr_t)getAlternate((void*)ED->q[0]); |