From 38fbe6b269192f151aeb9f171a895520d0fd6479 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Sat, 3 Apr 2021 18:14:50 -0400 Subject: Turbo fight mode, initial implementation --- console.s | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'console.s') diff --git a/console.s b/console.s index 8ca93c2..af044d2 100644 --- a/console.s +++ b/console.s @@ -11,6 +11,7 @@ .importzp destptr ; from draw_lorcha.s .importzp sreg .import _cprintulong, _cputc, _cprint_taipan, _timed_getch, _orders + .import _turbo .ifdef CART_TARGET .segment "HIGHCODE" @@ -256,13 +257,34 @@ _plus_or_space: ; extern void set_orders(void); _set_orders: + lda _turbo ; in turbo fight mode? + beq @sowait ; no, so wait like usual + lda CH ; turbo = yes, did user hit a key? + cmp #$ff + bne @sowait ; yes, wait like usual + rts +@sowait: + lda #0 + sta _turbo jsr _timed_getch + ;cmp #$46 ; is it capital F? + ;beq @soturbo + ;cmp #$52 ; or capital R? + ;bne @sonoturbo + cmp #$60 ; capital letter? + bcs @sonoturbo ; nope, disable turbo +@soturbo: + ora #$20 ; convert to lowercase + sta _turbo ; enable turbo + ;;; sta COLOR4 ; for debugging +@sonoturbo: ldx #3 @solp: cmp orders_tbl-1,x beq @returnx dex bne @solp + stx _turbo ; invalid order, disable turbo rts @returnx: stx _orders -- cgit v1.2.3