At the opposite of most adapters I have designed until now, this
one is not meant to use old game controllers on modern hardware.
Instead, it allows one to control our good old NES with a
controller that came out 15 years later.
Having been contacted to make a Gamecube to NES adapter, I spent a few
evenings on this project and a lot more time in testing (It's a
pleasure to rediscover old games with a Wavebird).
Specifications:
Connects directly to a standard NES port.
Supports most Gamecube controllers. Tested with normal controllers, with the
white japanese imports with very long cable, with the popular Nintendo Wavebird and
an Intec wireless controller.
Turbo feature. While L is pressed, A and B become turbos.
Special mode for Mario Bros. (autorun).
Ready to use adapters available! Complete adapter (ready to play)
Pictures
Here are a few pictures. Please send me yours!
En développemnet.
Jour que d'une main...
NES et Wavebird
Adaptateur
Manette blanche supportée
Note: The 2 NES systems that can be seen above are my regular
modded NES
and my heavily modified NES
for Super Mario Bros arcade version.
Usage
The button mapping quite straight forward:
Gamecube
NES
A
A
B
B
Start
Start
Z
Select
D-Pad
D-Pad
Joystick
D-Pad
L
Turbo A/B
Special modes
If 'A' is held when turning on the NES, the 'auto run' mapping is
enabled. In this mode, the analog stick will press B automatically
above a certain threshold. Try playing Super Mario in this mode,
the only button you need to use is Jump!
If 'B' is held when turning on the NES, the gamecube joystick
will use a lower threshold (i.e. less deflection required to trigger
the corresponding D-Pad direction).
Compatibility
The adapter should work with most games. Up to now, the following have
been tested. Don't hesitate to contact me if you try other games with the adapter!
Baseball,
Battle Tank,
Blades of steel,
Bubble Bobble,
Ikari Warriors,
Kid Icarus,
Legendary Wings,
Lifeforce,
MetalStorm,
Metroid,
Paperboy,
R.C. Pro-AM,
Super Mario Bros,
Super Mario Bros II,
Super Mario Bros III,
Turtles II,
Zelda II.
Note: The pause screen in Paperboy does not work because of the way the game
is coded. With release 1.0, you cannot exit the pause screen. In firmware 1.1,
changes have been made which unpauses the game automatically. (Sorry, with the
current hardware, nothing better can be done. If the projet gets popular enough,
I will design new hardware to provide 100% compatiblity)
Electronics
I once again used my
multiuse pcb2 circuit with an Atmega8a. I use a linear
regulator to obtain the 3.3 volt power required for the Gamecube
controller from the 5 volt available at the NES controller port.
For this project, the MCU needs a crystal to run at 12Mhz.
Atmega8 pin
NES/Gamecube signal
PD2 / INT0
NES Latch
PC0
NES Data
PC1
NES Clock
PC5
Gamecube data (install external 1k pull-up resistor to 3.3 volt)
Important: Make sure the MCU has a 5 volt supply (3.3 volt is too low for 12 Mhz). Also,
make sure you supply both 3.3 volt and 5 volt to the gamecube controller.
Here is the pinout for the NES and Gamecube connectors:
Careful! The colors above are NOT representative of the wire colors (depends on the brand).
Only use the signal names!
Firmware
The firmware is available as a source code package (GPL License) and pre-compiled
.hex file.
Important!
For the controller to run at the correct speed (12Mhz), setting the
fuse bytes to the appropriate values is mandatory. In this
case, this means the following:
I cannot be held responsible for any damages that could occur to you
or your equipment while following the procedures present on this page.
Also, I GIVE ABSOLUTELY NO WARRANTY on the correctness and usability
of the informations on this page. Please note, however, that the procedures
above have worked in my case without any damages or problems.