From e8af94ba5d90355b7990552452479063f27d0569 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 20 Jan 2025 09:10:43 +0100 Subject: [PATCH] Better keyboard handling --- Atari/inputs.asm | 16 ++++++---------- scorch.xex | Bin 32697 -> 32686 bytes scorch_cart.xex | Bin 69619 -> 69608 bytes 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/Atari/inputs.asm b/Atari/inputs.asm index 84037f6..37d155e 100644 --- a/Atari/inputs.asm +++ b/Atari/inputs.asm @@ -23,10 +23,8 @@ getKeyAfterWait ;-------------------------------------------------- .IF TARGET = 800 lda SKSTAT - cmp #$ff - beq checkJoyGetKey ; key not pressed, check Joy - cmp #$f7 ; SHIFT - beq checkJoyGetKey + and #%00000100 ; any key + bne checkJoyGetKey ; key not pressed, check Joy .ELIF TARGET = 5200 lda SkStatSimulator and #%11111110 @@ -137,8 +135,8 @@ StillWait beq StillWait .IF TARGET = 800 lda SKSTAT - cmp #$ff - bne StillWait + and #%00000100 ; any key + beq StillWait lda CONSOL and #%00000110 ; Select and Option only cmp #%00000110 @@ -186,10 +184,8 @@ KeyAutoReleased ; autorepeat and #%00000101 ; Start + Option beq QuitToGameover lda SKSTAT - cmp #$ff - jeq nokeys - cmp #$f7 ; SHIFT - jeq nokeys + and #%00000100 ; any key + jne nokeys lda kbcode and #%10111111 ; SHIFT elimination diff --git a/scorch.xex b/scorch.xex index 12027cf3434568632f057826938c0fb356a43110..3c51683313c093f67b0d7689b97240b2ceb5a881 100644 GIT binary patch delta 6799 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 diff --git a/scorch_cart.xex b/scorch_cart.xex index c56f6c5a43b1dfb7bec748f2bed12f06de2d1238..333ad67e95feb8d6ebf1b90715d6e5251641d4c0 100644 GIT binary patch delta 6895 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 VrjcQBrbsXqlUU(5O9`9%{{jX8__+W8 delta 6963 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