Hacking Changing Classic Control Configurations on Nintendont/GX Loader

GaelMaverick

Member
OP
Newcomer
Joined
Dec 13, 2016
Messages
18
Trophies
0
Age
32
XP
65
Country
Brazil
Hello there,

After so long I took the dust off my Wii to try some Game Cube classics. To my dismay (and I saw too many others too), the button configuration goes from not very optimal to borderline unplayable. I would want to at least change the X button to the B button, The A button to the Y button, and so on. The "-" button clockwise configuration change, only works "once" (X to A, A to B), falling short still. Is that right? Since I am pretty rusted on tweaking with wiimods, what would be the easiest/most simple way, to get that done?

Thank you so much in advance.
 

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
244
Trophies
0
Age
38
XP
525
Country
Germany
not sure if there is an way without compiling nintendont, but I think you need to change source:

loader/source/ppc/PADReadGC/source/PADReadGC.c:
Code:
            if(BTPad[chan].used & C_SWAP)
            {    /* turn buttons quarter clockwise */
                if(BTPad[chan].button & BT_BUTTON_B)
                    button |= PAD_BUTTON_A;
                if(BTPad[chan].button & BT_BUTTON_Y)
                    button |= PAD_BUTTON_B;
                if(BTPad[chan].button & BT_BUTTON_A)
                    button |= PAD_BUTTON_X;
                if(BTPad[chan].button & BT_BUTTON_X)
                    button |= PAD_BUTTON_Y;
            }
            else
            {
                if(BTPad[chan].button & BT_BUTTON_A)
                    button |= PAD_BUTTON_A;
                if(BTPad[chan].button & BT_BUTTON_B)
                    button |= PAD_BUTTON_B;
                if(BTPad[chan].button & BT_BUTTON_X)
                    button |= PAD_BUTTON_X;
                if(BTPad[chan].button & BT_BUTTON_Y)
                    button |= PAD_BUTTON_Y;
            }
 

GaelMaverick

Member
OP
Newcomer
Joined
Dec 13, 2016
Messages
18
Trophies
0
Age
32
XP
65
Country
Brazil
Quite the work if not with the bat file. Nobody shared some already done, kind of how people did with HiD controllers, right?
 

godreborn

Well-Known Member
Member
Joined
Oct 10, 2009
Messages
22,058
Trophies
1
XP
13,750
Country
United States
I just made it with the make file. I had to put the zipped kernel.elf in the loader folder or else it error'd. must've been a mistake on github:

1635431661949.png
 

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
244
Trophies
0
Age
38
XP
525
Country
Germany
How do I recompile it?
usually you enter the directory and use
Code:
make
command. (like said above by godreborn)

if you tell me the exact button changes (for "normal" or "quarter clockwise" or both) I can also compile you a version. If you want you can seperate classic contoller (the one with the analog triggers) and classic controller pro
 
  • Love
Reactions: GaelMaverick

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
244
Trophies
0
Age
38
XP
525
Country
Germany
on windows you need to use make windows=1, because of:
Code:
ifeq ($(windows), 1)
    ZIP = zip/zip.exe
else
    ZIP = zip
endif
 
  • Like
Reactions: godreborn

GaelMaverick

Member
OP
Newcomer
Joined
Dec 13, 2016
Messages
18
Trophies
0
Age
32
XP
65
Country
Brazil
usually you enter the directory and use
Code:
make
command. (like said above by godreborn)

if you tell me the exact button changes (for "normal" or "quarter clockwise" or both) I can also compile you a version. If you want you can seperate classic contoller (the one with the analog triggers) and classic controller pro
You are awesome guys,

My idea was to follow the most used layout for PS2/Xbox Games (that I am playing on GC) that would be on Classic Controller (not Pro):

X to B
A to Y
B to X
Y to A

The quarter clockwise already help with games that have less/repetitive commands like Megaman. Now, a very Noobish question, but would be possible to add more "quarter clockwise" layouts by pressing "-". Doing a full turn would make almost all games up to be played in the most optimized layouts. Asking because I was looking at the matter on reedit and this kind of question/issue is more usual than I previously thought...
 
  • Like
Reactions: godreborn

mive

Well-Known Member
Member
Joined
Jul 19, 2018
Messages
244
Trophies
0
Age
38
XP
525
Country
Germany
- first of all here is your nintedont version with button layout from above (I also changed it for "quarter clockwise" to B-Y-X-A [starting from A button]). The zip filename lists the button layout starting from A button (clockwise)

- second about adding more layout options for minus button:
maybe would be possible if adding some sort of counter (0-3 then back to 0) and use switch/case. But not sure it this is the right approach (also not sure if this would add some sort of lag).
But you can use multiple nintendont versions and use custom nintendont path in usbloader gx per game setting (not sure if other loaders have such option)

- last but not least about megaman collection, here's a link to patch the iso, because it seems to have some issues in original state: https://github.com/FIX94/gc-mm-collection-patcher
 

Attachments

  • nintendont_6.498_5cfb2f1_Y_X_A_B.zip
    1 MB · Views: 9
  • Like
Reactions: godreborn

godreborn

Well-Known Member
Member
Joined
Oct 10, 2009
Messages
22,058
Trophies
1
XP
13,750
Country
United States
yeah, I patched mega man anniversary collection a while back. the original button layout is terrible, making the game almost unplayable.
 

godreborn

Well-Known Member
Member
Joined
Oct 10, 2009
Messages
22,058
Trophies
1
XP
13,750
Country
United States
@mive , do you know how to get this to work with the build.sh? it errors at the same place as the make command with zipping the kernel, and windows=1 doesn't work with it.
 
General chit-chat
Help Users
    KennieDaMeanie @ KennieDaMeanie: Or honor your famiry