Ich habe die immer vertauscht abgespeichert,
dadurch wird aus:
00 0a 01 07
dann
a0 71
es ist dann wie bei Squidward, alles über $0f wird sowieso ignoriert. Man hat nur den Vorteil, dass man sich nix "merken" muss. Ich habe dann unten mal den Quelltext für 500/1000 Farben angehangen. Habe es ohne Makros gelöst, sollte also in jedem Assembler funktionieren.
Brainfuck
copy_colordata:
ldx #$7d
ldy #$fa
-
lda colordata+(0*$7d)-1,x
sta $d800+(0*$fa)-1,y
lsr
lsr
lsr
lsr
dey
sta $d800+(0*$fa)-1,y
iny
lda colordata+(1*$7d)-1,x
sta $d800+(1*$fa)-1,y
lsr
lsr
lsr
lsr
dey
sta $d800+(1*$fa)-1,y
iny
lda colordata+(2*$7d)-1,x
sta $d800+(2*$fa)-1,y
lsr
lsr
lsr
lsr
dey
sta $d800+(2*$fa)-1,y
iny
lda colordata+(3*$7d)-1,x
sta $d800+(3*$fa)-1,y
lsr
lsr
lsr
lsr
dey
sta $d800+(3*$fa)-1,y
dey
dex
bne -
rts
Alles anzeigen
Edit: War mal wieder zu langsam ... galt natürlich noch für die Ursprungsfrage.