Hola, resulta que el juego que he creado (Stupid Martians) funciona correctamente en los MSX reales que he probado hasta ahora, en las máquinas virtuales de openMSX y blueMSX que he probado, pero no lo hace en una SD MAPPER o una MEGAFLASHROM.
Me gustaría arreglarlo.
El juego lo tengo grabado en un cartucho (chip W27C512), cuando lo cargo en el SLOT 1 en mi MSX real (Mitsubihi ML-G1) el juego establece la página 0 en el slot 1 (no uso la bios) con lo que registro A8 es 11 01 01 01
Es decir que el z80 lee mi rom en las página 0,1 y 2 y en la página 3 la RAM. Correcto!!!!
Sin embargo tengo gráficos almacenados en la página 3 de mi rom por lo que, cuando los necesito, modifico el registro A8 poniendo 01 01 01 01 (si el cartucho está en el slot 1) para recuperarlos. Una vez obtenidos los gráficos se reestablece la página 3.
Cuando cargo el juego en una SD MAPPER (en el slot 1), una vez que el juego ha establecido la página 0 en el slot 1 me encuentro que el registro A8 es 01 01 01 01.
No conozco como funciona una SD MAPPER pero cuando cargo el juego con sofarun me da la sensación que está cargando los primeros 48k y luego el ordenador utiliza la página 3 del slot donde está la SD MAPPER como ram (en vez de utilizar la ram propia del ordenador que en mi caso está en el slot 4).
O a lo mejor sí ha cargado las 64k pero, como usa la página 3 como ram, machaca todos los gráficos.
¿alguien se ha encontrado con este problema?