El ZX Spectrum de 48K con teclado de goma no tenía un botón de reset que sí incorporaba su sucesor el plus y también las siguientes versiones como los 128K.
Si queríamos cambiar de un juego a otro, no teníamos más remedio que desconectar y volver a conectar el cargador. Otros, más incorformistas, fueron más allá poniendo un interruptor en el cable del cargador y alguno más osado se lanzó a hacer el botón de reset, siguiendo al dedillo las instrucciones publicadas en la revista n° 1 de Microhobby, perforando la carcasa del Spectrum y cargándose de esta manera su increíble diseño.
Hoy en día podemos resolver este asunto muy fácilmente utilizando un interruptor táctil, ocultándolo en el interior de la carcasa y manteniendo intacta su estética original ochentera sin agujeros ni protuberancias raras.
Componentes necesarios
Para hacer el botón táctil de reset necesitaremos los siguientes componentes:
- Módulo de botón táctil TTP223: Muy económico y suelen venir en packs de 10. Por su dimensión, es ideal para situar en lugares con poco espacio, como es el interior de la carcasa del ZX Spectrum 48K con teclado de gomas.
- Resistencia de 1K: Cogemos este valor alto porque va a tener que soportar toda la carga y así no estropear el transistor.Elaboración del mod
Este mod es únicamente válido para placas base a partir de la versión ISSUE 3B, para la ISSUE 2 se tendría que buscar con un multímetro donde conectar los cables, tanto el del pin 26 de la CPU como los de alimentación.
El sensor táctil tiene dos jumpers (A y B), para este mod es necesario que estén desactivados, es decir, tal como vienen de fábrica. Con esta configuración de jumpers, al encender el ordenador, el interruptor (TTP223) está alimentado con 5V pero en estado abierto o apagado. Al pulsar el sensor con el dedo, se cierra el interruptor pasando los 5V a la salida I/O, produciéndose una corriente de base a través de la resistencia de carga poniendo al transistor en saturación. Como el colector está conectado al pin 26 del Z80 (positivo del condensador C27) y el emisor a masa, la CPU tendrá un 0 en el pin de reset, reiniciándose el Spectrum al soltar el dedo del sensor.
Soldamos los componentes en la parte superior de la plaquita del TTP223, ocupando el menor espacio posible. Se conecta VCC con el positivo del condensador C34 y GND con el negativo del C34. La salida del sensor (I/O) se conecta a una resistencia de 1K y ésta a la base del transistor, el emisor se une a GND del sensor y el colector a la patilla positiva del condensador C27. Una vez que esté todo soldado, pegamos con cinta de doble cara el sensor en el interior de la carcasa.
Cerramos todo y lo probamos. Encendemos el ZX Spectrum y ponemos un dedo en la parte posterior de la carcasa, donde está situado el sensor, y al soltar el dedo vemos como se reinicia. Me sorprende lo sensible que es ya que no hace falta hacer mucha presión a pesar de que el plástico de la carcasa tiene un cierto grosor.
Conclusiones
Funciona bastante bien aunque alguna vez, al principio sobre todo, al encender por primera vez el ordenador se me quedaba colgado, posiblemente era porque tenía los componentes muy pegados, estaban haciendo algún corto, y era el motivo de este mal funcionamiento. Los recoloqué para que no estuvieran muy cerca entre ellos y puse cinta aislante para proteger las conexiones del módulo táctil para así evitar estos falsos contactos y no me ha vuelto a pasar desde entonces.
La diferencia de hacer un reset a desconectar y conectar el cargador es que con el reset se mantiene la alimentación en el Spectrum, por lo que si tenemos dispositivos externos conectados tipo Oqtadrive, se mantendrán funcionando y no se apagará al no quitar la alimentación.
El mod es muy fácil de realizar y los componentes que hacen falta son muy baratos. He pasado muchos años sin el reset y ahora no paro de usarlo, para mí es imprescindible tenerlo.
D.R. Spectrum
Me parece una idea muy original y muy elegante, sobre todo porque no requiere alterar la carcasa del ordenador. Con tu permiso, me gustaría implementarlo en los ordenadores que arreglo y pongo en venta (dando créditos de dónde viene la idea), porque la verdad es que queda muy bien. Un saludo y enhorabuena como siempre por el blog.
ResponderEliminarPerdona, entré y comenté como anónimo.
ResponderEliminarGracias por tu comentario, es una solución muy simple, fácil de implementar y muy económica que surgió de la necesidad y he publicado en el blog para uso y disfrute de todos.
Eliminar¿Sabes? Al final he tenido que quitarlo de aquellos donde los instalé. En principio, todos funcionan bien y hacen su cometido. Pero siempre los ordenadores una noche en modo soak test con el test de Brendan Alford, y siempre me los encontraba reiniciados. Así que decidí indagar y me di cuenta que los ordenadores se reiniciaban aleatoriamente. No sé si la proximidad de la placa a la propia PCB del ordenador influye (las tenía colocadas en el mismo lugar que tú) o es algún otro motivo. Quizás aumentando el valor de la resistencia lo hace menos sensible. Así que tendré que indagar un poco más antes de seguir recomendándolo. ¿Qué piensas?
ResponderEliminarLo de aumentar el valor de la resistencia me parece una buena idea, lo voy a probar también. Al principio tuve estos reinicios y ahora lo tengo bastante estable, con reinicios muy, muy aislados, después de poner bastante cinta aislante porque me daba la sensación que los componentes al final se acababan tocando y se producían estos reinicios.
EliminarHe tapado un poco más con cinta aislante y desaparecen totalmente los reinicios. Creo que el problema era unos falsos contactos. Intenta probar esto a ver qué tal te funciona y me dices para actualizar el blog.
EliminarHe actualizado el blog con una foto de cómo tengo puesta la cinta aislante.
EliminarHe probado a cambiar la resistencia por una de 4.7K y por ahora va bien. Sin embargo, ahora me he dado cuenta que pasando la mano (rozando tan sólo) por la parte superior de la carcasa (es decir, a la derecha del logo SINCLAIR), se reinicia también. ¿Te ocurre esto a ti también? Si es así, quizás no ha sido una buena idea lo de aumentar la resistencia.
ResponderEliminarNo me ocurre siempre.
ResponderEliminarAl final no he cambiado la resistencia y aislando el circuito con cinta aislante, tal como aparece en la foto que he publicado en el blog, llevo varias horas con el Spectrum encendido, he hecho varios reset, lo he dejado un tiempo sin hacer nada, he cargado juegos desde bluetooth, le tengo conectado el Interface 1 con un Oqtadrive, etc... y no se reinicia. Lo voy a seguir probando pero tiene toda la pinta que es por falsos contactos o pequeños cortos que se resuelven con cinta aislante.
Eliminar