mirror of
https://github.com/a2-4am/4cade.git
synced 2024-11-27 08:50:01 +00:00
Merge branch 'master' of https://github.com/a2-4am/4cade
This commit is contained in:
commit
c3703247c5
@ -1 +1 @@
|
||||
RIPPLE
DIAGONAL
STAGGERWHITE.UD
STAR
RADIAL
FIZZLE
CRYSTAL
SUNRISE
SUNSET
CORNER.CIRCLE
RIPPLE2
RADIAL2
RADIAL3
RADIAL4
RADIAL5
FOURSPIRAL
IRIS
SPLIT.UD.INTRO
CHECKERBOARD
HALF.FIZZLE
BAR.DISSOLVE
STAGGERWHITE.LR
DIAMOND
ONESQUARE
TWOPASS.LR
HALF.MOSAIC
STAGGER.LR
FOURSQUARE
STAGGER.UD
INTERLOCK.LR
BLOCK.MOSAIC
INTERLOCK.UD
BLOCK.FIZZLE
SPIRAL
STARWHITE
[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 has full use of main memory, including zero page and
# text page if needed. 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
LR.BY.PIXEL
DIAGONAL
STAGGERWHITE.UD
STAR
RADIAL
FIZZLE
CRYSTAL
SUNRISE
SUNSET
CORNER.CIRCLE
RIPPLE2
RADIAL2
RADIAL3
RADIAL4
RADIAL5
FOURSPIRAL
IRIS
AND
SPLIT.UD.INTRO
CHECKERBOARD
HALF.FIZZLE
BAR.DISSOLVE
STAGGERWHITE.LR
DIAMOND
ONESQUARE
TWOPASS.LR
HALF.MOSAIC
STAGGER.LR
FOURSQUARE
STAGGER.UD
INTERLOCK.LR
BLOCK.MOSAIC
INTERLOCK.UD
BLOCK.FIZZLE
SPIRAL
STARWHITE
[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 has full use of main memory, including zero page and
# text page if needed. 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.
#
|
44
src/fx/fx.hgr.and.a
Normal file
44
src/fx/fx.hgr.and.a
Normal file
@ -0,0 +1,44 @@
|
||||
;license:MIT
|
||||
;(c) 2018 by 4am
|
||||
;
|
||||
!cpu 6502
|
||||
!to "build/FX/AND",plain
|
||||
*=$6000
|
||||
|
||||
i = $ff
|
||||
|
||||
lda #$06
|
||||
sta i
|
||||
@outerloop
|
||||
dec i
|
||||
bpl +
|
||||
@exit rts
|
||||
+ ldx i
|
||||
lda masks,x
|
||||
sta @mask
|
||||
ldx #$40
|
||||
stx @src
|
||||
ldx #$20
|
||||
stx @dest
|
||||
ldy #0
|
||||
@innerloop
|
||||
@src=*+2
|
||||
lda $FD00,y ; SMC
|
||||
@mask=*+1
|
||||
and #$FD ; SMC
|
||||
@dest=*+2
|
||||
sta $FD00,y ; SMC
|
||||
iny
|
||||
bne @innerloop
|
||||
inc @src
|
||||
inc @dest
|
||||
dex
|
||||
bne @innerloop
|
||||
lda #$30
|
||||
jsr WaitForKeyWithTimeout
|
||||
bmi @exit
|
||||
bpl @outerloop ; always branches
|
||||
masks
|
||||
!byte $FF,$BF,$9F,$8F,$87,$83,$81
|
||||
!source "src/wait.a"
|
||||
!source "src/fx/fx.hgr.common.a"
|
110
src/fx/fx.hgr.lr.by.pixel.a
Normal file
110
src/fx/fx.hgr.lr.by.pixel.a
Normal file
@ -0,0 +1,110 @@
|
||||
;license:MIT
|
||||
;(c) 2018 by 4am
|
||||
;
|
||||
!cpu 6502
|
||||
!to "build/FX/LR.BY.PIXEL",plain
|
||||
*=$6000
|
||||
|
||||
maskindex = $fd
|
||||
row = $fe
|
||||
col = $ff
|
||||
|
||||
@jump
|
||||
jmp @copy ; skip clear the first time
|
||||
|
||||
;clear
|
||||
lda #$27
|
||||
sta col
|
||||
@clearcolloop
|
||||
lda #$06
|
||||
sta maskindex
|
||||
@clearmaskloop
|
||||
ldx maskindex
|
||||
lda clearmasks,x
|
||||
sta @clearmask
|
||||
lda #$17
|
||||
sta row
|
||||
@clearrowloop
|
||||
lda row
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
jsr HGRCalc
|
||||
clc
|
||||
ldx #$08
|
||||
ldy col
|
||||
@clearblockloop
|
||||
lda ($26),y
|
||||
@clearmask=*+1
|
||||
and #$FD ; SMC
|
||||
sta ($26),y
|
||||
lda $27
|
||||
adc #4
|
||||
sta $27
|
||||
dex
|
||||
bne @clearblockloop
|
||||
dec row
|
||||
bpl @clearrowloop
|
||||
lda #8
|
||||
jsr WaitForKeyWithTimeout
|
||||
bmi @exit
|
||||
dec maskindex
|
||||
bpl @clearmaskloop
|
||||
dec col
|
||||
bpl @clearcolloop
|
||||
|
||||
@copy
|
||||
lda #$2C ; BIT opcode
|
||||
sta @jump ; don't skip clear after first time
|
||||
|
||||
; copy
|
||||
lda #$00
|
||||
sta col
|
||||
@colloop
|
||||
lda #$06
|
||||
sta maskindex
|
||||
@maskloop
|
||||
ldx maskindex
|
||||
lda copymasks,x
|
||||
sta @mask
|
||||
lda #$17
|
||||
sta row
|
||||
@rowloop
|
||||
lda row
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
jsr HGRCalc
|
||||
clc
|
||||
ldx #$08
|
||||
ldy col
|
||||
@blockloop
|
||||
lda ($3c),y
|
||||
@mask=*+1
|
||||
and #$FD ; SMC
|
||||
sta ($26),y
|
||||
lda $27
|
||||
adc #4
|
||||
sta $27
|
||||
eor #$60
|
||||
sta $3d
|
||||
dex
|
||||
bne @blockloop
|
||||
dec row
|
||||
bpl @rowloop
|
||||
lda #8
|
||||
jsr WaitForKeyWithTimeout
|
||||
bmi @exit
|
||||
dec maskindex
|
||||
bpl @maskloop
|
||||
inc col
|
||||
lda col
|
||||
cmp #40
|
||||
bne @colloop
|
||||
@exit rts
|
||||
clearmasks
|
||||
!byte $80,$81,$83,$87,$8F,$9F,$BF
|
||||
copymasks
|
||||
!byte $FF,$BF,$9F,$8F,$87,$83,$81
|
||||
!source "src/wait.a"
|
||||
!source "src/fx/fx.hgr.common.a"
|
Loading…
Reference in New Issue
Block a user