mirror of
https://github.com/digarok/festro.git
synced 2024-09-27 13:55:58 +00:00
added "K" effect, but hardcoded in places
This commit is contained in:
parent
54f8733eb6
commit
1e9e2e3ea6
354
festro.s
354
festro.s
@ -44,22 +44,57 @@ DemoSubroutineTable
|
|||||||
dw HandleDigawrite
|
dw HandleDigawrite
|
||||||
dw HandleProdrop
|
dw HandleProdrop
|
||||||
dw HandleSwipeWrite
|
dw HandleSwipeWrite
|
||||||
dw HandleProdrop
|
dw HandleLoResInit
|
||||||
|
dw HandleFireState1
|
||||||
|
dw HandleFireStateK
|
||||||
|
dw HandleFireState1
|
||||||
|
dw HandleFireStateK
|
||||||
dw HandleFireState1
|
dw HandleFireState1
|
||||||
dw P8Quit
|
dw P8Quit
|
||||||
|
|
||||||
HandleFireState1
|
HandleLoResInit
|
||||||
sta LORES
|
sta LORES
|
||||||
jsr CLRLORES
|
jsr ClearLoRes
|
||||||
:loop jsr FirePass
|
inc GDemoState
|
||||||
bra :loop
|
jmp DemoMain
|
||||||
|
|
||||||
FirePass
|
HandleFireState1
|
||||||
|
ldx #30
|
||||||
|
:loop jsr FirePass
|
||||||
|
dex
|
||||||
|
bne :loop
|
||||||
|
inc GDemoState
|
||||||
|
jmp DemoMain
|
||||||
|
|
||||||
|
HandleFireStateK
|
||||||
|
ldx #$20
|
||||||
|
:loop jsr FirePass2
|
||||||
|
dex
|
||||||
|
bne :loop
|
||||||
|
inc GDemoState
|
||||||
|
jmp DemoMain
|
||||||
|
|
||||||
|
|
||||||
|
FirePass pha
|
||||||
|
phx
|
||||||
jsr MakeHeat
|
jsr MakeHeat
|
||||||
jsr Scroll8
|
jsr Scroll8
|
||||||
jsr Average8
|
jsr Average8
|
||||||
jsr DrawBufFullScreen
|
jsr DrawBufFullScreen
|
||||||
|
plx
|
||||||
|
pla
|
||||||
rts
|
rts
|
||||||
|
FirePass2 pha
|
||||||
|
phx
|
||||||
|
jsr MakeHeat
|
||||||
|
jsr Scroll8
|
||||||
|
jsr DrawKMask
|
||||||
|
jsr Average8
|
||||||
|
jsr DrawBufFullScreen
|
||||||
|
plx
|
||||||
|
pla
|
||||||
|
rts
|
||||||
|
|
||||||
|
|
||||||
**************************************************
|
**************************************************
|
||||||
* Color look up table.
|
* Color look up table.
|
||||||
@ -104,12 +139,12 @@ ColorIdxMono
|
|||||||
dfb #$FF ; WHITE / WHITE
|
dfb #$FF ; WHITE / WHITE
|
||||||
dfb #$FF ; WHITE / WHITE
|
dfb #$FF ; WHITE / WHITE
|
||||||
|
|
||||||
WIDTH equ #40
|
FBufWidth equ #40
|
||||||
HEIGHT equ #24
|
FBufHeight equ #24
|
||||||
ds \
|
ds \
|
||||||
FBUF ds #WIDTH*#HEIGHT+#WIDTH ;extra line gets coals
|
FBUF ds #FBufWidth*#FBufHeight+#FBufWidth ;extra line gets coals
|
||||||
FBUFLEN equ #WIDTH*#HEIGHT
|
FBufLen equ #FBufWidth*#FBufHeight
|
||||||
LASTLINE equ #WIDTH*#HEIGHT-#WIDTH+FBUF
|
FBufLastLine equ #FBufWidth*#FBufHeight-#FBufWidth+FBUF
|
||||||
|
|
||||||
|
|
||||||
**************************************************
|
**************************************************
|
||||||
@ -125,10 +160,10 @@ HandleDigawrite
|
|||||||
]writeLoop
|
]writeLoop
|
||||||
lda _digawriteString,x
|
lda _digawriteString,x
|
||||||
beq ]writeDone
|
beq ]writeDone
|
||||||
sta Lo11+17,x
|
sta Lo11+10,x
|
||||||
inx
|
inx
|
||||||
phx
|
phx
|
||||||
lda #20
|
lda #18
|
||||||
tax
|
tax
|
||||||
tay
|
tay
|
||||||
jsr SimpleWait
|
jsr SimpleWait
|
||||||
@ -142,7 +177,7 @@ HandleDigawrite
|
|||||||
|
|
||||||
inc GDemoState
|
inc GDemoState
|
||||||
jmp DemoMain
|
jmp DemoMain
|
||||||
_digawriteString asc "DiGAROK",00
|
_digawriteString asc "--==>> DiGAROK <<==--",00
|
||||||
** Dropper routine - not specific to ProDrop per se
|
** Dropper routine - not specific to ProDrop per se
|
||||||
** - uses DSEG0
|
** - uses DSEG0
|
||||||
HandleProdrop
|
HandleProdrop
|
||||||
@ -236,7 +271,7 @@ HandleProdrop
|
|||||||
|
|
||||||
|
|
||||||
:prodropUpdateLoop
|
:prodropUpdateLoop
|
||||||
lda #20
|
lda #16
|
||||||
tax
|
tax
|
||||||
tay
|
tay
|
||||||
jsr SimpleWait
|
jsr SimpleWait
|
||||||
@ -364,7 +399,7 @@ HandleSwipeWrite
|
|||||||
sta _swipeMaxWidth ; set max width
|
sta _swipeMaxWidth ; set max width
|
||||||
lda #5
|
lda #5
|
||||||
sta _swipeXOffset ; set x position
|
sta _swipeXOffset ; set x position
|
||||||
lda #6
|
lda #3
|
||||||
sta _swipeYOffset ; set y position
|
sta _swipeYOffset ; set y position
|
||||||
|
|
||||||
** DA LOOP!!! does one full pass of all lines.. this is the OUTERMOST LOOP
|
** DA LOOP!!! does one full pass of all lines.. this is the OUTERMOST LOOP
|
||||||
@ -456,11 +491,17 @@ _swipeXOffset db #$0 ; screen offset for placement
|
|||||||
_swipeYOffset db #$0 ; screen offset for placement
|
_swipeYOffset db #$0 ; screen offset for placement
|
||||||
|
|
||||||
|
|
||||||
FireTextHeight equ #12 ; buffer height
|
FireTextHeight equ #18 ; buffer height
|
||||||
FireTextWidth equ #34 ; buffer width
|
FireTextWidth equ #34 ; buffer width
|
||||||
|
|
||||||
ds \
|
ds \
|
||||||
FireText asc " _______ ______ ",00
|
FireText asc " __ __ ",00
|
||||||
|
asc " / / ___ / /______ ",00
|
||||||
|
asc " / / / _ \/ __/ ___/ ",00
|
||||||
|
asc " / /___/ __/ /_(__ ) ",00
|
||||||
|
asc "/_____/\___/\__/____/ ",00
|
||||||
|
asc " ",00
|
||||||
|
asc " _______ ______ ",00
|
||||||
asc " / ____(_)_______ / _/ /_",00
|
asc " / ____(_)_______ / _/ /_",00
|
||||||
asc " / /_ / / ___/ _ \ / // __/",00
|
asc " / /_ / / ___/ _ \ / // __/",00
|
||||||
asc " / __/ / / / / __/ _/ // /_ ",00
|
asc " / __/ / / / / __/ _/ // /_ ",00
|
||||||
@ -473,6 +514,96 @@ FireText asc " _______ ______ ",00
|
|||||||
asc " \____/ .___(_) ",00
|
asc " \____/ .___(_) ",00
|
||||||
asc " /_/ ",00
|
asc " /_/ ",00
|
||||||
|
|
||||||
|
*********************
|
||||||
|
* DEMO ONLY!
|
||||||
|
* x=10,y=10
|
||||||
|
*********************
|
||||||
|
_kOffset equ #11
|
||||||
|
|
||||||
|
DrawKMask ldx #0
|
||||||
|
:loop lda _kWidth*0+_spriteK,x
|
||||||
|
beq :skip1
|
||||||
|
cmp #1
|
||||||
|
bne :notRand1
|
||||||
|
jsr GetRandLow
|
||||||
|
:notRand1 sta FBufWidth*6+FBUF+_kOffset,x
|
||||||
|
:skip1 lda _kWidth*1+_spriteK,x
|
||||||
|
beq :skip2
|
||||||
|
cmp #1
|
||||||
|
bne :notRand2
|
||||||
|
jsr GetRandLow
|
||||||
|
:notRand2 sta FBufWidth*7+FBUF+_kOffset,x
|
||||||
|
:skip2 lda _kWidth*2+_spriteK,x
|
||||||
|
beq :skip3
|
||||||
|
sta FBufWidth*8+FBUF+_kOffset,x
|
||||||
|
:skip3 lda _kWidth*3+_spriteK,x
|
||||||
|
beq :skip4
|
||||||
|
cmp #1
|
||||||
|
bne :notRand4
|
||||||
|
jsr GetRandLow
|
||||||
|
:notRand4 sta FBufWidth*9+FBUF+_kOffset,x
|
||||||
|
:skip4 lda _kWidth*4+_spriteK,x
|
||||||
|
beq :skip5
|
||||||
|
sta FBufWidth*10+FBUF+_kOffset,x
|
||||||
|
:skip5 lda _kWidth*5+_spriteK,x
|
||||||
|
beq :skip6
|
||||||
|
sta FBufWidth*11+FBUF+_kOffset,x
|
||||||
|
:skip6 lda _kWidth*6+_spriteK,x
|
||||||
|
beq :skip7
|
||||||
|
sta FBufWidth*12+FBUF+_kOffset,x
|
||||||
|
:skip7 lda _kWidth*7+_spriteK,x
|
||||||
|
beq :skip8
|
||||||
|
sta FBufWidth*13+FBUF+_kOffset,x
|
||||||
|
:skip8 lda _kWidth*8+_spriteK,x
|
||||||
|
beq :skip9
|
||||||
|
sta FBufWidth*14+FBUF+_kOffset,x
|
||||||
|
:skip9 lda _kWidth*9+_spriteK,x
|
||||||
|
beq :skip10
|
||||||
|
sta FBufWidth*15+FBUF+_kOffset,x
|
||||||
|
:skip10 lda _kWidth*10+_spriteK,x
|
||||||
|
beq :skip11
|
||||||
|
sta FBufWidth*16+FBUF+_kOffset,x
|
||||||
|
:skip11 lda _kWidth*11+_spriteK,x
|
||||||
|
beq :skip12
|
||||||
|
sta FBufWidth*17+FBUF+_kOffset,x
|
||||||
|
:skip12 lda _kWidth*12+_spriteK,x
|
||||||
|
beq :skip13
|
||||||
|
sta FBufWidth*18+FBUF+_kOffset,x
|
||||||
|
:skip13 lda _kWidth*13+_spriteK,x
|
||||||
|
beq :skip14
|
||||||
|
sta FBufWidth*19+FBUF+_kOffset,x
|
||||||
|
:skip14 lda _kWidth*14+_spriteK,x
|
||||||
|
beq :skip15
|
||||||
|
sta FBufWidth*20+FBUF+_kOffset,x
|
||||||
|
:skip15 lda _kWidth*15+_spriteK,x
|
||||||
|
beq :skip16
|
||||||
|
sta FBufWidth*21+FBUF+_kOffset,x
|
||||||
|
:skip16
|
||||||
|
|
||||||
|
inx
|
||||||
|
cpx #_kWidth
|
||||||
|
beq :done
|
||||||
|
jmp :loop
|
||||||
|
:done
|
||||||
|
rts
|
||||||
|
_kWidth equ #18
|
||||||
|
_kHeight equ #16
|
||||||
|
_spriteK db $01,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01,$01,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$0F,$01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$0F,$01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00
|
||||||
|
db $01,$01,$0F,$0F,$0F,$0F,$01,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01,$01,$00
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$0F,$0F,$0F,$0F,$0F,$01,$00,$00,$00,$00,$01,$0F,$0F,$0F,$0F,$0F,$01
|
||||||
|
db $01,$01,$01,$01,$01,$01,$01,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01
|
||||||
|
|
||||||
**************************************************
|
**************************************************
|
||||||
* Called by DemoMain
|
* Called by DemoMain
|
||||||
@ -514,23 +645,40 @@ GetRand
|
|||||||
|
|
||||||
_randomByte db 0
|
_randomByte db 0
|
||||||
|
|
||||||
|
GetRandLow
|
||||||
**************************************************
|
lda _randomByte2
|
||||||
* Awesome PRNG thx to White Flame (aka David Holz)
|
|
||||||
**************************************************
|
|
||||||
GetRandHot
|
|
||||||
lda RND
|
|
||||||
beq :doEor
|
beq :doEor
|
||||||
asl
|
asl
|
||||||
bcc :noEor
|
bcc :noEor
|
||||||
:doEor eor #$1d
|
:doEor eor #$1d
|
||||||
:noEor sta RND
|
:noEor sta _randomByte2
|
||||||
|
cmp #$80
|
||||||
|
bcs :hot
|
||||||
|
lda #$0
|
||||||
|
rts
|
||||||
|
:hot lda #$04
|
||||||
|
rts
|
||||||
|
|
||||||
|
_randomByte2 db 0
|
||||||
|
|
||||||
|
|
||||||
|
**************************************************
|
||||||
|
* Fire stoker.. returns 0 or F
|
||||||
|
**************************************************
|
||||||
|
GetRandHot
|
||||||
|
lda _rndHot
|
||||||
|
beq :doEor
|
||||||
|
asl
|
||||||
|
bcc :noEor
|
||||||
|
:doEor eor #$1d
|
||||||
|
:noEor sta _rndHot
|
||||||
cmp #$90 ; FIRE RATIO
|
cmp #$90 ; FIRE RATIO
|
||||||
bcs :hot
|
bcs :hot
|
||||||
:not lda #$0f
|
:not lda #$0f
|
||||||
rts
|
rts
|
||||||
:hot lda #$00
|
:hot lda #$00
|
||||||
rts
|
rts
|
||||||
|
_rndHot db 0
|
||||||
|
|
||||||
**************************************************
|
**************************************************
|
||||||
* Very simple routine to lay down a line where
|
* Very simple routine to lay down a line where
|
||||||
@ -538,17 +686,17 @@ GetRandHot
|
|||||||
**************************************************
|
**************************************************
|
||||||
MakeHeat
|
MakeHeat
|
||||||
lda #0
|
lda #0
|
||||||
sta LASTLINE ;FORCE CORNERS BLACK
|
sta FBufLastLine ;FORCE CORNERS BLACK
|
||||||
sta LASTLINE+#39
|
sta FBufLastLine+#39
|
||||||
;EXTRA LINE
|
;EXTRA LINE
|
||||||
sta LASTLINE+#WIDTH ;FORCE CORNERS BLACK
|
sta FBufLastLine+#FBufWidth ;FORCE CORNERS BLACK
|
||||||
sta LASTLINE+#WIDTH+#39
|
sta FBufLastLine+#FBufWidth+#39
|
||||||
|
|
||||||
ldx #WIDTH-2
|
ldx #FBufWidth-2
|
||||||
:mloop jsr GetRandHot
|
:mloop jsr GetRandHot
|
||||||
sta LASTLINE,x
|
sta FBufLastLine,x
|
||||||
jsr GetRandHot
|
jsr GetRandHot
|
||||||
sta LASTLINE+#WIDTH,x
|
sta FBufLastLine+#FBufWidth,x
|
||||||
dex
|
dex
|
||||||
bne :mloop
|
bne :mloop
|
||||||
|
|
||||||
@ -559,9 +707,9 @@ MakeHeat
|
|||||||
**************************************************
|
**************************************************
|
||||||
Scroll8
|
Scroll8
|
||||||
*set source
|
*set source
|
||||||
lda #FBUF+WIDTH
|
lda #FBUF+FBufWidth
|
||||||
sta srcPtr
|
sta srcPtr
|
||||||
lda #>FBUF+WIDTH
|
lda #>FBUF+FBufWidth
|
||||||
sta srcPtr+1
|
sta srcPtr+1
|
||||||
|
|
||||||
*set destination
|
*set destination
|
||||||
@ -572,7 +720,7 @@ Scroll8
|
|||||||
|
|
||||||
:movfwd ldy #0
|
:movfwd ldy #0
|
||||||
ldx #0
|
ldx #0
|
||||||
cpx #>FBUFLEN-WIDTH
|
cpx #>FBufLen-FBufWidth
|
||||||
beq :frag
|
beq :frag
|
||||||
:page lda (srcPtr),y
|
:page lda (srcPtr),y
|
||||||
sta (dstPtr),y
|
sta (dstPtr),y
|
||||||
@ -581,9 +729,9 @@ Scroll8
|
|||||||
inc srcPtr+1
|
inc srcPtr+1
|
||||||
inc dstPtr+1
|
inc dstPtr+1
|
||||||
inx
|
inx
|
||||||
cpx #>FBUFLEN-WIDTH
|
cpx #>FBufLen-FBufWidth
|
||||||
bne :page
|
bne :page
|
||||||
:frag cpy #FBUFLEN-WIDTH
|
:frag cpy #FBufLen-FBufWidth
|
||||||
beq :doneCopy
|
beq :doneCopy
|
||||||
lda (srcPtr),y
|
lda (srcPtr),y
|
||||||
sta (dstPtr),y
|
sta (dstPtr),y
|
||||||
@ -611,14 +759,14 @@ Average8
|
|||||||
lda #>FBUF+#1
|
lda #>FBUF+#1
|
||||||
sta srcPtrR+1
|
sta srcPtrR+1
|
||||||
|
|
||||||
lda #FBUF+#WIDTH
|
lda #FBUF+#FBufWidth
|
||||||
sta srcPtrD
|
sta srcPtrD
|
||||||
lda #>FBUF+#WIDTH
|
lda #>FBUF+#FBufWidth
|
||||||
sta srcPtrD+1
|
sta srcPtrD+1
|
||||||
|
|
||||||
ldx #0 ; lines
|
ldx #0 ; lines
|
||||||
|
|
||||||
:avgLine ldy #WIDTH-1
|
:avgLine ldy #FBufWidth-1
|
||||||
:lineLoop
|
:lineLoop
|
||||||
clc
|
clc
|
||||||
lda (srcPtr),y ;0
|
lda (srcPtr),y ;0
|
||||||
@ -632,7 +780,7 @@ Average8
|
|||||||
:skipDec sta (srcPtr),y ;0
|
:skipDec sta (srcPtr),y ;0
|
||||||
dey
|
dey
|
||||||
bne :lineLoop
|
bne :lineLoop
|
||||||
cpx #HEIGHT
|
cpx #FBufHeight
|
||||||
beq :doneLines
|
beq :doneLines
|
||||||
inx ;next line
|
inx ;next line
|
||||||
|
|
||||||
@ -667,7 +815,7 @@ Average8
|
|||||||
:bottomPixel ;add to bottom line pointer
|
:bottomPixel ;add to bottom line pointer
|
||||||
lda srcPtrD
|
lda srcPtrD
|
||||||
clc
|
clc
|
||||||
adc #WIDTH
|
adc #FBufWidth
|
||||||
sta srcPtrD
|
sta srcPtrD
|
||||||
lda srcPtrD+1
|
lda srcPtrD+1
|
||||||
adc #0
|
adc #0
|
||||||
@ -677,6 +825,34 @@ Average8
|
|||||||
:doneLines rts
|
:doneLines rts
|
||||||
|
|
||||||
|
|
||||||
|
ClearLoRes ldx #40
|
||||||
|
:loop dex
|
||||||
|
stz Lo01,x
|
||||||
|
stz Lo02,x
|
||||||
|
stz Lo03,x
|
||||||
|
stz Lo04,x
|
||||||
|
stz Lo05,x
|
||||||
|
stz Lo06,x
|
||||||
|
stz Lo07,x
|
||||||
|
stz Lo08,x
|
||||||
|
stz Lo09,x
|
||||||
|
stz Lo10,x
|
||||||
|
stz Lo11,x
|
||||||
|
stz Lo12,x
|
||||||
|
stz Lo13,x
|
||||||
|
stz Lo14,x
|
||||||
|
stz Lo15,x
|
||||||
|
stz Lo16,x
|
||||||
|
stz Lo17,x
|
||||||
|
stz Lo18,x
|
||||||
|
stz Lo19,x
|
||||||
|
stz Lo20,x
|
||||||
|
stz Lo21,x
|
||||||
|
stz Lo22,x
|
||||||
|
stz Lo23,x
|
||||||
|
stz Lo24,x
|
||||||
|
bne :loop
|
||||||
|
rts
|
||||||
|
|
||||||
**************************************************
|
**************************************************
|
||||||
* Draw entire buffer on screen
|
* Draw entire buffer on screen
|
||||||
@ -687,191 +863,191 @@ DrawBufFullScreen
|
|||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo01,x
|
sta Lo01,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop0
|
bne :loop0
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop1 ldy WIDTH*1+FBUF,x
|
:loop1 ldy FBufWidth*1+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo02,x
|
sta Lo02,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop1
|
bne :loop1
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop2 ldy WIDTH*2+FBUF,x
|
:loop2 ldy FBufWidth*2+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo03,x
|
sta Lo03,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop2
|
bne :loop2
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop3 ldy WIDTH*3+FBUF,x
|
:loop3 ldy FBufWidth*3+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo04,x
|
sta Lo04,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop3
|
bne :loop3
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop4 ldy WIDTH*4+FBUF,x
|
:loop4 ldy FBufWidth*4+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo05,x
|
sta Lo05,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop4
|
bne :loop4
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop5 ldy WIDTH*5+FBUF,x
|
:loop5 ldy FBufWidth*5+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo06,x
|
sta Lo06,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop5
|
bne :loop5
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop6 ldy WIDTH*6+FBUF,x
|
:loop6 ldy FBufWidth*6+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo07,x
|
sta Lo07,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop6
|
bne :loop6
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop7 ldy WIDTH*7+FBUF,x
|
:loop7 ldy FBufWidth*7+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo08,x
|
sta Lo08,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop7
|
bne :loop7
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop8 ldy WIDTH*8+FBUF,x
|
:loop8 ldy FBufWidth*8+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo09,x
|
sta Lo09,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop8
|
bne :loop8
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop9 ldy WIDTH*9+FBUF,x
|
:loop9 ldy FBufWidth*9+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo10,x
|
sta Lo10,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop9
|
bne :loop9
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop10 ldy WIDTH*#10+FBUF,x
|
:loop10 ldy FBufWidth*#10+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo11,x
|
sta Lo11,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop10
|
bne :loop10
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop11 ldy WIDTH*#11+FBUF,x
|
:loop11 ldy FBufWidth*#11+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo12,x
|
sta Lo12,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop11
|
bne :loop11
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop12 ldy WIDTH*#12+FBUF,x
|
:loop12 ldy FBufWidth*#12+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo13,x
|
sta Lo13,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop12
|
bne :loop12
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop13 ldy WIDTH*#13+FBUF,x
|
:loop13 ldy FBufWidth*#13+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo14,x
|
sta Lo14,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop13
|
bne :loop13
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop14 ldy WIDTH*#14+FBUF,x
|
:loop14 ldy FBufWidth*#14+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo15,x
|
sta Lo15,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop14
|
bne :loop14
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop15 ldy WIDTH*#15+FBUF,x
|
:loop15 ldy FBufWidth*#15+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo16,x
|
sta Lo16,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop15
|
bne :loop15
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop16 ldy WIDTH*#16+FBUF,x
|
:loop16 ldy FBufWidth*#16+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo17,x
|
sta Lo17,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop16
|
bne :loop16
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop17 ldy WIDTH*#17+FBUF,x
|
:loop17 ldy FBufWidth*#17+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo18,x
|
sta Lo18,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop17
|
bne :loop17
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop18 ldy WIDTH*#18+FBUF,x
|
:loop18 ldy FBufWidth*#18+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo19,x
|
sta Lo19,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop18
|
bne :loop18
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop19 ldy WIDTH*#19+FBUF,x
|
:loop19 ldy FBufWidth*#19+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo20,x
|
sta Lo20,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop19
|
bne :loop19
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop20 ldy WIDTH*#20+FBUF,x
|
:loop20 ldy FBufWidth*#20+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo21,x
|
sta Lo21,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop20
|
bne :loop20
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop21 ldy WIDTH*#21+FBUF,x
|
:loop21 ldy FBufWidth*#21+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo22,x
|
sta Lo22,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop21
|
bne :loop21
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop22 ldy WIDTH*#22+FBUF,x
|
:loop22 ldy FBufWidth*#22+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo23,x
|
sta Lo23,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop22
|
bne :loop22
|
||||||
|
|
||||||
ldx #$0
|
ldx #$0
|
||||||
:loop23 ldy WIDTH*#23+FBUF,x
|
:loop23 ldy FBufWidth*#23+FBUF,x
|
||||||
lda ColorIdx,y
|
lda ColorIdx,y
|
||||||
sta Lo24,x
|
sta Lo24,x
|
||||||
inx
|
inx
|
||||||
cpx #WIDTH
|
cpx #FBufWidth
|
||||||
bne :loop23
|
bne :loop23
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user