INTERFACE DE FLOPPY MULTISISTEMA (DESCRIPCIÓN)

Proyectos de hardware con sus esquemáticos y si llevan software en fuente

Moderadores: cacharreo, Fundadores

Reglas del Foro
Aquí solo tienen cabida proyectos de hardware que incluyan siempre al menos sus esquemáticos para poder reproducirlos si llevan componentes electrónicos, y si es posible los ficheros del programa en que se hacen, los diseños de las placas, los gerber, etc. Si llevan algún tipo de software asociado debe estar diponible el código fuente

Para los que no cumplen estas condiciones se debe postear en el foro de proyectos generales.
Responder
Avatar de Usuario
wilco2009 !Sinclair 1
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 8152
Registrado: 01 Abr 2013, 23:47
Ubicación: Valencia
Has thanked: 47 times
Been thanked: 101 times

INTERFACE DE FLOPPY MULTISISTEMA (DESCRIPCIÓN)

Mensaje por wilco2009 »

INTERFACE DE FLOPPY MULTISISTEMA

La manera en que ha nacido este interface, ha provocado que la información al respecto del mismo esté muy dispersa, por lo que la gente que no ha seguido los hilos desde el principio puede que tenga dificultades para comprender en qué consiste.

Por ello, a lo largo de este hilo, intentaré ir dejando toda la información necesaria, de manera ordenada.

Hilo de gestación: http://www.va-de-retro.com/foros/viewto ... =63&t=1470
Lista de interesador para el primer pedido: http://www.va-de-retro.com/foros/viewto ... =63&t=2434

Lo primero os voy a contar en qué consiste este interface para después contaros de dónde surgió la idea y daros información técnica detallada al respecto.

CARACTERÍSTICAS

El presente circuito consiste en un interface que permite conectar una o dos disqueteras de manera externa a los siguientes sistemas:

- Spectrum + 2A (placa o larga es indiferente). No necesita nada más adicional para hacerlo funcionar, ya que las ROMs del +2A ya llevan la gestión de los floppies.
- Spectrum 16Kb. Necesita tener conectado un superupgrade con las ROMs del +3 o +3e.
- CPC 464. Necesita tener conectado un interface de UpperROMs como el Megaflash, con el AMSDOS en un hueco inferior al 7.

La idea es que la placa principal del interface se conecta mediante un cable plano de 26 hilos, bien a la placa de conexión al CPC o bien a la del Spectrum.
Las citadas placas de conexión, iran conectadas directamente al bus EDGE del ordenador utilizado.

Como características adicionales se pueden destacar las siguientes:

- Conexión de dos disqueteras configuradas como DS1, mediante un cable con dobladillo, tal y como haríamos en un PC. Por lo que no es necesario modificar las disqueteras para convertirlas en DS0.
- Emulación de señal de READY.
- Dos selectores para la selección de cara de cada disquetera de manera independiente.
- Conector estándar IDC de 26 pines que permitirá conectar la disquetera de manera directa (sin el conector EDGE) a un futuro interface Megaflash con lowerROM incorporada (pendiente de salir) y a un futuro interface Speccy superupgrade con todas las correcciones incorporadas (pendiente de salir), ambos con sendos conectores IDC26. De esa manera el interface podrá meterse dentro de una caja con el Megaflash o con el superupgrade para poder tenerlo todo agrupado y ordenado.
- Placa de conexión a un CPC, con huella para soldar un conector EDGE de 50 pines o alternativamente un conector IDC de 50 pines compatible con la norma MX4. Dicho conector se conectará al interface mediante un cable IDC26 hembra - hembra.
- Placa de conexión a un Spectrum (ya sea 16Kb o +2A), con huella para soldar un conector EDGE de 56 pines o alternativamente un conector IDC de 60 pines compatible con una posible futura norma similar al MX4 de CPC. Dicho conector se conectará al interface mediante un cable IDC26 hembra - hembra.
- Ambas placas dispondran de un conector de 4 pines para poder alimentar una disquetera. Hay que tener en cuenta que probablemente la fuente de un gomas no es suficiente para este fin, pero no debe haber problemas con un 464 o un +2A.
- No hay ningún tipo de conmutador para seleccionar el conexionado con un +2A, Spectrum 16Kb o CPC464, la selección se hace automáticamente al conectarlo a la placa correspondiente.

GESTACIÓN

La idea del interface surgió mientras comprobaba como funcionaban los interface de floppy de un +3 y de un CPC.
Inicialmente quería incorporar disquetera a una futura versión del superupgrade y del Megaflash, pero observando los diagramas, me di cuenta que resultaba muy sencillo hacer un interface que funcionara tanto en un spectrum como en un CPC, ya que solo cambiaba la manera de comucarse con el ordenador.

Con la atractiva idea de un interface multiproósito en mente comencé con el prototipo, cuyas venturas y desventuras pueden consultarse en éste hilo: http://www.va-de-retro.com/foros/viewto ... =63&t=1470

Tras esto, y una vez funcionando el interface se le han ido añadiendo funcionalidades, como son la emulación de la señal de READY para las disqueteras que no pueden ser modificadas fácilmente, la posibilidad de añadir dos disqueteras sin modificar una de ellas como DS0, y la selección independiente de la cara del disco cuando tenemos dos disqueteras.

ESQUEMAS

Aquí os dejo el esquema de la placa principal del interface (versión inicial 1.03)

Imagen
https://plus.google.com/u/0/photos/1085 ... 8453053882

La GAL se encarga principalmente de implementar la gestión de los puertos de comunicación con el ordenador, y como resultado genera las señales /MOTOR_ON, /DISK_READ y /DISK_WRITE, que en el interior de un +3 o un CPC6128 son generadas por la ULA.

También se encarga de gestionar la selección independiente de cara.

De la emulación de la señal de /READY se encarga el circuito asociado con el temporizador 555. El esquema de la parte del circuito que se encarga de esto es el siguiente:

Imagen
https://plus.google.com/u/0/photos/1085 ... 8453053882

La emulación se basa en mantener activa en baja la señal de /READY un tiempo después de que la CPU active el motor. Tras este tiempo, la señal de /READY se mantendrá en baja mientras reciba pulsos de /INDEX desde la disquetera, señal inequivoca de que está preparada. En caso de dejar de recibir estos pulsos, la señal /READY se irá a +5V y la CPU mostrará el mensaje "Unidad no preparada".

La emulación puede activarse o desactivarse con un jumper.

PLACAS

Esta es la placa principal:

Imagen

Esta la placa de conexión a un Spectrum:

Imagen

Y esta la de conexión a un CPC:

Imagen


Continuara......
"Aprender a volar es todo un arte. Aunque sólo hay que cogerle el truco. Consiste en tirarse al suelo y fallar".

Douglas Adams. Guía del autoestopista galáctico.
Responder

Volver a “Proyectos de hardware abiertos”