Si no os importa leer en inglés, tengo un par de libros en PDF sobre ensamblador del 6509 que me han ayudado muchísimo. En un par de días fui capaz de pintar un mapeado de tiles en un VIC-20, ahí es nada 
¿Qué libros son esos na_th_an? Por cierto, serán del 6502, no del 6509, imagino. 
Puede ser que te confundas con el 6809 de Motorola, otro gran y olvidado microprocesador de 8 bits, mejor aún que el 6502 y el Z80 juntos. 
Oops, un lápsus de números y memoria :lol: El 2, el 2.
Me ayudó, principalmente, "6502 Machine Language for Beginners", que tenéis online en
http://www.6502dude.com/6502/mlb/chapter1.htm . Está todo muy bien explicado.
Luego, el programmer reference guide del VIC-20, que tiene mil y una tablas para que no se te pierda nada. Es específico de este ordenador, pero bueno, yo estaba enredando en este ordenador

Buscad VIC20PrgRefGuide.txt en Google.
Todas mis pruebas las hice usando el linker y el ensamblador del compilador CC65, que es bastante cómodo para estos manejes (te permite compilar para VIC20 con 8K o 16K de memoria expandida y colocar todo en su sitio: el startup code va el la RAM "normal" y hay una llamada al segmento de memoria expandida donde va todo tu programa. Además, te permite definir un segmento con el juego de caracteres expandido que se coloca en su área correcta de RAM automáticamente. Al final te genera un PRG listo para ejecutar.
Si os interesa el VIC-20 y queréis que os pase todo el "startup code" (que adapté de los fuentes de un juego indie de hace un par de años) no tenéis más que dar un grito

En cuanto le pillas el truco a la página cero es genial, es como tener 256 registros por la patilla

[code]CLEARSCREEN:
LDX #$00
LDY #$14
STX $FB
STY $FC ; FC:FB -> $1400 (character memory)
LDX #$00
LDY #$94
STX $FD
STY $FE ; FE:FD -> $9400 (color memory)
; 512 vueltas
LDX #$02
LDY #$00
@fill: LDA #$0F
STA ($FD),Y ; (FE:FD + Y) <- A
LDA #$7F
STA ($FB),Y ; (FC:FB + Y) <- A
INY ; Y ++
BNE @fill ; Y != 0 THEN @fill
INC $FC ; (FC)++
INC $FE ; (FE)++
DEX ; X --
BNE @fill ; X != 0 THEN @fill
RTS[/quote]