Ir al contenido principal

ZX Microdrive All in One: Un único Microdrive para The Spectrum, ZX Spectrum y QL

Puedo asegurar que soy un entusiasta del Microdrive. Mi primera toma de contacto con este dispositivo fue en el instituto, allá por el año 1986, para grabar en un QL los programas de las prácticas de Basic que hacíamos en la asignatura de informática, en una época en la que los ordenadores eran una tecnología emergente y todo nos parecía novedoso e innovador.

Tengo varios Interface 1, ZX Microdrive originales, una unidad VDrive y el pseudo Microdrive por USB para el The Spectrum, dejando claro mi gusto por este dispositivo por razones tan obvias como su diseño, en su momento fue diferente y disruptivo, cuando el disquete parecía ser la solución perfecta, Sinclair apostó por la cinta en pequeños cartuchos, y sobre todo por el toque de romanticismo que da el poder seguir disfrutándolo después de tanto tiempo.

La mala calidad de los cartuchos de Microdrive me forzó a buscar alternativas más actuales con capacidad de almacenamiento superior, como una tarjeta microSD, que mantuviera toda la esencia del ZX Microdrive, como son el VDrive para los ZX Spectrum o el ZX Microdrive USB para The Spectrum.

Al hacer el ZX Microdrive USB para The Spectrum me surgió la necesidad de tener un único dispositivo que sirviera tanto para el Spectrum original como para el nuevo The Spectrum. Al tener la parte USB hecha, solo tenía que añadir la conexión al Interface 1 y esto se podía conseguir con el Oqtadrive. De esta forma, tendría en un único dispositivo la doble funcionalidad, USB para The Spectrum y el ZX Microdrive para el ZX Spectrum, además de servir también para el QL. 


Elaborar un Oqtadrive

Toda la información se puede encontrar en la web oqtadrive.org. Pero os voy a describir lo más importante que hay que tener en cuenta para conseguir tener uno completamente funcional.

1.- Pedir la placa base: En mi caso la pedí a PCBWay a través del siguiente enlace:


Existe una versión más moderna, que tiene la funcionalidad de ZX Net, pero preferí ésta al disponer de menos componentes y, en mi opinión, ser una versión más estable.

2.- Una vez recibida, hay que soldar los componentes y los principales, como son la Raspberry Pi Zero 2W, Arduino Nano y el Bob-12009, es mejor situarlos sobre zócalos hembra que nos permita extraerlos e insertarlos fácilmente en cualquier momento.


Nota: En lugar del regulador de tensión TSR 1-2450 utilizo este otro que analizo en el blog (https://www.retromaquinas.com/2022/11/zx-spectrum-sustitucion-del-regulador.html)

3.- Modificar el circuito divisor de tensión del Microdrive USB para tener un único Led que funcione con los dos dispositivos.
Los dos diodos incluidos permiten, si se utiliza el Microdrive con el ZX Spectrum o con The Spectrum, proteger al dispositivo, USB o Oqtadrive, que no se esté utilizando.

Se mantiene el divisor de tensión (R1 y R2) para reducir los 5V del USB y de esta forma le llegue al LED únicamente 3V, sin embargo, llegarán menos porque caerán 0,7V en el diodo. 


3.- Descargar la imagen de Oqtadrive y copiarla en una tarjeta MicroSD. La copia se puede realizar con Raspberry Pi Imager. Una vez que haya terminado, en el PC, tenemos que editar el fichero wpa_supplicant.conf para configurar la WiFi cambiando el código de país (ES), el nombre y password del router WiFi. Esto es importante hacerlo porque si no la Raspberry no se puede conectar a Internet y no se completaría la instalación. Mas info en la web del proyecto.

4.- Insertamos la tarjeta microSD en la Raspberry. Situamos La Raspberry, el Arduino Nano, el BOB-12009 en los zócalos que pusimos en el Oqtadrive y todos los demás componentes deben estar previamente soldados en la placa. Alimentamos la Raspberry Pi con un cargador compatible, todavía no se conecta al Spectrum, y vemos que el led del Oqtadrive empieza a parpadear cambiando de color de rojo a verde. Esto quiere decir que se está completando la instalación y va a tardar un poco, aproximadamente unos 15 o 20 minutos. Sabremos que ha terminado cuando el led deje de parpadear y se apague.


Para comprobar que la Raspberry se conecta a Internet, desde un PC podemos entrar con SSH pi@raspberrypi.local. Esto lo podemos hacer pasados unos minutos una vez que el demonio SSH esté activo. Si pasado un tiempo no hay manera de entrar por SSH, habría que repetir el proceso de copiar la imagen en la tarjeta microSD. 
 
5.- Una vez que se ha completado la instalación, podemos entrar en la web del Oqtadrive (http://raspberrypi.local:8888). Nos saldrán los microdrives vacíos, bajamos hasta el final y pulsamos el botón Power Off para apagar la RaspberryPi, esto lo tendremos que hacer siempre antes de apagar el el ZX Spectrum:


También, podemos apagar la Raspberry entrando con ssh pi@raspberrypi.local y ejecutando el comando sudo shutdown -h now.

Si no podemos entrar en la web de Oqtadrive, para comprobar que no es un problema de nuestro navegador web o que el firewall esté cortando la conexión, en una sesión ssh ejecutamos el siguiente comando:



Si sale que el puerto 8888 está LISTEN, el servidor web del Oqtadrive está funcionando por lo que habría que intentar probar con otro navegador, por ejemplo, desde un móvil o configurar el Firewall del PC para que acepte la conexión a este host y puerto. 

6.- Llegados a este punto, ya podemos conectar el Oqtadrive al ZX Spectrum a través del Interface 1. Al encender el Spectrum, podemos ver que el led empieza a parpadear, cambiando de color del rojo al verde, y una vez que termina de arrancar, el LED se apaga. 


Si, a través de la web del Oqtadrive hemos cargado algún cartucho en alguna de las unidades del Oqtadrive, podemos ejecutar el comando CAT, por ejemplo, si tenemos un cartucho en el drive 1, al ejecutar el comando CAT 1, nos tiene que listar el contenido. Si nos sale un mensaje de error indicando que no hay ningún Microdrive conectado, lo intentamos de nuevo, veremos que el led se pone de color rojo y luego se apaga, por lo que ya en el siguiente intento podremos listar el contenido del la unidad Microdrive. 

Cargar programas en Oqtadrive

Se pueden cargar programas o juegos en Oqtadrive desde un PC a través del comando Oqtactl, pero lo más cómodo es utilizar la web. Los formatos de ficheros compatibles son los de snapshot .z80, .sna y cartuchos creados con formato .mdr. Aunque los .tap también se pueden subir a una unidad Microdrive, se requiere hacer un tratamiento que muchas veces no funciona (https://github.com/TomDDG/ZXPicoMD#tap-copy   

Si queremos subir al Oqtadrive varios programas a la vez, lo mejor es utilizar el WebDav que viene incluido en la web.


Para entrar en esta pantalla de WebDav, hay que elegir la opción de menú Repo y pulsar en el enlace que pone Manage.

El uso de la web es bastante fácil e intuitiva, pudiendo utilizar hasta 8 unidades de Microdrive.


El siguiente video es una demo de cómo utilizar la web. 


Con la utilidad z80onMDR, se pueden crear cartuchos de Microdrive a partir de snapshots .z80. Lo bueno que tiene esta utilidad es que nos permite meter varios programas en un mismo cartucho .mdr y los elegiríamos a partir de un menú en el Spectrum.


Más info sobre el proceso de crear archivos .mdr en:


Mod de botón de reset táctil

El Oqtadrive siempre tiene que estar encendido hasta que hagamos un Power Off desde la web. Pero si tenemos cargado un programa en el Spectrum y queremos cambiar a otro hay que hacer un reset, no se puede desconectar y conectar el cargador del Spectrum porque la Raspberry Pi se apagaría abrutamente y podría corromperse el sistema operativo al no hacerlo pautadamente con el Power Off desde la web.

Este reset se tiene que realizar en el propio Spectrum, por lo que es necesario ponerle un botón de reset, si no lo tiene ya, porque los modelos Spectrum+ en adelante lo incluían en su diseño y, por lo tanto, no sería necesario realizar el mod.

Para no hacer agujeros en la carcasa, lo mejor es realizar el mod del botón de reset táctil que describo en la siguiente entrada del blog: 


En este video se puede ver el funcionamiento del botón de reset con Oqtadrive:



Conclusiones

Está muy bien tener un único Micordrive para ZX Spectrum, QL y The Spectrum, pero es un capricho caro. La carcasa repro, la placa base del Oqtadrive, el USB-SD, la Raspberry Pi, etc... Todo esto sube mucho el precio y se antoja bastante caro teniendo en cuenta que los Microdrive no son una solución de almacenamiento masivo debido a que el tamaño de un cartucho apenas llegan a 100KB en comparación con otras alternativas como el DivMMC. Aunque la tarjeta MicroSD instalada en la Rasperberry tenga varios gigas, hay que estar seleccionando y cargando el programa o juego en una de las 8 unidades de Microdrive.


Otra limitación es que no se soporta la multicarga, juegos que requieren realizar una carga para la siguiente fase con esta solución no se podría continuar jugando. 

Aunque no es una limitación, el tener que hacer un Power Off del Oqtadrive antes de apagar el Spectrum es un poco rollo, lo ideal sería que se apagara a la vez, pero esto no es posible porque primero hay que hacer el shutdown a la RaspberryPi.

A pesar de estos problemillas, para los que amamos lo retro, nos gusta experimentar y tener las mismas sensaciones que cuando usábamos esta tecnología en los ochenta, es obligatorio tener un Microdrive tipo Oqtadrive o Vdrive que dan un toque moderno pero manteniendo toda la esencia.

D.R Spectrum 


Comentarios

Entradas populares de este blog

Mi primer Amstrad CPC 6128: Puesta a punto y cómo sacarle provecho en la actualidad

El Amstrad CPC era el ordenador que siempre quise tener de niño. Recuerdo que, por el año 1986, en el centro comercial Alcampo de mi barrio tenían una especie de "corner" donde se exhibían los ordenadores de Amstrad que se podían tocar y hacer cosas con ellos, una idea muy brillante para aquella época, ya que no era un método muy habitual para captar compradores, y sin embargo, hoy en día se sigue aplicando y funcionando. Al pillarme cerca del instituto nos acercábamos a la hora del recreo y nos poníamos a hacer nuestros pinitos en Basic, de esta forma surgió mi gusto y admiración por este potente ordenador. Sin embargo, al final, en mi casa optamos por comprar el ZX Spectrum +2A, por varias razones, el precio era casi la mitad, eso sí, sin incluir monitor, en el instituto aprendíamos Basic en ordenadores Sinclair, como el de 48K o el QL, y lo más importante, casi todos mis amigos tenían ordenadores Spectrum. Todo esto influyó en la decisión final, viendo como se alejaba la o...

El botiquín del Spectrum: Componentes de repuesto

Debido a la avanzada edad de nuestros Spectrum, hay que estar prevenidos ante cualquier imprevisto que pueda surgir en forma de avería. Como hemos podido ver en alguna de las reparaciones que he publicado en este blog, me ha hecho falta una serie de componentes electrónicos, que en algún caso no los tenía, y he tenido que esperar a conseguirlos yendo a una tienda de electrónica o comprándolos por internet.  Para no encontrarnos en esta situación, he identificado cuales son las averías más frecuentes y qué componentes harían falta para poner de nuevo en marcha a nuestro Spectrum.  CPU La CPU que nos podemos encontrar en el ZX Spectrum puede ser Zilog Z80A de 4MHz o NEC D780-C, ambas totalmente compatibles. Aunque el cristal de cuarzo para generar una señal de reloj estable es de 14MHz, realmente la señal de reloj que utiliza la CPU es la marcada por el pin 32 (CLK) de la ULA. Esta señal tiene una frecuenca de 3,5MHZ, que es el resultado de dividir por 4 la señal de relo...

Cargar juegos con la App PlayZX (ZX81, ZX Spectrum, +2A/B y +3)

Existen varias alternativas para cargar juegos de forma casi instantánea en formatos .TAP y .TZX, como DivIDE, Dandanator, etc... A los más nostálgicos que nos sigue gustando cargar desde cinta y esperar esos minutos mientras contemplamos el screen de turno, tenemos que buscar otras alternativas que sean parecidas para así dar descanso a las cintas de casete que tan buenos momentos nos dieron, y de esta forma proporcionarles ese merecido retiro en una estantería junto a sus viejas compañeras donde podamos contemplarlas y admirar sus carátulas. La alternativa más popular es TZXduino, que junto a una tarjeta de memoria sd podemos reproducir los juegos como si los cargásemos desde un casete. Esta opción nos obliga a tener otro dispositivo, y dada la situación, por un poco más de lo que puede valer casi sería mejor opción comprarse un Divide, aunque en concepto son dispositivos muy distintos.  Otra opción sería utilizar la aplicación para teléfonos móviles Android PlayZX . En la web de...