mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-18 04:29:31 +00:00
second: more work on credits
This commit is contained in:
parent
c7c764a597
commit
c619789594
|
@ -24,15 +24,17 @@ second_d1.dsk: QBOOT QLOAD MUSIC START \
|
||||||
$(DOS33_RAW) second_d1.dsk 11 0 ./part05_dot_tunnel/TUNNEL 0 0
|
$(DOS33_RAW) second_d1.dsk 11 0 ./part05_dot_tunnel/TUNNEL 0 0
|
||||||
$(DOS33_RAW) second_d1.dsk 13 0 ./part16_ocean/OCEAN 0 0
|
$(DOS33_RAW) second_d1.dsk 13 0 ./part16_ocean/OCEAN 0 0
|
||||||
|
|
||||||
second_d2.dsk: QBOOT QLOAD2 MUSIC2 START \
|
second_d2.dsk: QBOOT QLOAD2 MUSIC2 \
|
||||||
./part18_3d/THREED
|
./part18_3d/THREED \
|
||||||
|
./part20_credits/CREDITS
|
||||||
cp $(EMPTY_DISK) second_d2.dsk
|
cp $(EMPTY_DISK) second_d2.dsk
|
||||||
$(DOS33_RAW) second_d2.dsk 0 0 QBOOT 0 1
|
$(DOS33_RAW) second_d2.dsk 0 0 QBOOT 0 1
|
||||||
$(DOS33_RAW) second_d2.dsk 0 2 QBOOT 1 1
|
$(DOS33_RAW) second_d2.dsk 0 2 QBOOT 1 1
|
||||||
$(DOS33_RAW) second_d2.dsk 0 4 QBOOT 2 1
|
$(DOS33_RAW) second_d2.dsk 0 4 QBOOT 2 1
|
||||||
$(DOS33_RAW) second_d2.dsk 1 0 QLOAD2 0 0
|
$(DOS33_RAW) second_d2.dsk 1 0 QLOAD2 0 0
|
||||||
$(DOS33_RAW) second_d2.dsk 3 0 MUSIC2 0 0
|
$(DOS33_RAW) second_d2.dsk 3 0 MUSIC2 0 0
|
||||||
$(DOS33_RAW) second_d2.dsk 5 0 START 0 0
|
# $(DOS33_RAW) second_d2.dsk 5 0 START 0 0
|
||||||
|
$(DOS33_RAW) second_d2.dsk 10 0 ./part20_credits/CREDITS 0 0
|
||||||
$(DOS33_RAW) second_d2.dsk 20 0 ./part18_3d/THREED 0 0
|
$(DOS33_RAW) second_d2.dsk 20 0 ./part18_3d/THREED 0 0
|
||||||
|
|
||||||
|
|
||||||
|
@ -59,7 +61,7 @@ qload.o: qload.s \
|
||||||
pt3_lib_detect_model.s pt3_lib_mockingboard_detect.s \
|
pt3_lib_detect_model.s pt3_lib_mockingboard_detect.s \
|
||||||
pt3_lib_mockingboard_setup.s interrupt_handler.s \
|
pt3_lib_mockingboard_setup.s interrupt_handler.s \
|
||||||
pt3_lib_mockingboard_patch.s
|
pt3_lib_mockingboard_patch.s
|
||||||
ca65 -o qload.o qload.s -l qload2.lst
|
ca65 -o qload.o qload.s -l qload.lst
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
|
|
@ -82,4 +82,16 @@ btpl2:
|
||||||
cpx #$C0
|
cpx #$C0
|
||||||
bne btmi
|
bne btmi
|
||||||
|
|
||||||
|
; go 16 beyond, which allows our text scrolling routine
|
||||||
|
|
||||||
|
ldx #16
|
||||||
|
extra_table_loop:
|
||||||
|
lda hposn_low,X
|
||||||
|
sta hposn_low+192,X
|
||||||
|
lda hposn_high,X
|
||||||
|
eor #$60
|
||||||
|
sta hposn_high+192,X
|
||||||
|
dex
|
||||||
|
bpl extra_table_loop
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
24
demos/second/part20_credits/Makefile
Normal file
24
demos/second/part20_credits/Makefile
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
include ../../../Makefile.inc
|
||||||
|
|
||||||
|
DOS33 = ../../../utils/dos33fs-utils/dos33
|
||||||
|
DOS33_RAW = ../../../utils/dos33fs-utils/dos33_raw
|
||||||
|
EMPTY_DISK = ../../../empty_disk/empty.dsk
|
||||||
|
TOKENIZE = ../../../utils/asoft_basic-utils/tokenize_asoft
|
||||||
|
LINKER_SCRIPTS = ../../../linker_scripts/
|
||||||
|
|
||||||
|
all: CREDITS
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
CREDITS: credits.o
|
||||||
|
ld65 -o CREDITS credits.o -C $(LINKER_SCRIPTS)/apple2_6000.inc
|
||||||
|
|
||||||
|
credits.o: credits.s vertical_scroll.s ../zx02_optim.s \
|
||||||
|
../zp.inc ../hardware.inc ../qload.inc
|
||||||
|
ca65 -o credits.o credits.s -l credits.lst
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *~ *.o *.lst CREDITS
|
|
@ -1,3 +1,12 @@
|
||||||
|
21 of them
|
||||||
|
7x3? 5x
|
||||||
|
|
||||||
|
original: 18*7= 126x72
|
||||||
|
10x4
|
||||||
|
6 192/6=32
|
||||||
|
|
||||||
|
two pages of 4x3 (70x64)
|
||||||
|
|
||||||
opening
|
opening
|
||||||
animation
|
animation
|
||||||
explosion
|
explosion
|
||||||
|
@ -36,3 +45,4 @@ Greets:
|
||||||
Utopia BBS (MD)
|
Utopia BBS (MD)
|
||||||
|
|
||||||
|
|
||||||
|
APPLE ][ FOREVER
|
||||||
|
|
187
demos/second/part20_credits/credits.s
Normal file
187
demos/second/part20_credits/credits.s
Normal file
|
@ -0,0 +1,187 @@
|
||||||
|
; Credits
|
||||||
|
|
||||||
|
; o/~ It's the credits, yeah, that's the best part
|
||||||
|
; When the movie ends and the reading starts o/~
|
||||||
|
|
||||||
|
;
|
||||||
|
; by deater (Vince Weaver) <vince@deater.net>
|
||||||
|
|
||||||
|
.include "../zp.inc"
|
||||||
|
.include "../hardware.inc"
|
||||||
|
.include "../qload.inc"
|
||||||
|
|
||||||
|
mod7_table = $1c00
|
||||||
|
div7_table = $1d00
|
||||||
|
hposn_low = $1e00
|
||||||
|
hposn_high = $1f00
|
||||||
|
|
||||||
|
intro_start:
|
||||||
|
;=====================
|
||||||
|
; initializations
|
||||||
|
;=====================
|
||||||
|
|
||||||
|
;===================
|
||||||
|
; Load graphics
|
||||||
|
;===================
|
||||||
|
load_loop:
|
||||||
|
|
||||||
|
bit SET_GR
|
||||||
|
bit HIRES
|
||||||
|
bit FULLGR
|
||||||
|
bit PAGE1
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
jsr hgr_page1_clearscreen
|
||||||
|
|
||||||
|
jsr hgr_make_tables
|
||||||
|
|
||||||
|
|
||||||
|
; fc logo
|
||||||
|
|
||||||
|
lda #<fc_grey_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>fc_grey_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
; fc logo
|
||||||
|
|
||||||
|
lda #<fc_iipix_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>fc_iipix_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
|
||||||
|
; nuts4 logo
|
||||||
|
|
||||||
|
lda #<nuts4_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>nuts4_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
; nuts4 logo
|
||||||
|
|
||||||
|
lda #<nuts_pg_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>nuts_pg_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
; nuts4 logo
|
||||||
|
|
||||||
|
lda #<nuts_blue_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>nuts_blue_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
|
||||||
|
; sample logo
|
||||||
|
|
||||||
|
lda #<sample_data
|
||||||
|
sta zx_src_l+1
|
||||||
|
|
||||||
|
lda #>sample_data
|
||||||
|
sta zx_src_h+1
|
||||||
|
|
||||||
|
lda #$20
|
||||||
|
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
stx FRAME
|
||||||
|
|
||||||
|
do_scroll:
|
||||||
|
|
||||||
|
lda FRAME
|
||||||
|
and #$7
|
||||||
|
bne no_update_message
|
||||||
|
|
||||||
|
; clear lines
|
||||||
|
ldx #200
|
||||||
|
cl_outer_loop:
|
||||||
|
lda hposn_low,X
|
||||||
|
sta OUTL
|
||||||
|
lda hposn_high,X
|
||||||
|
sta OUTH
|
||||||
|
ldy #39
|
||||||
|
lda #0
|
||||||
|
cl_inner_loop:
|
||||||
|
sta (OUTL),Y
|
||||||
|
dey
|
||||||
|
bpl cl_inner_loop
|
||||||
|
dex
|
||||||
|
cpx #191
|
||||||
|
bne cl_outer_loop
|
||||||
|
|
||||||
|
|
||||||
|
; print message
|
||||||
|
|
||||||
|
lda #12
|
||||||
|
sta CH
|
||||||
|
lda #192
|
||||||
|
sta CV
|
||||||
|
|
||||||
|
lda #<apple_message
|
||||||
|
ldy #>apple_message
|
||||||
|
|
||||||
|
jsr DrawCondensedString
|
||||||
|
|
||||||
|
no_update_message:
|
||||||
|
|
||||||
|
inc FRAME
|
||||||
|
|
||||||
|
jsr hgr_vertical_scroll
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
jmp do_scroll
|
||||||
|
|
||||||
|
.align $100
|
||||||
|
.include "../wait_keypress.s"
|
||||||
|
.include "../zx02_optim.s"
|
||||||
|
.include "../hgr_table.s"
|
||||||
|
.include "../hgr_clear_screen.s"
|
||||||
|
.include "vertical_scroll.s"
|
||||||
|
.include "font_console_1x8.s"
|
||||||
|
|
||||||
|
.include "../part00_boot/fonts/a2_cga_thin.inc"
|
||||||
|
|
||||||
|
fc_grey_data:
|
||||||
|
.incbin "graphics/fc_grey.hgr.zx02"
|
||||||
|
fc_iipix_data:
|
||||||
|
.incbin "graphics/fc_iipix.hgr.zx02"
|
||||||
|
|
||||||
|
nuts4_data:
|
||||||
|
.incbin "graphics/nuts4.hgr.zx02"
|
||||||
|
nuts_pg_data:
|
||||||
|
.incbin "graphics/nuts_pg.hgr.zx02"
|
||||||
|
nuts_blue_data:
|
||||||
|
.incbin "graphics/nuts_blue.hgr.zx02"
|
||||||
|
|
||||||
|
sample_data:
|
||||||
|
.incbin "graphics/credits_2.hgr.zx02"
|
||||||
|
|
||||||
|
apple_message:
|
||||||
|
.byte "Apple ][ Forever"
|
|
@ -4,8 +4,17 @@ ZX02 = ~/research/6502_compression/zx02.git/build/zx02
|
||||||
PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr
|
PNG_TO_HGR = ../../../../utils/hgr-utils/png2hgr
|
||||||
PNG2GR = ../../../../utils/gr-utils/png2gr
|
PNG2GR = ../../../../utils/gr-utils/png2gr
|
||||||
|
|
||||||
all: nuts4.hgr.zx02
|
all: nuts4.hgr.zx02 nuts_pg.hgr.zx02 nuts_blue.hgr.zx02 \
|
||||||
|
fc_grey.hgr.zx02 fc_iipix.hgr.zx02 \
|
||||||
|
credits_2.hgr.zx02
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
credits_2.hgr: credits_2.png
|
||||||
|
$(PNG_TO_HGR) credits_2.png > credits_2.hgr
|
||||||
|
|
||||||
|
credits_2.hgr.zx02: credits_2.hgr
|
||||||
|
$(ZX02) credits_2.hgr credits_2.hgr.zx02
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
@ -15,6 +24,41 @@ nuts4.hgr: nuts4.png
|
||||||
nuts4.hgr.zx02: nuts4.hgr
|
nuts4.hgr.zx02: nuts4.hgr
|
||||||
$(ZX02) nuts4.hgr nuts4.hgr.zx02
|
$(ZX02) nuts4.hgr nuts4.hgr.zx02
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
nuts_blue.hgr: nuts_blue.png
|
||||||
|
$(PNG_TO_HGR) nuts_blue.png > nuts_blue.hgr
|
||||||
|
|
||||||
|
nuts_blue.hgr.zx02: nuts_blue.hgr
|
||||||
|
$(ZX02) nuts_blue.hgr nuts_blue.hgr.zx02
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
nuts_pg.hgr: nuts_pg.png
|
||||||
|
$(PNG_TO_HGR) nuts_pg.png > nuts_pg.hgr
|
||||||
|
|
||||||
|
nuts_pg.hgr.zx02: nuts_pg.hgr
|
||||||
|
$(ZX02) nuts_pg.hgr nuts_pg.hgr.zx02
|
||||||
|
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
fc_grey.hgr: fc_grey.png
|
||||||
|
$(PNG_TO_HGR) fc_grey.png > fc_grey.hgr
|
||||||
|
|
||||||
|
fc_grey.hgr.zx02: fc_grey.hgr
|
||||||
|
$(ZX02) fc_grey.hgr fc_grey.hgr.zx02
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
fc_iipix.hgr: fc_iipix.png
|
||||||
|
$(PNG_TO_HGR) fc_iipix.png > fc_iipix.hgr
|
||||||
|
|
||||||
|
fc_iipix.hgr.zx02: fc_iipix.hgr
|
||||||
|
$(ZX02) fc_iipix.hgr fc_iipix.hgr.zx02
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
|
29
demos/second/part20_credits/vertical_scroll.s
Normal file
29
demos/second/part20_credits/vertical_scroll.s
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
|
||||||
|
hgr_vertical_scroll:
|
||||||
|
ldx #0
|
||||||
|
|
||||||
|
outer_vscroll_loop:
|
||||||
|
lda hposn_low,X
|
||||||
|
sta OUTL
|
||||||
|
lda hposn_high,X
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
inx
|
||||||
|
|
||||||
|
lda hposn_low,X
|
||||||
|
sta INL
|
||||||
|
lda hposn_high,X
|
||||||
|
sta INH
|
||||||
|
|
||||||
|
ldy #39
|
||||||
|
inner_vscroll_loop:
|
||||||
|
lda (INL),Y
|
||||||
|
sta (OUTL),Y
|
||||||
|
dey
|
||||||
|
bpl inner_vscroll_loop
|
||||||
|
|
||||||
|
cpx #200
|
||||||
|
bne outer_vscroll_loop
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
|
@ -158,20 +158,19 @@ error_string:
|
||||||
|
|
||||||
|
|
||||||
which_disk_array:
|
which_disk_array:
|
||||||
.byte 1,1 ; MUSIC2, THREED
|
.byte 1,1,1 ; MUSIC2, THREED, CREDITS
|
||||||
|
|
||||||
|
|
||||||
load_address_array:
|
load_address_array:
|
||||||
.byte $D0,$40 ; MUSIC2, THREED
|
.byte $D0,$40,$60 ; MUSIC2, THREED, CREDITS
|
||||||
|
|
||||||
track_array:
|
track_array:
|
||||||
.byte 3, 20 ; MUSIC2, THREED
|
.byte 3, 20, 10 ; MUSIC2, THREED, CREDITS
|
||||||
|
|
||||||
sector_array:
|
sector_array:
|
||||||
.byte 0, 0 ; MUSIC2, THREED
|
.byte 0, 0, 0 ; MUSIC2, THREED, CREDITS
|
||||||
|
|
||||||
length_array:
|
length_array:
|
||||||
.byte 32, 128 ; MUSIC2, THREED
|
.byte 32, 128, 64 ; MUSIC2, THREED, CREDITS
|
||||||
|
|
||||||
.include "wait.s"
|
.include "wait.s"
|
||||||
|
|
||||||
|
|
|
@ -85,14 +85,16 @@ load_loop:
|
||||||
; load
|
; load
|
||||||
;=======================
|
;=======================
|
||||||
|
|
||||||
lda #1 ; THREED
|
; lda #1 ; THREED
|
||||||
|
lda #2 ; CREDITS
|
||||||
sta WHICH_LOAD
|
sta WHICH_LOAD
|
||||||
|
|
||||||
jsr load_file
|
jsr load_file
|
||||||
|
|
||||||
cli ; start music
|
cli ; start music
|
||||||
|
|
||||||
jmp $4000 ; TODO: paramaterize
|
; jmp $4000 ; TODO: paramaterize
|
||||||
|
jmp $6000 ; TODO: paramaterize
|
||||||
|
|
||||||
|
|
||||||
forever:
|
forever:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user