En los primeros días que tuve mi Wii, tuve un ataque de compras. De un sólo golpe compré, para jugar mejor, un
Wii remote, un
nunchuck y dos
classic controllers. Más tarde decidí que había sido una mala idea, pues el objetivo de los classic controller era jugar juegos de GameCube.
Más tarde descubrí que no se puede jugar juegos de GameCube con el Classic Controller, pues para empezar el Wii Remote es apagado en el mismo momento que se entra al canal disco con un juego de GameCube.
Muy pocos juegos de Wii usan el Classic Controller, de hecho juegos en los que no hace ninguna gracia jugar con el Wiimote (más adelante hablaremos de este tema) no usan el classic controller. Los que sí lo aceptan también aceptan los controlles de GameCube.
El uso del Classic Controller por el momento está limitado a los juegos de la consola virtual. De estos solamente para los de SNES y Nintendo 64, pues para las demás consolas el Wii remote sostenido horizontalmente es más que suficiente. Los juegos de ambas consolas también pueden jugarse sin problemas con el control del GameCube.
Basicamente, no hay nada que no se pueda hacer con el Classic Controller que no se pueda hacer con el control de GameCube. De hecho el control de GameCube tiene además una ventaja, puede vibrar. El Classic Controller es semi-inalámbrico (se conecta con un cable al Wii Remote), mientras que el control de GameCube puede ser inalámbrico en el caso del Wavebird.
Aquí una gráfica comparando el uso de ambos controles en diferentes consolas.

Al momento de escribir estas líneas había en la consola virtual 18 juegos de SuperNintendo y 6 de Nintendo de 64. A excepción de los de Zelda, no hay ninguno que pida a gritos ser jugado en el Wii en lugar de un simple emulador. Aunque hubiera, no hay ninguno que amerite desairar al control de GameCube (tal ves Street Fighter II).
Con respecto al precio, un Classic Controller cuesta USD $20, pero en México se consigue entre 300 y 350 pesos. Un control de GameCube alámbrico genérico se consigue en entre 120 y 150 pesos. Mientras que por el costo de un Classic Controller, se puede conseguir un control Wavebird inalámbrico para GameCube.
Pero bueno, pensando en que ya no había nada más qué hacer dado que en la tienda donde los compré no aceptan devoluciones, pensé que tal vez podría adaptarse el Classic Controller para funcionar para emular un control de GameCube. Aunque las entradas son diferentes, ambos se conectan por puertos seriales de 6 pins. Así que me dispuse a investigar los protocolos de comunicación de ambos controles pensando que con un microcontrolador se podrían entender.
El
protocolo del comunicación del control de GameCube es bastante sencillo, basicamente la consola manda una cadena de 24 bits para consultar el estado del control y éste contesta con una cadena de 64 bits con el estado de todos los botones.
En páginas como
Wiili,
Wiire o
WiiBrew, por mucho tiempo no encontré información útil sobre cómo leer datos del Classic Controller. Discuten sobre si el protocolo es fast I²C o algo desconocido, si los datos están encriptados o no, si se mandan en frames de 7,8,9 bits o algo raro, si trabaja a 250khz o 400 khz. Al parecer es más sencillo de lo que parece. Encontré esta página sobre alguien que
utiliza un Arduino para leer datos del nunchuck. Dado que de acuerdo a Wiili, el nunchuck y el classic controller se leen igual, no debe ser tan descabellada la idea de hacer un convertidor de Classic Controller a GameCube Controller.
En resumen, es mejor comprar dos controles de GameCube en lugar de un classic controller. Otra opción es esperar a que surja algo que haga que en verdad valga la pena comprarlo. Si ya lo tienen, presionen a tanto electrónico que conozcan para construir un adaptador.