From 249a04dbde751aa61d6240568ccbab32b98d8579 Mon Sep 17 00:00:00 2001 From: Karri Kaksonen Date: Thu, 21 Apr 2022 21:54:33 +0300 Subject: [PATCH] Move cursor IRQ processing to when the screen is being drawn --- libsrc/atari7800/mono_setcursor.s | 4 ++++ libsrc/atari7800/setcursor.s | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/libsrc/atari7800/mono_setcursor.s b/libsrc/atari7800/mono_setcursor.s index 7253d4a40..52a5a997a 100644 --- a/libsrc/atari7800/mono_setcursor.s +++ b/libsrc/atari7800/mono_setcursor.s @@ -28,6 +28,7 @@ .interruptor mono_blink_cursor .importzp sp + .import _zonecounter .import _mono_zones .import cursor .import pusha, incsp1, pusha0, pushax, popa @@ -175,6 +176,9 @@ umula0: ; Offset to cursor zone 5. ; .proc mono_blink_cursor + lda _zonecounter + and #01 + beq @L3 inc blink_time bne @L3 lda #140 diff --git a/libsrc/atari7800/setcursor.s b/libsrc/atari7800/setcursor.s index a475d0416..c0bf1252b 100644 --- a/libsrc/atari7800/setcursor.s +++ b/libsrc/atari7800/setcursor.s @@ -28,6 +28,7 @@ .interruptor blink_cursor .importzp sp + .import _zonecounter .import _zones .import cursor .import pusha, incsp1, pusha0, pushax, popa @@ -177,6 +178,9 @@ umula0: ; Offset to cursor zone 5. ; .proc blink_cursor + lda _zonecounter + and #01 + beq @L3 inc blink_time bne @L3 lda #140