diff options
Diffstat (limited to 'src/emu/x64run64.c')
| -rw-r--r-- | src/emu/x64run64.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/emu/x64run64.c b/src/emu/x64run64.c index fe8da3e5..7ceef8ab 100644 --- a/src/emu/x64run64.c +++ b/src/emu/x64run64.c @@ -639,7 +639,15 @@ uintptr_t Run64(x64emu_t *emu, rex_t rex, int seg, uintptr_t addr) R_RAX = *(uint32_t*)(tlsdata+tmp64u); } break; - + case 0xA2: /* MOV Ob,AL */ + if(rex.is32bits) { + tmp32s = F32S; + *(uint8_t*)(uintptr_t)(tlsdata+tmp32s) = R_AL; + } else { + tmp64u = F64; + *(uint8_t*)(tlsdata+tmp64u) = R_AL; + } + break; case 0xA3: /* MOV FS:Od,EAX */ if(rex.is32bits) { tmp32s = F32S; |