Keyboard autorepeat added #141

This commit is contained in:
Pecusx
2022-10-30 12:51:38 +01:00
parent cd70e8c1ec
commit 4bf6b33528
6 changed files with 14 additions and 9 deletions
+2
View File
@@ -25,6 +25,8 @@ TextBackgroundColor = $02 ; REAL constans - use: LDA #TextBackgroundColor
TextForegroundColor = $0A
space = 0 ; space in screencodes
KeyRepeatSpeed = 15 ; (max 127 !!!)
;character codes for symbols (tank, parachute, etc. )
char_parachute_______ = $02
char_flag____________ = $1e
+11 -6
View File
@@ -26,7 +26,7 @@
;---------------------------------------------------
icl 'definitions.asm'
;---------------------------------------------------
.zpvar DliColorBack .byte = $63
.zpvar xdraw .word = $64 ;variable X for plot
.zpvar ydraw .word ;variable Y for plot (like in Atari Basic - Y=0 in upper right corner of the screen)
.zpvar xbyte .word
@@ -1674,22 +1674,27 @@ getkeyend
;--------------------------------------------------
.proc WaitForKeyRelease
;--------------------------------------------------
mva #128-KeyRepeatSpeed pressTimer ; tricky
StillWait
bit pressTimer
bmi KeyReleased
lda STICK0
and #$0f
cmp #$0f
bne WaitForKeyRelease
bne StillWait
lda STRIG0
beq WaitForKeyRelease
beq StillWait
.IF TARGET = 800
lda SKSTAT
cmp #$ff
bne WaitForKeyRelease
bne StillWait
lda CONSOL
and #%00000110 ; Select and Option only
cmp #%00000110
bne WaitForKeyRelease
rts
bne StillWait
.ENDIF
KeyReleased
rts
.endp
;--------------------------------------------------
.proc IsKeyPressed ; A=0 - yes , A>0 - no
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
-2
View File
@@ -414,8 +414,6 @@ ResultX
;ResultY .DS 1
ResultOfTankNr
.DS 1
DliColorBack
.ds 1
;----------------------------------------------------
;PutChar4x4
+1 -1
View File
@@ -1419,7 +1419,7 @@ pressedSpace
lda #0
sta ATRACT ; reset atract mode
sta pressTimer ; reset
jsr WaitForKeyRelease
jsr WaitForKeyRelease.StillWait
lda pressTimer
cmp #25 ; 1/2s
bcc fire