From 956e2aace3dff853260d102d52eb00dbbf1a1005 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Tue, 1 Jun 2021 17:13:15 +0200 Subject: Added F5 opcode ([DYNAREC] too) --- src/dynarec/dynarec_arm64_00.c | 6 ++++++ src/emu/x64run.c | 4 ++++ 2 files changed, 10 insertions(+) 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; -- cgit 1.4.1