Código: Seleccionar todo
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:
Y el esquema del invento es el siguiente:
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 );
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.
La patilla 13 de la PAL habría que cortarla y levantarla quedando la modificación como en la foto.
Toda la información necesaria para realizar el circuito la dejo en el siguiente ZIP:
External Plus 3 Roms 27/08/2016
LISTA DE INTERESADOS Interface básico
1. shikitin-(VDR)
2. pepilloelgrillo (solo placa)-(VDR)
3. BCH (solo placa)-(VDR)
4. flopping (solo placa)-(VDR)
5. flopping (solo placa)-(VDR)
6. Garvidal-(VDR)
7. BenKenobi-(VDR)
8. carmeloco-(VDR)
9 merlinkv-(VDR)
10 merlinkv-(VDR)
11 dandare-(VDR) (solo placa)
12 jjsaenz1969-(VDR)
13 overCLK (solo placa)-(VDR)
14 Kripton67 VDR
15 groovydrifter (RWK)
16 stratotrasto (VDR)
17 Jason_rg (VDR)
LISTA DE INTERESADOS Interface con controladora de disquetera integrada.
1. flopping (solo placa)-(VDR)
2. flopping (solo placa)-(VDR)
3. Taburoto-(RWK)
4. BenKenobi-(VDR)
5 merlinkv-(VDR)
6 merlinkv-(VDR)
7 dandare-(solo placa) (VDR)
8 iturbez-(VDR)
9 pepilloelgrillo-(VDR)
10 retrolab-(VDR)
11 overCLK (solo placa)-(VDR)
12 istorki - (ZDP)
13 sinclair200 (VDR) M
14 Kripton67 (solo placa) VDR
15 groovydrifter (RWK)
16 mikes (VDR) M
17 Whisper (RW) M