# HG changeset patch # User William Astle # Date 1667971787 25200 # Node ID 2264569d7aca1c85944fae336a5d9a0e736bf536 # Parent 0b3b4daa0d92b7c01d170fac6f2c6baf55e291ff Fix and speed up key repeat Restore accidentally removed instruction which initiates the repeat. Also increase the repeat rate after the initial delay. diff -r 0b3b4daa0d92 -r 2264569d7aca src/lwbasic.s --- a/src/lwbasic.s Tue Nov 08 22:10:35 2022 -0700 +++ b/src/lwbasic.s Tue Nov 08 22:29:47 2022 -0700 @@ -34,7 +34,7 @@ console_curdel equ 10 ; delay between cursor blink cycles keyb_bufflen equ 64 ; keyboard ring buffer length keyb_repdeli equ 40 ; ticks before initial repeat (2/3 s) -keyb_repdelr equ 20 ; 3 repeats per second +keyb_repdelr equ 6 ; 10 repeats per second keyb_caps equ 0x80 ; capslock enabled keyb_alt equ 0x04 ; alt pressed keyb_ctrl equ 0x02 ; ctrl pressed @@ -606,7 +606,8 @@ bne keyb_read6 ; brif not - don't need to do anything clr keyb_curscan ; clear the current repeat bra keyb_read6 -keyb_read8 pshs d ; save current bit probe and scan code +keyb_read8 sta keyb_curscan ; set the current scan code that is repeating + pshs d ; save current bit probe and scan code ldb #keyb_repdeli ; intialize repeat delay stb keyb_repdel bsr keyb_tobuff ; decode key to buffer