raphi.xyz

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.

  1. Dump the firmware from your adapter (see below). Keep the original as a backup.
  2. 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
    
  3. 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

Tags: boktai boktai2 electronics