diff --git a/bbb2.system.s b/bbb2.system.s index 2576120..4d51973 100644 --- a/bbb2.system.s +++ b/bbb2.system.s @@ -411,6 +411,19 @@ handy_rts: ;;; ------------------------------------------------------------ +.proc on_alpha +loop: jsr down_common + jsr draw_current_line + lda KBD + and #$5F ; make ASCII and uppercase + ldy #1 + cmp (curr_ptr),y ; key = first char ? + beq draw_current_line_inv + bra loop +.endproc + +;;; ------------------------------------------------------------ + .proc on_up ldx current_entry beq draw_current_line_inv ; first one? just redraw @@ -427,19 +440,6 @@ handy_rts: ;;; ------------------------------------------------------------ -.proc on_alpha -loop: jsr down_common - lda KBD - and #$5F ; make ASCII and uppercase - ldy #1 - cmp (curr_ptr),y ; key < first char ? - beq draw_current_line_inv - jsr draw_current_line - bra loop -.endproc - -;;; ------------------------------------------------------------ - draw_current_line_inv: jsr SETINV jsr draw_current_line @@ -476,6 +476,16 @@ draw_current_line_inv: ;; fall through .endproc +;;; ------------------------------------------------------------ + +.proc on_escape + jsr pop_prefix ; leaves length in X + dec prefix_depth + bra resize_prefix_and_open_jmp +.endproc + +;;; ------------------------------------------------------------ + .proc down_common lda current_entry inc a @@ -497,14 +507,6 @@ draw_current_line_inv: ;;; ------------------------------------------------------------ -.proc on_escape - jsr pop_prefix ; leaves length in X - dec prefix_depth - bra resize_prefix_and_open_jmp -.endproc - -;;; ------------------------------------------------------------ - next_drive: jmp next_device