diff --git a/src/fx/fx.gr.fizzle.a b/src/fx/fx.gr.fizzle.a index ae27edd82..b184275fc 100644 --- a/src/fx/fx.gr.fizzle.a +++ b/src/fx/fx.gr.fizzle.a @@ -49,7 +49,7 @@ dst sta $FD00, y ; SMC high byte bmi exit txa bne loop1 - lda (src+1), y + lda (src+1), y ; last lousy byte sta (dst+1), y exit rts } diff --git a/src/fx/fx.hgr.palette.fizzle.a b/src/fx/fx.hgr.palette.fizzle.a index 886151e1b..d946f0f5a 100644 --- a/src/fx/fx.hgr.palette.fizzle.a +++ b/src/fx/fx.hgr.palette.fizzle.a @@ -1,100 +1,66 @@ ;license:MIT -;(c) 2017-2019 by qkumba and 4am +;(c) 2017-2021 by qkumba/4am/John Brooks !cpu 6502 !to "build/FX.INDEXED/PALETTE.FIZZLE",plain *=$6000 -copymask_even = $f0 -copymask_odd = $f1 -counter = $f2 + !source "src/fx/macros.a" ; no code in here - !source "src/fx/macros.a" - - ;init masks - - lda #%11010101 - sta copymask_even - lda #%10101010 - sta copymask_odd - lda #2 - sta counter - -@outerloop - ;init RNG - - ldx #1 - stx @rnd1+1 + ldx #(end-start+1) ; copy LFSR code to zero page +- ldy start-2, x + sty $FE, x 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 + bne - + bit