some wipes

This commit is contained in:
4am 2019-10-20 11:05:00 -04:00
parent 1b78361fd5
commit c3ee9b4cd5
4 changed files with 352 additions and 1 deletions

View File

@ -1 +1 @@
RIPPLE STARWHITE SOFT.DIAGONAL STAGGERWHITE.UD RADIAL STAGGER.LR SOFT.UD CRYSTAL BIT.FIZZLE MEETINTHEMIDDLE DIAGONAL R.BY.PIXEL SUNRISE SOFT.L SUNSET CORNER.CIRCLE CENTER.BY.PIXEL DIAGONAL2 RIPPLE2 RADIAL2 SPLIT.UD.INTRO HALF.FIZZLE RADIAL3 DIAGONAL3 BAR.DISSOLVE FOURSPIRAL SOFT.R IRIS CASCADE AND CHECKERBOARD LR.BY.PIXEL RADIAL4 STAGGERWHITE.LR SOFT.UD.OUT ONESQUARE FIZZLE STAR DIAMOND TWOPASS.LR HALF.MOSAIC RADIAL5 ARROW FOURSQUARE DIAGONAL4 STAGGER.UD INTERLOCK.LR SOFT.UD.IN BLOCK.MOSAIC INTERLOCK.UD BLOCK.FIZZLE SPIRAL ARROW.WHITE [eof] # # transition effects for HGR slideshows # # Each Mega-Attract Module that is an HGR slideshow (see attract.conf) # will use a single transition effect for the length of the module. # Transition effects are loaded in the order listed in this file. Each line # of this file is a filename (not including comments, like this one). The # name of the next transition effect is stored in the global prefs, so this # file should not contain duplicates. # # Transition effects are binary files loaded at $6000 and called with # hi-res page 1 showing and the next HGR graphic already loaded at $4000. # A transition effect can use $6000-$BFFF in main memory, zero page, and # text page if needed. $800-$1FFF is reserved for the slideshow data. # LC RAM banks 1 and 2 are reserved for the launcher. # # Important: LC RAM bank 1 will be read/write on entry and must be read/write # on exit. If you need ROM routines, you are responsible for switching to ROM # then switching back to RAM bank 1 (read/write) before returning. #
RIPPLE STARWHITE SOFT.DIAGONAL STAGGERWHITE.UD RADIAL STAGGER.LR SOFT.UD CRYSTAL BIT.FIZZLE MEETINTHEMIDDLE DIAGONAL R.BY.PIXEL SUNRISE SOFT.L SUNSET CORNER.CIRCLE CENTER.BY.PIXEL DIAGONAL2 RIPPLE2 PALETTE.FIZZLE RADIAL2 SPLIT.UD.INTRO R.BY.2 HALF.FIZZLE RADIAL3 DIAGONAL3 BAR.DISSOLVE R.BY.PALETTE FOURSPIRAL SOFT.R IRIS CASCADE AND CHECKERBOARD LR.BY.PIXEL RADIAL4 STAGGERWHITE.LR SOFT.UD.OUT ONESQUARE FIZZLE STAR DIAMOND TWOPASS.LR HALF.MOSAIC RADIAL5 ARROW FOURSQUARE DIAGONAL4 STAGGER.UD INTERLOCK.LR SOFT.UD.IN BLOCK.MOSAIC INTERLOCK.UD BLOCK.FIZZLE SPIRAL ARROW.WHITE [eof] # # transition effects for HGR slideshows # # Each Mega-Attract Module that is an HGR slideshow (see attract.conf) # will use a single transition effect for the length of the module. # Transition effects are loaded in the order listed in this file. Each line # of this file is a filename (not including comments, like this one). The # name of the next transition effect is stored in the global prefs, so this # file should not contain duplicates. # # Transition effects are binary files loaded at $6000 and called with # hi-res page 1 showing and the next HGR graphic already loaded at $4000. # A transition effect can use $6000-$BFFF in main memory, zero page, and # text page if needed. $800-$1FFF is reserved for the slideshow data. # LC RAM banks 1 and 2 are reserved for the launcher. # # Important: LC RAM bank 1 will be read/write on entry and must be read/write # on exit. If you need ROM routines, you are responsible for switching to ROM # then switching back to RAM bank 1 (read/write) before returning. #

View File

@ -0,0 +1,115 @@
;license:MIT
;(c) 2017-2019 by qkumba and 4am
!cpu 6502
!to "build/FX/PALETTE.FIZZLE",plain
*=$6000
!source "src/fx/macros.a"
;init masks
lda #%00101010
sta sourcemask_even
lda #%11010101
sta copymask_even
lda #%01010101
sta sourcemask_odd
lda #%10101010
sta copymask_odd
@outerloop
;init RNG
ldx #1
stx @rnd1+1
dex
stx @rnd2+1
;iterate
@loop
ldy @rnd1+1
ldx @rnd2+1
lsr @rnd2+1
ror @rnd1+1
bcc +
;feedback polynomial forms #$100D for period of 8191
lda @rnd1+1
eor #$0d
sta @rnd1+1
lda @rnd2+1
eor #$10
sta @rnd2+1
;little hack to avoid missing offset zero
;screen hole at $xxFF is missed instead
+ tya
eor #$ff
sta $26
sta $3c
txa
;target page 1
ora #$20
sta $27
eor #$60
sta $3d
;copy pixel from other page to this page
ldy #0
lda $26
ror
bcs @odd
lda ($26),y
and sourcemask_even
sta $00
lda ($3c),y
and copymask_even
ora $00
sta ($26),y
jmp @next
@odd
lda ($26),y
and sourcemask_odd
sta $00
lda ($3c),y
and copymask_odd
ora $00
sta ($26),y
@next
lda $c000
bmi @exit
;and exit condition
@rnd2 lda #0
bne @loop
@rnd1 lda #0
cmp #1
bne @loop
lda sourcemask_even
beq @exit
lda #0
sta sourcemask_even
sta sourcemask_odd
lda #$FF
sta copymask_even
sta copymask_odd
+LBNE @outerloop
@exit rts
sourcemask_even
!byte %00101010
copymask_even
!byte %11010101
sourcemask_odd
!byte %01010101
copymask_odd
!byte %10101010

118
src/fx/fx.hgr.r.by.2.a Normal file
View File

@ -0,0 +1,118 @@
;license:MIT
;(c) 2019 by 4am
;
!cpu 6502
!to "build/FX/R.BY.2",plain
*=$6000
tmp = $fc
maskindex = $fd
row = $fe
col = $ff
!source "src/fx/macros.a"
lda #0
sta col
ColLoop
lda #0
sta row
jsr WaitForVBL
RowLoop
lda row
+HGR_ROW_CALC
lda col
ror
bcs OddCol
ldx #7
ldy col
- lda ($26),y
and sourcemask_even
sta $00
lda ($3c),y
and copymask_even
ora $00
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
bmi NextRow ; always branches
OddCol
ldx #7
ldy col
- lda ($26),y
and sourcemask_odd
sta $00
lda ($3c),y
and copymask_odd
ora $00
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
NextRow
inc row
lda row
cmp #24
+LBNE RowLoop
lda $c000
bmi Exit
inc col
lda col
cmp #40
+LBNE ColLoop
beq Phase2
Exit rts
Phase2
lda #0
sta col
ColLoop2
lda #0
sta row
jsr WaitForVBL
RowLoop2
lda row
+HGR_ROW_CALC
ldx #7
ldy col
- lda ($3c),y
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
inc row
lda row
cmp #24
+LBNE RowLoop2
lda $c000
bmi Exit2
inc col
lda col
cmp #40
+LBNE ColLoop2
Exit2 rts
sourcemask_even
!byte %00110011
copymask_even
!byte %11001100
sourcemask_odd
!byte %01001100
copymask_odd
!byte %10110011
!source "src/wait.a"
!source "src/fx/fx.hgr.common.a"
!source "src/fx/hw.vbl.a"

View File

@ -0,0 +1,118 @@
;license:MIT
;(c) 2019 by 4am
;
!cpu 6502
!to "build/FX/R.BY.PALETTE",plain
*=$6000
tmp = $fc
maskindex = $fd
row = $fe
col = $ff
!source "src/fx/macros.a"
lda #0
sta col
ColLoop
lda #0
sta row
jsr WaitForVBL
RowLoop
lda row
+HGR_ROW_CALC
lda col
ror
bcs OddCol
ldx #7
ldy col
- lda ($26),y
and sourcemask_even
sta $00
lda ($3c),y
and copymask_even
ora $00
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
bmi NextRow ; always branches
OddCol
ldx #7
ldy col
- lda ($26),y
and sourcemask_odd
sta $00
lda ($3c),y
and copymask_odd
ora $00
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
NextRow
inc row
lda row
cmp #24
+LBNE RowLoop
lda $c000
bmi Exit
inc col
lda col
cmp #40
+LBNE ColLoop
beq Phase2
Exit rts
Phase2
lda #0
sta col
ColLoop2
lda #0
sta row
jsr WaitForVBL
RowLoop2
lda row
+HGR_ROW_CALC
ldx #7
ldy col
- lda ($3c),y
sta ($26),y
clc
+HGR_INC_WITHIN_BLOCK
dex
bpl -
inc row
lda row
cmp #24
+LBNE RowLoop2
lda $c000
bmi Exit2
inc col
lda col
cmp #40
+LBNE ColLoop2
Exit2 rts
sourcemask_even
!byte %00101010
copymask_even
!byte %11010101
sourcemask_odd
!byte %01010101
copymask_odd
!byte %10101010
!source "src/wait.a"
!source "src/fx/fx.hgr.common.a"
!source "src/fx/hw.vbl.a"