From 1050b92d22df0deb86035543738c851b3b18f030 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Tue, 12 Nov 2024 00:53:34 -0500 Subject: [PATCH] wipes: update wipes --- graphics/hgr/wipes/Makefile | 8 ++- graphics/hgr/wipes/lr/Makefile | 24 +++++++++ graphics/hgr/wipes/lr/fx.hgr.2pass.lr.s | 65 ++++++++++++++++++++++++ graphics/hgr/wipes/lr/wipe_lr.s | 66 +++++++++++++++++++++++++ 4 files changed, 162 insertions(+), 1 deletion(-) create mode 100644 graphics/hgr/wipes/lr/Makefile create mode 100644 graphics/hgr/wipes/lr/fx.hgr.2pass.lr.s create mode 100644 graphics/hgr/wipes/lr/wipe_lr.s diff --git a/graphics/hgr/wipes/Makefile b/graphics/hgr/wipes/Makefile index 5f38c32e..1e21764f 100644 --- a/graphics/hgr/wipes/Makefile +++ b/graphics/hgr/wipes/Makefile @@ -13,7 +13,8 @@ wipes.dsk: HELLO \ diamond/WIPE_DIAMOND \ diamond_stripes/WIPE_DIAMOND_STRIPE \ crystal/WIPE_CRYSTAL \ - fizzle/WIPE_FIZZLE + fizzle/WIPE_FIZZLE \ + lr/WIPE_LR cp $(EMPTY_DISK)/empty.dsk wipes.dsk $(DOS33) -y wipes.dsk SAVE A HELLO $(DOS33) -y wipes.dsk BSAVE -a 0x5700 bubbles/WIPE_BUBBLES @@ -21,6 +22,7 @@ wipes.dsk: HELLO \ $(DOS33) -y wipes.dsk BSAVE -a 0x6000 diamond_stripes/WIPE_DIAMOND_STRIPE $(DOS33) -y wipes.dsk BSAVE -a 0x6000 crystal/WIPE_CRYSTAL $(DOS33) -y wipes.dsk BSAVE -a 0x6000 fizzle/WIPE_FIZZLE + $(DOS33) -y wipes.dsk BSAVE -a 0x6000 lr/WIPE_LR ### @@ -44,6 +46,9 @@ diamond_stripes/WIPE_DIAMOND_STRIPE: fizzle/WIPE_FIZZLE: cd fizzle && make +lr/WIPE_LR: + cd lr && make + ### clean: @@ -53,3 +58,4 @@ clean: cd diamond_stripes && make clean cd crystal && make clean cd fizzle && make clean + cd lr && make clean diff --git a/graphics/hgr/wipes/lr/Makefile b/graphics/hgr/wipes/lr/Makefile new file mode 100644 index 00000000..1806968c --- /dev/null +++ b/graphics/hgr/wipes/lr/Makefile @@ -0,0 +1,24 @@ +include ../../../../Makefile.inc + +LINKER_SCRIPTS = ../../../../linker_scripts + +all: WIPE_LR + +### + +WIPE_LR: wipe_lr.o + ld65 -o WIPE_LR wipe_lr.o -C $(LINKER_SCRIPTS)/apple2_6000.inc + +wipe_lr.o: wipe_lr.s \ + ../zp.inc ../hardware.inc ../wait_keypress.s ../zx02_optim.s \ + ../main_macros.s \ + fx.hgr.2pass.lr.s \ + ../fx.lib.s \ + ../macros.s + ca65 -o wipe_lr.o wipe_lr.s -l wipe_lr.lst + +### + +clean: + rm -f *~ *.o *.lst *.zx02 HELLO WIPE_LR + diff --git a/graphics/hgr/wipes/lr/fx.hgr.2pass.lr.s b/graphics/hgr/wipes/lr/fx.hgr.2pass.lr.s new file mode 100644 index 00000000..2bfd4328 --- /dev/null +++ b/graphics/hgr/wipes/lr/fx.hgr.2pass.lr.s @@ -0,0 +1,65 @@ +;license:MIT +;(c) 2018 by 4am +; +;!cpu 6502 +;!to "build/FX.INDEXED/TWOPASS.LR",plain +;*=$6000 + +row = $FF + + ; !source "src/fx/macros.a" + .include "../macros.s" + +do_wipe_lr: + + lda #$00 + sta h1 + sta h2 +outerloop1: + lda #$BF + sta row +loop1: jsr HGRCalc +h1=*+1 + ldy #$00 + lda ($3c),y + sta ($26),y + dec row + dec row + lda row + cmp #$FF + bne loop1 + + lda #$10 +; jsr iWaitForKeyWithTimeout + bmi lrexit + + inc h1 + lda h1 + cmp #$28 + bne outerloop1 + +outerloop2: + lda #$BE + sta row +loop2: jsr HGRCalc +h2=*+1 + ldy #$00 + lda ($3c),y + sta ($26),y + dec row + dec row + lda row + cmp #$FE + bne loop2 + + lda #$10 +; jsr iWaitForKeyWithTimeout + bmi lrexit + + inc h2 + lda h2 + cmp #$28 + bne outerloop2 +lrexit: rts + + HGR_CALC_ROUTINES diff --git a/graphics/hgr/wipes/lr/wipe_lr.s b/graphics/hgr/wipes/lr/wipe_lr.s new file mode 100644 index 00000000..0c0c9d2d --- /dev/null +++ b/graphics/hgr/wipes/lr/wipe_lr.s @@ -0,0 +1,66 @@ +; test 4-cade diamond wipe + +.include "../zp.inc" +.include "../hardware.inc" + +wipe_diamond: + + bit SET_GR + bit HIRES + bit FULLGR + bit PAGE1 + + ;================================= + ; intro + ;================================= + + lda #test_graphic + sta zx_src_h+1 + lda #$20 + jsr zx02_full_decomp + +; ldy #0 +;fake_hgr2: +; lda #$0 +; sta $4000,Y +; dey +; bne fake_hgr2 +; +; inc fake_hgr2+2 +; lda fake_hgr2+2 +; cmp #$60 +; bne fake_hgr2 + + + jsr HGR2 + bit PAGE1 + + jsr wait_until_keypress + + ;================================= + ; test wipe... + ;================================= +test_loop: + + jsr do_wipe_lr + + jsr wait_until_keypress + jmp test_loop + +.include "../wait_keypress.s" + +.include "../fx.lib.s" +.include "../main_macros.s" +.include "../macros.hgr.s" + +.include "fx.hgr.2pass.lr.s" + +test_graphic: + .incbin "../graphics/a2_dating.hgr.zx02" + +.include "../zx02_optim.s" + +.include "../vblank.s" +