Da quel che ho capito, vuoi solo cambiare il contenuto degli sprite con altro contenuto. E' certamente possibile, basta cambiare le locazioni di memoria da 2040 a 2047 (rispettivamente per gli sprite 0-7). Nel tuo listato, carichi i dati grafici di alcuni sprite da 12800 a 12800+511, e poi esegui una serie di poke nelle locazioni dette sopra. per calcolare dove dove puntino, bisogna dividere la locazione per 64 (gli sprite devono essere sempre allineati a 64, ovvero devono essere in un indirizzo divisibile per 64 senza resto). Nel caso di 12800, 12800 / 64 fa 200. E infatti nel listato c'è una poke 2040,200.
Ora, nel listato tu carichi il secondo set di immagini per glli sprite SOPRA alla precedente. Questo è il motivo per cui non riesci a visualizzarli. Devi caricarli oltre ai precedenti, e POKEare la locazione corretta in 2040-2047.
Tutto il discorso sopra fila ed è bello, ma non stai tenendo conto di come la memoria del commodore 64 funziona, ed andrai inevitabilmente incontro a problemi se prima non ti studi le basi. E chatgpt, specie con le macchine d'epoca, spara delle castronate incredibili. Purtroppo, non ci sono scorciatoie.
Consiglio di recuperarsi (da archive.org) il manuale del commdoore 64, anche in italiano, che spiega abbastanza bene le basi a tal proposito, e in secondo luogo, la programmer's reference guide. Alcuni altri siti sono molto utili, come
https://sta.c64.org/cbm64mem.html, che spiega cosa fanno le varie locazioni di memoria del 64.
C'è tanto da studiare, e passare dal basic v2 rende le cose più complesse, ma con buona volontà si può imparare. In bocca al lupo!
P.S. Consiglio anche l'incredibile sito
https://petscii.krissz.hu/ per la creazione e conversione in file di dati (utilizzabili anche in basic) di sprite per C64, oltre che creazione di caratteri ridefiniti e schermate.