sábado, 11 de junio de 2016

Un poco de electrónica digital: Selector entre dos señales, doble CIC en una N64




En los foros de "El otro lado" alguien ha montado un selector de región para la N64 de la forma mas sencilla posible con dos CIC. Os lo cuento un poco.

Nintendo y Sega desde sus primeras consolas quisieron proteger las máquinas y los juegos, de forma que solo arrancaran juegos desarrollados en una zona geográfica determinada en máquinas vendidas en esa zona. Definieron varias zonas, Europa, USA y Japón principalmente, pero conforme avanzaban la expansión de las ventas se definieron otras adicionales como Ásia Pacífico o Latinoamérica.

Nintendo desde el comienzo de la NES usaba la combinación de dos chips, uno en la consola y otro en el cartucho. Al arrancar la máquina el CIC del cartucho envía a la máquina una clave cifrada, el CIC de la consola genera el suyo, los compara y si coinciden la maquina arranca, si no quedaba con pantalla negra. El CIC enviaba una señal de bloqueo a la máquina, pero en los primeros se descubrió que simplemente levantando esa pata no se producía el bloqueo, por lo que en las NES solo hay que cortar una pata del chip,y en las SNES se levanta una pata. Esto fue descubierto relativamente pronto, por lo que algunos juegos usan otro sistema y cuando no reciben una señal adecuada no se ejecutan directamente. En las siguientes máquinas se mejoró bastante, por lo que cada vez era mas difícil el desbloqueo.

Para evitar todos los posibles problemas, lo que se ha echo mas recientemente es, usando ingeniería inversa, decodificar el programa del CIC, y reemplazarlo por otro chip diferente, normalmente un microcontrolador PIC, que se comporte igual y así engañar siempre a la máquina.

Para este montaje es necesario disponer de un poco mas de conocimientos y poder grabar el programa del PIC. Para la N64 se ha descubierto la forma de reemplazar el chip, pero hay aficionados que pensaron otro enfoque, si dispones de una placa japonesa y otra europea por ejemplo, quitas el CIC de la europea y se lo pones a la Japonesa, y mediante unos selectores decides cual de los dos chips quieres utilizar. En la N64por ensayo y error se ha detectado que hay 5 líneas que se comportan diferente según la región, 2, 5, 6, 8 y 28, aunque según otros son 9 líneas 1, 2, 5, 6, 8, 13, 15, 19 y 28, siendo el resto comunes a ambos chips.

[​IMG]

Lo que se hace es levantar esas patas del CIC de la placa, y soldar hilos a todas las patas, los 9 necesarios se llevan a una serie de interruptores, y el resto se llevan a las patas del otro CIC. El montaje requiere 9 interruptores de 1 circuito, o 5 de dos circuitos, y aun usando interruptores de 4 circuitos requiere 3, y todos deben estar al mismo lado siempre para que esto funcione. El montaje para cinco líneas sería algo así:


Esto se puede hacer de varias formas usando electrónica digital y un solo interruptor, voy a poner una muy básica, un circuito selector de dos señales con un solo interruptor de dos posiciones un circuito usando dos puertas AND, cuyo resultado se mezcla usando una OR. Solo hay que repetir el resultado para todas las señales que se desee utilizar:



La señal que usaremos son los 5 voltios o la masa, ponemos ambas a los lados del interruptor, y según su posición obtenernos una u otra. Esta señal se invierte a la salida del interruptor, y ya tenemos las dos señales que necesitamos, una con el voltaje o masa, y la otra con su inversa, la que esté a 5 voltios será la activa en cada momento.

Disponemos de las dos señales a seleccionar, 1A y 1B, se une la A con la señal directa en una puerta AND, y la B con la inversa en otra, de esta forma aunque siempre se generan ambas señales, solo una de las dos aparece en la salida de las puertas. Solo resta unir las dos salidas, podemos hacerlo directamente, pero es mejor usar una puerta OR para ello, de esta forma no solo en el punto C tendremos la señal existente en el punto A o el B según la posición del interruptor, sino que mantiene los niveles adecuados siempre, no es buena idea en general unir las salidas de dos puertas directamente para mezclarlas, aunque en este caso solo una de las dos estará siempre activa, por lo que no deben producirse interferencias.

Solo hay que repetir las dos puertas AND y la OR para cada señal que deseemos usar, aunque hay chips que ya montan este tipo de multiplexores, electrónica discreta y sencilla, aunque es posible usar una EPROM (aunque sea una memoria, realmente son solo puertas), o una GAL o un CPLD, aunque para todo esto ello hace falta un programador.

No hay comentarios:

Publicar un comentario