Any ASM experts want to help explain something? I have this (commented out secondary colors):
;
; --- Tables for setting SCB and color tables for color --------
;
    ENTRY logocolor
logocolor   DC.W $00B0
    ;$ DC.W $0AD9
    DC.W $0FF0
    ;$ DC.W $0FFB
    DC.W $0F60
    ;$ DC.W $0FA7
    DC.W $0E10
    ;$ DC.W $0E99
    DC.W $0F0A
    ;$ DC.W $0E7C
    DC.W $000D
    ;$ DC.W $0AAE
    ENTRY scanbyte
scanbyte    DC.B 1
    DC.B 1
    DC.B 1
    DC.B 2
    DC.B 3
    DC.B 4
    DC.B 5
    DC.B 6
And the routine that loads the colors:
InitPalette PROC
    jsr startup 
    ldx #7
lop200  phx Save.
    lda scanbyte,x
    ldy #scrnInfo
    ora [<data],y
    and #$00FF
    inx
    inx
    phx Scan line number.
    pha Scan byte value.
    _SetSCB
    plx Restore counter.
    dex
    bpl lop200
    pea 0
    jsr pushColorTable
    _GetColorTable
    ldx #6
    ldy #10
lop202  phx Save.
    phy Save.
    lda logocolor,y
    ldy #ColorTable+2
    sta [<data],y
    ldy <screenmode
    beq ok202
    ldy #ColorTable+10
    sta [<data],y
    ldy #ColorTable+18
    sta [<data],y
    ldy #ColorTable+26
    sta [<data],y
ok202   phx Table number.
    jsr pushColorTable
    _SetColorTable
    ply Restore.
    plx Restore.
    dey
    dey
    dex
    bne lop202
    brl pop0bytes   no error
    ENDP
and this results in the correct main colors in the palettes:
…
$E19E20: 00 00 B0 00 F0 00 FF 0F 00 00 B0 00 F0 0F FF 0F
$E19E30: 00 00 B0 00 F0 00 FF 0F 00 00 B0 00 F0 0F FF 0F
$E19E40: 00 00 F0 0F F0 00 FF 0F 00 00 F0 0F F0 0F FF 0F
…etc
However, when I uncomment my secondary colors, and try loading them into the ColorTable, say by adding:
ldy #ColorTable+3
    sta [<data],y
…I'm shifting things around in ways I'm not expecting. I need to have the secondary colors loaded immediately following the primary like:
…
$E19E20: 00 00 B0 00 D9 0A FF 0F 00 00 B0 00 D9 0A FF 0F
…
Looking at this a bit more, I mapped out what's going on (think) in the code comments. I'm completely new to asm…
ldx #6 ;I thnink this is keeping track of each line of the logo
    ldy #22 ;this used to be 10, but we have 6 more colors
lop202  phx Save.
    phy Save.
    ;each time we loop back y is decreased by 2, x by 1
    lda logocolor,y ; Load defined color value in the table, using y as index into a
    ldy #ColorTable+2 ; Load value of ColorTable + 2
    sta [<data],y ; Store read defined color
    ;
    ;--- here we need some operation to get the next color in the table -----
    ;
    ldy #ColorTable+4 ; then load value of ColorTable + 4
    sta [<data],y ; Store read defined color from our imagary operation
    ldy <screenmode
    beq ok202
    
    ;640 mode??? Yes, most certainly is for 640 mode. Need to add the second color here as well.
    ldy #ColorTable+10
    sta [<data],y
    ldy #ColorTable+18
    sta [<data],y
    ldy #ColorTable+26
    sta [<data],y
ok202   phx Table number.
    jsr pushColorTable
    _SetColorTable
    ply Restore.
    plx Restore.
    dey
    dey
    dex
    bne lop202
    brl pop0bytes   no error
    ENDP
But I need something in the ;--- here we need some operation to get the next color in the table ----- space…
but I'm out of registers…
So what should I do?
Or does this all need to be refactored for efficiency instead of trying to jam in loading another value off the table?