diff --git a/InstructionSets/M68k/Decoder.cpp b/InstructionSets/M68k/Decoder.cpp index ce2359c19..e63f29f6a 100644 --- a/InstructionSets/M68k/Decoder.cpp +++ b/InstructionSets/M68k/Decoder.cpp @@ -71,7 +71,7 @@ uint32_t operand_mask(AddressingMode mode1, AddressingMode mode2) { /// immediate operand. template constexpr Operation Predecoder::operation(OpT op) { - if(op < OpT(Operation::Max)) { + if(op <= OpT(Operation::Max)) { return Operation(op); } @@ -445,6 +445,7 @@ template uint32_t Predecoder::invalid_operands() { case OpT(Operation::RTS): case OpT(Operation::TRAPV): case OpT(Operation::RTR): + case OpT(Operation::RESET): return ~NoOperandMask::value; case OpT(Operation::UNLINK): diff --git a/OSBindings/Mac/Clock SignalTests/68000 Decoding/68000ops.json b/OSBindings/Mac/Clock SignalTests/68000 Decoding/68000ops.json index dce3b8341..bbc7197be 100644 --- a/OSBindings/Mac/Clock SignalTests/68000 Decoding/68000ops.json +++ b/OSBindings/Mac/Clock SignalTests/68000 Decoding/68000ops.json @@ -45454,7 +45454,7 @@ "4e73": "RTE", "4e72": "STOP #", "4e71": "NOP", - "4e70": "None", + "4e70": "RESET", "4e6f": "MOVEfromUSP A7", "4e6e": "MOVEfromUSP A6", "4e6d": "MOVEfromUSP A5", @@ -65535,4 +65535,4 @@ "0002": "OR.b #, D2", "0001": "OR.b #, D1", "0000": "OR.b #, D0" -} \ No newline at end of file +}