Sí, sí, sííííí
He conseguido hacer una ROM de 48Ks para Hans' Adventure. Se compila con el asMSX perfectamente y rula bien en el BlueMSX. He utilizado las rutinas que aparecen en los tutoriales de aquí de la web (by Ramones) y un codigo prestado de Sapphire para iniciar la Page 2. A su vez las dos rutinas albergan en su interior code by Konamiman (amén
)
Hans' Adventure se creo en un principio siendo un .COM, así que no utiliza para nada la BIOS en ninguna de sus rutinas. Va a los puertos de PSG y VDP standard y listo.
Creo que no he hecho los cambios de manera compatible o protocolaria. Diria que lo he hecho demasiado a saco. Os quiero dejar aquí un trozo de como he inicializado las páginas para que me digais si es correcto, si podria dar problemas de compatibilidad, ...etc.
Page 0: .BIOS
.ROM
.PAGE 0
.START JOC
dw 0,0,0,0,0,0
.ORG 38h ; Inici de la rutina de interrupció
db 0C3h
dw TIMER_R
; DATOS GRAFICOS
Page 1: .PAGE 1
; CABECERA MANUAL para una ROM
db 41h,42h
dw JOC
dw 0,0,0,0,0,0
db "HANS"
; PROGRAMA - Inicialitzacion
JOC:
jp JOC0
.INCLUDE "LIB/SET48K.GEN"
;Librerias de Saphire y Ramones para situar los 48Ks ROM seguidos.
JOC0:
di
ld SP,PILA
; Screen 2,Sprites de 16x16
call SCREEN22
; Posiciona la ROM de 48ks
call SET48K
; Desactivacion del CLICK CLICK
xor A
ld [0F3DBh],A
GAME:
Page 3: .ORG 0E000h
PILA0:
ds 256
PILA: .byte
.INCLUDE "Variables"
Como lo veis ?
P.D: La rutina de interrupcion hace sus PUSH y sus POPs completos, su DI y EI, y sale con RETI. Tal como estaba en el .COM