SIO2Arduino, emulador de disquetera para nuestros Atari

Un SIO2Arduino nos permite emular una disquetera 1050 para nuestros Atari de 8 bit con apenas una placa Arduino y un lector de tarjetas SD. Puede considerarse una versión simplificada pero plenamente funcional del SIO2SD que nos permite cargar imaǵenes ATR, XFD o XEX, y que puede montarse en muy poco tiempo con muy pocos componentes.

Para este montaje vamos a utilizar el siguiente material:

  • Una placa Arduino Uno.
  • Un slot SD preparado para trabajar a 5V.
  • Un pulsador.
  • Una resistencia de 10K ohmios.
  • Un conector SIO para los ordenadores Atari.
  • Un LCD de 16 caracteres x 2 líneas HD7748 (opcional).
  • Un potenciómetro de 10K ohmios para regular el contraste del LCD (opcional).
  • Una placa de prototipado y un puñado de cables.

Vamos a guiarnos por las excelentes explicaciones de la web de Whizzo Software, que describe en detalle las conexiones necesarias entre los distintos componentes. Siguiendo esas instrucciones nos queda un circuito tal que así:

El display LCD es opcional, y si no tenemos uno a mano podemos prescindir de él sin perder funcionalidad. La ventaja que nos ofrece es poder ver en cualquier momento la imagen de disco que tenemos montada actualmente, pero si usamos el software SDrive (que veremos mas adelante) no nos será imprescindible.

Quizá el componente mas complicado de encontrar sea el conector SIO propio de los Atari de 8 bits. Si no tenemos algún cable de disquetera, casette, impresora, etc. a mano que podamos reusar siempre podemos tirar de imaginación y construirnos este conector por nosotros mismos de varias formas.

El firmware de Whizzo está disponible en Github y puede ser compilado y cargado desde el propio IDE de Arduino. Yo tuve problemas con algún include de la librería SD, y buscando una solución encontré comentarios donde se recomendaba usar la versión 1.6.5 del entorno de desarrollo de Arduino y esta versión de la librería SDFat. Con esta configuración, el código compila sin problemas.

Previamente a cargar el firmware en el Arduino será necesario modificar el archivo config.h para indicar si nuestro montaje consta de LCD y el uso que vamos a darle al pulsador:

  • Ir pasando secuencialmente por todas las imágenes almacenadas en la SD (modo selector)…
  • O bien montar una imagen AUTORUN.ATR cada vez que lo pulsemos (modo reset).

Esta segunda opción es la que usaremos si queremos utilizar el software SDrive, que nos permite elegir la imagen a usar directamente desde el Atari mediante un sencillo interfaz. Para ello copiamos la imagen SDRIVE.ATR a la raiz de nuestra tarjeta y la renombraremos a AUTORUN.ATR.

Con el montaje ya terminado, el firmware cargado en el Arduino y unas cuantas imágenes en la SD es hora de probar el funcionamiento del SIO2Arduino. Lo conectamos con el cable SIO a nuestro Atari preferido y damos corriente al Arduino. Si todo está correcto veremos iluminarse el LCD con el mensaje «SIO2Arduino READY»:

Pulsamos el botón y veremos en el LCD que se ha seleccionado la imagen AUTORUN.ATR. En ese momento encendemos el ordenador y oiremos como carga el software SDrive, que nos mostrará las imágenes guardadas en la tarjeta y nos permitirá movernos por los subdirectorios y elegir la imagen a montar.

Seleccionamos una de ellas y presionando RETURN se la asignamos a la unidad D1:

Si ahora pulsamos la tecla de vídeo inverso o el RESET del Atari, el ordenador se reiniciará y empezará a cargar la imagen que hemos seleccionado anteriormente, que se mostrará en el display:

Cruzamos los dedos y tras unos segundos…

Ahora solo faltaría realizar un montaje definitivo en una placa perforada, para quitarnos tanto lío de cable por aquí y por allá. El resultado es totalmente satisfactorio y por un precio muy reducido tenemos una manera excelente de alimentar a nuestros Atari.

Actualización: aquí podemos ver la placa terminada, usando un Arduino Nano que nos ofrece las mismas características del Uno con un tamaño diminuto, perfecto para un proyecto como este. Hemos prescindido de la pantalla LCD para ahorrar espacio y simplificar el diseño:

Puede que también te guste...

12 respuestas

  1. Pablo Sufan dice:

    Hola, si no tienes el conector SIO del Atari, ¿se podría reemplazar por el de una fuente AT de PC?

    • Gatuso dice:

      Si no tienes un cable SIO que puedas aprovechar, hay alternativas para construirse un conector SIO casero. Por ejemplo soldando los pines hembra a una placa de cobre o usando esta misma placa para hacer contacto directo. En google se pueden encontrar variantes muy interesantes:

    • Pedro dice:

      Es una buena solucion, lo tienes que rebajar el conector solo se usan 4 cables, funciona de maravilla

  2. Eduardo dice:

    Una consulta, ¿Dónde encontró los comentarios de usar versiones anteriores del arduino ide?

  3. Marcos dice:

    Hola: Hice todo como esta descrito.
    Logro cargar el autorun y me muestra los juegos, luego los selecciono, presiono reset o la otra tecla, cruzo los dedos y NADA.
    Se vuelve a cargar el autorun.atr y así por siempre y siempre.

    • Reinaldo dice:

      Es posible que no estés utilizando una resistencia en el pulsador? es importante que el arduino detecte la alta y la baja de voltaje , si no hay resistencia o es una muy baja se mantiene el estado «Autorun». Espero sea de ayuda. Saludos.

  4. Nelson dice:

    Excelente proyecto voy a intentarlo de inmediato, tenia ganas de aprender a programar en assembler para la atari y queria poder probar en la consola real, de esta forma seguramente podre hacerlo. EXCELENTE APORTE!!

  5. Luis Muñoz dice:

    Buenas excelente trabajo, tengo mi prototipo armado con display y todo, pero fallo al momento de compilar para descargarlo al arduino me indica que no puede encontrar el include SdFatUtil.hhe intentado cargarnado varias librerias del SDFat pero nada, si tubieras la libreria la podrias subir a algun lado para descargarla.
    Bueno me despido
    Atte.
    Luis Muñoz

  6. Luis Muñoz dice:

    Buenas se ve muy buena la idea pero no funciona, baje el codigo para el arduino instale el ide 1.6.5 , luego instale la libreriaSdfat pero nada la libreria sdfat esta claramente incompleta, despues instala la que esta en arduino y ha esta le falta la parte del SDFATUTIL.H.
    eso si tuvieras la libreria completa seria fantastico que la subas a lagun lado para descargrla.
    Atte.

  7. Diego dice:

    Hola tengo problemas me aperece een cuadraditos blancos tengo Arduino Uno y es generico alguien puede ayudarme gravias

  8. Adhemar Ramírez dice:

    Me entusiasmó mucho la idea desde q me enteré q se podía hacer, voy a hacerlo y después les comento como fue. De antemano muchas gracias por toda la guía. Saludos.

Responder a Eduardo Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Descubre más desde Retro Parla

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Sigue leyendo