From 68306e153391aa7eadca58abe3ce4aea964a8035 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sun, 14 Jan 2024 01:29:54 -0500 Subject: [PATCH] trogdor: more work --- demos/trogdor/Makefile | 14 ++- demos/trogdor/NOTES | 136 ++++++++++++++++++++---- demos/trogdor/graphics/Makefile | 20 +++- demos/trogdor/graphics/a2_strongbad.png | Bin 0 -> 2089 bytes demos/trogdor/graphics/trogdor.png | Bin 0 -> 21002 bytes demos/trogdor/music.s | 2 +- demos/trogdor/music/trogdor.pt3 | Bin 0 -> 1503 bytes demos/trogdor/qload.s | 14 +-- demos/trogdor/start.s | 87 +++++++++++++-- demos/trogdor/title.s | 2 + 10 files changed, 236 insertions(+), 39 deletions(-) create mode 100644 demos/trogdor/graphics/a2_strongbad.png create mode 100644 demos/trogdor/graphics/trogdor.png create mode 100644 demos/trogdor/music/trogdor.pt3 create mode 100644 demos/trogdor/title.s diff --git a/demos/trogdor/Makefile b/demos/trogdor/Makefile index 2e762bb0..162611f4 100644 --- a/demos/trogdor/Makefile +++ b/demos/trogdor/Makefile @@ -9,13 +9,14 @@ LINKER_SCRIPTS = ../../linker_scripts/ all: trogdor.dsk trogdor.dsk: QBOOT QLOAD music.inc qload.inc \ - MUSIC TROGDOR + MUSIC TROGDOR TITLE cp $(EMPTY_DISK) trogdor.dsk $(DOS33_RAW) trogdor.dsk 0 0 QBOOT 0 1 $(DOS33_RAW) trogdor.dsk 0 2 QBOOT 1 1 $(DOS33_RAW) trogdor.dsk 0 4 QBOOT 2 1 $(DOS33_RAW) trogdor.dsk 1 0 QLOAD 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 @@ -109,6 +110,7 @@ MUSIC: music.o ld65 -o MUSIC music.o -C $(LINKER_SCRIPTS)/apple2_d000.inc music.o: music.s zp.inc \ + music/trogdor.pt3 \ pt3_lib_core.s \ pt3_lib_mockingboard_detect.s \ 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 ld65 -o TROGDOR trogdor.o -C $(LINKER_SCRIPTS)/apple2_8000.inc diff --git a/demos/trogdor/NOTES b/demos/trogdor/NOTES index c63c36fe..984588d4 100644 --- a/demos/trogdor/NOTES +++ b/demos/trogdor/NOTES @@ -1,32 +1,130 @@ Crop to 635x472 Levels: middle to 0.40 - Scale to: 280x208 - Levels: to 0.35 + Scale to: 280x208 (none) + Levels: to 0.35 Indexed, B+W, Floyd Steinberg Crop to 280x192 with top at 8 pixels down +"A possibly legal program for your Apple II" -+ zoom trogdor right to left -+ blank screen with flames -+ trogdor zoom up from bottom +Play again? Y/N + +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 ++ trog01 / trog02 + +Scene 4: "TROGDOR WAS A MAN!" + Man -+ Flames appear -+ Dragon man -+ Dragon -+ Zoom in/out -+ Scroll Down -+ Flames on Dragon Man again -+ Flip rapidly between dragon/man -+ Back to village -+ Flames over village -+ Burning peasant scrolls ++ 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 ++ Flames on left and right, animated ++ Then rapidly shift trog04/trog05 ++ trog04 + +Scene 9: "Burninating the countryside" ++ Village ++ on "countrside" two flames ++ Burninating the... + +Scene 10: "Pesants" ++ Burning peasant scrolls rigt/left + +Scene 11: "Burninatng " + 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 -+ back/forth dragon/cottage -+ cottags scrolls in upside down from top? with flames? -+ rapid cut between tilted man/peasant/few others + +Scene 14: "Thatched roof cottages" ++ 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 + diff --git a/demos/trogdor/graphics/Makefile b/demos/trogdor/graphics/Makefile index 832fe6aa..0ccd78c7 100644 --- a/demos/trogdor/graphics/Makefile +++ b/demos/trogdor/graphics/Makefile @@ -16,7 +16,25 @@ all: \ trog08_close1.hgr.zx02 \ trog09_close.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 #### diff --git a/demos/trogdor/graphics/a2_strongbad.png b/demos/trogdor/graphics/a2_strongbad.png new file mode 100644 index 0000000000000000000000000000000000000000..b8622cd41732ec16c732e982c53ac08776f9e167 GIT binary patch literal 2089 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 literal 0 HcmV?d00001 diff --git a/demos/trogdor/music.s b/demos/trogdor/music.s index 823db60b..1e8e424b 100644 --- a/demos/trogdor/music.s +++ b/demos/trogdor/music.s @@ -27,4 +27,4 @@ PT3_ENABLE_APPLE_IIC = 1 .align $100 PT3_LOC: -;.incbin "music/Walking_In_The_Air_mA2E.pt3" +.incbin "music/trogdor.pt3" diff --git a/demos/trogdor/music/trogdor.pt3 b/demos/trogdor/music/trogdor.pt3 new file mode 100644 index 0000000000000000000000000000000000000000..916dee6676499051d3d1a4c7c11884d31fe9e2c7 GIT binary patch literal 1503 zcmbVM&ui3B5Po@?tg)XW5s@yqRyl`LTN|ZnYZ^y}4FBxYuZT zv$NjR#H1I+^AGMfreTin&c`ipsN7lh+HvGH!^perEw- z2)oTv2?~Xpe&E*wpVhk&fgCug!)}+)DwZi?HQNJ{z$@I9VkaGn z&iS}vN>gN7NqHpYs?xCk#ia$fB*`vN%{vxc%>l-v8nTmi*iAu_&=yncFi_)CjrQ<_ zy$c9FuZ!i=AZBpT$O4W+Jrq6QQUisZUM2~X4`!*=mq?Lb#V``=<+@n34_#yGz%hWBpyGrnh8X|i zL^a)B3?{cvd_P=6_2T>C8p_01)16R&b-QpZ=$83)8(}TTmK1dRVO`NAkY4YRyRw?0 zcx-0BHx4nuj_E6ST9YM@nmKedq%$|Dgo7GS^u)=kvY5I xoqfTke$GGTAM+3SdXBPkzODp0RwhLM`vUr^5J%iymcpuUtmpVX!~d)${sKvp2;~3( literal 0 HcmV?d00001 diff --git a/demos/trogdor/qload.s b/demos/trogdor/qload.s index 5213ced7..a3bd048a 100644 --- a/demos/trogdor/qload.s +++ b/demos/trogdor/qload.s @@ -24,7 +24,7 @@ qload_start: ; jsr load_file - jmp xmas_start + jmp trogdor_start ; jmp $2000 ; jump to ZW @@ -163,22 +163,22 @@ error_string: .endif which_disk_array: - .byte 1,1 ; MUSIC, XMAS + .byte 1,1,1 ; MUSIC, TROGDOR, TITLE load_address_array: - .byte $D0,$80 ; MUSIC, XMAS + .byte $D0,$80,$40 ; MUSIC, TROGDOR, TITLE start_address: - .byte $D0,$80 ; MUSIC, XMAS + .byte $D0,$80,$40 ; MUSIC, TROGDOR, TITLE track_array: - .byte 4,12 ; MUSIC, XMAS + .byte 4,12,11 ; MUSIC, TROGDOR, TITLE sector_array: - .byte 0,0 ; MUSIC, XMAS + .byte 0,0,0 ; MUSIC, TROGDOR, TITLE length_array: - .byte 32,32 ; MUSIC, XMAS + .byte 32,32 ; MUSIC, TROGDOR, TITLE PT3_ENABLE_APPLE_IIC = 1 diff --git a/demos/trogdor/start.s b/demos/trogdor/start.s index 34584de5..94df1ae2 100644 --- a/demos/trogdor/start.s +++ b/demos/trogdor/start.s @@ -1,11 +1,10 @@ -; XMAS 2023 +; Trogdor -; ; by deater (Vince Weaver) -xmas_start: +trogdor_start: ;===================== ; initializations @@ -15,7 +14,6 @@ xmas_start: jsr hgr_make_tables - ;=================== ; restart? ;=================== @@ -78,6 +76,34 @@ dont_enable_mc: 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 @@ -116,15 +142,47 @@ done_set_message: jsr move_and_print + ; print title messages + + 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 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 @@ -138,7 +196,7 @@ load_xmas: ;======================= ;======================= -; cli ; start music + cli ; start music jsr $8000 @@ -182,15 +240,24 @@ forever: .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 mockingboard_string: -.byte 6,22,"MOCKINGBOARD DETECTED SLOT 4",0 +.byte 6,23,"MOCKINGBOARD DETECTED SLOT 4",0 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" diff --git a/demos/trogdor/title.s b/demos/trogdor/title.s new file mode 100644 index 00000000..eedc4846 --- /dev/null +++ b/demos/trogdor/title.s @@ -0,0 +1,2 @@ +.incbin "graphics/trogdor.hgr.zx02" +