Como Carlos te ha referido, el color que te falta aplicar es el de la memoria de color. Lo usual, en cuanto a la asignación de memoria de color, es usar una tabla en la que almacenes los colores que usaras en la pantalla, si es que son muy variados, o bien cambiar el color solo en las partes de tu imagen que lo requieren. Puesto que cada pantalla es de 1000 caracteres (40x25), tienes que asignar otros tantos bytes a cada posición para el color.
Así que, digamos que tienes las siguientes premisas. La memoria de color se mantiene fija para todos los bancos, es decir; a partir de la dirección $D800 y hasta $DBFF (sí, esos son 1024 bytes, pero solo se usan 1000). Por otro lado tu memoria de pantalla está en la posición por defecto, $0400.
BGNCPY LDY #$00 ;HACEMOS UNA COPIA DESDE LA TABLA (4 PAGINAS)
LDX #$04 ;EL REGISTRO X CONTIENE EL TOTAL DE PÁGINAS A
BEQ CPYRMNBY ;COPIAR (CADA PÁGINA ES IGUAL A 256 BYTES)
LDA <TBLCOLOR
STA $FB
LDA >TBLCOLOR
STA $FC ;LA DIRECCION DE LA MEMORIA DE COLOR INICIA EN $D800
LDA #$00
STA $FD
LDA #$D8
STA $FE
KEEPCPY1 LDA ($FB),Y ;CICLO DE COPIA EN BLOQUES DE 256 BYTES
STA ($FD),Y
INY
BNE KEEPCPY1
INC $FC ;PREPARAMOS LOS APUNTADORES A LA SIGUIENTE PÁGINA
INC $FE ;Y COMPROBAMOS SI AÚN QUEDAN PÁGINAS POR COPIAR
DEX
BNE KEEPCPY1
CPYRMNBY LDX #$00 ;COPIAR LOS BYTES RESTANTES DE LA PÁGINA
BEQ CHRRTN ;NUEVAMENTE EL REGISTRO X CONTIENE EL NÚMERO DE
KEEPCPY2 LDA ($FB),Y ;BYTES FALTANTES
STA ($FD),Y
INY
DEX
BNE KEEPCPY2
RTS
TBLCOLOR BYTE 00, 01, 02, 03, 04, 05, 06, 07, 08
BYTE ... (HASTA COMPLETAR LOS 1000 BYTES DE COLOR)
Opcionalmente, si quieres asignar un solo color, un código como el siguiente te ayudaría a hacerlo:
INITSCRN LDX #$00 ; USAMOS X PARA LLENAR LAS 4 PÁGINAS DE LA MEMORIA DE COLOR
CLEAR LDA#$01 ; EL ACUMULADOR ES EL COLOR QUE ASIGNAREMOS A CADA CARACTER
STA $D800,X
STA $D900,X
STA $DA00,X
STA $DAE8,X
INX
BNE CLEAR
RTS
Cualquiera de los métodos que uses requiere que planees la asignación de colores para simplificar el código o para que definas adecuadamente los valores de las tablas.
Saludos