Adaptar cualquier mando a la 360 (a traves de ICU) TUTORIAL
Lo primero es explicar presentar el proyecto. Este proyecto pretende crear una ICU (Interfaz Común Universal) es decir un sistema válido para cualquier mando, para cualquier consola. Me he centrado en la 360 porque no existe todavía ningun adaptador.
La ICU tendrá para la conexión exterior un conector DB25 hembra (El del puerto paralelo) y una correspondencia igual para todos los botones y direcciones.
Este es el diagrama que he desarrollado.
Distribución de las patillas
1- ARRIBA
2- ABAJO
3- IZQUIERDA
4- DERECHA
5- BOTÓN1
6- BOTÓN 2
7- BOTÓN 3
8- BOTÓN 4
9- BOTÓN 5
10- BOTÓN 6
11- BOTÓN 7
12- BOTÓN 8
13- BOTÓN 9
14- BOTÓN 10
15- BOTÓN 11
16- BOTÓN 12
17- EXTRA
18- EXTRA
19- EXTRA
20- EXTRA
21- EXTRA
22- EXTRA
23- EXTRA
24- GND
25- CORRIENTE (GENERALMENTE +5V)
Todos los extras son para futuras expansiones como por ejemplo la vibración, controlar las palancas analógicas,etc.
Debemos respetar siempre esta distribución de los pines de la ICU.
Conexión de un mando que será el motor de la ICU. En nuestro caso un mando 360.
Para conectar el DB25 al mando de 360 primero debemos entender cual es la función o que entradas llegarán al conector. Cada nº corresponde un botón o dirección. Pues bien por cada cable de cada nº circulará una corriente de + o - 5V cuando esté pulsado y ninguna si no lo está. Entonces usaremos switches conectados a cada pulsador del mando, que se unan cada vez que se pulse un boton.
Estos switches son de esta clase 74HC4066
Ahora solo debemos conectar cada pulsador de 360 a los switches
Así haremos con todos los botones y direcciones y usaremos tantos chips 74hc4066 como botones necesitemos.
Para dar un toque profesional a nuestra ICU, introduciremos el mando en una caja de plástico diseñada para la ocasiónj a la que le perforaremos el agujero para el conector db25 y el del cable usb.
Si el mando fuese inalámbrico solo haríamos un agujero para el db25 y miraríamos si la forma de que dentro de la caja transmita la señal, por ejemplo hacer un agujero cuadrado y poner un trozo de metacrilato para que haya transmision. Además hay cajas con soportes para pilas.
No debemos olvidar conectar a la corriente y la masa proveniente del pad de 360 a los 74hc4066 y al conector db25.
*******************
Antes de nada: He encontrado la información que pongo a continuación para conectar estos mandos en varias páginas de internet. No tengo idea de programar los PICS. Y luego les pido ayuda para aumentar el nº de pads distintos para conectar a la ICU.
*******************
Conectando un Pad a nuestra ICU
Lo primero que debemos hacer es investigar el comportamiento de cada pad.
Empezaremos con uno Fácil el de Megadrive de 3 Botones.
Necesitamos un 16F628 PIC.
Megadrive Pin # PIC Pin
1 A6
2 A7
3 A1
4 A2
5 VCC
6 A3
7 A0
8 VDD
9 A4
Salidas PIC Pin
Left B0
Right B1
Up B2
Down B3
A B4
B B5
C B6
Start B7
No debemos olvidar de conectar las patillas 24,25 de la ICU al chip
24 a Vss y 25 a Vdd
Diagrama de conexión:
Este manual es el primero que hago y a lo mejor está incompleto, postead y preguntadme lo que querais e intentaré ayudaros en lo que pueda.
Este diagrama es seguramente compatible con master system así que los que podais probarlo confirmad.
Tengo también diagramas de nes y saturn. Cuando pueda los pongo.
Si alguien pudiese adaptar un mando de 6 botones de megadrive (necesitará otro pic con más patillas) que me lo diga y mande el codigo.
También quisiera que si alguien puede escribir un programa para otro pic de cualquier otro mando, lo podemos añadar y así ampliar el nº de dispositivos. El homebrew se acerca, de esta manera podremos tener para cada emulador un mando distinto.
En cuanto pueda actualizo con novedades y correcciones.
UN SALUDO, ELKIMAN