SUSTITUCIÓN DEL CHIP PCF1306P
El custom chip PCF1306P fue incluido por
Sinclair en la issue 5 de su ordenador ZX Spectrum y, además, está presente
también en el issue 6A, el 128kb Toastrack y el +2 (gris).
Este IC sustituye a los multiplexores y las
puertas lógicas que permiten la selección de la dirección de memoria. Hoy en
día este chip no es posible encontrarlo por lo que, en caso de fallo, se crea
una situación parecida al fallo de la ULA. Jose Leandro hace un estudio
completo de este chip en su artículo de El Trastero.
Mi proyecto sigue su esquema e intenta
simular las funciones con lógica discreta, y utiliza un montaje digamos más
casero para un caso de fallo de este chip. Los materiales a utilizar son:
- 2 placas protoboard. En realidad con una
es suficiente, pero la parte principal del proyecto la implanté sobre una placa
más pequeña y tuve que apoyarme en una segunda, en donde situé todas las
conexiones que iban a +5V y GND, separadas.
- 4 x chips 74LS157 (equivalentes a los
IC3, IC4, IC25 e IC26)
- 1 x chip 74LS00 (equivalente al IC24)
- 1 x chip 74LS32 (equivalente al IC23)
- Aproximadamente unos 80 cables de
interconexión o jumpers
- 2 x cables planos de 20 hilos cada uno.
Lo primero era colocar el PCF1306P en un
zócalo para permitirme extraerlo y sustituirlo con conexiones. Es un IC de 40
pines y requiere cierto trabajo. Usé una pistola de aire caliente para
desoldar, cinta kapton para proteger las pistas y los ICs y papel de aluminio
para permitir que se distribuyera el calor de manera más homogénea y facilitara
su evacuación. Ahí van unas fotos. El chip en cuestión:
Preparándolo para desoldar. Con chips más
pequeños (16 pines, por ejemplo), quizás todo esto no sea necesario porque se
extraen más fácilmente, aunque yo lo hago sea cual sea el tamaño. En este caso,
hay que aplicar calor durante bastante más tiempo por lo que la placa sufre
más.
Pongo la placa en un bastidor, usando de
contrapeso un paquete de varios cartones de leche. Aplico calor con la pistola
(se puede ver apoyada sobre los cartones de leche) por arriba, y por debajo al
extractor de ICs anclado sobre el PCF1306P le coloco otro contrapeso: un lata de
bebida (que me bebo después de acabar). Al aplicar calor suficiente, el propio
peso de la lata ayuda a la extracción. Es recomendable no tener los pies debajo
porque la lata tiene tendencia a aplicar toda su energía sobre el dedo más
débil del pie.
Este es el esquema que voy a seguir y que
preparó José Leandro. Se puede obtener de su página en El Trastero. Muchas
gracias, José Leandro, por el trabajo realizado.
Vamos con el montaje. Lo primero son las
interconexiones entre los multiplexores y puertas lógicas. Todavía es fácil y
hay mucho espacio:
Como se ve en la foto anterior, cada IC
tiene su etiqueta identificativa. Los ICs están colocados justo en el medio de
la protoboard, de esta manera se respeta la continuidad a izquierda y derecha,
y no se producen cortos entre ellas.
La siguiente foto, muestra un primer
intento de montaje, utilizando cables incluso para las conexiones del zócalo
del IC. Este montaje falló porque era bastante difícil conseguir que 40 cables
estuvieran perfectamente encajados en su respectivo pin del zócalo. cualquier
ligero movimiento, desplazaba algún conector, o incluso sacaba de la placa
alguna de las conexiones a GND o +5V. Estas se pueden ver en la protoboard que
está a la derecha de la foto.
Inicio cableado:
Con dos protoboard y cables planos, ya que
con el montaje anterior no tenia suficiente infraestructura. Y comprobando funcionamiento:
INTERFACE EXTERNA USANDO EPROM 27C1001
En este artículo se explica como
construirse una interface de ROM externa para el ZX Spectrum, basada
en una EPROM 27C1001 (128kb x 8 bits) de 32 pines. Esta EPROM es
compatible con la flash ROM 29F010, pin a pin.
Esta EPROM
permite tener varias ROM grabadas, pero en este artículo se presenta una
simplificación sin considerar selector de banco de memoria. Se he fijado A14 y
A15 a cero para seleccionar las direcciones de la ROM. También he obtado por
usar un 74LS32 en vez de diodos y resistencias, que podrían ser una
alternativa.
En el esquema siguiente están dibujadas
como puertas AND, pero son OR.
Y este es el
aspecto inicial del lado componentes.
Lado
soldaduras, usando cables con cubierta verde allí donde hay conexión a +5V,
azules con cinta negra en los que van a GND, y el resto los azules.
Durante las
pruebas de continuidad de las diferentes conexiones, me dio continuidad
entre A14 y A15. El error estaba en el conector:
Prueba de
funcionamiento final: