ootw: c1: fix issue where left/right don't clear keypress strobe

This commit is contained in:
Vince Weaver 2019-08-17 18:47:27 -04:00
parent e874af7e26
commit 1938dafd55
2 changed files with 22 additions and 10 deletions

View File

@ -91,7 +91,7 @@ left_going_left:
;=============================
; already running, do nothing?
rts
jmp done_keypress
left_going_right:
lda PHYSICIST_STATE
@ -108,7 +108,7 @@ left_going_right:
;===========================
; otherwise?
rts
jmp done_keypress
;========================
; check for right pressed
@ -145,7 +145,7 @@ right_going_right:
;=============================
; already running, do nothing?
rts
jmp done_keypress
right_going_left:
lda PHYSICIST_STATE
@ -163,7 +163,7 @@ right_going_left:
;===========================
; otherwise?
rts
jmp done_keypress
;=====================
@ -204,8 +204,7 @@ run_right:
update_state:
sta PHYSICIST_STATE
bit KEYRESET
rts
jmp done_keypress

View File

@ -37,6 +37,7 @@ mesa_left:
lda #(128-4)
sta LEFT_LIMIT
sta LEFT_WALK_LIMIT
;=============================
; Load background to $c00
@ -50,8 +51,8 @@ mesa_left:
;=================================
; copy to screen
jsr gr_copy_to_current
jsr page_flip
; jsr gr_copy_to_current
; jsr page_flip
;=================================
; setup vars
@ -79,6 +80,9 @@ mesa_loop:
lda LEVELEND_PROGRESS
beq no_levelend
; Draw level-end animation
;=== load special background on first frame and frame 19
cmp #(MAX_PROGRESSION-36) ; on frame 19?
@ -138,8 +142,9 @@ not_beginning_of_end:
no_levelend:
;================================
;==================================
; copy background to current page
;==================================
jsr gr_copy_to_current
@ -150,21 +155,25 @@ beyond_mesa_normal:
;===============================
; check keyboard
;===============================
jsr handle_keypress
;===============================
; Move physicist
;===============================
jsr move_physicist
;===============================
; check limits
;===============================
jsr check_screen_limit
;===============
; draw physicist
;===============
jsr draw_physicist
@ -177,19 +186,23 @@ beyond_mesa_normal:
;================
; move beast
;=================
jsr move_beast
;================
; draw beast
;================
jsr draw_beast
mesa_no_beast:
level1_ending:
;===============
; page flip
;===============
jsr page_flip
@ -310,7 +323,7 @@ done_mesa:
;=====================
; long(er) wait
; waits approximately 10ms * X
; waits approximately 10ms * X
long_wait:
lda #64