External ROMs Plus 3 (Firmware update)

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

External ROMs Plus 3 (Firmware update)

Mensaje por wilco2009 »

Abro formalmente el hilo del proyecto External ROMs plus 3 en la sección de proyectos hardware y abro lista de interesados.

Imagen
Spectrum +2 funcionando con las ROMs del proyecto +3e, con un floppy y un interface IDE


AVISO: El +2 gris da problemas con el interface simple de 8 bits, sin embargo el divIDE en modo IDE funciona correctamente.

El proyecto consiste en dos placas diferentes:

1. Interface de ROM externa para los sistemas +2, +2A y +3 con conexión para el interface de disquetera multisistema.
2. Interface de disquetera completo con ROMs integradas para los sistemas +2, +2A y +3.

La única diferencia entre ambas placas es que una lleva el interface de disquetera incorporado y la otra, si queremos interface de disquetera, hay que conectarle uno externo en el conector que lleva al efecto.

¿PARA QUÉ SIRVE EL INTERFACE?
El interface sustituye las ROMs internas de los sistemas de utilizan paginado de la ROM como pueden ser el 128K, el +2, el +2A, o el +3.
Con dicho interface puedo por ejemplo sustituir las ROMs de un +2A por las del proyecto +3e, o bien por las de un +2 gris. También puedo ponerle las ROMs de un 128K a un +2 gris o bien las ROMs de del proyecto +3e.

¿Y para qué quiero sustiuir las ROMs internas?

Ejemplo 1: Tengo un +2 gris y quiero añadirle una disquetera y usar un divIDE con las ROMs del +3e.
Ejemplo 2: Tengo un +2A pero no quiero estar desatornillando la carcasa para alternar entre las ROMs originales y las del proyecto +3e.
Ejemplo 3: Tengo un +2A y quiero utilizar las ROMs del +2 gris porque son más compatibles con un juego.

¿QUÉ SISTEMAS SON COMPATIBLES?
El interface funciona en los siguientes modelos:

- 128K, No está probado pero en teoría debe poderse usar modificandolo de la misma forma que un +2 gris.
- Plus 2 gris, modificando internamente su PAL sustituyendola por una GAL o bien añadiendo dos diodos y una resistencia.
- Plus 2A / Plus 2B/ Plus 3, Pinchar y listo

INFORMACIÓN TÉCNICA

Para poder implementar un sistema de ROM externa como el presente, es necesario decodificar los puertos $1FFD y $7FFD y utilizarlos para paginar las ROMs.
El control de dichos puertos lo hace la GAL22V10 instalada en el interface controla tanto la habilitación de los dos chips de ROM como el paginado, deshabilitando al mismo tiempo las ROMs internas para evitar los conflictos con estas.
El jumper/switch JP1 nos permitirá seleccionar el tipo de ordenador al que está conectado el interface. Esto es necesario ya que la inhabilitación de la ROM interna se hace de forma diferente en los últimos modelos de Amstrad (+2A, +2B y +3)

El proyecto es de caracter abierto, y lo dejo aquí para que podáis hacer uso de él.

La placa tiene el siguiente aspecto:

Imagen

Y el esquema del invento es el siguiente:

Imagen

Las ecuaciones de la GAL que gestiona el paginado son las siguientes:

Código: Seleccionar todo

CLK1FFD     = (  !A14 & !A15 & !A1 & !nWR & !nIORQ & !A13 & A12 );

CLK7FFD     = (  A14 & !A15 & !A1 & !nWR & !nIORQ );

nROMCS     = (  !nPLUS23 );

nROM2OE     = (  nPLUS23 );

nROM1OE     = (  nPLUS23 );

nEXROM1OE     = !(  !A14 & !A15 & !nRD & !nMREQ );

nEXROM2OE     = !(  !A14 & !A15 & !nRD & !nMREQ );

La modificación necesaria para los +2 gris consiste en sustituir el chip HAL (IC7) por una GAL y programarla con las siguientes ecuaciones:

Código: Seleccionar todo

BANK     = (  !WR & RD & !IORQ & !A1 & A14 & !A15 );

PSG     = (  !WR & !IORQ & !A1 & A15 
           #   !RD & !IORQ & !A1 & A15 );

UA14     = (  B2 & !B0 & A14 & A15 );

UA15     = (  B1 & !B0 & A15 
            #   !A14 & A15 );

ULA14     = !(  !B0 & A15 
             #   !A14 );

ULA15     = !(  B0 & A14 
             #   !A15 );

VA14     = (  B2 & B0 & A14 
            #   A14 & !A15 );

VA15     = (  B1 & B0 & A14 & A15 );
Imagen

Una solución alternativa para no sacar la HAL de su sitio consistiría en conectar un par de diodos y una resistencia de la siguiente manera.

Imagen

La patilla 13 de la PAL habría que cortarla y levantarla quedando la modificación como en la foto.

Imagen

Referencia de las cajas:
Interface básico : Supertronic PP6
Interface coin controladora: Supertronic PP96

Toda la información necesaria para realizar el circuito la dejo en el siguiente ZIP:

External Plus 3 Roms 27/08/2016

Archivos de Eagle para la versión completa
Archivos GERBER para la version completa

Archivo JED de la GAL de la controladora

Actualización 7/11/2017
Corrección de un bug que no permitía conectar interfaces que deshabilitaran la ROM del interface (Ej: divIDE)
Se cambia la funcionalidad del selector Spectrum/Amstrad, ahora habilita la ROM del interface (posición Amstrad) o la ROM del +2 (posición Spectrum)

Archivo JED v1.1 - 7/11/2017
Fuentes en Abel v1.1 - 7/11/2017

Modificaciones necesarias para que funcione la actualización.

Para que funcione esta actualización, deberemos quitar el cable que interpusimos en la versión inicial entre los pines 1A y el 15B del bus de expansión, y ahora deberemos conectar el pin 15B al pin 19 de IC10.

Imagen

Imagen

Imagen

El montaje queda como sigue:

Imagen

Para los que como yo le vayan a poner un zócalo ZIF, tengo que comentar que tendréis que cambiar la palanca de lado, ya que por defecto viene hacia el lado contrario.

Por lo demás el montaje a ocurrido sin incidentes.

Y el funcionamiento también:

Imagen

Imagen

Interface Completo (con controladora)

En este interface tengo que hacer dos comentarios.

- El primero es que he cometido un pequeño fallo, por lo que hay que conectar un cablecillo entre los pines 4A y 15B del conector EDGE, tal y como se ve en la foto. Esta operación hay que hacerla antes de añadir la plaquita de expansión.

Imagen

- El segundo es que tengáis mucho cuidado al cortar las plaquitas de expansión, porque hay una pista que está muy cerca del donde hay que hacer el corte y podéis cortarla accidentalmente, de hecho yo me la cargue. En la foto se puede apreciar el apaño cubierto con silicona. Lo he dejado lo más discreto posible y creo que no ha quedado mal del todo.

Una vez conectado, todo funciona según lo esperado:

Imagen

Imagen

Imagen


Etiqueta para la versión completa.
Imagen

El archivo del gimp:
El mismo archivo en formato png:

Imagen


Etiqueta para el interface básico.

Archivo GIMP
Imagen PNG

Imagen

Con el ZIF no se puede cerrar la tapa por poco, por lo que he hecho una escotadura. De todas formas viene bien para poder intercambiar las ROMs sin necesidad de destornillador.

Imagen


Indicaciones para el mecanizado de la caja (supertronic PP96) para el interface con controladora

Lo primero que debemos hacer es rebajar todo el perímetro de la tapa que no lleva los dos salientes grandes hasta la medida de la foto:

Imagen

Imagen

Posteriormente y a la altura de la plaquita expansora debemos hacer una ventana como la de la foto.

Imagen

En el borde superior haremos un rebaje para dar alojamiento al conector de la disquetera.

Imagen

Finalmente cortaremos los dos alojamientos en los que entran los dos salientes largos de la otra tapa, para que no sobresalgan del borde que hemos rebajado.

Quedando interiormente aproximadamente como en la foto.

Imagen

Una vez acabado este lado empezaremos con la otra mitad.

No tengo fotos porque ya tengo la caja mecanizada y pegada con silicona, pero lo primero que debemos hacer en la otra mitad es rasurar todos los alojamientos de los tornillos para que no sobresalgan y la placa pueda quedar pegada a la pared de la caja. Si no hacemos esto el conector EDGE no sobresaldrá suficiente y no se podrá conectar bien al Spectrum.

Seguidamente re cortaremos los salientes largos marcados en rojo en la siguiente foto, lo justo para que podamos cerrar la caja, pero que puedan seguir manteniendo su función y sujeten ambos lados de la caja.

Imagen

Al igual que en el otro lado de la caja, deberemos hacer una ventana, esta vez para dejar pasar el conector EDGE.

Imagen

Haremos también una escotadura para alojar el conector de la disquetera, ya que este queda entre ambas tapas.

En mi caso he puesto los selectores de cara en horizontal, por lo que en este lado prolongaremos la escotadura para poder alojar también uno de estos selectores.

Imagen

Haremos otra pequeña escotadura en el lateral, para alojar el otro selector.

Imagen

Y sobre los selectores podemos pegar con silicota termofusible un pequeño trozo de plastico de lo que hemos recortado para disimular el hueco. Posteriormente podemos disimular este añadido con una pegatinas indicando la funcionalidad de cada selector.

Finalmente montaremos la placa sobre esta parte de la caja y pegaremos la parte inferior con silicona.

Imagen

Opcionalmente podemos utilizar los tornillos que vienen con la caja para sujetar mejor la placa, aunque como hemos rasurado los alojamientos inferiores de estos, tendremos que forzar para crear una nueva rosca sobre el plástico. Hay que tener cuidado en que los tornillos no provoquen un cortocircuito, lo que podríamos evitar añadiendo unas arandelas de cartón.

Como punto final al mecanizado podemos imprimir la etiqueta frontal que he dejado en ente post.

SIGNIFICADO DE LOS JUMPERS

JP1: Sirve para seleccionar entre los modelos de Sinclair (es decir hasta el +2 gris) y los modelos de Amstrad (+2A)

JP3: READY EMUL. Sirve para activar la emulación de la señal de ready. Esta es una de las principales ventajas de mi controladora respecto a otras, si está en ON (2-3) no es necesasrio modificar la disquetera para que saque señal de READY en lugar de DSKCHG. Y se comporta de verdad como una señal de ready auténtica y no como un simple puente. Podéis comprobar que si sacais el disco da error, a diferencia de cuando ponemos el puente. Si lo ponemos en OFF funcionaremos con la señal de ready tal y como la tengamos en la disquetera.

JP4: One Drive. La intención de esta señal es forzar a que el spectrum detecte una sola disquetera en lugar de dos, aunque no la he conseguido hacer funcionar bien.

S1 y S2: Son los selectores de cara para la disquetera A y la B respectivamente. Tienen la ventaja de que se puede seleccionar la cara de manera independiente para cada unidad, a diferencia del puente habitual.


LISTA DE INTERESADOS Interface básico

1. shikitin-(VDR) - P
2. pepilloelgrillo (solo placa)-(VDR)
3. BCH (solo placa)-(VDR) P E
4. flopping (solo placa)-(VDR) E
5. flopping (solo placa)-(VDR)
6. Garvidal-(VDR) P
7. BenKenobi-(VDR)
8. carmeloco-(VDR) P E
9 merlinkv-(VDR) P E
10 merlinkv-(VDR) P E
11 dandare-(VDR) (solo placa) P E
12 jjsaenz1969-(VDR) P
13 overCLK (solo placa)-(VDR) P E
14 Kripton67 VDR
15 groovydrifter (RWK) P
16 stratotrasto (VDR)
17 Jason_rg (VDR) P
18 vidamia (VDR) P
19 JULIO (speccy) P
20 rcmolina (VDR) M P

LISTA DE INTERESADOS Interface con controladora de disquetera integrada.
1. flopping (solo placa)-(VDR) E
2. flopping (solo placa)-(VDR)
3. Taburoto-(RWK) P
4. BenKenobi-(VDR)
5 merlinkv-(VDR) P E
6 merlinkv-(VDR) P E
7 dandare-(solo placa) (VDR) P E
8 iturbez-(VDR) P
9 pepilloelgrillo-(VDR)
10 retrolab-(VDR)
11 overCLK (solo placa)-(VDR) P E
12 istorki - (ZDP)
13 sinclair200 (VDR) M P
14 Kripton67 (solo placa) (VDR)
15 groovydrifter (RWK) P
16 mikes (VDR) M
17 Whisper (RW) M
18 Bone (Speccy) P
19 Tromponauta (VDR) M P
20 JULIO (speccy) P
Última edición por wilco2009 el 01 Oct 2023, 12:51, editado 60 veces en total.
"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.
Avatar de Usuario
flopping
Fundador
Fundador
Mensajes: 9971
Registrado: 29 Mar 2013, 15:26
Ubicación: Valencia
Been thanked: 122 times
Contactar:

Re: External ROMs Plus 3 (lista abierta)

Mensaje por flopping »

Apuntarme también un par de placas del interface basico :D :D :D , gracias.

Por cierto no he visto tu nombre en la lista, ¿es que no quieres uno? ;) ;)
No me hago responsable de mis post pues estan escritos bajo la influencia del alcohol y drogas psicotropicas, por la esquizofrenia paranoide.
(C) 1982-2024, 42 años de ZX Spectrum.
http://www.va-de-retro.com/ un foro "diferente".

Mi juego, que puedes descargar desde aqui
Avatar de Usuario
garvidal
Aspirante a demonio
Aspirante a demonio
Mensajes: 277
Registrado: 09 Sep 2014, 12:10
Ubicación: Albacete
Contactar:

Re: External ROMs Plus 3 (lista abierta)

Mensaje por garvidal »

Buenas. Apúntame un interface básico.

Enviado desde mi Nexus 7 mediante Tapatalk
------------------------------------------------
http://www.garvidal.com
http://www.dicemarket.es
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

Re: External ROMs Plus 3 (lista abierta)

Mensaje por wilco2009 »

flopping escribió:Apuntarme también un par de placas del interface basico :D :D :D , gracias.

Por cierto no he visto tu nombre en la lista, ¿es que no quieres uno? ;) ;)
garvidal escribió:Buenas. Apúntame un interface básico.

Enviado desde mi Nexus 7 mediante Tapatalk
Apuntados los dos.
"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.
Avatar de Usuario
Ben-kenobi
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 3543
Registrado: 12 Nov 2013, 10:00
Has thanked: 1 time
Been thanked: 18 times

Re: External ROMs Plus 3 (lista abierta)

Mensaje por Ben-kenobi »

Buenas wilco , yo me apunto a uno de cada
Quieres vinilos para makear tu spectrum? Mira Aqui
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6370
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 117 times
Been thanked: 324 times
Contactar:

Re: External ROMs Plus 3 (lista abierta)

Mensaje por merlinkv »

Hola wilco,

Apúntame:

2 x Interfaz básico completo: placa, componentes, conectores EDGE
2 x interfac con disquetera integrada: placa, componentes, conectores EDGE

Por cierto, ¿que tal se comporta con un "expander"? .. Lo digo por el tema de conectar también un intefaz Kempston ....

Gracias .... :D
Última edición por merlinkv el 27 Ago 2016, 20:19, editado 1 vez en total.
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
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

Re: External ROMs Plus 3 (lista abierta)

Mensaje por wilco2009 »

merlinkv escribió:Hola wilco,

Apúntame:

2 x Interfaz básico completo: placa, componentes, conectores EDGE y MX4
2 x interfac con disquetera integrada: placa, componentes, conectores EDGE y MX4

Por cierto, ¿que tal se comporta con un "expander"? .. Lo digo por el tema de conectar también un intefaz Kempston ....

Gracias .... :D
Mx4 no puede ser esto es para un spectrum.
"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.
Avatar de Usuario
merlinkv
Hermano de Lucifer
Hermano de Lucifer
Mensajes: 6370
Registrado: 06 Abr 2015, 23:08
Ubicación: Madrid / Europa del Este
Has thanked: 117 times
Been thanked: 324 times
Contactar:

Re: External ROMs Plus 3 (lista abierta)

Mensaje por merlinkv »

Upssss ... Sorry ... el ansia de pedir de tó .... :)) :)) :)) :))
No sé como será la tercera Guerra Mundial. Pero sí sé como será la cuarta: Con palos y piedras.
Aquí yace un valiente, un temible adversario y un verdadero hombre de honor. Descanse en paz. 21-04-1918
Visita mi Github igual te gusta algo.
Avatar de Usuario
flopping
Fundador
Fundador
Mensajes: 9971
Registrado: 29 Mar 2013, 15:26
Ubicación: Valencia
Been thanked: 122 times
Contactar:

Re: External ROMs Plus 3 (lista abierta)

Mensaje por flopping »

Entiendo que el diseño del interface de rom y disquetera, aun no esta hecho y estas viendo si tiene exito para hacerlo, ¿no?, la verdad es que ultimamente te estas pegando unos curros de impresion, espero que no sea muy complicado de hacer, eso si, no te pases del tamaño de 10x10 por dos motivos, uno economico y el otro que mas de 10x10 seria mucho trasto, jajajajajja..salu2.
No me hago responsable de mis post pues estan escritos bajo la influencia del alcohol y drogas psicotropicas, por la esquizofrenia paranoide.
(C) 1982-2024, 42 años de ZX Spectrum.
http://www.va-de-retro.com/ un foro "diferente".

Mi juego, que puedes descargar desde aqui
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

Re: External ROMs Plus 3 (lista abierta)

Mensaje por wilco2009 »

merlinkv escribió:Upssss ... Sorry ... el ansia de pedir de tó .... :)) :)) :)) :))
¿Entonces dos de cada o solo uno?
flopping escribió:Entiendo que el diseño del interface de rom y disquetera, aun no esta hecho y estas viendo si tiene exito para hacerlo, ¿no?, la verdad es que ultimamente te estas pegando unos curros de impresion, espero que no sea muy complicado de hacer, eso si, no te pases del tamaño de 10x10 por dos motivos, uno economico y el otro que mas de 10x10 seria mucho trasto, jajajajajja..salu2.
Sí, el interface con disquetera integrada está por hacer, pero es muy sencillo ya que se trata de juntar dos esquemas ya hechos y enrutar, y sí espero que me quepa todo en 10x10, que creo que sí que cabe.

Apuntados carmeloco y Ben. Merlinkv espero a que me confirme cuantos quiere exactamente.
"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”