mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-09-27 11:55:20 +00:00
trogdor: more work
This commit is contained in:
parent
bf0693a7c6
commit
68306e1533
@ -9,13 +9,14 @@ LINKER_SCRIPTS = ../../linker_scripts/
|
|||||||
all: trogdor.dsk
|
all: trogdor.dsk
|
||||||
|
|
||||||
trogdor.dsk: QBOOT QLOAD music.inc qload.inc \
|
trogdor.dsk: QBOOT QLOAD music.inc qload.inc \
|
||||||
MUSIC TROGDOR
|
MUSIC TROGDOR TITLE
|
||||||
cp $(EMPTY_DISK) trogdor.dsk
|
cp $(EMPTY_DISK) trogdor.dsk
|
||||||
$(DOS33_RAW) trogdor.dsk 0 0 QBOOT 0 1
|
$(DOS33_RAW) trogdor.dsk 0 0 QBOOT 0 1
|
||||||
$(DOS33_RAW) trogdor.dsk 0 2 QBOOT 1 1
|
$(DOS33_RAW) trogdor.dsk 0 2 QBOOT 1 1
|
||||||
$(DOS33_RAW) trogdor.dsk 0 4 QBOOT 2 1
|
$(DOS33_RAW) trogdor.dsk 0 4 QBOOT 2 1
|
||||||
$(DOS33_RAW) trogdor.dsk 1 0 QLOAD 0 0
|
$(DOS33_RAW) trogdor.dsk 1 0 QLOAD 0 0
|
||||||
$(DOS33_RAW) trogdor.dsk 4 0 MUSIC 0 0
|
$(DOS33_RAW) trogdor.dsk 4 0 MUSIC 0 0
|
||||||
|
$(DOS33_RAW) trogdor.dsk 11 0 TITLE 0 0
|
||||||
$(DOS33_RAW) trogdor.dsk 12 0 TROGDOR 0 0
|
$(DOS33_RAW) trogdor.dsk 12 0 TROGDOR 0 0
|
||||||
|
|
||||||
|
|
||||||
@ -109,6 +110,7 @@ MUSIC: music.o
|
|||||||
ld65 -o MUSIC music.o -C $(LINKER_SCRIPTS)/apple2_d000.inc
|
ld65 -o MUSIC music.o -C $(LINKER_SCRIPTS)/apple2_d000.inc
|
||||||
|
|
||||||
music.o: music.s zp.inc \
|
music.o: music.s zp.inc \
|
||||||
|
music/trogdor.pt3 \
|
||||||
pt3_lib_core.s \
|
pt3_lib_core.s \
|
||||||
pt3_lib_mockingboard_detect.s \
|
pt3_lib_mockingboard_detect.s \
|
||||||
pt3_lib_mockingboard.inc \
|
pt3_lib_mockingboard.inc \
|
||||||
@ -119,6 +121,16 @@ music.o: music.s zp.inc \
|
|||||||
|
|
||||||
###
|
###
|
||||||
|
|
||||||
|
TITLE: title.o
|
||||||
|
ld65 -o TITLE title.o -C $(LINKER_SCRIPTS)/apple2_4000.inc
|
||||||
|
|
||||||
|
title.o: title.s \
|
||||||
|
zp.inc hardware.inc qload.inc \
|
||||||
|
graphics/trogdor.hgr.zx02
|
||||||
|
ca65 -o title.o title.s -l title.lst
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
TROGDOR: trogdor.o
|
TROGDOR: trogdor.o
|
||||||
ld65 -o TROGDOR trogdor.o -C $(LINKER_SCRIPTS)/apple2_8000.inc
|
ld65 -o TROGDOR trogdor.o -C $(LINKER_SCRIPTS)/apple2_8000.inc
|
||||||
|
|
||||||
|
@ -1,32 +1,130 @@
|
|||||||
Crop to 635x472
|
Crop to 635x472
|
||||||
Levels: middle to 0.40
|
Levels: middle to 0.40
|
||||||
Scale to: 280x208
|
Scale to: 280x208 (none)
|
||||||
Levels: to 0.35
|
Levels: to 0.35
|
||||||
Indexed, B+W, Floyd Steinberg
|
Indexed, B+W, Floyd Steinberg
|
||||||
Crop to 280x192 with top at 8 pixels down
|
Crop to 280x192 with top at 8 pixels down
|
||||||
|
|
||||||
|
|
||||||
|
"A possibly legal program for your Apple II"
|
||||||
|
|
||||||
+ zoom trogdor right to left
|
Play again? Y/N
|
||||||
+ blank screen with flames
|
|
||||||
+ trogdor zoom up from bottom
|
Excellent!
|
||||||
|
Trogdor demands you watch again anyway.
|
||||||
|
|
||||||
|
Scene 1: "TROGDOR!"
|
||||||
|
+ zoom trogdor scrolls right to left
|
||||||
|
+ Left / Right / Left Flame
|
||||||
|
+ trog05 / flames
|
||||||
|
|
||||||
|
Scene 2: "TROGDOR!"
|
||||||
|
+ main trogdor scroll up from bottom
|
||||||
|
+ trog00
|
||||||
|
|
||||||
|
Scene 3:
|
||||||
+ village scroll from right to left
|
+ village scroll from right to left
|
||||||
|
+ trog01 / trog02
|
||||||
|
|
||||||
|
Scene 4: "TROGDOR WAS A MAN!"
|
||||||
+ Man
|
+ Man
|
||||||
+ Flames appear
|
+ flames left/right/left
|
||||||
|
+ "he was a.."
|
||||||
|
+ trog03
|
||||||
|
|
||||||
|
Scene 5: "DRAGON MAN"
|
||||||
|
+ dragonman
|
||||||
|
+ "maybe just a..."
|
||||||
|
+ trog04
|
||||||
|
|
||||||
|
Scene 6: "Dragon"
|
||||||
|
+ dragon again
|
||||||
|
+ trog00 (trog06?)
|
||||||
|
+ "but he was still..."
|
||||||
|
|
||||||
|
Scene 7: "TROGDOR"
|
||||||
|
+ Zoom in/out rapidly
|
||||||
|
+ trog05/trog00
|
||||||
|
+ Scroll Down off sreen
|
||||||
|
|
||||||
|
Scene 8: "TROGDOR"
|
||||||
+ Dragonman
|
+ Dragonman
|
||||||
+ Dragon
|
+ Flames on left and right, animated
|
||||||
+ Zoom in/out
|
+ Then rapidly shift trog04/trog05
|
||||||
+ Scroll Down
|
+ trog04
|
||||||
+ Flames on Dragon Man again
|
|
||||||
+ Flip rapidly between dragon/man
|
Scene 9: "Burninating the countryside"
|
||||||
+ Back to village
|
+ Village
|
||||||
+ Flames over village
|
+ on "countrside" two flames
|
||||||
+ Burning peasant scrolls
|
+ Burninating the...
|
||||||
|
|
||||||
|
Scene 10: "Pesants"
|
||||||
|
+ Burning peasant scrolls rigt/left
|
||||||
|
|
||||||
|
Scene 11: "Burninatng "
|
||||||
+ dragon up/down
|
+ dragon up/down
|
||||||
+ Lots of peasants
|
+ trog08/trog09
|
||||||
|
|
||||||
|
Scene 12: "All the people "
|
||||||
|
+ Lots of peasants, appear one by one
|
||||||
|
+
|
||||||
|
2 4 5
|
||||||
|
3 1
|
||||||
|
+ trog10
|
||||||
|
|
||||||
|
Scece 13: "Thatched roof cottages"
|
||||||
+ cottage scrolls up
|
+ cottage scrolls up
|
||||||
+ back/forth dragon/cottage
|
|
||||||
+ cottags scrolls in upside down from top? with flames?
|
Scene 14: "Thatched roof cottages"
|
||||||
+ rapid cut between tilted man/peasant/few others
|
+ alternates
|
||||||
|
trog09
|
||||||
|
cottage
|
||||||
|
trog08
|
||||||
|
cottage
|
||||||
|
trog09
|
||||||
|
cottage
|
||||||
|
trog08
|
||||||
|
cottage
|
||||||
|
trog09
|
||||||
|
cottage
|
||||||
|
white screen, twin flames low
|
||||||
|
Scene 15: "Thatched root cottages"
|
||||||
|
two flames, cottage scrolls in upside down
|
||||||
|
|
||||||
|
Scene 16:
|
||||||
|
Rapid cuts:
|
||||||
|
+ trog down
|
||||||
|
+ man
|
||||||
|
+ peasant
|
||||||
|
+ countryside
|
||||||
|
+ cottage
|
||||||
|
+ trog zoom out
|
||||||
|
+ trog zoom out 2 flames
|
||||||
|
|
||||||
|
Scene 17: "Trogdor comes in the night!"
|
||||||
|
+ Strongbad at computer?
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Space:
|
||||||
|
$2000-$3FFF = page1 (8k)
|
||||||
|
$4000-$5fff = page2 (8k)
|
||||||
|
$6000-$BFFF = 24k
|
||||||
|
|
||||||
|
Language card = 12k (5k by music) so 7k
|
||||||
|
|
||||||
|
|
||||||
|
1499 trog00_trogdor.hgr.zx02
|
||||||
|
4839 trog01_countryside.hgr.zx02
|
||||||
|
1174 trog02_countryside.hgr.zx02
|
||||||
|
1973 trog03_man.hgr.zx02
|
||||||
|
1982 trog04_dragonman.hgr.zx02
|
||||||
|
3525 trog05_zoom.hgr.zx02
|
||||||
|
1665 trog07_peasant.hgr.zx02
|
||||||
|
2814 trog08_close1.hgr.zx02
|
||||||
|
3313 trog09_close.hgr.zx02
|
||||||
|
2817 trog10_peasants.hgr.zx02
|
||||||
|
2680 trog11_cottage.hgr.zx02
|
||||||
|
=====
|
||||||
|
28281 = 28k or so
|
||||||
|
|
||||||
|
@ -16,7 +16,25 @@ all: \
|
|||||||
trog08_close1.hgr.zx02 \
|
trog08_close1.hgr.zx02 \
|
||||||
trog09_close.hgr.zx02 \
|
trog09_close.hgr.zx02 \
|
||||||
trog10_peasants.hgr.zx02 \
|
trog10_peasants.hgr.zx02 \
|
||||||
trog11_cottage.hgr.zx02
|
trog11_cottage.hgr.zx02 \
|
||||||
|
a2_strongbad.hgr.zx02 \
|
||||||
|
trogdor.hgr.zx02
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
trogdor.hgr.zx02: trogdor.hgr
|
||||||
|
$(ZX02) trogdor.hgr trogdor.hgr.zx02
|
||||||
|
|
||||||
|
trogdor.hgr: trogdor.png
|
||||||
|
$(PNG_TO_HGR) trogdor.png > trogdor.hgr
|
||||||
|
|
||||||
|
####
|
||||||
|
|
||||||
|
a2_strongbad.hgr.zx02: a2_strongbad.hgr
|
||||||
|
$(ZX02) a2_strongbad.hgr a2_strongbad.hgr.zx02
|
||||||
|
|
||||||
|
a2_strongbad.hgr: a2_strongbad.png
|
||||||
|
$(PNG_TO_HGR) a2_strongbad.png > a2_strongbad.hgr
|
||||||
|
|
||||||
####
|
####
|
||||||
|
|
||||||
|
BIN
demos/trogdor/graphics/a2_strongbad.png
Normal file
BIN
demos/trogdor/graphics/a2_strongbad.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.0 KiB |
BIN
demos/trogdor/graphics/trogdor.png
Normal file
BIN
demos/trogdor/graphics/trogdor.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
@ -27,4 +27,4 @@ PT3_ENABLE_APPLE_IIC = 1
|
|||||||
|
|
||||||
.align $100
|
.align $100
|
||||||
PT3_LOC:
|
PT3_LOC:
|
||||||
;.incbin "music/Walking_In_The_Air_mA2E.pt3"
|
.incbin "music/trogdor.pt3"
|
||||||
|
BIN
demos/trogdor/music/trogdor.pt3
Normal file
BIN
demos/trogdor/music/trogdor.pt3
Normal file
Binary file not shown.
@ -24,7 +24,7 @@ qload_start:
|
|||||||
|
|
||||||
; jsr load_file
|
; jsr load_file
|
||||||
|
|
||||||
jmp xmas_start
|
jmp trogdor_start
|
||||||
|
|
||||||
; jmp $2000 ; jump to ZW
|
; jmp $2000 ; jump to ZW
|
||||||
|
|
||||||
@ -163,22 +163,22 @@ error_string:
|
|||||||
.endif
|
.endif
|
||||||
|
|
||||||
which_disk_array:
|
which_disk_array:
|
||||||
.byte 1,1 ; MUSIC, XMAS
|
.byte 1,1,1 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
load_address_array:
|
load_address_array:
|
||||||
.byte $D0,$80 ; MUSIC, XMAS
|
.byte $D0,$80,$40 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
start_address:
|
start_address:
|
||||||
.byte $D0,$80 ; MUSIC, XMAS
|
.byte $D0,$80,$40 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
track_array:
|
track_array:
|
||||||
.byte 4,12 ; MUSIC, XMAS
|
.byte 4,12,11 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
sector_array:
|
sector_array:
|
||||||
.byte 0,0 ; MUSIC, XMAS
|
.byte 0,0,0 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
length_array:
|
length_array:
|
||||||
.byte 32,32 ; MUSIC, XMAS
|
.byte 32,32 ; MUSIC, TROGDOR, TITLE
|
||||||
|
|
||||||
PT3_ENABLE_APPLE_IIC = 1
|
PT3_ENABLE_APPLE_IIC = 1
|
||||||
|
|
||||||
|
@ -1,11 +1,10 @@
|
|||||||
; XMAS 2023
|
; Trogdor
|
||||||
|
|
||||||
;
|
|
||||||
; by deater (Vince Weaver) <vince@deater.net>
|
; by deater (Vince Weaver) <vince@deater.net>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
xmas_start:
|
trogdor_start:
|
||||||
|
|
||||||
;=====================
|
;=====================
|
||||||
; initializations
|
; initializations
|
||||||
@ -15,7 +14,6 @@ xmas_start:
|
|||||||
|
|
||||||
jsr hgr_make_tables
|
jsr hgr_make_tables
|
||||||
|
|
||||||
|
|
||||||
;===================
|
;===================
|
||||||
; restart?
|
; restart?
|
||||||
;===================
|
;===================
|
||||||
@ -78,6 +76,34 @@ dont_enable_mc:
|
|||||||
|
|
||||||
skip_all_checks:
|
skip_all_checks:
|
||||||
|
|
||||||
|
;============================
|
||||||
|
;============================
|
||||||
|
; load title image from disk
|
||||||
|
;============================
|
||||||
|
;============================
|
||||||
|
|
||||||
|
; load from disk
|
||||||
|
|
||||||
|
bit SET_GR
|
||||||
|
bit HIRES
|
||||||
|
bit TEXTGR
|
||||||
|
bit PAGE2
|
||||||
|
|
||||||
|
lda #2 ; TITLE
|
||||||
|
sta WHICH_LOAD
|
||||||
|
jsr load_file
|
||||||
|
|
||||||
|
bit PAGE1
|
||||||
|
|
||||||
|
; decompress
|
||||||
|
|
||||||
|
lda #<$4000
|
||||||
|
sta zx_src_l+1
|
||||||
|
lda #>$4000
|
||||||
|
sta zx_src_h+1
|
||||||
|
lda #$20
|
||||||
|
jsr zx02_full_decomp
|
||||||
|
|
||||||
;=======================
|
;=======================
|
||||||
;=======================
|
;=======================
|
||||||
; Print message
|
; Print message
|
||||||
@ -116,15 +142,47 @@ done_set_message:
|
|||||||
|
|
||||||
jsr move_and_print
|
jsr move_and_print
|
||||||
|
|
||||||
|
; print title messages
|
||||||
|
|
||||||
|
lda #<title_string
|
||||||
|
sta OUTL
|
||||||
|
lda #>title_string
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
; print the text
|
||||||
|
|
||||||
|
jsr move_and_print
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
; wait a bit, then change to credits
|
||||||
|
|
||||||
|
lda #50
|
||||||
|
jsr wait_a_bit
|
||||||
|
|
||||||
|
lda #<bottom_string1
|
||||||
|
sta OUTL
|
||||||
|
lda #>bottom_string1
|
||||||
|
sta OUTH
|
||||||
|
|
||||||
|
; print the text
|
||||||
|
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
lda #50
|
||||||
|
jsr wait_a_bit
|
||||||
|
|
||||||
|
|
||||||
|
jsr move_and_print
|
||||||
|
|
||||||
|
jsr wait_until_keypress
|
||||||
|
|
||||||
|
|
||||||
;=======================
|
;=======================
|
||||||
;=======================
|
;=======================
|
||||||
; Load xmas
|
; Load TROGDOR
|
||||||
;=======================
|
;=======================
|
||||||
;=======================
|
;=======================
|
||||||
load_xmas:
|
load_trogdor:
|
||||||
|
|
||||||
; load from disk
|
; load from disk
|
||||||
|
|
||||||
@ -138,7 +196,7 @@ load_xmas:
|
|||||||
;=======================
|
;=======================
|
||||||
;=======================
|
;=======================
|
||||||
|
|
||||||
; cli ; start music
|
cli ; start music
|
||||||
|
|
||||||
jsr $8000
|
jsr $8000
|
||||||
|
|
||||||
@ -182,15 +240,24 @@ forever:
|
|||||||
|
|
||||||
.include "gs_interrupt.s"
|
.include "gs_interrupt.s"
|
||||||
|
|
||||||
;.include "title.s"
|
|
||||||
|
|
||||||
|
|
||||||
|
title_string:
|
||||||
|
.byte 1,20,"NEW FROM VIDELECTRIX: A POSSIBLY LEGAL",0
|
||||||
|
.byte 7,21,"PROGRAM FOR YOUR APPLE II!",0
|
||||||
|
|
||||||
|
|
||||||
|
bottom_string1:
|
||||||
|
.byte 3,23," CODE BY DEATER, MUSIC BY TOM_FJM",0
|
||||||
|
bottom_string2:
|
||||||
|
.byte 3,23," = PRESS ANY KEY TO START = ",0
|
||||||
|
|
||||||
; 0123456789012345678901234567890123456789
|
; 0123456789012345678901234567890123456789
|
||||||
mockingboard_string:
|
mockingboard_string:
|
||||||
.byte 6,22,"MOCKINGBOARD DETECTED SLOT 4",0
|
.byte 6,23,"MOCKINGBOARD DETECTED SLOT 4",0
|
||||||
|
|
||||||
no_mockingboard_string:
|
no_mockingboard_string:
|
||||||
.byte 3,22,"NO MOCKINGBOARD, CONTINUING ANYWAY",0
|
.byte 3,23,"NO MOCKINGBOARD, CONTINUING ANYWAY",0
|
||||||
|
|
||||||
.include "pt3_lib_mockingboard_patch.s"
|
.include "pt3_lib_mockingboard_patch.s"
|
||||||
|
|
||||||
|
2
demos/trogdor/title.s
Normal file
2
demos/trogdor/title.s
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
.incbin "graphics/trogdor.hgr.zx02"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user