diff --git a/Makefile b/Makefile index d898ed92d..6cb43139e 100644 --- a/Makefile +++ b/Makefile @@ -48,6 +48,7 @@ asm: md $(ACME) src/fx/fx.hgr.iris.a $(ACME) src/fx/fx.hgr.ripple.a $(ACME) src/fx/fx.hgr.star.a + $(ACME) src/fx/fx.hgr.fourspiral.a dsk: md asm $(CADIUS) CREATEVOLUME build/"$(DISK)" "${VOLUME}" 32766KB >>build/log diff --git a/res/fx.conf b/res/fx.conf index 9afb1f854..d3a52ded0 100644 --- a/res/fx.conf +++ b/res/fx.conf @@ -1 +1 @@ -# # transition effects for HGR slideshows # STAR RIPPLE IRIS SPLIT.UD.INTRO RADIAL SUNRISE DIAGONAL CHECKERBOARD HALF.FIZZLE CORNER.CIRCLE BAR.DISSOLVE STAGGERWHITE.LR DIAMOND ONESQUARE TWOPASS.LR CRYSTAL HALF.MOSAIC STAGGER.LR FOURSQUARE STAGGER.UD INTERLOCK.LR BLOCK.MOSAIC FIZZLE STAGGERWHITE.UD INTERLOCK.UD BLOCK.FIZZLE SPIRAL [eof] \ No newline at end of file +# # transition effects for HGR slideshows # FOURSPIRAL STAR RIPPLE IRIS SPLIT.UD.INTRO RADIAL SUNRISE DIAGONAL CHECKERBOARD HALF.FIZZLE CORNER.CIRCLE BAR.DISSOLVE STAGGERWHITE.LR DIAMOND ONESQUARE TWOPASS.LR CRYSTAL HALF.MOSAIC STAGGER.LR FOURSQUARE STAGGER.UD INTERLOCK.LR BLOCK.MOSAIC FIZZLE STAGGERWHITE.UD INTERLOCK.UD BLOCK.FIZZLE SPIRAL [eof] \ No newline at end of file diff --git a/res/fx/_FileInformation.txt b/res/fx/_FileInformation.txt index 8b2f724e3..2a57bb305 100644 --- a/res/fx/_FileInformation.txt +++ b/res/fx/_FileInformation.txt @@ -25,3 +25,4 @@ SPLIT.UD.INTRO=Type(06),AuxType(6000),Access(C3) IRIS=Type(06),AuxType(6000),Access(C3) RIPPLE=Type(06),AuxType(6000),Access(C3) STAR=Type(06),AuxType(6000),Access(C3) +FOURSPIRAL=Type(06),AuxType(6000),Access(C3) diff --git a/src/fx/fx.hgr.fourspiral.a b/src/fx/fx.hgr.fourspiral.a new file mode 100644 index 000000000..57d3f0de9 --- /dev/null +++ b/src/fx/fx.hgr.fourspiral.a @@ -0,0 +1,90 @@ +!cpu 6502 +!to "build/FX/FOURSPIRAL",plain +*=$6000 + + lda #$13 + sta $FB + lda #$17 + sta $FD + lda #$00 + sta $FA + sta $FC +@outerloop + lda $FC + sta $FE + lda $FA + sta $FF + lda #$00 + sta $F9 +@loop lda $FE + ldy $FF + jsr HGRHalfBlockCopy + lda #$27 + sec + sbc $FF + tay + lda $FE + jsr HGRHalfBlockCopy + lda #$2F + sec + sbc $FE + pha + jsr HGRHalfBlockCopy + pla + ldy $FF + jsr HGRHalfBlockCopy + lda #$28 + jsr WaitForKeyWithTimeout + bmi @exit + ldx $F9 + bne @a + inc $FF + lda $FB + cmp $FF + bcs @loop + inc $FC + inc $F9 + lda $FC + sta $FE + lda $FB + sta $FF +@a dex + bne @b + inc $FE + lda $FD + cmp $FE + bcs @loop + dec $FB + inc $F9 + lda $FD + sta $FE + lda $FB + sta $FF +@b dex + bne @c + dec $FF + lda $FF + cmp $FA + bpl @loop + lda $FD + cmp $FC + beq @exit + dec $FD + inc $F9 + lda $FD + sta $FE + lda $FA + sta $FF +@c dex + bne @loop + dec $FE + lda $FE + cmp $FC + bpl @loop + inc $FA + beq @exit + jmp @outerloop +@exit rts + + !source "src/wait.a" + !source "src/fx/fx.hgr.common.a"