mirror of
https://github.com/a2-4am/4cade.git
synced 2025-08-05 05:24:33 +00:00
more diagonal wipes, upgraded diamond wipe, some refactoring
This commit is contained in:
2
Makefile
2
Makefile
@@ -60,7 +60,7 @@ asmlauncher:
|
|||||||
$(ACME) -r build/4cade.lst -DBUILDNUMBER=`git rev-list --count HEAD` -DRELBASE=`cat build/relbase.log | grep "RELBASE =" | cut -d"=" -f2 | cut -d"(" -f2 | cut -d")" -f1` src/4cade.a
|
$(ACME) -r build/4cade.lst -DBUILDNUMBER=`git rev-list --count HEAD` -DRELBASE=`cat build/relbase.log | grep "RELBASE =" | cut -d"=" -f2 | cut -d"(" -f2 | cut -d")" -f1` src/4cade.a
|
||||||
|
|
||||||
asmfx:
|
asmfx:
|
||||||
for f in src/fx/*.a; do grep "^\!to" $${f} >/dev/null && $(ACME) $${f} >> build/log; done
|
for f in src/fx/*.a; do grep "^\!to" $${f} >/dev/null && $(ACME) $${f} >> build/log || true; done
|
||||||
|
|
||||||
asmprelaunch:
|
asmprelaunch:
|
||||||
for f in src/prelaunch/*.a; do grep "^\!to" $${f} >/dev/null && $(ACME) $${f} >> build/log; done
|
for f in src/prelaunch/*.a; do grep "^\!to" $${f} >/dev/null && $(ACME) $${f} >> build/log; done
|
||||||
|
@@ -1 +1 @@
|
|||||||
RIPPLE
|
DIAMOND
|
@@ -1,7 +1,7 @@
|
|||||||
;license:MIT
|
;license:MIT
|
||||||
;(c) 2018 by 4am
|
;(c) 2018 by 4am
|
||||||
;
|
;
|
||||||
!source "src/fx/fx.hgr.macros.a"
|
!source "src/fx/macros.a"
|
||||||
|
|
||||||
HGRCalc
|
HGRCalc
|
||||||
; in: A = HGR row (0x00..0xBF)
|
; in: A = HGR row (0x00..0xBF)
|
||||||
@@ -106,3 +106,65 @@ HGRStaggerToWhite
|
|||||||
dex
|
dex
|
||||||
bne @loop
|
bne @loop
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
SetSourceMask
|
||||||
|
; in: A/Y points to 8-byte array of bit masks used by HGRBlockCopyWithMask
|
||||||
|
+STAY SourceMaskAddr
|
||||||
|
rts
|
||||||
|
|
||||||
|
SetCopyMask
|
||||||
|
; in: A/Y points to 8-byte array of bit masks used by HGRBlockCopyWithMask
|
||||||
|
+STAY CopyMaskAddr
|
||||||
|
rts
|
||||||
|
|
||||||
|
BuildSourceMaskFromCopyMask
|
||||||
|
; build an 8-byte array of bit masks at (SourceMaskAddr)
|
||||||
|
; that are the inverse (EOR #$FF) of the bit masks at (CopyMaskAddr)
|
||||||
|
;
|
||||||
|
; in: must call SetSourceMask and SetCopyMask first
|
||||||
|
; out: A/Y clobbered
|
||||||
|
; $00/$01/$02/$03 clobbered
|
||||||
|
; X preserved
|
||||||
|
+LDAY CopyMaskAddr
|
||||||
|
+STAY $00
|
||||||
|
+LDAY SourceMaskAddr
|
||||||
|
+STAY $02
|
||||||
|
ldy #$07
|
||||||
|
- lda ($00),y
|
||||||
|
eor #$FF
|
||||||
|
sta ($02),y
|
||||||
|
dey
|
||||||
|
bpl -
|
||||||
|
rts
|
||||||
|
|
||||||
|
HGRBlockCopyWithMask
|
||||||
|
; in: A = HGR row / 8 (0x00..0x17)
|
||||||
|
; Y = HGR column (0x00..0x27)
|
||||||
|
; must call SetSourceMask and SetCopyMask first
|
||||||
|
; out: Y preserved
|
||||||
|
; A/X clobbered
|
||||||
|
; $00 clobbered
|
||||||
|
asl
|
||||||
|
asl
|
||||||
|
asl
|
||||||
|
+HGR_CALC
|
||||||
|
ldx #7
|
||||||
|
HGRBlockCopyWithMasksLoop
|
||||||
|
lda ($26),y
|
||||||
|
SourceMaskAddr=*+1
|
||||||
|
and $FDFD,x ; call SetSourceMask to set
|
||||||
|
sta $00
|
||||||
|
lda ($3c),y
|
||||||
|
CopyMaskAddr=*+1
|
||||||
|
and $FDFD,x ; call SetCopyMask to set
|
||||||
|
ora $00
|
||||||
|
sta ($26),y
|
||||||
|
lda $27
|
||||||
|
clc
|
||||||
|
adc #$04
|
||||||
|
sta $27
|
||||||
|
eor #$60
|
||||||
|
sta $3d
|
||||||
|
dex
|
||||||
|
bpl HGRBlockCopyWithMasksLoop
|
||||||
|
rts
|
||||||
|
@@ -5,90 +5,58 @@
|
|||||||
!to "build/FX/DIAGONAL",plain
|
!to "build/FX/DIAGONAL",plain
|
||||||
*=$6000
|
*=$6000
|
||||||
|
|
||||||
row=$FA
|
row = $fd
|
||||||
col=$FB
|
col = $fe
|
||||||
tmp=$FF
|
counter = $ff
|
||||||
|
|
||||||
jmp Start
|
!source "src/fx/macros.a"
|
||||||
|
|
||||||
|
+INIT_MASKS sourcemasks, copymasks
|
||||||
|
|
||||||
|
lda #64 ; 40 + 24
|
||||||
|
sta counter
|
||||||
|
|
||||||
|
lda #39
|
||||||
|
sta col
|
||||||
|
@colloop
|
||||||
|
lda #23
|
||||||
|
sta row
|
||||||
|
ldy col
|
||||||
|
@rowloop
|
||||||
|
tya
|
||||||
|
bmi +
|
||||||
|
cpy #40
|
||||||
|
bcs +
|
||||||
|
lda row
|
||||||
|
jsr HGRBlockCopyWithMask
|
||||||
|
+ iny
|
||||||
|
bmi +
|
||||||
|
cpy #40
|
||||||
|
bcs +
|
||||||
|
lda row
|
||||||
|
jsr HGRBlockCopy
|
||||||
|
+
|
||||||
|
dec row
|
||||||
|
bpl @rowloop
|
||||||
|
lda #64
|
||||||
|
jsr WaitForKeyWithTimeout
|
||||||
|
bmi @exit
|
||||||
|
dec col
|
||||||
|
dec counter
|
||||||
|
bne @colloop
|
||||||
|
@exit rts
|
||||||
|
|
||||||
|
sourcemasks
|
||||||
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
|
copymasks
|
||||||
|
!byte %11111111
|
||||||
|
!byte %11111110
|
||||||
|
!byte %11111100
|
||||||
|
!byte %11111000
|
||||||
|
!byte %11110000
|
||||||
|
!byte %11100000
|
||||||
|
!byte %11000000
|
||||||
|
!byte %10000000
|
||||||
|
|
||||||
!source "src/wait.a"
|
!source "src/wait.a"
|
||||||
!source "src/fx/fx.hgr.common.a"
|
!source "src/fx/fx.hgr.common.a"
|
||||||
|
|
||||||
Start
|
|
||||||
lda #$27
|
|
||||||
sta col
|
|
||||||
lda #$17
|
|
||||||
sta row
|
|
||||||
sta $FC
|
|
||||||
@loop ldy col
|
|
||||||
lda row
|
|
||||||
bpl +
|
|
||||||
lda #$00
|
|
||||||
+ pha
|
|
||||||
jsr HGRDiagonalBlockCopyWithGuards
|
|
||||||
pla
|
|
||||||
iny
|
|
||||||
cpy #$28
|
|
||||||
bcs +
|
|
||||||
jsr HGRBlockCopy
|
|
||||||
+ dec col
|
|
||||||
inc row
|
|
||||||
lda row
|
|
||||||
cmp #$18
|
|
||||||
bne @loop
|
|
||||||
lda #$40
|
|
||||||
jsr WaitForKeyWithTimeout
|
|
||||||
bmi @exit
|
|
||||||
dec $FC
|
|
||||||
lda #$27
|
|
||||||
sta col
|
|
||||||
lda $FC
|
|
||||||
sta row
|
|
||||||
bpl @loop
|
|
||||||
lda #$00
|
|
||||||
sta row
|
|
||||||
sec
|
|
||||||
sbc $FC
|
|
||||||
sta $FD
|
|
||||||
lda col
|
|
||||||
sec
|
|
||||||
sbc $FD
|
|
||||||
sta col
|
|
||||||
cmp #$FE
|
|
||||||
bne @loop
|
|
||||||
@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
|
|
||||||
+HGR_CALC
|
|
||||||
clc
|
|
||||||
tya
|
|
||||||
bmi @exit
|
|
||||||
ldx #$07
|
|
||||||
@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
|
|
||||||
!byte $00,$01,$03,$07,$0F,$1F,$3F,$7F
|
|
||||||
copymasks
|
|
||||||
!byte $FF,$FE,$FC,$F8,$F0,$E0,$C0,$80
|
|
||||||
|
@@ -7,7 +7,14 @@
|
|||||||
|
|
||||||
row = $fd
|
row = $fd
|
||||||
col = $fe
|
col = $fe
|
||||||
tmp = $ff
|
counter = $ff
|
||||||
|
|
||||||
|
!source "src/fx/macros.a"
|
||||||
|
|
||||||
|
+INIT_MASKS sourcemasks, copymasks
|
||||||
|
|
||||||
|
lda #64 ; 40 + 24
|
||||||
|
sta counter
|
||||||
|
|
||||||
lda #$FF ; -1
|
lda #$FF ; -1
|
||||||
sta col
|
sta col
|
||||||
@@ -27,7 +34,7 @@ tmp = $ff
|
|||||||
cpy #40
|
cpy #40
|
||||||
bcs +
|
bcs +
|
||||||
lda row
|
lda row
|
||||||
jsr HGRDiagonalBlockCopyWithGuards
|
jsr HGRBlockCopyWithMask
|
||||||
+ dey
|
+ dey
|
||||||
dey
|
dey
|
||||||
dec row
|
dec row
|
||||||
@@ -36,50 +43,12 @@ tmp = $ff
|
|||||||
jsr WaitForKeyWithTimeout
|
jsr WaitForKeyWithTimeout
|
||||||
bmi @exit
|
bmi @exit
|
||||||
inc col
|
inc col
|
||||||
lda col
|
dec counter
|
||||||
cmp #64
|
bne @colloop
|
||||||
bcc @colloop
|
|
||||||
@exit rts
|
@exit rts
|
||||||
|
|
||||||
HGRDiagonalBlockCopyWithGuards
|
sourcemasks
|
||||||
; in: A = HGR row / 8 (0x00..0x17)
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
; 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
|
copymasks
|
||||||
!byte %11111111
|
!byte %11111111
|
||||||
!byte %10111111
|
!byte %10111111
|
||||||
|
@@ -7,7 +7,14 @@
|
|||||||
|
|
||||||
row = $fd
|
row = $fd
|
||||||
col = $fe
|
col = $fe
|
||||||
tmp = $ff
|
counter = $ff
|
||||||
|
|
||||||
|
!source "src/fx/macros.a"
|
||||||
|
|
||||||
|
+INIT_MASKS sourcemasks, copymasks
|
||||||
|
|
||||||
|
lda #64 ; 40 + 24
|
||||||
|
sta counter
|
||||||
|
|
||||||
lda #$FF ; -1
|
lda #$FF ; -1
|
||||||
sta col
|
sta col
|
||||||
@@ -27,7 +34,7 @@ tmp = $ff
|
|||||||
cpy #40
|
cpy #40
|
||||||
bcs +
|
bcs +
|
||||||
lda row
|
lda row
|
||||||
jsr HGRDiagonalBlockCopyWithGuards
|
jsr HGRBlockCopyWithMask
|
||||||
+ dey
|
+ dey
|
||||||
dey
|
dey
|
||||||
inc row
|
inc row
|
||||||
@@ -43,45 +50,8 @@ tmp = $ff
|
|||||||
bcc @colloop
|
bcc @colloop
|
||||||
@exit rts
|
@exit rts
|
||||||
|
|
||||||
HGRDiagonalBlockCopyWithGuards
|
sourcemasks
|
||||||
; in: A = HGR row / 8 (0x00..0x17)
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
; 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 %01111111
|
|
||||||
!byte %01111110
|
|
||||||
!byte %01111100
|
|
||||||
!byte %01111000
|
|
||||||
!byte %01110000
|
|
||||||
!byte %01100000
|
|
||||||
!byte %01000000
|
|
||||||
!byte %00000000
|
|
||||||
copymasks
|
copymasks
|
||||||
!byte %10000000
|
!byte %10000000
|
||||||
!byte %10000001
|
!byte %10000001
|
||||||
|
@@ -5,18 +5,15 @@
|
|||||||
!to "build/FX/DIAGONAL4",plain
|
!to "build/FX/DIAGONAL4",plain
|
||||||
*=$6000
|
*=$6000
|
||||||
|
|
||||||
counter = $fc
|
|
||||||
row = $fd
|
row = $fd
|
||||||
col = $fe
|
col = $fe
|
||||||
tmp = $ff
|
counter = $ff
|
||||||
|
|
||||||
ldx #7
|
!source "src/fx/macros.a"
|
||||||
- lda copymasks,x
|
|
||||||
eor #%11111111
|
+INIT_MASKS sourcemasks, copymasks
|
||||||
sta sourcemasks,x
|
|
||||||
dex
|
lda #64 ; 40 + 24
|
||||||
bpl -
|
|
||||||
lda #(40+24)
|
|
||||||
sta counter
|
sta counter
|
||||||
|
|
||||||
lda #39
|
lda #39
|
||||||
@@ -31,7 +28,7 @@ tmp = $ff
|
|||||||
cpy #40
|
cpy #40
|
||||||
bcs +
|
bcs +
|
||||||
lda row
|
lda row
|
||||||
jsr HGRDiagonalBlockCopyWithGuards
|
jsr HGRBlockCopyWithMask
|
||||||
+ iny
|
+ iny
|
||||||
bmi +
|
bmi +
|
||||||
cpy #40
|
cpy #40
|
||||||
@@ -51,38 +48,8 @@ tmp = $ff
|
|||||||
bne @colloop
|
bne @colloop
|
||||||
@exit rts
|
@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
|
sourcemasks
|
||||||
!byte 0,0,0,0,0,0,0,0 ; SMC, will be copymasks EOR #$FF
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
copymasks
|
copymasks
|
||||||
!byte %10000000
|
!byte %10000000
|
||||||
!byte %11000000
|
!byte %11000000
|
@@ -1,75 +1,162 @@
|
|||||||
;license:MIT
|
;license:MIT
|
||||||
;(c) 2018 by 4am
|
;(c) 2019 by 4am
|
||||||
;
|
;
|
||||||
!cpu 6502
|
!cpu 6502
|
||||||
!to "build/FX/DIAMOND",plain
|
!to "build/FX/DIAMOND",plain
|
||||||
*=$6000
|
*=$6000
|
||||||
|
|
||||||
lda #<@coords
|
y = $fc
|
||||||
sta $FE
|
row = $fd
|
||||||
lda #>@coords
|
col = $fe
|
||||||
sta $FF
|
counter = $ff
|
||||||
ldy #$00
|
|
||||||
@loop1
|
|
||||||
lda ($FE),y
|
|
||||||
bpl @copy
|
|
||||||
lda #$18
|
|
||||||
jsr WaitForKeyWithTimeout
|
|
||||||
bmi @exit
|
|
||||||
bpl @next ; always branches
|
|
||||||
@copy
|
|
||||||
tax
|
|
||||||
iny
|
|
||||||
lda ($fe),y
|
|
||||||
tay
|
|
||||||
txa
|
|
||||||
jsr HGRBlockToWhite
|
|
||||||
@next
|
|
||||||
inc $FE
|
|
||||||
bne +
|
|
||||||
inc $FF
|
|
||||||
+ inc $FE
|
|
||||||
bne +
|
|
||||||
inc $FF
|
|
||||||
+ ldy #$00
|
|
||||||
lda ($FE),y
|
|
||||||
cmp #$80
|
|
||||||
bne @loop1
|
|
||||||
|
|
||||||
@loop2
|
!source "src/fx/macros.a"
|
||||||
dec $FE
|
|
||||||
lda $FE
|
+INIT_MASKS sourcemasks1, copymasks1
|
||||||
cmp #$FF
|
+INIT_MASKS sourcemasks2, copymasks2
|
||||||
bne +
|
+INIT_MASKS sourcemasks3, copymasks3
|
||||||
dec $FF
|
+INIT_MASKS sourcemasks4, copymasks4
|
||||||
+ dec $FE
|
|
||||||
lda $FE
|
lda #32
|
||||||
cmp #$FF
|
sta counter
|
||||||
bne +
|
|
||||||
dec $FF
|
lda #39
|
||||||
+ ldy #$00
|
sta col
|
||||||
lda ($FE),y
|
@colloop
|
||||||
cmp #$80
|
lda #23
|
||||||
beq @exit
|
sta row
|
||||||
lda ($FE),y
|
ldy col
|
||||||
bpl @copy2
|
sty y
|
||||||
lda #$18
|
@rowloop
|
||||||
jsr WaitForKeyWithTimeout
|
; check if this column is visible
|
||||||
bmi @exit
|
ldy y
|
||||||
bpl @loop2 ; always branches
|
bpl +
|
||||||
@copy2
|
- jmp @skip1
|
||||||
tax
|
+ cpy #40
|
||||||
iny
|
bcs -
|
||||||
lda ($fe),y
|
; do corner 1
|
||||||
|
sty y
|
||||||
|
+SWITCH_TO_MASKS sourcemasks1, copymasks1
|
||||||
|
ldy y
|
||||||
|
lda row
|
||||||
|
jsr HGRBlockCopyWithMask
|
||||||
|
sty y
|
||||||
|
; do corner 2 (same row, opposing col)
|
||||||
|
+SWITCH_TO_MASKS sourcemasks2, copymasks2
|
||||||
|
lda #39
|
||||||
|
sec
|
||||||
|
sbc y
|
||||||
tay
|
tay
|
||||||
txa
|
lda row
|
||||||
|
jsr HGRBlockCopyWithMask
|
||||||
|
; do corner 3 (opposing row, opposing col)
|
||||||
|
+SWITCH_TO_MASKS sourcemasks3, copymasks3
|
||||||
|
lda #39
|
||||||
|
sec
|
||||||
|
sbc y
|
||||||
|
tay
|
||||||
|
lda #23
|
||||||
|
sec
|
||||||
|
sbc row
|
||||||
|
jsr HGRBlockCopyWithMask
|
||||||
|
; do corner 4 (opposing row, same col)
|
||||||
|
+SWITCH_TO_MASKS sourcemasks4, copymasks4
|
||||||
|
ldy y
|
||||||
|
lda #23
|
||||||
|
sec
|
||||||
|
sbc row
|
||||||
|
jsr HGRBlockCopyWithMask
|
||||||
|
; reset y for looping
|
||||||
|
ldy y
|
||||||
|
@skip1
|
||||||
|
iny
|
||||||
|
; now check if *this* column is visible
|
||||||
|
sty y
|
||||||
|
bpl +
|
||||||
|
- jmp @skip2
|
||||||
|
+ cpy #40
|
||||||
|
bcs -
|
||||||
|
; do corner 1
|
||||||
|
lda row
|
||||||
jsr HGRBlockCopy
|
jsr HGRBlockCopy
|
||||||
beq @loop2 ; always branches
|
; do corner 2
|
||||||
|
lda #39
|
||||||
|
sec
|
||||||
|
sbc y
|
||||||
|
tay
|
||||||
|
lda #23
|
||||||
|
sec
|
||||||
|
sbc row
|
||||||
|
jsr HGRBlockCopy
|
||||||
|
; do corner 3
|
||||||
|
lda #39
|
||||||
|
sec
|
||||||
|
sbc y
|
||||||
|
tay
|
||||||
|
lda row
|
||||||
|
jsr HGRBlockCopy
|
||||||
|
; do corner 4
|
||||||
|
ldy y
|
||||||
|
lda #23
|
||||||
|
sec
|
||||||
|
sbc row
|
||||||
|
jsr HGRBlockCopy
|
||||||
|
@skip2
|
||||||
|
dec row
|
||||||
|
bmi +
|
||||||
|
jmp @rowloop
|
||||||
|
+ lda $c000
|
||||||
|
bmi @exit
|
||||||
|
dec col
|
||||||
|
dec counter
|
||||||
|
beq @exit
|
||||||
|
jmp @colloop
|
||||||
@exit rts
|
@exit rts
|
||||||
|
|
||||||
!byte $80,$80
|
sourcemasks1
|
||||||
@coords
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
!source "src/fx/fx.hgr.diamond.data.a"
|
sourcemasks2
|
||||||
!byte $80
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
|
sourcemasks3
|
||||||
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
|
sourcemasks4
|
||||||
|
!byte 0,0,0,0,0,0,0,0 ; SMC
|
||||||
|
copymasks1
|
||||||
|
!byte %11111111
|
||||||
|
!byte %11111110
|
||||||
|
!byte %11111100
|
||||||
|
!byte %11111000
|
||||||
|
!byte %11110000
|
||||||
|
!byte %11100000
|
||||||
|
!byte %11000000
|
||||||
|
!byte %10000000
|
||||||
|
copymasks2
|
||||||
|
!byte %11111111
|
||||||
|
!byte %10111111
|
||||||
|
!byte %10011111
|
||||||
|
!byte %10001111
|
||||||
|
!byte %10000111
|
||||||
|
!byte %10000011
|
||||||
|
!byte %10000001
|
||||||
|
!byte %10000000
|
||||||
|
copymasks3
|
||||||
|
!byte %10000000
|
||||||
|
!byte %10000001
|
||||||
|
!byte %10000011
|
||||||
|
!byte %10000111
|
||||||
|
!byte %10001111
|
||||||
|
!byte %10011111
|
||||||
|
!byte %10111111
|
||||||
|
!byte %11111111
|
||||||
|
copymasks4
|
||||||
|
!byte %10000000
|
||||||
|
!byte %11000000
|
||||||
|
!byte %11100000
|
||||||
|
!byte %11110000
|
||||||
|
!byte %11111000
|
||||||
|
!byte %11111100
|
||||||
|
!byte %11111110
|
||||||
|
!byte %11111111
|
||||||
|
|
||||||
!source "src/wait.a"
|
!source "src/wait.a"
|
||||||
!source "src/fx/fx.hgr.common.a"
|
!source "src/fx/fx.hgr.common.a"
|
||||||
|
@@ -1,991 +0,0 @@
|
|||||||
!byte 0,0
|
|
||||||
!byte 0,39
|
|
||||||
!byte 23,0
|
|
||||||
!byte 23,39
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,1
|
|
||||||
!byte 0,38
|
|
||||||
!byte 1,0
|
|
||||||
!byte 1,39
|
|
||||||
!byte 22,0
|
|
||||||
!byte 22,39
|
|
||||||
!byte 23,1
|
|
||||||
!byte 23,38
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,2
|
|
||||||
!byte 0,37
|
|
||||||
!byte 1,1
|
|
||||||
!byte 1,38
|
|
||||||
!byte 2,0
|
|
||||||
!byte 2,39
|
|
||||||
!byte 21,0
|
|
||||||
!byte 21,39
|
|
||||||
!byte 22,1
|
|
||||||
!byte 22,38
|
|
||||||
!byte 23,2
|
|
||||||
!byte 23,37
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,3
|
|
||||||
!byte 0,36
|
|
||||||
!byte 1,2
|
|
||||||
!byte 1,37
|
|
||||||
!byte 2,1
|
|
||||||
!byte 2,38
|
|
||||||
!byte 3,0
|
|
||||||
!byte 3,39
|
|
||||||
!byte 20,0
|
|
||||||
!byte 20,39
|
|
||||||
!byte 21,1
|
|
||||||
!byte 21,38
|
|
||||||
!byte 22,2
|
|
||||||
!byte 22,37
|
|
||||||
!byte 23,3
|
|
||||||
!byte 23,36
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,4
|
|
||||||
!byte 0,35
|
|
||||||
!byte 1,3
|
|
||||||
!byte 1,36
|
|
||||||
!byte 2,2
|
|
||||||
!byte 2,37
|
|
||||||
!byte 3,1
|
|
||||||
!byte 3,38
|
|
||||||
!byte 4,0
|
|
||||||
!byte 4,39
|
|
||||||
!byte 19,0
|
|
||||||
!byte 19,39
|
|
||||||
!byte 20,1
|
|
||||||
!byte 20,38
|
|
||||||
!byte 21,2
|
|
||||||
!byte 21,37
|
|
||||||
!byte 22,3
|
|
||||||
!byte 22,36
|
|
||||||
!byte 23,4
|
|
||||||
!byte 23,35
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,5
|
|
||||||
!byte 0,34
|
|
||||||
!byte 1,4
|
|
||||||
!byte 1,35
|
|
||||||
!byte 2,3
|
|
||||||
!byte 2,36
|
|
||||||
!byte 3,2
|
|
||||||
!byte 3,37
|
|
||||||
!byte 4,1
|
|
||||||
!byte 4,38
|
|
||||||
!byte 5,0
|
|
||||||
!byte 5,39
|
|
||||||
!byte 18,0
|
|
||||||
!byte 18,39
|
|
||||||
!byte 19,1
|
|
||||||
!byte 19,38
|
|
||||||
!byte 20,2
|
|
||||||
!byte 20,37
|
|
||||||
!byte 21,3
|
|
||||||
!byte 21,36
|
|
||||||
!byte 22,4
|
|
||||||
!byte 22,35
|
|
||||||
!byte 23,5
|
|
||||||
!byte 23,34
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,6
|
|
||||||
!byte 0,33
|
|
||||||
!byte 1,5
|
|
||||||
!byte 1,34
|
|
||||||
!byte 2,4
|
|
||||||
!byte 2,35
|
|
||||||
!byte 3,3
|
|
||||||
!byte 3,36
|
|
||||||
!byte 4,2
|
|
||||||
!byte 4,37
|
|
||||||
!byte 5,1
|
|
||||||
!byte 5,38
|
|
||||||
!byte 6,0
|
|
||||||
!byte 6,39
|
|
||||||
!byte 17,0
|
|
||||||
!byte 17,39
|
|
||||||
!byte 18,1
|
|
||||||
!byte 18,38
|
|
||||||
!byte 19,2
|
|
||||||
!byte 19,37
|
|
||||||
!byte 20,3
|
|
||||||
!byte 20,36
|
|
||||||
!byte 21,4
|
|
||||||
!byte 21,35
|
|
||||||
!byte 22,5
|
|
||||||
!byte 22,34
|
|
||||||
!byte 23,6
|
|
||||||
!byte 23,33
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,7
|
|
||||||
!byte 0,32
|
|
||||||
!byte 1,6
|
|
||||||
!byte 1,33
|
|
||||||
!byte 2,5
|
|
||||||
!byte 2,34
|
|
||||||
!byte 3,4
|
|
||||||
!byte 3,35
|
|
||||||
!byte 4,3
|
|
||||||
!byte 4,36
|
|
||||||
!byte 5,2
|
|
||||||
!byte 5,37
|
|
||||||
!byte 6,1
|
|
||||||
!byte 6,38
|
|
||||||
!byte 7,0
|
|
||||||
!byte 7,39
|
|
||||||
!byte 16,0
|
|
||||||
!byte 16,39
|
|
||||||
!byte 17,1
|
|
||||||
!byte 17,38
|
|
||||||
!byte 18,2
|
|
||||||
!byte 18,37
|
|
||||||
!byte 19,3
|
|
||||||
!byte 19,36
|
|
||||||
!byte 20,4
|
|
||||||
!byte 20,35
|
|
||||||
!byte 21,5
|
|
||||||
!byte 21,34
|
|
||||||
!byte 22,6
|
|
||||||
!byte 22,33
|
|
||||||
!byte 23,7
|
|
||||||
!byte 23,32
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,8
|
|
||||||
!byte 0,31
|
|
||||||
!byte 1,7
|
|
||||||
!byte 1,32
|
|
||||||
!byte 2,6
|
|
||||||
!byte 2,33
|
|
||||||
!byte 3,5
|
|
||||||
!byte 3,34
|
|
||||||
!byte 4,4
|
|
||||||
!byte 4,35
|
|
||||||
!byte 5,3
|
|
||||||
!byte 5,36
|
|
||||||
!byte 6,2
|
|
||||||
!byte 6,37
|
|
||||||
!byte 7,1
|
|
||||||
!byte 7,38
|
|
||||||
!byte 8,0
|
|
||||||
!byte 8,39
|
|
||||||
!byte 15,0
|
|
||||||
!byte 15,39
|
|
||||||
!byte 16,1
|
|
||||||
!byte 16,38
|
|
||||||
!byte 17,2
|
|
||||||
!byte 17,37
|
|
||||||
!byte 18,3
|
|
||||||
!byte 18,36
|
|
||||||
!byte 19,4
|
|
||||||
!byte 19,35
|
|
||||||
!byte 20,5
|
|
||||||
!byte 20,34
|
|
||||||
!byte 21,6
|
|
||||||
!byte 21,33
|
|
||||||
!byte 22,7
|
|
||||||
!byte 22,32
|
|
||||||
!byte 23,8
|
|
||||||
!byte 23,31
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,9
|
|
||||||
!byte 0,30
|
|
||||||
!byte 1,8
|
|
||||||
!byte 1,31
|
|
||||||
!byte 2,7
|
|
||||||
!byte 2,32
|
|
||||||
!byte 3,6
|
|
||||||
!byte 3,33
|
|
||||||
!byte 4,5
|
|
||||||
!byte 4,34
|
|
||||||
!byte 5,4
|
|
||||||
!byte 5,35
|
|
||||||
!byte 6,3
|
|
||||||
!byte 6,36
|
|
||||||
!byte 7,2
|
|
||||||
!byte 7,37
|
|
||||||
!byte 8,1
|
|
||||||
!byte 8,38
|
|
||||||
!byte 9,0
|
|
||||||
!byte 9,39
|
|
||||||
!byte 14,0
|
|
||||||
!byte 14,39
|
|
||||||
!byte 15,1
|
|
||||||
!byte 15,38
|
|
||||||
!byte 16,2
|
|
||||||
!byte 16,37
|
|
||||||
!byte 17,3
|
|
||||||
!byte 17,36
|
|
||||||
!byte 18,4
|
|
||||||
!byte 18,35
|
|
||||||
!byte 19,5
|
|
||||||
!byte 19,34
|
|
||||||
!byte 20,6
|
|
||||||
!byte 20,33
|
|
||||||
!byte 21,7
|
|
||||||
!byte 21,32
|
|
||||||
!byte 22,8
|
|
||||||
!byte 22,31
|
|
||||||
!byte 23,9
|
|
||||||
!byte 23,30
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,10
|
|
||||||
!byte 0,29
|
|
||||||
!byte 1,9
|
|
||||||
!byte 1,30
|
|
||||||
!byte 2,8
|
|
||||||
!byte 2,31
|
|
||||||
!byte 3,7
|
|
||||||
!byte 3,32
|
|
||||||
!byte 4,6
|
|
||||||
!byte 4,33
|
|
||||||
!byte 5,5
|
|
||||||
!byte 5,34
|
|
||||||
!byte 6,4
|
|
||||||
!byte 6,35
|
|
||||||
!byte 7,3
|
|
||||||
!byte 7,36
|
|
||||||
!byte 8,2
|
|
||||||
!byte 8,37
|
|
||||||
!byte 9,1
|
|
||||||
!byte 9,38
|
|
||||||
!byte 10,0
|
|
||||||
!byte 10,39
|
|
||||||
!byte 13,0
|
|
||||||
!byte 13,39
|
|
||||||
!byte 14,1
|
|
||||||
!byte 14,38
|
|
||||||
!byte 15,2
|
|
||||||
!byte 15,37
|
|
||||||
!byte 16,3
|
|
||||||
!byte 16,36
|
|
||||||
!byte 17,4
|
|
||||||
!byte 17,35
|
|
||||||
!byte 18,5
|
|
||||||
!byte 18,34
|
|
||||||
!byte 19,6
|
|
||||||
!byte 19,33
|
|
||||||
!byte 20,7
|
|
||||||
!byte 20,32
|
|
||||||
!byte 21,8
|
|
||||||
!byte 21,31
|
|
||||||
!byte 22,9
|
|
||||||
!byte 22,30
|
|
||||||
!byte 23,10
|
|
||||||
!byte 23,29
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,11
|
|
||||||
!byte 0,28
|
|
||||||
!byte 1,10
|
|
||||||
!byte 1,29
|
|
||||||
!byte 2,9
|
|
||||||
!byte 2,30
|
|
||||||
!byte 3,8
|
|
||||||
!byte 3,31
|
|
||||||
!byte 4,7
|
|
||||||
!byte 4,32
|
|
||||||
!byte 5,6
|
|
||||||
!byte 5,33
|
|
||||||
!byte 6,5
|
|
||||||
!byte 6,34
|
|
||||||
!byte 7,4
|
|
||||||
!byte 7,35
|
|
||||||
!byte 8,3
|
|
||||||
!byte 8,36
|
|
||||||
!byte 9,2
|
|
||||||
!byte 9,37
|
|
||||||
!byte 10,1
|
|
||||||
!byte 10,38
|
|
||||||
!byte 11,0
|
|
||||||
!byte 11,39
|
|
||||||
!byte 12,0
|
|
||||||
!byte 12,39
|
|
||||||
!byte 13,1
|
|
||||||
!byte 13,38
|
|
||||||
!byte 14,2
|
|
||||||
!byte 14,37
|
|
||||||
!byte 15,3
|
|
||||||
!byte 15,36
|
|
||||||
!byte 16,4
|
|
||||||
!byte 16,35
|
|
||||||
!byte 17,5
|
|
||||||
!byte 17,34
|
|
||||||
!byte 18,6
|
|
||||||
!byte 18,33
|
|
||||||
!byte 19,7
|
|
||||||
!byte 19,32
|
|
||||||
!byte 20,8
|
|
||||||
!byte 20,31
|
|
||||||
!byte 21,9
|
|
||||||
!byte 21,30
|
|
||||||
!byte 22,10
|
|
||||||
!byte 22,29
|
|
||||||
!byte 23,11
|
|
||||||
!byte 23,28
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,12
|
|
||||||
!byte 0,27
|
|
||||||
!byte 1,11
|
|
||||||
!byte 1,28
|
|
||||||
!byte 2,10
|
|
||||||
!byte 2,29
|
|
||||||
!byte 3,9
|
|
||||||
!byte 3,30
|
|
||||||
!byte 4,8
|
|
||||||
!byte 4,31
|
|
||||||
!byte 5,7
|
|
||||||
!byte 5,32
|
|
||||||
!byte 6,6
|
|
||||||
!byte 6,33
|
|
||||||
!byte 7,5
|
|
||||||
!byte 7,34
|
|
||||||
!byte 8,4
|
|
||||||
!byte 8,35
|
|
||||||
!byte 9,3
|
|
||||||
!byte 9,36
|
|
||||||
!byte 10,2
|
|
||||||
!byte 10,37
|
|
||||||
!byte 11,1
|
|
||||||
!byte 11,38
|
|
||||||
!byte 12,1
|
|
||||||
!byte 12,38
|
|
||||||
!byte 13,2
|
|
||||||
!byte 13,37
|
|
||||||
!byte 14,3
|
|
||||||
!byte 14,36
|
|
||||||
!byte 15,4
|
|
||||||
!byte 15,35
|
|
||||||
!byte 16,5
|
|
||||||
!byte 16,34
|
|
||||||
!byte 17,6
|
|
||||||
!byte 17,33
|
|
||||||
!byte 18,7
|
|
||||||
!byte 18,32
|
|
||||||
!byte 19,8
|
|
||||||
!byte 19,31
|
|
||||||
!byte 20,9
|
|
||||||
!byte 20,30
|
|
||||||
!byte 21,10
|
|
||||||
!byte 21,29
|
|
||||||
!byte 22,11
|
|
||||||
!byte 22,28
|
|
||||||
!byte 23,12
|
|
||||||
!byte 23,27
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,13
|
|
||||||
!byte 0,26
|
|
||||||
!byte 1,12
|
|
||||||
!byte 1,27
|
|
||||||
!byte 2,11
|
|
||||||
!byte 2,28
|
|
||||||
!byte 3,10
|
|
||||||
!byte 3,29
|
|
||||||
!byte 4,9
|
|
||||||
!byte 4,30
|
|
||||||
!byte 5,8
|
|
||||||
!byte 5,31
|
|
||||||
!byte 6,7
|
|
||||||
!byte 6,32
|
|
||||||
!byte 7,6
|
|
||||||
!byte 7,33
|
|
||||||
!byte 8,5
|
|
||||||
!byte 8,34
|
|
||||||
!byte 9,4
|
|
||||||
!byte 9,35
|
|
||||||
!byte 10,3
|
|
||||||
!byte 10,36
|
|
||||||
!byte 11,2
|
|
||||||
!byte 11,37
|
|
||||||
!byte 12,2
|
|
||||||
!byte 12,37
|
|
||||||
!byte 13,3
|
|
||||||
!byte 13,36
|
|
||||||
!byte 14,4
|
|
||||||
!byte 14,35
|
|
||||||
!byte 15,5
|
|
||||||
!byte 15,34
|
|
||||||
!byte 16,6
|
|
||||||
!byte 16,33
|
|
||||||
!byte 17,7
|
|
||||||
!byte 17,32
|
|
||||||
!byte 18,8
|
|
||||||
!byte 18,31
|
|
||||||
!byte 19,9
|
|
||||||
!byte 19,30
|
|
||||||
!byte 20,10
|
|
||||||
!byte 20,29
|
|
||||||
!byte 21,11
|
|
||||||
!byte 21,28
|
|
||||||
!byte 22,12
|
|
||||||
!byte 22,27
|
|
||||||
!byte 23,13
|
|
||||||
!byte 23,26
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,14
|
|
||||||
!byte 0,25
|
|
||||||
!byte 1,13
|
|
||||||
!byte 1,26
|
|
||||||
!byte 2,12
|
|
||||||
!byte 2,27
|
|
||||||
!byte 3,11
|
|
||||||
!byte 3,28
|
|
||||||
!byte 4,10
|
|
||||||
!byte 4,29
|
|
||||||
!byte 5,9
|
|
||||||
!byte 5,30
|
|
||||||
!byte 6,8
|
|
||||||
!byte 6,31
|
|
||||||
!byte 7,7
|
|
||||||
!byte 7,32
|
|
||||||
!byte 8,6
|
|
||||||
!byte 8,33
|
|
||||||
!byte 9,5
|
|
||||||
!byte 9,34
|
|
||||||
!byte 10,4
|
|
||||||
!byte 10,35
|
|
||||||
!byte 11,3
|
|
||||||
!byte 11,36
|
|
||||||
!byte 12,3
|
|
||||||
!byte 12,36
|
|
||||||
!byte 13,4
|
|
||||||
!byte 13,35
|
|
||||||
!byte 14,5
|
|
||||||
!byte 14,34
|
|
||||||
!byte 15,6
|
|
||||||
!byte 15,33
|
|
||||||
!byte 16,7
|
|
||||||
!byte 16,32
|
|
||||||
!byte 17,8
|
|
||||||
!byte 17,31
|
|
||||||
!byte 18,9
|
|
||||||
!byte 18,30
|
|
||||||
!byte 19,10
|
|
||||||
!byte 19,29
|
|
||||||
!byte 20,11
|
|
||||||
!byte 20,28
|
|
||||||
!byte 21,12
|
|
||||||
!byte 21,27
|
|
||||||
!byte 22,13
|
|
||||||
!byte 22,26
|
|
||||||
!byte 23,14
|
|
||||||
!byte 23,25
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,15
|
|
||||||
!byte 0,24
|
|
||||||
!byte 1,14
|
|
||||||
!byte 1,25
|
|
||||||
!byte 2,13
|
|
||||||
!byte 2,26
|
|
||||||
!byte 3,12
|
|
||||||
!byte 3,27
|
|
||||||
!byte 4,11
|
|
||||||
!byte 4,28
|
|
||||||
!byte 5,10
|
|
||||||
!byte 5,29
|
|
||||||
!byte 6,9
|
|
||||||
!byte 6,30
|
|
||||||
!byte 7,8
|
|
||||||
!byte 7,31
|
|
||||||
!byte 8,7
|
|
||||||
!byte 8,32
|
|
||||||
!byte 9,6
|
|
||||||
!byte 9,33
|
|
||||||
!byte 10,5
|
|
||||||
!byte 10,34
|
|
||||||
!byte 11,4
|
|
||||||
!byte 11,35
|
|
||||||
!byte 12,4
|
|
||||||
!byte 12,35
|
|
||||||
!byte 13,5
|
|
||||||
!byte 13,34
|
|
||||||
!byte 14,6
|
|
||||||
!byte 14,33
|
|
||||||
!byte 15,7
|
|
||||||
!byte 15,32
|
|
||||||
!byte 16,8
|
|
||||||
!byte 16,31
|
|
||||||
!byte 17,9
|
|
||||||
!byte 17,30
|
|
||||||
!byte 18,10
|
|
||||||
!byte 18,29
|
|
||||||
!byte 19,11
|
|
||||||
!byte 19,28
|
|
||||||
!byte 20,12
|
|
||||||
!byte 20,27
|
|
||||||
!byte 21,13
|
|
||||||
!byte 21,26
|
|
||||||
!byte 22,14
|
|
||||||
!byte 22,25
|
|
||||||
!byte 23,15
|
|
||||||
!byte 23,24
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,16
|
|
||||||
!byte 0,23
|
|
||||||
!byte 1,15
|
|
||||||
!byte 1,24
|
|
||||||
!byte 2,14
|
|
||||||
!byte 2,25
|
|
||||||
!byte 3,13
|
|
||||||
!byte 3,26
|
|
||||||
!byte 4,12
|
|
||||||
!byte 4,27
|
|
||||||
!byte 5,11
|
|
||||||
!byte 5,28
|
|
||||||
!byte 6,10
|
|
||||||
!byte 6,29
|
|
||||||
!byte 7,9
|
|
||||||
!byte 7,30
|
|
||||||
!byte 8,8
|
|
||||||
!byte 8,31
|
|
||||||
!byte 9,7
|
|
||||||
!byte 9,32
|
|
||||||
!byte 10,6
|
|
||||||
!byte 10,33
|
|
||||||
!byte 11,5
|
|
||||||
!byte 11,34
|
|
||||||
!byte 12,5
|
|
||||||
!byte 12,34
|
|
||||||
!byte 13,6
|
|
||||||
!byte 13,33
|
|
||||||
!byte 14,7
|
|
||||||
!byte 14,32
|
|
||||||
!byte 15,8
|
|
||||||
!byte 15,31
|
|
||||||
!byte 16,9
|
|
||||||
!byte 16,30
|
|
||||||
!byte 17,10
|
|
||||||
!byte 17,29
|
|
||||||
!byte 18,11
|
|
||||||
!byte 18,28
|
|
||||||
!byte 19,12
|
|
||||||
!byte 19,27
|
|
||||||
!byte 20,13
|
|
||||||
!byte 20,26
|
|
||||||
!byte 21,14
|
|
||||||
!byte 21,25
|
|
||||||
!byte 22,15
|
|
||||||
!byte 22,24
|
|
||||||
!byte 23,16
|
|
||||||
!byte 23,23
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,17
|
|
||||||
!byte 0,22
|
|
||||||
!byte 1,16
|
|
||||||
!byte 1,23
|
|
||||||
!byte 2,15
|
|
||||||
!byte 2,24
|
|
||||||
!byte 3,14
|
|
||||||
!byte 3,25
|
|
||||||
!byte 4,13
|
|
||||||
!byte 4,26
|
|
||||||
!byte 5,12
|
|
||||||
!byte 5,27
|
|
||||||
!byte 6,11
|
|
||||||
!byte 6,28
|
|
||||||
!byte 7,10
|
|
||||||
!byte 7,29
|
|
||||||
!byte 8,9
|
|
||||||
!byte 8,30
|
|
||||||
!byte 9,8
|
|
||||||
!byte 9,31
|
|
||||||
!byte 10,7
|
|
||||||
!byte 10,32
|
|
||||||
!byte 11,6
|
|
||||||
!byte 11,33
|
|
||||||
!byte 12,6
|
|
||||||
!byte 12,33
|
|
||||||
!byte 13,7
|
|
||||||
!byte 13,32
|
|
||||||
!byte 14,8
|
|
||||||
!byte 14,31
|
|
||||||
!byte 15,9
|
|
||||||
!byte 15,30
|
|
||||||
!byte 16,10
|
|
||||||
!byte 16,29
|
|
||||||
!byte 17,11
|
|
||||||
!byte 17,28
|
|
||||||
!byte 18,12
|
|
||||||
!byte 18,27
|
|
||||||
!byte 19,13
|
|
||||||
!byte 19,26
|
|
||||||
!byte 20,14
|
|
||||||
!byte 20,25
|
|
||||||
!byte 21,15
|
|
||||||
!byte 21,24
|
|
||||||
!byte 22,16
|
|
||||||
!byte 22,23
|
|
||||||
!byte 23,17
|
|
||||||
!byte 23,22
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,18
|
|
||||||
!byte 0,21
|
|
||||||
!byte 1,17
|
|
||||||
!byte 1,22
|
|
||||||
!byte 2,16
|
|
||||||
!byte 2,23
|
|
||||||
!byte 3,15
|
|
||||||
!byte 3,24
|
|
||||||
!byte 4,14
|
|
||||||
!byte 4,25
|
|
||||||
!byte 5,13
|
|
||||||
!byte 5,26
|
|
||||||
!byte 6,12
|
|
||||||
!byte 6,27
|
|
||||||
!byte 7,11
|
|
||||||
!byte 7,28
|
|
||||||
!byte 8,10
|
|
||||||
!byte 8,29
|
|
||||||
!byte 9,9
|
|
||||||
!byte 9,30
|
|
||||||
!byte 10,8
|
|
||||||
!byte 10,31
|
|
||||||
!byte 11,7
|
|
||||||
!byte 11,32
|
|
||||||
!byte 12,7
|
|
||||||
!byte 12,32
|
|
||||||
!byte 13,8
|
|
||||||
!byte 13,31
|
|
||||||
!byte 14,9
|
|
||||||
!byte 14,30
|
|
||||||
!byte 15,10
|
|
||||||
!byte 15,29
|
|
||||||
!byte 16,11
|
|
||||||
!byte 16,28
|
|
||||||
!byte 17,12
|
|
||||||
!byte 17,27
|
|
||||||
!byte 18,13
|
|
||||||
!byte 18,26
|
|
||||||
!byte 19,14
|
|
||||||
!byte 19,25
|
|
||||||
!byte 20,15
|
|
||||||
!byte 20,24
|
|
||||||
!byte 21,16
|
|
||||||
!byte 21,23
|
|
||||||
!byte 22,17
|
|
||||||
!byte 22,22
|
|
||||||
!byte 23,18
|
|
||||||
!byte 23,21
|
|
||||||
!byte 255,255
|
|
||||||
!byte 0,19
|
|
||||||
!byte 0,20
|
|
||||||
!byte 1,18
|
|
||||||
!byte 1,21
|
|
||||||
!byte 2,17
|
|
||||||
!byte 2,22
|
|
||||||
!byte 3,16
|
|
||||||
!byte 3,23
|
|
||||||
!byte 4,15
|
|
||||||
!byte 4,24
|
|
||||||
!byte 5,14
|
|
||||||
!byte 5,25
|
|
||||||
!byte 6,13
|
|
||||||
!byte 6,26
|
|
||||||
!byte 7,12
|
|
||||||
!byte 7,27
|
|
||||||
!byte 8,11
|
|
||||||
!byte 8,28
|
|
||||||
!byte 9,10
|
|
||||||
!byte 9,29
|
|
||||||
!byte 10,9
|
|
||||||
!byte 10,30
|
|
||||||
!byte 11,8
|
|
||||||
!byte 11,31
|
|
||||||
!byte 12,8
|
|
||||||
!byte 12,31
|
|
||||||
!byte 13,9
|
|
||||||
!byte 13,30
|
|
||||||
!byte 14,10
|
|
||||||
!byte 14,29
|
|
||||||
!byte 15,11
|
|
||||||
!byte 15,28
|
|
||||||
!byte 16,12
|
|
||||||
!byte 16,27
|
|
||||||
!byte 17,13
|
|
||||||
!byte 17,26
|
|
||||||
!byte 18,14
|
|
||||||
!byte 18,25
|
|
||||||
!byte 19,15
|
|
||||||
!byte 19,24
|
|
||||||
!byte 20,16
|
|
||||||
!byte 20,23
|
|
||||||
!byte 21,17
|
|
||||||
!byte 21,22
|
|
||||||
!byte 22,18
|
|
||||||
!byte 22,21
|
|
||||||
!byte 23,19
|
|
||||||
!byte 23,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 1,19
|
|
||||||
!byte 1,20
|
|
||||||
!byte 2,18
|
|
||||||
!byte 2,21
|
|
||||||
!byte 3,17
|
|
||||||
!byte 3,22
|
|
||||||
!byte 4,16
|
|
||||||
!byte 4,23
|
|
||||||
!byte 5,15
|
|
||||||
!byte 5,24
|
|
||||||
!byte 6,14
|
|
||||||
!byte 6,25
|
|
||||||
!byte 7,13
|
|
||||||
!byte 7,26
|
|
||||||
!byte 8,12
|
|
||||||
!byte 8,27
|
|
||||||
!byte 9,11
|
|
||||||
!byte 9,28
|
|
||||||
!byte 10,10
|
|
||||||
!byte 10,29
|
|
||||||
!byte 11,9
|
|
||||||
!byte 11,30
|
|
||||||
!byte 12,9
|
|
||||||
!byte 12,30
|
|
||||||
!byte 13,10
|
|
||||||
!byte 13,29
|
|
||||||
!byte 14,11
|
|
||||||
!byte 14,28
|
|
||||||
!byte 15,12
|
|
||||||
!byte 15,27
|
|
||||||
!byte 16,13
|
|
||||||
!byte 16,26
|
|
||||||
!byte 17,14
|
|
||||||
!byte 17,25
|
|
||||||
!byte 18,15
|
|
||||||
!byte 18,24
|
|
||||||
!byte 19,16
|
|
||||||
!byte 19,23
|
|
||||||
!byte 20,17
|
|
||||||
!byte 20,22
|
|
||||||
!byte 21,18
|
|
||||||
!byte 21,21
|
|
||||||
!byte 22,19
|
|
||||||
!byte 22,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 2,19
|
|
||||||
!byte 2,20
|
|
||||||
!byte 3,18
|
|
||||||
!byte 3,21
|
|
||||||
!byte 4,17
|
|
||||||
!byte 4,22
|
|
||||||
!byte 5,16
|
|
||||||
!byte 5,23
|
|
||||||
!byte 6,15
|
|
||||||
!byte 6,24
|
|
||||||
!byte 7,14
|
|
||||||
!byte 7,25
|
|
||||||
!byte 8,13
|
|
||||||
!byte 8,26
|
|
||||||
!byte 9,12
|
|
||||||
!byte 9,27
|
|
||||||
!byte 10,11
|
|
||||||
!byte 10,28
|
|
||||||
!byte 11,10
|
|
||||||
!byte 11,29
|
|
||||||
!byte 12,10
|
|
||||||
!byte 12,29
|
|
||||||
!byte 13,11
|
|
||||||
!byte 13,28
|
|
||||||
!byte 14,12
|
|
||||||
!byte 14,27
|
|
||||||
!byte 15,13
|
|
||||||
!byte 15,26
|
|
||||||
!byte 16,14
|
|
||||||
!byte 16,25
|
|
||||||
!byte 17,15
|
|
||||||
!byte 17,24
|
|
||||||
!byte 18,16
|
|
||||||
!byte 18,23
|
|
||||||
!byte 19,17
|
|
||||||
!byte 19,22
|
|
||||||
!byte 20,18
|
|
||||||
!byte 20,21
|
|
||||||
!byte 21,19
|
|
||||||
!byte 21,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 3,19
|
|
||||||
!byte 3,20
|
|
||||||
!byte 4,18
|
|
||||||
!byte 4,21
|
|
||||||
!byte 5,17
|
|
||||||
!byte 5,22
|
|
||||||
!byte 6,16
|
|
||||||
!byte 6,23
|
|
||||||
!byte 7,15
|
|
||||||
!byte 7,24
|
|
||||||
!byte 8,14
|
|
||||||
!byte 8,25
|
|
||||||
!byte 9,13
|
|
||||||
!byte 9,26
|
|
||||||
!byte 10,12
|
|
||||||
!byte 10,27
|
|
||||||
!byte 11,11
|
|
||||||
!byte 11,28
|
|
||||||
!byte 12,11
|
|
||||||
!byte 12,28
|
|
||||||
!byte 13,12
|
|
||||||
!byte 13,27
|
|
||||||
!byte 14,13
|
|
||||||
!byte 14,26
|
|
||||||
!byte 15,14
|
|
||||||
!byte 15,25
|
|
||||||
!byte 16,15
|
|
||||||
!byte 16,24
|
|
||||||
!byte 17,16
|
|
||||||
!byte 17,23
|
|
||||||
!byte 18,17
|
|
||||||
!byte 18,22
|
|
||||||
!byte 19,18
|
|
||||||
!byte 19,21
|
|
||||||
!byte 20,19
|
|
||||||
!byte 20,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 4,19
|
|
||||||
!byte 4,20
|
|
||||||
!byte 5,18
|
|
||||||
!byte 5,21
|
|
||||||
!byte 6,17
|
|
||||||
!byte 6,22
|
|
||||||
!byte 7,16
|
|
||||||
!byte 7,23
|
|
||||||
!byte 8,15
|
|
||||||
!byte 8,24
|
|
||||||
!byte 9,14
|
|
||||||
!byte 9,25
|
|
||||||
!byte 10,13
|
|
||||||
!byte 10,26
|
|
||||||
!byte 11,12
|
|
||||||
!byte 11,27
|
|
||||||
!byte 12,12
|
|
||||||
!byte 12,27
|
|
||||||
!byte 13,13
|
|
||||||
!byte 13,26
|
|
||||||
!byte 14,14
|
|
||||||
!byte 14,25
|
|
||||||
!byte 15,15
|
|
||||||
!byte 15,24
|
|
||||||
!byte 16,16
|
|
||||||
!byte 16,23
|
|
||||||
!byte 17,17
|
|
||||||
!byte 17,22
|
|
||||||
!byte 18,18
|
|
||||||
!byte 18,21
|
|
||||||
!byte 19,19
|
|
||||||
!byte 19,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 5,19
|
|
||||||
!byte 5,20
|
|
||||||
!byte 6,18
|
|
||||||
!byte 6,21
|
|
||||||
!byte 7,17
|
|
||||||
!byte 7,22
|
|
||||||
!byte 8,16
|
|
||||||
!byte 8,23
|
|
||||||
!byte 9,15
|
|
||||||
!byte 9,24
|
|
||||||
!byte 10,14
|
|
||||||
!byte 10,25
|
|
||||||
!byte 11,13
|
|
||||||
!byte 11,26
|
|
||||||
!byte 12,13
|
|
||||||
!byte 12,26
|
|
||||||
!byte 13,14
|
|
||||||
!byte 13,25
|
|
||||||
!byte 14,15
|
|
||||||
!byte 14,24
|
|
||||||
!byte 15,16
|
|
||||||
!byte 15,23
|
|
||||||
!byte 16,17
|
|
||||||
!byte 16,22
|
|
||||||
!byte 17,18
|
|
||||||
!byte 17,21
|
|
||||||
!byte 18,19
|
|
||||||
!byte 18,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 6,19
|
|
||||||
!byte 6,20
|
|
||||||
!byte 7,18
|
|
||||||
!byte 7,21
|
|
||||||
!byte 8,17
|
|
||||||
!byte 8,22
|
|
||||||
!byte 9,16
|
|
||||||
!byte 9,23
|
|
||||||
!byte 10,15
|
|
||||||
!byte 10,24
|
|
||||||
!byte 11,14
|
|
||||||
!byte 11,25
|
|
||||||
!byte 12,14
|
|
||||||
!byte 12,25
|
|
||||||
!byte 13,15
|
|
||||||
!byte 13,24
|
|
||||||
!byte 14,16
|
|
||||||
!byte 14,23
|
|
||||||
!byte 15,17
|
|
||||||
!byte 15,22
|
|
||||||
!byte 16,18
|
|
||||||
!byte 16,21
|
|
||||||
!byte 17,19
|
|
||||||
!byte 17,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 7,19
|
|
||||||
!byte 7,20
|
|
||||||
!byte 8,18
|
|
||||||
!byte 8,21
|
|
||||||
!byte 9,17
|
|
||||||
!byte 9,22
|
|
||||||
!byte 10,16
|
|
||||||
!byte 10,23
|
|
||||||
!byte 11,15
|
|
||||||
!byte 11,24
|
|
||||||
!byte 12,15
|
|
||||||
!byte 12,24
|
|
||||||
!byte 13,16
|
|
||||||
!byte 13,23
|
|
||||||
!byte 14,17
|
|
||||||
!byte 14,22
|
|
||||||
!byte 15,18
|
|
||||||
!byte 15,21
|
|
||||||
!byte 16,19
|
|
||||||
!byte 16,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 8,19
|
|
||||||
!byte 8,20
|
|
||||||
!byte 9,18
|
|
||||||
!byte 9,21
|
|
||||||
!byte 10,17
|
|
||||||
!byte 10,22
|
|
||||||
!byte 11,16
|
|
||||||
!byte 11,23
|
|
||||||
!byte 12,16
|
|
||||||
!byte 12,23
|
|
||||||
!byte 13,17
|
|
||||||
!byte 13,22
|
|
||||||
!byte 14,18
|
|
||||||
!byte 14,21
|
|
||||||
!byte 15,19
|
|
||||||
!byte 15,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 9,19
|
|
||||||
!byte 9,20
|
|
||||||
!byte 10,18
|
|
||||||
!byte 10,21
|
|
||||||
!byte 11,17
|
|
||||||
!byte 11,22
|
|
||||||
!byte 12,17
|
|
||||||
!byte 12,22
|
|
||||||
!byte 13,18
|
|
||||||
!byte 13,21
|
|
||||||
!byte 14,19
|
|
||||||
!byte 14,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 10,19
|
|
||||||
!byte 10,20
|
|
||||||
!byte 11,18
|
|
||||||
!byte 11,21
|
|
||||||
!byte 12,18
|
|
||||||
!byte 12,21
|
|
||||||
!byte 13,19
|
|
||||||
!byte 13,20
|
|
||||||
!byte 255,255
|
|
||||||
!byte 11,19
|
|
||||||
!byte 11,20
|
|
||||||
!byte 12,19
|
|
||||||
!byte 12,20
|
|
||||||
!byte 255,255
|
|
@@ -5,7 +5,7 @@
|
|||||||
!to "build/FX/SPLIT.UD.INTRO",plain
|
!to "build/FX/SPLIT.UD.INTRO",plain
|
||||||
*=$6000
|
*=$6000
|
||||||
|
|
||||||
!source "src/fx/fx.hgr.macros.a"
|
!source "src/fx/macros.a"
|
||||||
|
|
||||||
col1 = $FE
|
col1 = $FE
|
||||||
col2 = $FF
|
col2 = $FF
|
||||||
|
@@ -1,4 +1,6 @@
|
|||||||
!ifndef MACROS {
|
!ifndef _HGRMACROS_ {
|
||||||
|
!source "src/macros.a"
|
||||||
|
|
||||||
!macro HGR_CALC {
|
!macro HGR_CALC {
|
||||||
asl
|
asl
|
||||||
tax
|
tax
|
||||||
@@ -30,5 +32,17 @@
|
|||||||
sta $3d
|
sta $3d
|
||||||
}
|
}
|
||||||
|
|
||||||
MACROS=*
|
!macro SWITCH_TO_MASKS .source, .copy {
|
||||||
|
+LDADDR .source
|
||||||
|
jsr SetSourceMask
|
||||||
|
+LDADDR .copy
|
||||||
|
jsr SetCopyMask
|
||||||
|
}
|
||||||
|
|
||||||
|
!macro INIT_MASKS .source, .copy {
|
||||||
|
+SWITCH_TO_MASKS .source, .copy
|
||||||
|
jsr BuildSourceMaskFromCopyMask
|
||||||
|
}
|
||||||
|
|
||||||
|
_HGRMACROS_=*
|
||||||
}
|
}
|
Reference in New Issue
Block a user