diff --git a/games/peasant/Makefile b/games/peasant/Makefile index 4053e122..7ea00b82 100644 --- a/games/peasant/Makefile +++ b/games/peasant/Makefile @@ -22,15 +22,16 @@ peasant.dsk: QBOOT QLOAD VID_LOGO TITLE INTRO COPY_CHECK \ $(DOS33_RAW) peasant.dsk 12 0 COPY_CHECK 0 0 $(DOS33_RAW) peasant.dsk 14 0 PEASANT1 0 0 # $(DOS33_RAW) peasant.dsk 19 0 PEASANT2 0 0 - $(DOS33_RAW) peasant.dsk 19 0 TROGDOR 0 0 +# $(DOS33_RAW) peasant.dsk 19 0 TROGDOR 0 0 + $(DOS33_RAW) peasant.dsk 19 0 ENDING 0 0 # $(DOS33_RAW) peasant.dsk 24 0 PEASANT3 0 0 $(DOS33_RAW) peasant.dsk 24 0 ENDING 0 0 $(DOS33_RAW) peasant.dsk 29 0 PEASANT4 0 0 peasant_side2.dsk: TROGDOR ENDING cp $(EMPTY_DISK)/empty.dsk peasant_side2.dsk - $(DOS33_RAW) peasant.dsk 19 0 TROGDOR 0 0 - $(DOS33_RAW) peasant.dsk 24 0 ENDING 0 0 + $(DOS33_RAW) peasant_side2.dsk 19 0 TROGDOR 0 0 + $(DOS33_RAW) peasant_side2.dsk 24 0 ENDING 0 0 ### diff --git a/games/peasant/clear_bottom.s b/games/peasant/clear_bottom.s index 2caa6ee0..4069116d 100644 --- a/games/peasant/clear_bottom.s +++ b/games/peasant/clear_bottom.s @@ -7,6 +7,7 @@ clear_bottom: lda #0 sta VGI_RX1 +cb_smc1: lda #183 sta VGI_RY1 lda #140 @@ -18,6 +19,7 @@ clear_bottom: lda #140 sta VGI_RX1 +cb_smc2: lda #183 sta VGI_RY1 lda #140 diff --git a/games/peasant/ending.s b/games/peasant/ending.s index 253c0492..45050a92 100644 --- a/games/peasant/ending.s +++ b/games/peasant/ending.s @@ -1,6 +1,6 @@ ; Peasant's Quest Ending -; From when the sword hits Trogdor on +; The credits scenes ; by Vince `deater` Weaver vince@deater.net @@ -10,8 +10,8 @@ .include "qload.inc" ending: - lda #0 - sta GAME_OVER +; lda #0 +; sta GAME_OVER jsr hgr_make_tables @@ -26,9 +26,24 @@ ending: jsr update_score - ; start music? + + ;===================== + ; re-start music + ;===================== + ; need to un-do any patching + ; reset to beginning of song + ; and start interrupts + + ; FIXME: only if mockingboard enabled + + cli + ;===================== + ;===================== + ; boat scene + ;===================== + ;===================== boat: lda #boat_string + sta OUTH + + jsr disp_put_string + + + ;====================== + ; animate catching fish + + jsr wait_until_keypress + ;======================= + ;======================= + ; waterfall + ;======================= + ;======================= + waterfall: lda #waterfall_string + sta OUTH + + jsr disp_put_string + + ;========================= + ; animate baby + jsr wait_until_keypress jhonka: @@ -67,6 +155,44 @@ jhonka: jsr decompress_lzsa2_fast + jsr update_top + + ; draw rectangle + + lda #$80 ; color is black2 + sta VGI_RCOLOR + + lda #42 + sta VGI_RX1 + lda #58 + sta VGI_RY1 + lda #182 + sta VGI_RXRUN + lda #12 + sta VGI_RYRUN + jsr vgi_simple_rectangle + +; lda #214 +; sta VGI_RX1 +; lda #58 +; sta VGI_RY1 +; lda #8 +; sta VGI_RXRUN +; lda #20 + ; sta VGI_RYRUN + ; jsr vgi_simple_rectangle + + + lda #jhonka_string + sta OUTH + + jsr disp_put_string + + ;================= + ; animate jhonka + jsr wait_until_keypress cottage: @@ -80,10 +206,69 @@ cottage: jsr decompress_lzsa2_fast + jsr update_top + + + ; draw rectangle + + lda #$80 ; color is black2 + sta VGI_RCOLOR + + lda #40 + sta VGI_RX1 + lda #48 + sta VGI_RY1 + lda #192 + sta VGI_RXRUN + lda #32 + sta VGI_RYRUN + jsr vgi_simple_rectangle + + + lda #cottage_string + sta OUTH + + jsr disp_put_string + jsr wait_until_keypress + lda #11 + sta VGI_RX1 + lda #48 + sta VGI_RY1 + lda #192 + sta VGI_RXRUN + lda #32 + sta VGI_RYRUN + jsr vgi_simple_rectangle + + lda #203 + sta VGI_RX1 + lda #48 + sta VGI_RY1 + lda #60 + sta VGI_RXRUN + lda #32 + sta VGI_RYRUN + jsr vgi_simple_rectangle + lda #cottage_string2 + sta OUTH + + jsr disp_put_string + + jsr wait_until_keypress + + ;======================== + ;======================== + ; final screen + ;======================== + ;======================== final_screen: lda #peasant_text + sta OUTH + + jsr hgr_put_string + + ; put score + + jsr print_score + + rts + + + + diff --git a/games/peasant/graphics_end/cottage.png b/games/peasant/graphics_end/cottage.png index a6a93ed5..6eb8443e 100644 Binary files a/games/peasant/graphics_end/cottage.png and b/games/peasant/graphics_end/cottage.png differ diff --git a/games/peasant/graphics_end/lake_e_boat.png b/games/peasant/graphics_end/lake_e_boat.png index 81f4df02..bdda6614 100644 Binary files a/games/peasant/graphics_end/lake_e_boat.png and b/games/peasant/graphics_end/lake_e_boat.png differ diff --git a/games/peasant/graphics_end/the_end.png b/games/peasant/graphics_end/the_end.png index 9ec5664e..f73b03e85 100644 Binary files a/games/peasant/graphics_end/the_end.png and b/games/peasant/graphics_end/the_end.png differ