second: some more animation

This commit is contained in:
Vince Weaver 2023-09-22 23:22:34 -04:00
parent 483b0f54cd
commit 12d677e815
2 changed files with 142 additions and 8 deletions

View File

@ -9,10 +9,15 @@
; CLEAR -
; Optimization at frame 45:
; 4543 = original
;
frame15:
.byte SET_COLOR | BLACK
.byte CLEAR
; .byte SET_COLOR | BLACK
; .byte CLEAR
.byte SET_COLOR | WHITE
.byte BOX, 4, 6, 35,41
@ -51,8 +56,8 @@ frame15:
.byte END
frame16:
.byte SET_COLOR | BLACK
.byte CLEAR
; .byte SET_COLOR | BLACK
; .byte CLEAR
.byte SET_COLOR | WHITE
.byte BOX, 4, 6, 27,41
.byte SET_COLOR | BROWN
@ -1252,7 +1257,96 @@ frame43:
.byte HLIN_ADD,22,23 ; 22
.byte END
frame44:
.byte SET_COLOR | BLACK
.byte CLEAR
.byte SET_COLOR | WHITE
.byte BOX, 4,6,21,21
.byte SET_COLOR | BROWN
.byte BOX,22,6,31,11
.byte BOX,20,11,32,15
.byte HLIN,20,31,16
.byte HLIN_ADD,20,29 ; 17
.byte HLIN_ADD,21,27 ; 18
.byte HLIN_ADD,21,26 ; 19
.byte HLIN_ADD,21,24 ; 20
.byte HLIN_ADD,21,22 ; 21
.byte SET_COLOR | GREY1
.byte BOX,33,12,34,14
.byte BOX,25,6,27,7
.byte PLOT,28,6
.byte HLIN,34,35,23
.byte HLIN_ADD,32,35 ; 24
.byte HLIN_ADD,30,35 ; 25
.byte HLIN_ADD,28,35 ; 26
.byte HLIN_ADD,26,35 ; 27
.byte HLIN_ADD,24,35 ; 28
.byte BOX,17,29,35,41
.byte SET_COLOR | LIGHT_BLUE
.byte HLIN,30,31,6
.byte BOX,25,8,27,9
.byte HLIN,18,19,15
.byte HLIN_ADD,16,19 ; 16
.byte HLIN_ADD,14,19 ; 17
.byte HLIN_ADD,12,20 ; 18
.byte HLIN_ADD,9,20 ; 19
.byte HLIN_ADD,7,20 ; 20
.byte HLIN_ADD,5,20 ; 21
.byte BOX,4,22,21,28
.byte HLIN,4,22,29
.byte HLIN_ADD_R,22 ; 30
.byte HLIN_ADD_R,22 ; 31
.byte HLIN_ADD_R,21 ; 32
.byte HLIN_ADD_R,21 ; 33
.byte HLIN_ADD_R,20 ; 34
.byte HLIN_ADD_R,20 ; 35
.byte HLIN_ADD_R,19 ; 36
.byte HLIN_ADD_R,19 ; 37
.byte HLIN_ADD_R,18 ; 38
.byte HLIN_ADD_R,17 ; 39
.byte HLIN_ADD_R,17 ; 40
.byte HLIN_ADD_R,16 ; 41
.byte SET_COLOR | GREEN
.byte BOX,22,23,24,26
.byte BOX,24,22,26,25
.byte BOX,25,21,27,24
.byte BOX,27,20,29,23
.byte BOX,28,19,31,22
.byte BOX,30,18,33,21
.byte BOX,33,16,34,17
.byte PLOT,32,17
.byte PLOT,23,8
.byte VLIN,6,12,24
.byte SET_COLOR | DARK_BLUE
.byte BOX,32,6,35,11
.byte HLIN,32,33,12
.byte SET_COLOR | ORANGE
.byte VLIN,12,14,26
.byte VLIN,15,18,27
.byte SET_COLOR | MEDIUM_BLUE
.byte VLIN,9,11,21
.byte VLIN,8,10,22
.byte VLIN,15,18,22
.byte VLIN,14,17,23
.byte SET_COLOR | PINK
.byte VLIN,6,7,23
.byte VLIN,13,14,24
.byte VLIN,15,19,25
.byte SET_COLOR | LIGHT_GREEN
.byte BOX,25,10,27,11
.byte PLOT,25,12
.byte SET_COLOR | YELLOW
.byte PLOT,29,6
; .byte SET_COLOR | GREY1
; .byte BOX,25,6,27,7
; .byte PLOT,28,6
; .byte PLOT,26,10
.byte SET_COLOR | RED
.byte HLIN,25,26,6
.byte END
num_scenes=29
num_scenes=30

View File

@ -18,6 +18,7 @@ HLIN = $03
VLIN = $04
PLOT = $05
HLIN_ADD= $06
HLIN_ADD_R= $07
BLACK = $00
RED = $01
@ -40,6 +41,11 @@ WHITE = $0f
draw_scene:
lda #0 ; always clear to black
sta COLOR
jsr clear_fullgr
draw_scene_loop:
ldy #0
lda (INL),Y
@ -87,16 +93,16 @@ update_pointer:
lda #0
adc INH
sta INH
jmp draw_scene
jmp draw_scene_loop
draw_table_l:
.byte <(clear_screen-1),<(draw_box-1),<(draw_hlin-1),<(draw_vlin-1)
.byte <(draw_plot-1),<(draw_hlin_add-1)
.byte <(draw_plot-1),<(draw_hlin_add-1),<(draw_hlin_add_r-1)
draw_table_h:
.byte >(clear_screen-1),>(draw_box-1),>(draw_hlin-1),>(draw_vlin-1)
.byte >(draw_plot-1),>(draw_hlin_add-1)
.byte >(draw_plot-1),>(draw_hlin_add-1),>(draw_hlin_add_r-1)
;=================================
;=================================
@ -287,6 +293,40 @@ hlin_add_done:
jmp update_pointer
;=================================
;=================================
; draw hlin add_r
;=================================
;=================================
; increment Y1
; use old left value
draw_hlin_add_r:
iny ; FIXME: move to common code
lda (INL),Y
sta X2
inc Y1
lda Y1
; sta Y1
; lda Y1
lsr
tay
bcs do_hlin_add_r_mask_odd
jsr hlin_mask_even
jmp hlin_add_r_done
do_hlin_add_r_mask_odd:
jsr hlin_mask_odd
; done
hlin_add_r_done:
lda #2
jmp update_pointer
;=================================
;=================================
; draw vlin