From fbee770225f11223dfe7b8f9d94c2bc1b6e94daf Mon Sep 17 00:00:00 2001 From: folkert van heusden Date: Tue, 12 Apr 2022 15:58:37 +0200 Subject: [PATCH] RTI/RTT fix (prev mode) --- cpu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cpu.cpp b/cpu.cpp index 5e9f55f..874b205 100644 --- a/cpu.cpp +++ b/cpu.cpp @@ -1312,7 +1312,7 @@ bool cpu::misc_operations(const uint16_t instr) case 0b0000000000000010: // RTI setPC(popStack()); - setPSW(popStack(), !!(getPSW() >> 12)); + setPSW(popStack(), !!((getPSW() >> 12) & 3)); return true; case 0b0000000000000011: // BPT @@ -1325,7 +1325,7 @@ bool cpu::misc_operations(const uint16_t instr) case 0b0000000000000110: // RTT setPC(popStack()); - setPSW(popStack(), !!(getPSW() >> 12)); + setPSW(popStack(), !!((getPSW() >> 12) & 3)); return true; case 0b0000000000000111: // MFPT