¿Qué pasa al hacer un LOAD sobre la ROM en un Spectrum?
Publicado: 31 Ene 2013, 20:15
Es una pregunta que me acaba de surgir echando una ojeada al "3 weeks in paradise".
En un 16/48k "normal", no debería pasar nada ya que la ROM es ROM y dudo mucho que la rutina LOAD "salte" de la dirección 65535 a 16384 directamente. ¿Pasa lo mismo en un 128k? ¿Qué tal le sentaría ese tratamiento a un Inves?
El tema con el "3 weeks in paradise" es la versión de 128k. El tema es que carga un bloque de 57408 bytes a partir de la dirección 27392 en configuración de memoria "normal" (ROM1, RAM5, RAM2, RAM0). ¿Pasa algo especial al llegar a la dirección 65536? ¿Pasaría a escribir en una página RAM o intentaría escribir en una ROM (=no pasa nada)? Mi suposición es que hará algo así:
- Rellenará la RAM 27392 a 65536 (RAM 5, 2 y 0).
- 16384 bytes se irán al limbo (ROM).
- 2880 bytes se cargarán a partir de la dirección 16384 (RAM 5).
¿Es esto correcto? He visto también juegos que intentan cargar más allá del final de la RAM (supongo que para que los copiadores del momento fallaran por falta de memoria). Teniendo en cuenta las particularidades del Inves Spectrum... ¿no deberían dar problemas a base de bien?
En un 16/48k "normal", no debería pasar nada ya que la ROM es ROM y dudo mucho que la rutina LOAD "salte" de la dirección 65535 a 16384 directamente. ¿Pasa lo mismo en un 128k? ¿Qué tal le sentaría ese tratamiento a un Inves?
El tema con el "3 weeks in paradise" es la versión de 128k. El tema es que carga un bloque de 57408 bytes a partir de la dirección 27392 en configuración de memoria "normal" (ROM1, RAM5, RAM2, RAM0). ¿Pasa algo especial al llegar a la dirección 65536? ¿Pasaría a escribir en una página RAM o intentaría escribir en una ROM (=no pasa nada)? Mi suposición es que hará algo así:
- Rellenará la RAM 27392 a 65536 (RAM 5, 2 y 0).
- 16384 bytes se irán al limbo (ROM).
- 2880 bytes se cargarán a partir de la dirección 16384 (RAM 5).
¿Es esto correcto? He visto también juegos que intentan cargar más allá del final de la RAM (supongo que para que los copiadores del momento fallaran por falta de memoria). Teniendo en cuenta las particularidades del Inves Spectrum... ¿no deberían dar problemas a base de bien?