DIVIDE. Interface IDE ATA 16 bits para SINCLAIR ZX SPECTRUM y compatibles
Descripción del interface
Si hacemos una revisión histórica de interfaces no vamos a encontrar nada parecido, Dan Anthoi con su “expansion system” o Ans Summer, Pera Putnik en su interesante pagina de hardware nos propone dos modelos, en modo 8 ó 16 bits, de él derivó el +3e de Garry Lancaster y en la “scene” rusa también existen interfaces de disco duro con uso de zx-bus.
divIDE se diseñó en 2002 a petición de un grupo de usuarios y tras 15 días de pruebas se realizó su diseño profesional, todo un reto.
Una breve descripción del aparato nos dice que su tamaño es similar a una placa de PlusD y realmente es muy superior en prestaciones. Usa pocos componentes y modernos. No emplea integrados “difíciles” como el i8255 y su elaboración es sencilla a partir de placa profesional. Cuenta con una eeprom de 8Kb, una RAM de 32Kb, 3 GAL y 3 integrados de la serie 74HC**, 3 transistores… No hay conexión Centronics.
Se ha dicho que las GAL ya no se fabrican. Esto es falso, se siguen desarrollando y tanto las originales elaboradas por Lattice® como las Atmel® u otros fabricantes son perfectamente válidas, sólo que hay que configurarlas con un programador especifico que las soporte.
Existe la posibilidad de realizar la placa de manera casera. Realmente no lo recomiendo, pues cuenta con múltiples vías que debe ser mecanizadas con broca de 0.5.
Otra característica que lo separa del resto de interfaces, es ser un producto en el que el desarrollador no obtiene beneficio económico. Se adquiere por 20€ contactando con el autor más los gastos de envío. Por correo en el kit se incluye todo lo necesario: GAL programadas, integrados, la placa y algo realmente difícil de encontrar, el conector del bus del Spectrum.
¿Qué lo hace realmente interesante?
Funciona con todos los modelos de Spectrum, desde el Sinclair 16KB hasta los modelos de AMSTRAD®, incluidos los clónicos rusos y los modelos de países del Este, didaktik m, gama, etc.
Se adapta a la RAM disponible y carga los ficheros compatibles para ese modelo.
No es necesario modificar nada al Spectrum. No se necesita cambiar la ROM pues, como ocurre con el PlusD o Beta disk, el firmware lo incorpora, el cual es “reflasheable”. De hecho no sólo es un interface IDE, también es un grabador de su propia flash eeprom. No necesitamos un programador externo para configurar el interface, cargamos el software en cinta y seguimos sus instrucciones. El Spectrum queda listo para trabajar con cualquier dispositivo IDE-ATAPI que conectemos: CDROM, disco duros con FAT16 y discos duros con FAT32 en los que exista al menos una imagen ISO 9660, unidades ZIP® y, cómo no, las compact flash de cualquier tamaño, siendo mejor las de tipo 1, al ser “lentas”. Sólo admite dos unidades IDE ATAPI, maestra y esclava.
No precisa de alimentación externa, la coge del propio bus del Spectrum. Como los integrados son de la serie HC, HCT el consumo no es elevado. Esto unido a que las compact flash pueden también alimentarse a través del bus lo hacen la configuración ideal, un sistema totalmente silencioso.
Nos olvidamos de la cinta y el disquete para siempre. Una vez configurado ya no precisamos el software, cuenta con su propia “BIOS”.
La tasa de transferencia de datos es excepcional, mas de 200KB/s. Supera a cualquier interface de disco 3,5“.
Si conectamos discos duros el consumo se eleva y es necesaria una fuente de PC.
Existe un proyecto denominado cfIDE, es un adaptador de compact flash a bus IDE. En Internet hay muchos productos que nos ahorrarán el trabajo de soldar un bus de compact flash, terriblemente difícil de adquirir y de soldar, y a un precio elevado.
Toda la información para la elaboración profesional del interface se encuentra en la pagina del autor. Ha padecido un accidente y ha detenido el desarrollo del proyecto por unos meses. Desde aquí deseamos su pronta recuperación.
¿Qué software hay disponible?
Cuando terminamos de soldar los componentes del kit disponemos de un software específico que comprueba tanto el interface como el propio Spectrum al que hemos conectado el divIDE. Es:
Transient Bios, TBIOS versión 1.4: nos muestra con detalle el tipo de Spectrum, comprueba la RAM interna del Spectrum, la eeprom externa del divIDE, hace una prueba de escritura en todos los bancos de RAM, hace un test de reloj… Es realmente difícil describir con palabras. Al final comprueba el hardware que tengamos conectado y muestra la información del firmware del fabricante del disco duro y CDROM.
Hay cuatro grandes sistemas operativos:
- 1. FATWARE: versión 0.12, soporta hasta 8 particiones en FAT16, no soporta FAT32, con un tamaño máximo de 8 gigas ;D
- 2. MDOS3: Teniendo en cuenta que ahí debía haber soporte para las unidades D40 (MDOS1) y D80 (MDOS2) se crea este nuevo sistema compatible y divIDE se comporta como una unidad “virtual” de hasta 4 unidades de disco. Trabaja con ficheros *.raw de imagen de disco D40 y D80, se aprovecha todo el material disponible en este formato.
- 3. +Divide: Sistema compatible +Gdos, de las unidades Disciple/+D. divIDE reconoce imágenes de disco de estas unidades y trabaja con ellas a bajo nivel, por lo que hemos de ser cuidadosos al realizar labores de escritura y lectura.
- 4. Demfir: versión 0.5b, 0.6, realmente no es sistema operativo, es un emulador de ficheros de emulador, a partir de una imagen *.ISO 9660 contenida en el disco duro o CDROM. Sólo lectura.
El Spectrum se convierte en una extraordinaria consola con miles de videojuegos al reconocer los ficheros más habituales:
*.SNA, *.z80 y *.SCR se cargan de forma instantánea, no importa la versión de fichero generada por el emulador de PC sobre la que se hizo el fichero que el Spectrum deba cargar, las reconoce todas.
*.TAP, podemos editar el fichero y entrar desde cualquier punto, tras pulsar “R” se efectúa el RESET y tecleamos LOAD ”“… Y a disfrutar.
Por ahora los sistemas son sólo lectura, en próximas actualizaciones habrá soporte de lectura/escritura.
Si dentro de la imagen ISO ponemos firmware para el divIDE, podemos desde el propio interface actualizarlo con suma rapidez.
Aspectos técnicos de divIDE
Hay dos versiones de placa, la 57b y la 57c.
La única diferencia está en los componentes discretos, se cambian los valores de varias resistencias según el tipo de transistor empleado.
Hay 4 ficheros *.JED para 3 GAL, A, M y R, los ficheros a programar son: a, m’ y r. Es importante identificarlas para evitar errores en su posición.
Los PLD GAL son matrices lógicas re-programables. Sustituyen y “emulan” a un buen grupo de integrados lógicos con el beneficio de consumir poco.
Si partimos de kit no debe haber problema pues, como dije, el kit incluye todo lo necesario para terminar el trabajo.
Si partimos de cero, debemos trabajar con la versión 57c, y seguir las instrucciones del autor en la pagina.
Para realizar el kit recomiendo un soldador de no más de 30W y punta fina.
Una vez terminado el trabajo y configurado nos encontramos ante el interface que nos devuelve a la actualidad a nuestro querido Spectrum y lo pone a trabajar con los dispositivos de almacenamiento modernos.
Quiero agradecer a
Pavel Cimbal, por dar a conocer de modo altruista este interface maravilloso.
Alberto Nadal, por darme la oportunidad de reparar sus interfaces y regalarme uno con placa profesional y el adaptador de CF.
Enlaces
Diciembre 2006
MagazineZX #14