mirror of
https://github.com/a2-4am/4cade.git
synced 2025-08-15 12:27:32 +00:00
some wipes
This commit is contained in:
@@ -1 +1 @@
|
|||||||
RIPPLE
|
RIPPLE
|
94
src/fx/fx.hgr.diagonal2.a
Normal file
94
src/fx/fx.hgr.diagonal2.a
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
;license:MIT
|
||||||
|
;(c) 2019 by 4am
|
||||||
|
;
|
||||||
|
!cpu 6502
|
||||||
|
!to "build/FX/DIAGONAL2",plain
|
||||||
|
*=$6000
|
||||||
|
|
||||||
|
row = $fd
|
||||||
|
col = $fe
|
||||||
|
tmp = $ff
|
||||||
|
|
||||||
|
lda #$FF ; -1
|
||||||
|
sta col
|
||||||
|
@colloop
|
||||||
|
lda #23
|
||||||
|
sta row
|
||||||
|
ldy col
|
||||||
|
@rowloop
|
||||||
|
tya
|
||||||
|
bmi +
|
||||||
|
cpy #40
|
||||||
|
bcs +
|
||||||
|
lda row
|
||||||
|
jsr HGRBlockCopy
|
||||||
|
+ iny
|
||||||
|
bmi +
|
||||||
|
cpy #40
|
||||||
|
bcs +
|
||||||
|
lda row
|
||||||
|
jsr HGRDiagonalBlockCopyWithGuards
|
||||||
|
+ dey
|
||||||
|
dey
|
||||||
|
dec row
|
||||||
|
bpl @rowloop
|
||||||
|
lda #64
|
||||||
|
jsr WaitForKeyWithTimeout
|
||||||
|
bmi @exit
|
||||||
|
inc col
|
||||||
|
lda col
|
||||||
|
cmp #64
|
||||||
|
bcc @colloop
|
||||||
|
@exit rts
|
||||||
|
|
||||||
|
HGRDiagonalBlockCopyWithGuards
|
||||||
|
; in: A = HGR row / 8 (0x00..0x17)
|
||||||
|
; Y = HGR column (0x00..0x27)
|
||||||
|
; out: Y preserved
|
||||||
|
; A/X clobbered
|
||||||
|
; tmp clobbered
|
||||||
|
asl
|
||||||
|
asl
|
||||||
|
asl
|
||||||
|
jsr HGRCalc
|
||||||
|
clc
|
||||||
|
tya
|
||||||
|
bmi @exit
|
||||||
|
ldx #7
|
||||||
|
@loop
|
||||||
|
lda ($26),y
|
||||||
|
and sourcemasks,x
|
||||||
|
sta tmp
|
||||||
|
lda ($3c),y
|
||||||
|
and copymasks,x
|
||||||
|
ora tmp
|
||||||
|
sta ($26),y
|
||||||
|
lda $27
|
||||||
|
adc #$04
|
||||||
|
sta $27
|
||||||
|
eor #$60
|
||||||
|
sta $3d
|
||||||
|
dex
|
||||||
|
bpl @loop
|
||||||
|
@exit rts
|
||||||
|
sourcemasks ; copymasks EOR #$FF
|
||||||
|
!byte %00000000
|
||||||
|
!byte %01000000
|
||||||
|
!byte %01100000
|
||||||
|
!byte %01110000
|
||||||
|
!byte %01111000
|
||||||
|
!byte %01111100
|
||||||
|
!byte %01111110
|
||||||
|
!byte %01111111
|
||||||
|
copymasks
|
||||||
|
!byte %11111111
|
||||||
|
!byte %10111111
|
||||||
|
!byte %10011111
|
||||||
|
!byte %10001111
|
||||||
|
!byte %10000111
|
||||||
|
!byte %10000011
|
||||||
|
!byte %10000001
|
||||||
|
!byte %10000000
|
||||||
|
|
||||||
|
!source "src/wait.a"
|
||||||
|
!source "src/fx/fx.hgr.common.a"
|
Reference in New Issue
Block a user