Patching the raphnet SNES controller to Wii/GameCube adapter
The raphnet (no relation) SNES controller to Wii/GameCube cable is commonly used for playing GBA games using the Game Boy player hardware on a GameCube. For the vast majority of games, this adapter works perfectly. However, Boktai 2 is an exception in high-level play. The adapter maps certain SNES button combinations to special GameCube Buttons, namely:
SNES Buttons | GC Input |
---|---|
Select+L+R+Left | C stick left |
Select+L+R+Right | C stick right |
Pressing any of these button combinations will cause the adapter to ignore those inputs, and send only the C stick inputs instead. Unfortunately pressing those buttons simultaneously is required for fast menuing in Boktai 2! So here's how to patch the adapter firmware to remove those mappings.
WARNING! Do this at your own risk! I accept no responsibility for damage done to the adapter by following these instructions. These instructions only work with the part number "6-050" (see back side of the adapter case) hardware revision.
- Dump the firmware from your adapter (see below). Keep the original as a backup.
- Apply the following patch to the firmware file:
--- a/flash.hex 2024-06-09 09:28:04.952251075 +0200 +++ b/flash.hex 2024-06-09 09:28:04.618475793 +0200 @@ -160,7 +160,7 @@ :2013E0008D819E81AF81B885842B952BA62BB72B87839087A187B287F8E0CF0ED11CCDCF71 :2014000028960FB6F894DEBF0FBECDBFDF91CF911F910F91FF90EF90DF90CF900895CF92CD :20142000DF92EF92FF920F931F93CF93DF93CDB7DEB728970FB6F894DEBF0FBECDBFFB01E6 -:20144000C0902101D0902201DC0111964D915D916D917C911497411551056105710519F4FC +:20144000C0902101D0902201DC0111964D915D916D917C911497411551056105189419F4C6 :201460001092B40117C04232B0E35B076105710519F42CE93FEF07C0413250436105710500 :2014800049F424E630E03093B3012093B20121E02093B4012091B401211103C08F017C0147 :2014A00024C08091B201838346C084239523A623B723481759076A077B07A1F4D8011796A9
- Flash the modified firmware file to the adapter.
(You can also download the firmware from raphnet's GitHub repository, but I have not had success getting the adapter to boot those firmwares after flashing them manually using an AVR programmer. I blame my own ineptitude.)
Connecting the programmer
You need an ATmega168a compatible programmer and a 6 pin pogo header (2 rows, 3 pins per row, 2.54 mm pitch). Disconnect the adapter from both the SNES controller and the GameCube/Wii before connecting the programmer. Dump the current firmware from the adapter as a backup before flashing the patched one. The programming pads use the standard AVR 6-pin ISP pinout:
![programming pinout](/~raphi/s/aqcR6LVgtrT.png)
Tags: boktai boktai2 electronics