Karoshi MSX Community

Desarrollo MSX => Desarrollo (Español/Spanish) => Mensaje iniciado por: jrcp_kun en 05 de Febrero de 2015, 10:46:43 pm



Título: Registro #23 en msx2
Publicado por: jrcp_kun en 05 de Febrero de 2015, 10:46:43 pm
Estoy intentando hacer funcionar el registro #23 en ensamblador. Se me esta pasando algo y no lo hago funcionar.

en basic es facil pues

for i=1 to 255
base(24)=i   -----> registro #23
next i

pero si la paso a ASM

                  ld a,255
bucleVDP:
                  ld [RG23SAV],a  -------------> &hfff6
                  dec a
                  jr nz,bucleVDP


he probado en basic a cambiar base(24)=i por poke &hfff6,i  y funciona exactamente igual. 

Seguro que algo no estoy haciendo bien. Alguna ayuda??



Título: Re:Registro #23 en msx2
Publicado por: nanochess en 05 de Febrero de 2015, 11:18:18 pm
Usa WRTVDP ($0047 si mal no recuerdo)

ld a,255
bucleVDP:
PUSH AF
LD B,A
LD C,$17
CALL WRTVDP
pop af
dec a
jr nz,bucleVDP

Edit: oops, no he verificado si MSX2 usa la misma llamada o $012D que también se llama WRTVDP


Título: Re:Registro #23 en msx2
Publicado por: jrcp_kun en 06 de Febrero de 2015, 01:04:26 pm
perfecto, funciona ya lo tengo rulando. Gracias