diff --git a/src/main/java/com/loomcom/symon/devices/Acia6850.java b/src/main/java/com/loomcom/symon/devices/Acia6850.java index 430a3ea..bd70eed 100644 --- a/src/main/java/com/loomcom/symon/devices/Acia6850.java +++ b/src/main/java/com/loomcom/symon/devices/Acia6850.java @@ -56,6 +56,9 @@ public class Acia6850 extends Acia { public int read(int address, boolean cpuAccess) throws MemoryAccessException { switch (address) { case RX_REG: + if (cpuAccess) { + interrupt = false; + } return rxRead(cpuAccess); case STAT_REG: return statusReg(cpuAccess); @@ -69,6 +72,9 @@ public class Acia6850 extends Acia { public void write(int address, int data) throws MemoryAccessException { switch (address) { case TX_REG: + if (cpuAccess) { + interrupt = false; + } txWrite(data); break; case CTRL_REG: @@ -113,10 +119,6 @@ public class Acia6850 extends Acia { stat |= 0x80; } - if (cpuAccess) { - interrupt = false; - } - return stat; }