Bueno, al final parece ser que no ha hecho falta portarlo a MK2(*). Te lo he mandado por privado con un par de cambios en como se organiza la memoria.
Lo que he hecho es:
- Comerme bastante espacio del que se reserva para la pila. Aproximadamente la mitad. Espero que no haya problemas, habría que jugar varias partidas largas para ver que el juego permanece estable. La Churrera emplea la pila mucho más que MK2, a lo mejor me he pasado, así que hay que testear esto mucho.
- Activar PAUSA/ABORTAR
- La Churrera reserva siempre 56 bloques para sprites. Cada bloque ocupa 15 bytes. 56 bloques es el máximo de bloques necesario para un juego de la churrera con todo activado, pero para el tuyo, que no tiene proyectiles ni nada raro, basta con 40 bloques.
- Empujando la dirección donde se crean los bloques hacia arriba, ya no hay solapamiento con el binario y no habrá problemas, si no se usa mucho la pila (que creo que no se usará tanto).
- Además, para liberar 150 bytes de binario, he movido un buffer también al espacio de la pila
Creo que así funcionará. Ahora mismo está todo petado desde 24200 hacia adelante
. Por favor, probadlo extensivamente. Si veis que empieza a hacer cosas raras, nos buscamos la vida de otra forma.
Pongo aquí el tap por si la gente puede y quiere probarlo. Mejor si echáis varias partidas.
(*) Aunque sería muy sencillo: basta con coger Espadewr, editar config.h para que sea como el tuyo, y copiar todos los recursos a las carpetas correctas.