From f962f898422d6a14c2bd906da8b5de0444882443 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 5 Apr 2021 17:32:24 -0400 Subject: [PATCH] ootw: ending: split off credits --- games/ootw/ending/credits.s | 151 ++++++++++++++++++++++++ games/ootw/ending/ending.s | 223 +++--------------------------------- 2 files changed, 165 insertions(+), 209 deletions(-) create mode 100644 games/ootw/ending/credits.s diff --git a/games/ootw/ending/credits.s b/games/ootw/ending/credits.s new file mode 100644 index 00000000..46ec6512 --- /dev/null +++ b/games/ootw/ending/credits.s @@ -0,0 +1,151 @@ + ;====================== + ; scroll credits + ;====================== + +end_credits: + + ; + ; + ; 0@24 + ; 0@23,1@24 + ; 0@22,1@23,2@24... + ; 0@0... + + + ldx #46 + +scroll_loop: + jsr HOME + + ldy #0 + stx XPOS +print_loop: + + lda credit_list,Y + sta OUTL + lda credit_list+1,Y + sta OUTH + + tya + pha + + ldy XPOS + jsr gotoy + + jsr print_string + + pla + tay + + iny + iny + + inc XPOS + inc XPOS + lda XPOS + cmp #48 + bne print_loop + + txa + pha + ldx #20 + jsr long_wait + pla + tax + + dex + dex + bpl scroll_loop + + ldx #200 + jsr long_wait + + jsr HOME + bit KEYRESET + + ;====================== + ; print end message + ;====================== + + lda #0 + sta DRAW_PAGE + + lda #end_message + sta OUTH + + jsr move_and_print + + rts + + +; 0123456789012345678901234567890123456789 +; DESIGNED BY ..... ERIC CHAHI +; +; ARTWORK ......... ERIC CHAHI +; +; MUSIC BY ........ JEAN-FRANCOIS FREITAS +; +; SOUND EFFECTS +; JEAN-FRANCOIS FREITAS +; ERIC CHAHI +; +; APPLE II PORT +; VINCE WEAVER +; +; APPLE ][ FOREVER + +credits0:.byte "",0 +credits1:.byte " DESIGNED BY ..... ERIC CHAHI",0 +credits2:.byte "",0 +credits3:.byte " ARTWORK ......... ERIC CHAHI",0 +credits4:.byte "",0 +credits5:.byte " MUSIC BY ........ JEAN-FRANCOIS FREITAS",0 +credits6:.byte "",0 +credits7:.byte " SOUND EFFECTS",0 +credits8:.byte " JEAN-FRANCOIS FREITAS",0 +credits9:.byte " ERIC CHAHI",0 +credits10:.byte "",0 +credits11:.byte " APPLE II+ PORT",0 +credits12:.byte " VINCE WEAVER",0 +credits13:.byte "",0 +credits14:.byte " APPLE ][ FOREVER",0 + +credit_list: + .word credits0 ; 0 + .word credits0 ; 1 + .word credits0 ; 2 + .word credits1 ; 3 + .word credits2 ; 4 + .word credits3 ; 5 + .word credits4 ; 6 + .word credits5 ; 7 + .word credits6 ; 8 + .word credits0 ; 9 + .word credits7 ; 10 + .word credits8 ; 11 + .word credits9 ; 12 + .word credits10 ; 13 + .word credits11 ; 14 + .word credits12 ; 16 + .word credits0 ; 15 + .word credits0 ; 18 + .word credits13 ; 17 + .word credits14 ; 19 + .word credits0 ; 20 + .word credits0 ; 21 + .word credits0 ; 22 + +end_message: +.byte 6,10,"NOW GO BACK TO ANOTHER EARTH",0 + + ;============================ + ; set BASL/BASH to offset w Y +gotoy: + lda gr_offsets,Y + sta BASL + lda gr_offsets+1,Y + sta BASH + rts + diff --git a/games/ootw/ending/ending.s b/games/ootw/ending/ending.s index b15fd32d..a030f879 100644 --- a/games/ootw/ending/ending.s +++ b/games/ootw/ending/ending.s @@ -59,7 +59,6 @@ mockingboard_notfound: sta cli_smc sta sei_smc - done_setup_sound: repeat_ending: @@ -73,88 +72,28 @@ repeat_ending: bit FULLGR bit KEYRESET - ;=========================== + ;================================= ; Setup pages (is this necessary?) - ;=========================== + ;================================= - lda #0 - sta DRAW_PAGE - lda #1 - sta DISP_PAGE +; lda #0 +; sta DRAW_PAGE +; lda #1 +; sta DISP_PAGE - ;=========================== - ; show some pictures - ;============================ - - - ;================== - ; bath - ;================== - -; lda #>(bath_lzsa) -; sta getsrc_smc+2 ; LZSA_SRC_HI -; lda #<(bath_lzsa) -; sta getsrc_smc+1 ; LZSA_SRC_LO -; lda #$c ; load image off-screen $c00 -; jsr decompress_lzsa2_fast - - -; jsr gr_copy_to_current -; jsr page_flip - -; jsr wait_until_keypressed - - ;================== - ; battle - ;================== - -; lda #>(battle_lzsa) -; sta getsrc_smc+2 ; LZSA_SRC_HI -; lda #<(battle_lzsa) -; sta getsrc_smc+1 ; LZSA_SRC_LO -; lda #$c ; load image off-screen $c00 -; jsr decompress_lzsa2_fast - - -; jsr gr_copy_to_current -; jsr page_flip - -; jsr wait_until_keypressed - - ;================== - ; grabbed - ;================== - -; lda #>(grabbed_lzsa) -; sta getsrc_smc+2 ; LZSA_SRC_HI -; lda #<(grabbed_lzsa) -; sta getsrc_smc+1 ; LZSA_SRC_LO -; lda #$c ; load image off-screen $c00 -; jsr decompress_lzsa2_fast - - -; jsr gr_copy_to_current -; jsr page_flip - -; jsr wait_until_keypressed ;=========================== ; ending sequence ;============================ - - - - - ;========================= ; set up bg ;========================= lda #>(sky_bg_lzsa) - sta getsrc_smc+2 ; LZSA_SRC_HI + sta getsrc_smc+2 ; LZSA_SRC_HI lda #<(sky_bg_lzsa) - sta getsrc_smc+1 ; LZSA_SRC_LO + sta getsrc_smc+1 ; LZSA_SRC_LO lda #$0c ; load image off-screen $c00 jsr decompress_lzsa2_fast @@ -174,7 +113,9 @@ repeat_ending: ; jsr wait_until_keypressed + ;============ ; start music + ;============ cli_smc: cli ; enable interrupts @@ -653,80 +594,13 @@ quit_level: ; scroll credits ;====================== - ; - ; - ; 0@24 - ; 0@23,1@24 - ; 0@22,1@23,2@24... - ; 0@0... + jsr end_credits - ldx #46 - -scroll_loop: - jsr HOME - - ldy #0 - stx XPOS -print_loop: - - lda credit_list,Y - sta OUTL - lda credit_list+1,Y - sta OUTH - - tya - pha - - ldy XPOS - jsr gotoy - - jsr print_string - - pla - tay - - iny - iny - - inc XPOS - inc XPOS - lda XPOS - cmp #48 - bne print_loop - - txa - pha - ldx #20 - jsr long_wait - pla - tax - - dex - dex - bpl scroll_loop - - ldx #200 - jsr long_wait - - jsr HOME - bit KEYRESET - ;====================== - ; print end message + ; wait before rebooting ;====================== - lda #0 - sta DRAW_PAGE - - lda #end_message - sta OUTH - - jsr move_and_print - - ; wait wait wait jsr wait_until_keypressed @@ -746,74 +620,6 @@ sei_smc: ; jmp repeat_ending -; 0123456789012345678901234567890123456789 -; DESIGNED BY ..... ERIC CHAHI -; -; ARTWORK ......... ERIC CHAHI -; -; MUSIC BY ........ JEAN-FRANCOIS FREITAS -; -; SOUND EFFECTS -; JEAN-FRANCOIS FREITAS -; ERIC CHAHI -; -; APPLE II PORT -; VINCE WEAVER -; -; APPLE ][ FOREVER - -credits0:.byte "",0 -credits1:.byte " DESIGNED BY ..... ERIC CHAHI",0 -credits2:.byte "",0 -credits3:.byte " ARTWORK ......... ERIC CHAHI",0 -credits4:.byte "",0 -credits5:.byte " MUSIC BY ........ JEAN-FRANCOIS FREITAS",0 -credits6:.byte "",0 -credits7:.byte " SOUND EFFECTS",0 -credits8:.byte " JEAN-FRANCOIS FREITAS",0 -credits9:.byte " ERIC CHAHI",0 -credits10:.byte "",0 -credits11:.byte " APPLE II+ PORT",0 -credits12:.byte " VINCE WEAVER",0 -credits13:.byte "",0 -credits14:.byte " APPLE ][ FOREVER",0 - -credit_list: - .word credits0 ; 0 - .word credits0 ; 1 - .word credits0 ; 2 - .word credits1 ; 3 - .word credits2 ; 4 - .word credits3 ; 5 - .word credits4 ; 6 - .word credits5 ; 7 - .word credits6 ; 8 - .word credits0 ; 9 - .word credits7 ; 10 - .word credits8 ; 11 - .word credits9 ; 12 - .word credits10 ; 13 - .word credits11 ; 14 - .word credits12 ; 16 - .word credits0 ; 15 - .word credits0 ; 18 - .word credits13 ; 17 - .word credits14 ; 19 - .word credits0 ; 20 - .word credits0 ; 21 - .word credits0 ; 22 - -end_message: -.byte 6,10,"NOW GO BACK TO ANOTHER EARTH",0 - - ;============================ - ; set BASL/BASH to offset w Y -gotoy: - lda gr_offsets,Y - sta BASL - lda gr_offsets+1,Y - sta BASH - rts ;====================== ; wait until keypressed @@ -838,6 +644,8 @@ long_wait: rts +.include "credits.s" + .include "../text_print.s" .include "../gr_pageflip.s" @@ -853,10 +661,7 @@ long_wait: .include "../pt3_player/pt3_lib_mockingboard_detect.s" .include "../pt3_player/pt3_lib_mockingboard_setup.s" - - ; backgrounds -;.include "ootw_graphics/l15final/ootw_c15_final.inc" .include "graphics/ending/ootw_c16_end.inc" PT3_LOC = song