diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-06-01 17:13:15 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-06-01 17:13:15 +0200 |
| commit | 956e2aace3dff853260d102d52eb00dbbf1a1005 (patch) | |
| tree | 18d1c99ed6c6d141cbe361a391ebbbd1979af93e /src | |
| parent | 1951d525d1285cf16b463d022718774bee54a51b (diff) | |
| download | box64-956e2aace3dff853260d102d52eb00dbbf1a1005.tar.gz box64-956e2aace3dff853260d102d52eb00dbbf1a1005.zip | |
Added F5 opcode ([DYNAREC] too)
Diffstat (limited to 'src')
| -rwxr-xr-x | src/dynarec/dynarec_arm64_00.c | 6 | ||||
| -rwxr-xr-x | src/emu/x64run.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/dynarec/dynarec_arm64_00.c b/src/dynarec/dynarec_arm64_00.c index be34a6a1..a3b0e592 100755 --- a/src/dynarec/dynarec_arm64_00.c +++ b/src/dynarec/dynarec_arm64_00.c @@ -2038,6 +2038,12 @@ uintptr_t dynarec64_00(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin addr = dynarec64_F0(dyn, addr, ip, ninst, rex, rep, ok, need_epilog); break; + case 0xF5: + INST_NAME("CMC"); + READFLAGS(X_CF); + SETFLAGS(X_CF, SF_SET); + EORw_mask(xFlags, xFlags, 0, 0); //mask=0x00000001 + break; case 0xF6: nextop = F8; switch((nextop>>3)&7) { diff --git a/src/emu/x64run.c b/src/emu/x64run.c index 8257dd2f..1ff55ec0 100755 --- a/src/emu/x64run.c +++ b/src/emu/x64run.c @@ -1224,6 +1224,10 @@ x64emurun: goto fini; break; + case 0xF5: /* CMC */ + CHECK_FLAGS(emu); + CONDITIONAL_SET_FLAG(!ACCESS_FLAG(F_CF), F_CF); + break; case 0xF6: /* GRP3 Eb(,Ib) */ nextop = F8; tmp8u = (nextop>>3)&7; |