DSC_0011

Ya iba siendo hora de actualizar esta sección. En realidad he estado liado con varias consolas, así que en las próximas semanas/meses os iré contando algunas de las chapuzas que he estado haciendo últimamente. Hoy os pongo un arreglo que le hice al Spectrum 48k del amigo Salariasa, que me dió bastante guerra, espero que os sirva si tenéis uno de estos ordenadores por casa con problemas similares.

En concreto, el problema que tenía era que al encender se veían imágenes corruptas en color «azul celeste». Por lo visto es un error conocido, lo que ocurría era que había petado una de las rams, en concreto la ram etiquetada como IC10. Podéis ver lo que os comentaba en la siguiente imagen:

DSC_0008
Creo que está intentando comunicarse…

En un spectrum 48k, la memoria se encuentra dividida en dos bancos, la inferior (16KB) y la superior (32KB). El módulo que había fallado era uno de los de la memoria inferior, que se encuentra formada por 8 chips de 16 Kbits (ojo, bits, no bytes) de tipo TMS4116. En ese momento no encontré ese mismo chip, pero pude usar un  KM4164b, que son de 64Kbits. Para ello tuve que adaptar algunas señales y el voltaje que usaba, los anteriores usan 12, 5 y -5V, mientras que éste necesita sólo 5V. Además, tiene señales de sobra para direccionar 64Kbs, en ese caso por comodidad dejé A7 a vcc (5v) ya que da igual si está a Vcc o GND si sólo se va a acceder a  16Kb.

DSC_0013
Aquí la placa abierta. Los 8 chips de abajo a la izquierda son los de la memoria ram «inferior», causantes del problema
100_6505
Un primer plano
Untitled
Pinout de las rams, izquierda la original y derecha la de 64Kb. En la TMS4116, VBB=-5V, VDD=12V y Vcc=5V

Como podéis ver en la imagen del pinout, las rams son casi iguales. En este caso, son los pines 8 (Vcc) y 9 (A7) los que cambian, ya que la TMS4116 tiene en el pin 8 12 voltios, y Vcc en el 9. Dado que nos da igual A7, lo dejo a Vcc, pero el pin 8 lo puenteo a Vcc para que funcione la ram correctamente. En la siguiente imagen se ve cómo he añadido el cable entre el pin 8 y Vcc:

DSC_0017
La patilla 8 está levantada, no toca la placa

Y el resultado… pues correcto:

DSC_0018

Al menos durante un rato…

DSC_0016Durante un rato estuvo funcionando, pero luego empezó a darme errores nuevos. Ahora cuando lo enciendo, sale «basura» en pantalla, las pantallas nunca son las mismas, el marco cambia de color con cada inicio, y según pasa el rato la imagen se va deteriorando… A veces cuando lo dejaba enfriar y vuelvía a encender funciona durante un rato, incluso llega a cargar algún juego, pero acaba cascando.

Después de eso, le cambié varios condensadores, y aunque funcionaba «mejor» (al enchufar casi siempre funciona a la primera y llega a cargar algún juego) seguía haciendo tonterías al pasar un rato. Esta vez no pude hacerle fotos, pero la pantalla era un marco blanco con barras verticales de varios colores, amarillos rojos y negros alternados (todo un desfiile de colores…)

Estuve midiendo voltajes, el +5v y +12v estaban bien, pero cada vez que medía «-5V» en las rams me daba un voltaje distinto. A veces me daba «0v», -2.5V ,-3.5V, -4.5v… Da igual si había pasado un rato o si lo acababa de enchufar, era aleatorio. Cambié varios componentes y transistores, pero sin mucho éxito, al final acabé con la siguiente pantalla:

100_6494
Pantallazo rojo de la muerte

El caso es que a lo último, despues de cambiar algunos transistores parecía que los voltajes eran correctos. No encontré mucha información, pero lo que me parecía era que lo que quemó la Ram al IC10 furon esos cambios de voltaje tan aleatorios, así que seguramente habría afectado a alguna de las otras. Decidí hacer un cambio total de todas las rams inferiores, ya que no me fiaba mucho. La primera opción que tuve fue la de sustituir todas por una DRAM PD4217805, el tipo de ram era similar pero es un chip sacado de una placa de ram EDO. Al ser un único chip de 8 bit me ahorraba algunas soldaduras, aunque tocaba soldarlo a mano. Había visto que algunos gurús del spectrum habían sustituido la ram inferior por chips de EDO con éxito, así que me lié la manta la cabeza y soldé el chip a la placa.¿Resultado?

2qd8odg
Casi casi….

Pues no funcionó, una lástima. También probé con un SIMM de 32 contactos, pero idéntico resultado. Por lo visto hay alguna incompatibilidad entre la ULA y este tipo de memoria. Dependiendo de la versión de ULA que se tenga puede funcionar mejor o peor el transplante, y parece que no tuve mucho éxito. La ULa que lleva éste spectrum es una 6C001E-7, y por lo que he visto son las que dan problemas, desconozco los detalles técnicos. Finalmente decidí comprar el kit completo de chips km4164 y dejarme de experimentos.

100_6500
Zócalos para insertar las nuevas rams. A todo el mundo le gustan los zócalos…
100_6504
La ram en cuestión

Aunque no se aprecie en las fotos, en la parte inferior de la placa está cambiado los pines de VCC para no quemar las nuevas rams.En este caso sólo hay que cortar un cable y puentearlo a 5V. ¿Resultado?

100_6509
Ahora si que pilla bien los juegos

Pues eso, ahora va perfecto, ni da errores pasado un rato ni nada. Pude cargar varios juegos sin problemas, una gozada. Lo siguiente que hice fue un mod sencillote, ponerle la salida de Video compuesto para poderla conectar fácilmente a monitores modernos.

El spectrum tiene una única salida de televisión por señal analógica de antena, a día de hoy está anticuadísimo y genera multitud de ruido. Se puede sacar fácilmente una señal de video compuesto puenteando uno de los pines que hay en la placa a la salida del conector RCA de la consola. Aquí van los detalles:

100_6511
Cajita con el transformador de señal de video compuesto a RF Antena

La idea es que al adaptador de señal RF le entran dos cables, uno que está a 5V para alimentación, y otro que es la señal de video compuesto. Hay que cortar ambos cables en la foto que os he puesto antes, y llevar el de video directamente a conector RCA.

img_2071
Primer plano, se ven tres cables saliendo de la cajetilla. De izquierda a derecha, está el cable soldado a la señal de video, el cable original de video cortado, y el de 5V cortado también.

En la siguiente foto se ve el resultado con este spectrum 48k. En algunos esquemas se añade un condensador electrolítico de 100uf, pero no es obligatorio. En mi caso hice una prueba con él y no había diferencias, pero si notáis interferencias puede ser buena idea añadirlo.

100_6512  100_6514

Y ya se le puede conectar directamente el cable RCA a la televisión:

100_6516
Mil veces mejor, deberían de haberlo hecho de serie.

La imagen está mucho más limpia, libre de interferencias, pero en algunos LCD nuevos no acaba de funcionar bien y se nota «borroso», en teles CRT se ve perfecto. Preguntando por foros parece que los LCD hace un escalado, si no tienen esa resolución nativamente se nota un efecto «blur», aunque en general se ve bastante bien.

Y hasta aquí la peripecia, me costó un poco arreglar este spectrum, pero todo acabó bien. Por lo que he visto, la mayoría de los problemas vienen derivados de la ram inferior. Al usar tres voltajes (5, 12 y -5V), cualquier fallo en el adaptador de corriente hace que peten o deje de funcionar correctamente. Un cambio de condensadores y transistores principales ayuda a recuperar los niveles de voltaje correctos, pero si el daño ya está hecho solo queda cambiar la ram. Os dejo algunos enlaces interesantes si queréis ver todos los tipos de fallos y algunas soluciones de estos ordenadores:

Por Marcos

2 comentarios en «DDUC: Resucitando un Spectrum 48k suicida»
  1. Buen post Marcos, muy entretenido y didáctico.

    A ti si que te cundieron las clases de electrónica.

    Te lanzo un reto, un post (o serie de posts) para configurar un Raspberry Pi para usarlo con emuladores.

    1. Gracias tio. Si alguien me consigue una raspberry yo me comprometo a ello XD. El bicho es bastante majo, y al correr linux es muy facil instalar y configurar emuladores. Hay una distro para estos bichos llamada Chameleon casi lista para jugar, y me molaría hacer un invento, que he visto varios bastante majos

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *