En los 80 era un lujo tener un ZX Spectrum con el Interface 1 y una unidad de Microdrive. La verdad es que no conocí a nadie que diera el paso de ir más allá del cassette. Pero, si disponías de este dispositivo que te facilitaba la carga de programas a mucha más velocidad que la típica cinta de cassette, lo que te interesaba era sacarle el mayor provecho posible a esta rapidez de carga, grabación y organización de los ficheros.
Primero, hay que cargar el programa desde cinta con el interruptor en posición desactivada, una forma de comprobar que el Multiface One está desactivado es que al pulsar el botón rojo no tiene que aparecer nada por pantalla.
En este caso, tengo las dos partes del juego After The War en el mismo cartucho de Microdrive, que al ejecutarlo, me sale este menú para elegir la parte que quiero jugar.
Si tenías un juego que te tardaba de 4 a 6 minutos en cargar, y con el Microdrive en cuestión de menos de un minuto lo tenías en tu pantalla corriendo, obviamente te interesaba tener esa copia en un cartucho de Microdrive. Pero ¿cómo copiamos un programa en cinta a un cartucho de microdrive?
Existían dos formas de hacerlo, una más manual o artesanal, que es copiando el cargador y los distintos bloques del programa (pantalla y código maquina), esta opción requiere de tiempo y conocimientos porque se utilizan distintos métodos de grabación dependiendo de múltiples factores, como por ejemplo, que el programa empezara o no en las posiciones de memoria que utiliza el Microdrive, o si la carga es por turbo. Pero la más sencilla que había era utilizando el Multiface One, que te permitía grabar los programas que estaban cargados en memoria y no había que tener ningún conocimiento sobre el Spectrum.
Si en la actualidad eres poseedor del emulador de Microdrive VDrive, hay una tercera opción mucho más rápida utilizando un programa de Windows o Linux que nos podemos descargar de Internet. Veamos estas tres opciones.
Grabación por bloques de memoria
En los números de la revista Microhobby del 50 al 55 explica los distintos métodos para grabar los programas a Microdrive. Estos métodos se apoyan en la extracción de las posiciones de memoria de la pantalla de carga y del programa, así como, el cargador en BASIC que se utiliza para indicar la posición de inicio del programa con la instrucción RANDOMIZE USR.
Para hacernos una idea de la manualidad que supone esta forma de grabar en Microdrive, voy a describir el método más sencillo que es que el programa empiece por encima de la dirección 24440, de esta forma no invade el mapa de memoria del Microdrive, y que la carga de cinta no sea turbo.
Para ver si estamos ante un programa con estas características podemos utilizar el programa Listador publicado en el número 2 de la revista Microhobby y que podéis descargar desde http://kyenter.speccy.org/principl.php?accion=listar&revista=2.
Para mostrar el proceso, voy a tomar como ejemplo la primera parte del Navy Moves. Al ejecutar el programa listador, nos muestra estos bloques de programa:
Nos salen dos bloques de programa, el primero army$ con la pantalla de carga, y el segundo nvycode1 que corresponde al juego.
En la primera columna se indica la dirección de inicio del bloque del programa y la segunda la longitud del programa.
Para grabar en el Microdrive, primero tenemos que cargar el programa indicando la dirección de inicio y luego grabarlo indicando la dirección y la longitud. El CLEAR es necesario hacerlo para borrar la posición de memoria anterior a donde vamos a cargar el programa. De los dos bloques de programa, empezamos primero con el screen de carga:
Nota: el "1" indica la primera unidad de Microdrive, si se quiere grabar en la séptima, se indicaría un 7.
Si queremos probar que la pantalla de carga se ha grabado correctamente, ejecutamos:
y nos saldrá la pantalla de carga que guardamos en la unidad de microdrive.
Ahora, nos guardamos el juego. En el listador, la dirección de inicio del programa que aparece con el nombre nvycode1 es la 25730 y la longitud del programa es de 39805. Como con la pantalla de carga, para guardar el programa en el cartucho de microdrive ejecutamos:
Si queremos cargar el programa, tenemos que sacar el código del cargador del juego. Para esto, cargamos la cinta y antes de que empiece a mostrar la pantalla de carga del juego paramos la cinta. Pulsamos break, y nos saldrá una pantalla en negro. Para ver el código ejecutamos PAPER 7:BORDER 7 y nos saldrá la siguiente pantalla:
En el cargador se puede ver en el RANDOMIZE USR que la dirección de inicio es la 47075. Por lo que si ejecutamos el siguiente código nos saldrá el inicio del juego:
Grabación con Multiface One
El Multiface One es un dispositivo que se conecta al Spectrum por su slot de expansión y sirve para capturar el contenido de la memoria y guardarlo en un dispositivo externo, en este caso un Microdrive.
Una cosa a tener en cuenta es que el Multiface One solo graba los programas en la unidad 1 de Microdrive, y luego si queremos cargar el programa, también hay que insertar el cartucho en la unidad 1, por lo que para este dispositivo no existen más unidades.
Había programas que eran capaces de detectar la presencia del Multiface One, por este motivo tuvieron que ponerle en versiones posteriores una interruptor para activarlo en el momento de la grabación.
Primero, hay que cargar el programa desde cinta con el interruptor en posición desactivada, una forma de comprobar que el Multiface One está desactivado es que al pulsar el botón rojo no tiene que aparecer nada por pantalla.
Una vez que tengamos el juego cargado, activamos el Multiface One y pulsamos el botón rojo apareciendo el siguiente menú:
Para grabar en un cartucho de Microdrive pulsamos la opción del menú save-->introducimos un nombre-->cartridge (con program seleccionado)-->save y al terminar pulsamo la "e" de exit.
Al terminar la grabación, listamos el contenido del cartucho con el comando CAT 1:
En el proceso de grabación le puse de nombre navy, por lo que para cargar el programa ejecutamos el comando LOAD *"m";1;"navy". Al principio nos saldrá una pantalla azul para indicarnos que está cargando y al finalizar nos saldrá la pantalla del juego.
Grabación con Z80onMDR para VDrive
Sin duda, si se tiene una unidad emuladora de Microdrive(VDrive), ésta es la mejor opción. El programa z80onMDR está para Windows y Linux y lo podemos descargar del sitio web https://www.tomdalby.com/other/z80onmdr.html.
Para grabar un juego en formato .mdr, ejecutamos el programa z80onMDR pasándole como parámetro el nombre del juego en formato .z80, si tenemos el juego en formato .tap, con cualquier emulador podemos hacer un snapshot y grabarlo en formato .z80.
Este programa tiene opciones interesantes, como poder grabar más de un programa en un cartucho emulado de Microdrive (.mdr) y mostrar un menú para seleccionar el programa que queremos ejecutar:
En este caso, tengo las dos partes del juego After The War en el mismo cartucho de Microdrive, que al ejecutarlo, me sale este menú para elegir la parte que quiero jugar.
Una vez generado el fichero .mdr con el programa Z80onMDR, lo copiamos a la tarjeta SD para luego cargarlo como imagen en una unidad virtual de VDrive.
Si listo el contenido del cartucho (imagen de VDrive) con CAT 3 (en este caso el cartucho está en la unidad 3 de Microdrive) me sale lo siguiente:
Para abrir el juego, si el cartucho lo tuviéramos en la unidad 1 de Microdrive al ejecutar el comando RUN nos cargaría el juego, pero al estar en la unidad 3 hay que ejecutar LOAD *"m";3;"run".
Conclusión
Las dos mejores opciones para copiar a Microdrive son la de Multiface One y el programa Z80onMDR. Si se tiene un VDrive, la elección sería el Z80onMDR, pero si tenemos un Microdrive y cartuchos "vivos" necesitaremos tener un Multiface One.
Como es muy difícil tener cartuchos de Microdrive que funcionen, no merece la pena conseguir un Multiface One, tanto la versión original o la de fabricarse uno, ya que el código de la ROM se puede descargar fácilmente de Internet. El coste de ambas opciones será prácticamente el mismo que el de un VDrive que es mucho mejor dispositivo y que permite emular hasta 8 unidades de Microdrive (para más info visita https://www.retromaquinas.com/2021/06/arqueologia-informatica-vdrive.html.
D.R Spectrum
Comentarios
Publicar un comentario