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 13 0 ./part16_ocean/OCEAN 0 0
|
||||
|
||||
second_d2.dsk: QBOOT QLOAD2 MUSIC2 START \
|
||||
./part18_3d/THREED
|
||||
second_d2.dsk: QBOOT QLOAD2 MUSIC2 \
|
||||
./part18_3d/THREED \
|
||||
./part20_credits/CREDITS
|
||||
cp $(EMPTY_DISK) second_d2.dsk
|
||||
$(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 4 QBOOT 2 1
|
||||
$(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 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
|
||||
|
||||
|
||||
|
@ -59,7 +61,7 @@ qload.o: qload.s \
|
|||
pt3_lib_detect_model.s pt3_lib_mockingboard_detect.s \
|
||||
pt3_lib_mockingboard_setup.s interrupt_handler.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
|
||||
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
|
||||
|
|
|
@ -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
|
||||
animation
|
||||
explosion
|
||||
|
@ -36,3 +45,4 @@ Greets:
|
|||
Utopia BBS (MD)
|
||||
|
||||
|
||||
APPLE ][ FOREVER
|
||||
|
|
|
@ -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
|
||||
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
|
||||
$(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:
|
||||
|
|
|
@ -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:
|
||||
.byte 1,1 ; MUSIC2, THREED
|
||||
|
||||
.byte 1,1,1 ; MUSIC2, THREED, CREDITS
|
||||
|
||||
load_address_array:
|
||||
.byte $D0,$40 ; MUSIC2, THREED
|
||||
.byte $D0,$40,$60 ; MUSIC2, THREED, CREDITS
|
||||
|
||||
track_array:
|
||||
.byte 3, 20 ; MUSIC2, THREED
|
||||
.byte 3, 20, 10 ; MUSIC2, THREED, CREDITS
|
||||
|
||||
sector_array:
|
||||
.byte 0, 0 ; MUSIC2, THREED
|
||||
.byte 0, 0, 0 ; MUSIC2, THREED, CREDITS
|
||||
|
||||
length_array:
|
||||
.byte 32, 128 ; MUSIC2, THREED
|
||||
.byte 32, 128, 64 ; MUSIC2, THREED, CREDITS
|
||||
|
||||
.include "wait.s"
|
||||
|
||||
|
|
|
@ -85,14 +85,16 @@ load_loop:
|
|||
; load
|
||||
;=======================
|
||||
|
||||
lda #1 ; THREED
|
||||
; lda #1 ; THREED
|
||||
lda #2 ; CREDITS
|
||||
sta WHICH_LOAD
|
||||
|
||||
jsr load_file
|
||||
|
||||
cli ; start music
|
||||
|
||||
jmp $4000 ; TODO: paramaterize
|
||||
; jmp $4000 ; TODO: paramaterize
|
||||
jmp $6000 ; TODO: paramaterize
|
||||
|
||||
|
||||
forever:
|
||||
|
|
Loading…
Reference in New Issue