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

View File

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