Ver el código de SDrive-Max

{{toc numerate=1}}
===Descripción===
Este es un dispositivo que emula una disquetera 810 o 1050, también emula la casetera pero estándar a 600 baudios. Para armarlo es fácil ya que se compone de una placa arduino uno y una pantalla táctil compatible para terminar su cable sio.

===Materiales===
  * Arduino Uno R3
  * Pantalla Táctil con lector microsd
  * ((https://www.thingiverse.com/thing:4168767 Carcasa)) impresa en 3D
  * ((https://www.thingiverse.com/thing:1831769 Conector)) SIO impresa en 3D

El arduino uno más compatible y versátil para este proyecto es la versión R3  con CH340G + MEGA328P Chips, es fácil de encontrarlo en tiendas como aliexpress o ebay.

((https://www.atariware.cl/archivos/sdrive-max/arduinouno.png align=center))
Para la pantalla es importante que contenga alguno de estos chip :

  * atmega328-hx8347g
  * atmega328-hx8347i
  * atmega328-ili9325
  * atmega328-ili9329
  * atmega328-ili9340
  * atmega328-ili9341
  * atmega328-RM68090
 
Ya que se dispone soporte para ellos.

===Esquema de conexión===
La conexión mas simple y funcional es la siguiente:

#|
*|Pin SIO|Arduino Uno|*
||PIN 3|TX||
||PIN 4|GND||
||PIN 5|RX||
||PIN 7|A5||
||PIN 10|5V||
|#
((https://www.atariware.cl/archivos/sdrive-max/sdrive-conect.png align=center))

===Armado===
El armado es muy simple solo debe colocar la pantalla encima del arduino uno según los pines de la pantalla.

===Software===
Ahora deberá flashear el firmware necesario para que se comporte como un dispositivo ATARI.

====Windows====
Primero baja el software necesario desde su repositorio ((https://github.com/kbr-net/sdrive-max/releases github)). 

Ahora seleccionar el software según el chip de tu pantalla táctil ya que eso es necesario para seleccionar los archivos correctos  con la extensión HEX al grabar.

Por el ultimo descargar el ((http://www.hobbytronics.co.uk/download/XLoader.zip xloader)) que te permite grabar los archivos HEX al Arduino. 
((https://www.atariware.cl/archivos/sdrive-max/xloader.png align=center))

Los parámetros del programa son simples, seleccionar el tipo de  Arduino, el puerto COM donde está conectado el arduino esto puede ser del COM1 al COM9 y por último la velocidad usaremos la por defecto.

Con este programa deveras seleccionar para grabar en el arduino los siguientes archivos :

1. Selecionamos el primero **eeprom_writer.hex**
2. Selecionamos el segundo **SDrive.hex**

presionando el botón **UPLOAD**
 
Y para finalizar copia el archivo **"Sdrive.atr"** en la raíz de la tarjeta microSD.

====Linux====
En este caso explicamos todo el ambiente de ((/Guías/CompilarfirmwaredeSdrive-maxenLinux desarrollo)) y grabado del Firmware.

===Errores===
a continuación, algunos errores que aparecen en la pantalla azul donde se encuentra la palabra READY :

**SD-Card:**
  1. Error going into idle state (Error al entrar en estado de reposo)
  1. Error getting enhanced power requirements (Error al obtener requisitos de energía mejorados)
  1. Error on initialization for SD (Error en la inicialización de SD)
  1. Error on initialization for MMC (Error en la inicialización de MMC)
  1. Error setting block length to 512 (Error al establecer la longitud de bloque en 512)

**FAT:**
  1. Error reading master bootblock (Error al leer el bloque de arranque maestro)
  1. Error reading partition bootblock (Error al leer el bloque de arranque de la partición)
  1. Filesystem not supported (Sistema de archivos no compatible)

**SIO:**
  1. CMD changed to high during data reception (CMD cambiado a alto durante la recepción de datos)
  1. Timeout (Tiempo de espera)
  1. Usart frame error (Error de trama usart)
  1. Isart data overrun (Saturación de datos usart)