trogdor: work on timing a bit

This commit is contained in:
Vince Weaver 2024-01-29 01:04:59 -05:00
parent 9bdfebdd30
commit cf1fc32b63
3 changed files with 46 additions and 40 deletions

View File

@ -20,6 +20,11 @@
do_flames: do_flames:
; this gets set to 1 if bg being copied
lda #2
sta FLAME_DELAY
;====================================== ;======================================
; left flame short 2 frames ; left flame short 2 frames
@ -30,7 +35,7 @@ do_flames:
jsr draw_flame_small_1 jsr draw_flame_small_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2 lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
@ -48,7 +53,8 @@ left_flame_animate1:
ldx FLAME_L ldx FLAME_L
jsr draw_flame_tall_1 jsr draw_flame_tall_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
; 2 ; 2
@ -58,7 +64,8 @@ left_flame_animate1:
ldx FLAME_L ldx FLAME_L
jsr draw_flame_tall_2 jsr draw_flame_tall_2
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
dec ANIMATE_COUNT dec ANIMATE_COUNT
@ -77,7 +84,7 @@ left_flame_animate1:
jsr hgr_page_flip jsr hgr_page_flip
lda #2 lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
@ -96,7 +103,8 @@ right_flame_animate1:
ldx FLAME_R ldx FLAME_R
jsr draw_flame_tall_2 jsr draw_flame_tall_2
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
; 1 ; 1
@ -106,7 +114,8 @@ right_flame_animate1:
ldx FLAME_R ldx FLAME_R
jsr draw_flame_tall_1 jsr draw_flame_tall_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
dec ANIMATE_COUNT dec ANIMATE_COUNT
@ -121,7 +130,7 @@ right_flame_animate1:
jsr draw_flame_small_2 jsr draw_flame_small_2
jsr hgr_page_flip jsr hgr_page_flip
lda #2 lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
;============================= ;=============================
@ -133,7 +142,7 @@ right_flame_animate1:
jsr draw_flame_small_1 jsr draw_flame_small_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2 lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
;================================================ ;================================================
@ -150,7 +159,8 @@ left_flame_animate2:
ldx FLAME_L ldx FLAME_L
jsr draw_flame_tall_1 jsr draw_flame_tall_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
; 2 ; 2
@ -160,7 +170,8 @@ left_flame_animate2:
ldx FLAME_L ldx FLAME_L
jsr draw_flame_tall_2 jsr draw_flame_tall_2
jsr hgr_page_flip jsr hgr_page_flip
lda #2
lda FLAME_DELAY
jsr wait_ticks jsr wait_ticks
dec ANIMATE_COUNT dec ANIMATE_COUNT
@ -176,14 +187,9 @@ left_flame_animate2:
jsr draw_flame_small_1 jsr draw_flame_small_1
jsr hgr_page_flip jsr hgr_page_flip
lda #2 lda FLAME_DELAY
jmp wait_ticks ; tail call jmp wait_ticks ; tail call
; jsr wait_ticks
; rts
;=============================== ;===============================
; draw_flame_bg ; draw_flame_bg
@ -204,15 +210,15 @@ draw_flame_bg:
flame_bg_right: flame_bg_right:
jsr hgr_copy_right lda #1
sta FLAME_DELAY
rts jmp hgr_copy_right ; tail call
flame_bg_left: flame_bg_left:
jsr hgr_copy_left lda #1
sta FLAME_DELAY
rts jmp hgr_copy_left ; tail call
flame_bg_clear: flame_bg_clear:
@ -249,15 +255,13 @@ draw_flame_small_common:
sta MASKH sta MASKH
txa txa
; lda #8
sta SPRITE_X sta SPRITE_X
lda #152 lda #152
sta SPRITE_Y sta SPRITE_Y
jsr hgr_draw_sprite_big_mask jmp hgr_draw_sprite_big_mask ; tail call
rts
;=============================== ;===============================
; draw_flame_tall ; draw_flame_tall
@ -292,16 +296,13 @@ draw_flame_tall_2:
draw_left_flame_common: draw_left_flame_common:
; lda #8
txa txa
sta SPRITE_X sta SPRITE_X
lda #54 lda #54
sta SPRITE_Y sta SPRITE_Y
jsr hgr_draw_sprite_big_mask jmp hgr_draw_sprite_big_mask ; tail call
rts
;=================================== ;===================================
@ -311,16 +312,16 @@ draw_twin_flames_tall_1:
ldx #4 ldx #4
jsr draw_flame_tall_1 jsr draw_flame_tall_1
ldx #28 ldx #28
jsr draw_flame_tall_2 jmp draw_flame_tall_2 ; tail call
rts
draw_twin_flames_tall_2: draw_twin_flames_tall_2:
ldx #4 ldx #4
jsr draw_flame_tall_2 jsr draw_flame_tall_2
ldx #28 ldx #28
jsr draw_flame_tall_1 jmp draw_flame_tall_1 ; tail call
rts
;=================================== ;===================================
@ -330,5 +331,5 @@ draw_twin_flames_low:
ldx #4 ldx #4
jsr draw_flame_small_1 jsr draw_flame_small_1
ldx #28 ldx #28
jsr draw_flame_small_2 jmp draw_flame_small_2 ; tail call
rts

View File

@ -156,7 +156,7 @@ scroll_in_loop:
cmp #200 cmp #200
bne scroll_in_loop bne scroll_in_loop
lda #10 lda #30
jsr wait_ticks jsr wait_ticks
@ -186,7 +186,6 @@ scroll_in_loop:
jsr zx02_full_decomp jsr zx02_full_decomp
; pan 9 times ; pan 9 times
; FIXME: update timing
lda #9 lda #9
jsr horiz_pan jsr horiz_pan
@ -221,7 +220,7 @@ scroll_in_loop:
jsr hgr_page_flip jsr hgr_page_flip
lda #42 lda #20
jsr wait_ticks jsr wait_ticks
;===================== ;=====================
@ -241,7 +240,7 @@ scroll_in_loop:
jsr hgr_page_flip jsr hgr_page_flip
lda #30 lda #10
jsr wait_ticks jsr wait_ticks
@ -258,6 +257,9 @@ scroll_in_loop:
lda #160 lda #160
jsr wait_ticks jsr wait_ticks
lda #120
jsr wait_ticks
;====================================== ;======================================
@ -288,7 +290,9 @@ scroll_in_loop:
jsr hgr_page_flip jsr hgr_page_flip
lda #50 ; should be 250? lda #160
jsr wait_ticks
lda #90
jsr wait_ticks jsr wait_ticks
;========================== ;==========================

View File

@ -134,6 +134,7 @@ ANIMATE_COUNT = $F5
FLAME_L = $F6 FLAME_L = $F6
FLAME_R = $F7 FLAME_R = $F7
FLAME_BG = $F8 FLAME_BG = $F8
FLAME_DELAY = $F9
;============================================== ;==============================================
; $FC-$FF we use for in/out pointers ; $FC-$FF we use for in/out pointers