diff --git a/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/UserInterfaceState.xcuserstate b/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/UserInterfaceState.xcuserstate
index 7d84314..91215b6 100644
Binary files a/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/UserInterfaceState.xcuserstate and b/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/xcdebugger/Expressions.xcexplist b/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/xcdebugger/Expressions.xcexplist
index 6120007..5b08e5b 100644
--- a/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/xcdebugger/Expressions.xcexplist
+++ b/A2Mac.xcodeproj/project.xcworkspace/xcuserdata/trudnai.xcuserdatad/xcdebugger/Expressions.xcexplist
@@ -114,6 +114,14 @@
+
+
+
+
+
+
diff --git a/src/cpu/jit/instructions/6502_instr_misc.h b/src/cpu/jit/instructions/6502_instr_misc.h
index d7aa881..d261166 100644
--- a/src/cpu/jit/instructions/6502_instr_misc.h
+++ b/src/cpu/jit/instructions/6502_instr_misc.h
@@ -47,7 +47,7 @@ INSTR int BRK(void) {
m6502.I = 1;
m6502.D = 0;
m6502.PC = memread16_high(IRQ_VECTOR);
-// m6502.interrupt = BREAK;
+ m6502.interrupt = BREAK;
#endif
return 7;
}
diff --git a/src/dev/mem/mmio.c b/src/dev/mem/mmio.c
index 7623762..ccfbc38 100644
--- a/src/dev/mem/mmio.c
+++ b/src/dev/mem/mmio.c
@@ -730,6 +730,7 @@ INLINE void ioWrite( uint16_t addr, uint8_t val ) {
switch ( (uint8_t)addr ) {
case (uint8_t)io_KBDSTRB:
kbdStrobe();
+ newMEMcfg.is_80STORE = 0;
break;
case (uint8_t)io_TAPEOUT:
@@ -1101,6 +1102,11 @@ INLINE uint8_t _memread_dis( uint16_t addr ) {
**/
INLINE void _memwrite8_low( uint16_t addr, uint8_t data ) {
+ if ((addr >= 0x400) && (addr < 0x800)) {
+ if ((data == 0x00) || (data == 0xFF)) {
+ m6502.interrupt = BREAK;
+ }
+ }
WRLOMEM[addr] = data;
}
INLINE void _memwrite8_bank( uint16_t addr, uint8_t data ) {