From 3701cd5457f4dce990d9e86df7af21922f1e793a Mon Sep 17 00:00:00 2001 From: Badvision Date: Sun, 25 Aug 2024 23:14:47 -0500 Subject: [PATCH] Fixed broken interrupt handling --- src/main/java/jace/apple2e/MOS65C02.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/jace/apple2e/MOS65C02.java b/src/main/java/jace/apple2e/MOS65C02.java index 3abe82f..109f495 100644 --- a/src/main/java/jace/apple2e/MOS65C02.java +++ b/src/main/java/jace/apple2e/MOS65C02.java @@ -1207,10 +1207,10 @@ public class MOS65C02 extends CPU { } interruptSignalled = false; if (!I || B) { - I = true; + I = false; pushWord(getProgramCounter()); push(getStatus()); - B = false; + I = true; int newPC = getMemory().readWord(INT_VECTOR, TYPE.READ_DATA, true, false); // System.out.println("Interrupt generated, setting PC to (" + Integer.toString(INT_VECTOR, 16) + ") = " + Integer.toString(newPC, 16)); setProgramCounter(newPC);