Pues es un punto que estuve mirando en detalle durante una semanas entre diversas webs y la rom desensamblada . Las conclusiones que pude sacar fueron:flopping escribió: ↑29 Ago 2019, 23:35Supongo que el interface al grabar el programa altera algo en el snapshot y solo funciona cuando detecta ese cambio que provoca el propio interface, supongo que lo que hace el programa ese que comentas es parchear esa zona y así no es necesario el interface para cargarlo, aunque es el doble de trabajo, ya que hay que copiarlo 2 veces, pero bueno, si funciona puede ser asumible, lo difícil sería desensamblar la rom del interface y parchear la zona donde hace esa comprobación, así las copias hechas funcionarían sin tener el interface conectado, pero para eso hay que saber CM del amstrad, aunque si alguien sabe y se anima, pues ahí está el reto, salu2.Rebobinando escribió: ↑29 Ago 2019, 20:45
Dato importante: Los programas guardados con Multiface II sólo se pueden ejecutar con el Multiface II conectado al ordenador. Hay algún programa que anula esta limitación, aunque lo quiero comprobar un poco.
- El interface no altera el snapshot (yo también creía que lo hacía, la verdad). Sólo lo comprime para que no ocupe siempre los 64Kb o 128Kb.
- La rutina de carga real del snapshot está en la rom del multiface.
- El primer archivo del snapshot resultante, sólo:
- Activa el MF y lo hace visible.
- Carga todos los datos de registros, nombre de archivo etc en zonas predefinidas de su RAM.
- Una vez hecho esto, da el salto a la ROM del MF, que se encarga de seguir cargando el snapshot y de ejecutarlo.
- Otro punto interesante… la rom del multiface está ‘llena’ desde &0000 hasta &1fff. Supongo que hay alguna zona libre pero ocultada con código, y no la he encontrado. Si la hubiera, sería muy limitada para poder parchear de todas formas.
Hay opciones para evitar la necesidad de conectar el MF durante las cargas, aunque quiero probarlas un poco:
1. El soft que comentaba más arriba es una opción. Creo que utiliza la zona de pantalla para poder guardar código durante la carga. Según el autor de este soft, el programa, una vez cargado, refrescará en algún momento la pantalla y eliminará ese código basura. Esta opción, sería, como bien dices, muy asumible, puesto que debe modificar aólo el primer archivo del volcado (no vuelve a hacer el volcado completo)
2. Otro soft que, para evitar usar la rutina de carga en el MF, hace uso del segundo banco de memoria del 6128. La limitación es que sólo se puede aplicar en snapshots que usen sólo los primeros 64Kb. Para poder cargar el snapshot después, tiene que ser en un 6128 obligatoriamente, puesto que hace uso del 2º banco de memoria para poder ejecutarlo. Imagino que es la forma de no introducir código ‘basura’ en pantalla y cargar de una forma limpia para el usuario.
3. Se podría intentar poner un programa en la RAM del MF para intentar ‘puentear’ al pulsar Stop. Esta rutina intentaría crear el snapshot ya dotándolo de una rutina de carga independiente del MF.
4. Programar una nueva ROM para el MF. En este caso, ya no sería un Multiface como todos conocemos (es mi forma de verlo). En fin, nostalgia sin más… Aunque si existiera, la tendría precargada en la Eprom de este clon
De las opciones 3 y 4, intentaré echar un vistazo a la 3, pero con vistas a largo plazo, y no sabiendo bien, si está a mi alcance; el tiempo dirá. La opción 4, la descarto por mi lado, está fuera de mi alcance A ver si algún máquina del foro que se anime con ello.
No he puesto enlaces, pero si a alguien le interesan, los busco entre toda la información que tengo y los pongo.
Saludos, y perdonad el tochazo