second: start making it autoplay

This commit is contained in:
Vince Weaver 2023-10-31 20:27:19 -04:00
parent 48ec58298e
commit bedaba77c1
7 changed files with 109 additions and 21 deletions

View File

@ -17,12 +17,12 @@ plot:
bcc plot_even ; 2nt/3
plot_odd:
ldx #$f0 ; 2
ldy #$f0 ; 2
bcs plot_c_done ; 2nt/3
plot_even:
ldx #$0f ; 2
ldy #$0f ; 2
plot_c_done:
stx MASK ; 3
sty MASK ; 3
asl ; shift back (now even) ; 2
tay ; 2

25
demos/second/irq_wait.s Normal file
View File

@ -0,0 +1,25 @@
; wait A * 1 50Hz tick
wait_ticks:
sta IRQ_COUNTDOWN
wait_tick_loop:
lda IRQ_COUNTDOWN
bne wait_tick_loop
wait_tick_done:
rts
wait_seconds:
tax
wait_seconds_loop:
lda #50 ; wait 1s
jsr wait_ticks
lda KEYPRESS
bmi wait_seconds_done
dex
bpl wait_seconds_loop
wait_seconds_done:
bit KEYRESET
rts

View File

@ -5,7 +5,8 @@ PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr
PNG2GR = ../../../../utils/gr-utils/png2gr
all: igl.hgr.zx02 igr.hgr.zx02 fc_sr_logo.hgr.zx02 \
demosplash.hgr.zx02 mockingboard.hgr.zx02
demosplash.hgr.zx02 mockingboard.hgr.zx02 \
vmw.hgr.zx02
####
@ -51,9 +52,18 @@ igr.hgr: igr.png
####
vmw.hgr.zx02: vmw.hgr
$(ZX02) vmw.hgr vmw.hgr.zx02
vmw.hgr: vmw.png
$(PNG_TO_HGR) vmw.png > vmw.hgr
####
####
clean:
rm -f *~
rm -f *~ *.zx02

Binary file not shown.

After

Width:  |  Height:  |  Size: 817 B

View File

@ -29,36 +29,77 @@ intro_start:
lda #0
jsr hgr_page1_clearscreen
;=========================
; wait 15s doing nothing
;=========================
; demosplash
lda #15
jsr wait_seconds
; pre-load vmw message
lda #<vmw_data
sta zx_src_l+1
lda #>vmw_data
sta zx_src_h+1
lda #$40
jsr zx02_full_decomp
;========================
; vmw message for 5s
;========================
bit PAGE2
lda #5
jsr wait_seconds
; switch back, wait 2 seconds
bit PAGE1
lda #2
jsr wait_seconds
; preload demosplash message
lda #<demosplash_data
sta zx_src_l+1
lda #>demosplash_data
sta zx_src_h+1
lda #$20
lda #$40
jsr zx02_full_decomp
jsr wait_until_keypress
;===================
; demosplash for 5s
;===================
bit PAGE2
lda #5
jsr wait_seconds
; mockingboard
; switch back, wait 2 seconds
bit PAGE1
lda #2
jsr wait_seconds
; pre-load mockingboard
lda #<mockingboard_data
sta zx_src_l+1
lda #>mockingboard_data
sta zx_src_h+1
lda #$20
lda #$40
jsr zx02_full_decomp
jsr wait_until_keypress
;=======================
; mockingboard for 5s
;=======================
bit PAGE2
lda #5
jsr wait_seconds
bit PAGE1
;======================================
;======================================
@ -139,13 +180,15 @@ intro_start:
done_intro:
rts
.align $100
;.align $100
.include "../wait_keypress.s"
.include "../zx02_optim.s"
.include "../hgr_table.s"
.include "../hgr_clear_screen.s"
.include "horiz_scroll.s"
.include "../irq_wait.s"
demosplash_data:
.incbin "graphics/demosplash.hgr.zx02"
mockingboard_data:
@ -157,4 +200,5 @@ intro_right_data:
.incbin "graphics/igr.hgr.zx02"
fc_sr_logo_data:
.incbin "graphics/fc_sr_logo.hgr.zx02"
vmw_data:
.incbin "graphics/vmw.hgr.zx02"

View File

@ -13,6 +13,7 @@ zooming_circles:
;===================
; init screen
bit LORES
bit FULLGR
bit PAGE1
@ -61,15 +62,18 @@ xloop:
ldy X2 ; Y==X2 ; 2
txa ; A==Y1 ; 1
jsr plot_compat ; (X2,Y1) ; 3
jsr plot_compat ; (X2,Y1) ; 3
ldy X2
lda Y2 ; A==Y2 ; 2
jsr plot_compat ; (X2,Y2) ; 3
jsr plot_compat ; (X2,Y2) ; 3
ldy TEMPY ; Y==X1 ; 2
txa ; A==Y1 ; 1
jsr plot_compat ; (X1,Y1) ; 3
ldy TEMPY
lda Y2 ; A==Y2 ; 2
jsr plot_compat ; (X1,Y2) ; 3
ldy TEMPY
inc X2 ; 2

View File

@ -298,6 +298,7 @@ load_program_loop:
sei
jsr clear_ay_both ; stop from making noise
;=============================
; want to load 10..12
@ -341,6 +342,10 @@ load_program_loop2:
;==========================
;==========================
; restart music
cli
;=======================
; run SPHERES
;============================================