From 557341ee79090534ff3c875f94726b8c34ffcae2 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Sat, 28 Oct 2023 23:51:26 -0400 Subject: [PATCH] second: hook up gorilla --- demos/second/Makefile | 7 +- demos/second/part08_gorilla/Makefile | 34 +++++++ demos/second/part08_gorilla/gorilla.s | 84 ++++++++++++++++++ demos/second/part08_gorilla/graphics/Makefile | 3 + .../part08_gorilla/graphics/mntscrl3.hgr | Bin 8192 -> 0 bytes .../part08_gorilla/graphics/mntscrl3.png | Bin 0 -> 6665 bytes demos/second/start.s | 11 +++ 7 files changed, 138 insertions(+), 1 deletion(-) create mode 100644 demos/second/part08_gorilla/Makefile create mode 100644 demos/second/part08_gorilla/gorilla.s delete mode 100644 demos/second/part08_gorilla/graphics/mntscrl3.hgr create mode 100644 demos/second/part08_gorilla/graphics/mntscrl3.png diff --git a/demos/second/Makefile b/demos/second/Makefile index c95901e2..1b48c40a 100644 --- a/demos/second/Makefile +++ b/demos/second/Makefile @@ -13,6 +13,7 @@ second_d1.dsk: QBOOT QLOAD music.inc \ MUSIC \ ./part01_intropan/INTRO \ ./part05_dot_tunnel/TUNNEL \ + ./part08_gorilla/GORILLA \ ./part09_leaves/LEAVES \ ./part10_lens_rotozoom/LENS \ ./part12_plasma/PLASMA \ @@ -31,7 +32,7 @@ second_d1.dsk: QBOOT QLOAD music.inc \ $(DOS33_RAW) second_d1.dsk 10 0 ./part01_intropan/INTRO 0 0 # $(DOS33_RAW) second_d1.dsk 15 0 ./part04_chess_shapes/CHESS 0 0 # $(DOS33_RAW) second_d1.dsk 16 0 ./part05_dot_tunnel/TUNNEL 0 0 -# $(DOS33_RAW) second_d1.dsk 19 0 ./part08_gorilla/GORILLA 0 0 + $(DOS33_RAW) second_d1.dsk 19 0 ./part08_gorilla/GORILLA 0 0 $(DOS33_RAW) second_d1.dsk 21 0 ./part09_leaves/LEAVES 0 0 $(DOS33_RAW) second_d1.dsk 23 0 ./part10_lens_rotozoom/LENS 0 0 $(DOS33_RAW) second_d1.dsk 24 0 ./part12_plasma/PLASMA 0 0 @@ -44,6 +45,9 @@ second_d1.dsk: QBOOT QLOAD music.inc \ #### +part08_gorilla/GORILLA: + cd part08_gorilla && make + part09_leaves/LEAVES: cd part09_leaves && make @@ -293,6 +297,7 @@ generate_common.o: generate_common.c clean: rm -f *~ *.o *.lst HELLO SECOND QBOOT QLOAD MUSIC START + cd part08_gorilla && make clean cd part09_leaves && make clean cd part10_lens_rotozoom && make clean cd part12_plasma && make clean diff --git a/demos/second/part08_gorilla/Makefile b/demos/second/part08_gorilla/Makefile new file mode 100644 index 00000000..a17a734f --- /dev/null +++ b/demos/second/part08_gorilla/Makefile @@ -0,0 +1,34 @@ +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: GORILLA + +#### + +GORILLA: gorilla.o + ld65 -o GORILLA gorilla.o -C $(LINKER_SCRIPTS)/apple2_8000.inc + +gorilla.o: gorilla.s \ + ../zx02_optim.s \ + ../hgr_copy_fast.s \ + ../zp.inc ../hardware.inc ../qload.inc \ + graphics/mntscrl3.hgr.zx02 + ca65 -o gorilla.o gorilla.s -l gorilla.lst + +### + +graphics/final3.hgr.zx02: + cd graphics && make + +### + + +clean: + rm -f *~ *.o *.lst GORILLA + cd graphics && make clean diff --git a/demos/second/part08_gorilla/gorilla.s b/demos/second/part08_gorilla/gorilla.s new file mode 100644 index 00000000..deb0e22b --- /dev/null +++ b/demos/second/part08_gorilla/gorilla.s @@ -0,0 +1,84 @@ +; Gorilla scroll + +; o/~ I'm happy, I'm feeling glad ... o/~ + +; +; by deater (Vince Weaver) + +.include "../zp.inc" +.include "../hardware.inc" +.include "../qload.inc" + +mod7_table = $1c00 +div7_table = $1d00 +hposn_low = $1e00 +hposn_high = $1f00 + +gorilla_start: + ;===================== + ; initializations + ;===================== + + ;=================== + ; Load graphics + ;=================== + + bit SET_GR + bit HIRES + bit FULLGR + bit PAGE1 + + lda #0 + jsr hgr_page1_clearscreen + jsr hgr_page2_clearscreen + + bit PAGE2 + + ; load image offscreen $6000 + + lda #gorilla_data + sta zx_src_h+1 + lda #$60 + jsr zx02_full_decomp + + + lda #0 + sta COUNT + sta DRAW_PAGE + +ship_sprite_loop: + + lda #$60 + jsr hgr_copy + + bit PAGE1 + + jsr wait_until_keypress + +gorilla_done: + rts + + +.align $100 + .include "../wait_keypress.s" + .include "../zx02_optim.s" +; .include "../hgr_table.s" + .include "../hgr_clear_screen.s" + .include "../hgr_copy_fast.s" + + + + ; wait A * 1/50s +wait_irq: +; lda #50 + sta IRQ_COUNTDOWN +wait_irq_loop: + lda IRQ_COUNTDOWN + bne wait_irq_loop + rts + +gorilla_data: + .incbin "graphics/mntscrl3.hgr.zx02" + diff --git a/demos/second/part08_gorilla/graphics/Makefile b/demos/second/part08_gorilla/graphics/Makefile index 3ed9ac99..3524f5f4 100644 --- a/demos/second/part08_gorilla/graphics/Makefile +++ b/demos/second/part08_gorilla/graphics/Makefile @@ -8,6 +8,9 @@ all: mntscrl3.hgr.zx02 #### +mntscrl3.hgr: mntscrl3.png + $(PNG_TO_HGR) mntscrl3.png > mntscrl3.hgr + mntscrl3.hgr.zx02: mntscrl3.hgr $(ZX02) mntscrl3.hgr mntscrl3.hgr.zx02 diff --git a/demos/second/part08_gorilla/graphics/mntscrl3.hgr b/demos/second/part08_gorilla/graphics/mntscrl3.hgr deleted file mode 100644 index 79c6c584b5f54dc011b697133c6a995615e07e82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8192 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 Tc;MYz00000NkvXXu0mjfP|vA1 literal 0 HcmV?d00001 diff --git a/demos/second/start.s b/demos/second/start.s index 6d8a1270..3eded505 100644 --- a/demos/second/start.s +++ b/demos/second/start.s @@ -158,6 +158,17 @@ load_program_loop: ;========================== ;========================== + ;======================= + ; run GORILLA (#4) + ;======================= + ; copy GORILLA from AUX $7000 to MAIN $8000 + + lda #$70 ; AUX src $7000 + ldy #$80 ; MAIN dest $8000 + ldx #32 ; 16 pages + jsr copy_aux_main + jsr $8000 + ;======================= ; run LEAVES (#5) ;=======================