Hacking Nintendont

  • Thread starter Thread starter sabykos
  • Start date Start date
  • Views Views 10,192,662
  • Replies Replies 42,895
  • Likes Likes 194
Is there a way I can change game without having to exit off of Nintendont Wii U? It gets annoying to exit off the app,reopen Homebrew,run Mocha and then go back on.I tried the “Shutdown” button combination on my WiiU Gamepad but that doesn’t work (R+Z+B+Down on DPad)
 
Last edited by restless15,
Now that I've looked, I need to buy an extra adapter, it's not viable for me even more that I live in Brazil.

Is there any way to use the Switch Pro Controller with Nintendont even if it's by cable?

I saw in the topic that it was possible to even use PS4 control.
the only way to use the switch pro con is with that tuto
 
Is there a way I can change game without having to exit off of Nintendont Wii U? It gets annoying to exit off the app,reopen Homebrew,run Mocha and then go back on.I tried the “Shutdown” button combination on my WiiU Gamepad but that doesn’t work (R+Z+B+Down on DPad)
You can't.
 
Is there a way I can change game without having to exit off of Nintendont Wii U? It gets annoying to exit off the app,reopen Homebrew,run Mocha and then go back on.I tried the “Shutdown” button combination on my WiiU Gamepad but that doesn’t work (R+Z+B+Down on DPad)
Launch from the Homebrew Channel.
 
Yeah IMO if you're going to use injects it's best to use CBHC. But some end up bricking their switch using it so, I've never had a problem.
 
you could try to edit "loader/source/ppc/PADReadGC.c" in source and try to compile yourself.

(i had to change myself btn configuration for ssx 4 for classic controller pro)

e.g.:

Code:
diff --git a/common/include/NintendontVersion.h b/common/include/NintendontVersion.h
index f500cb0..dca137b 100644
--- a/common/include/NintendontVersion.h
+++ b/common/include/NintendontVersion.h
@@ -12,6 +12,6 @@

 // "Special" version.
 // This should only be set in custom builds, i.e. not mainline.
-//#define NIN_SPECIAL_VERSION                  "-MChax3"
+#define NIN_SPECIAL_VERSION                    "-ssx_butswap"

 #endif
diff --git a/loader/loader.dol b/loader/loader.dol
index 41735ef..47273e6 100644
Binary files a/loader/loader.dol and b/loader/loader.dol differ
diff --git a/loader/source/ppc/PADReadGC.c b/loader/source/ppc/PADReadGC.c
index 073dfda..a48d624 100644
--- a/loader/source/ppc/PADReadGC.c
+++ b/loader/source/ppc/PADReadGC.c
@@ -743,37 +743,6 @@ u32 _start(u32 calledByGame)
                        if(BTPad[chan].button & BT_TRIGGER_ZR)
                                button |= PAD_TRIGGER_Z;
                }
-               else if(BTPad[chan].used & C_CCP)       //digital triggers
-               {
-                       if(BTPad[chan].button & BT_TRIGGER_ZL)
-                       {
-                               if(BTPad[chan].button & BT_TRIGGER_L)
-                                       Pad[chan].triggerLeft = 0x7F;
-                               else
-                               {
-                                       button |= PAD_TRIGGER_L;
-                                       Pad[chan].triggerLeft = 0xFF;
-                               }
-                       }
-                       else
-                               Pad[chan].triggerLeft = 0;
-
-                       if(BTPad[chan].button & BT_TRIGGER_ZR)
-                       {
-                               if(BTPad[chan].button & BT_TRIGGER_L)
-                                       Pad[chan].triggerRight = 0x7F;
-                               else
-                               {
-                                       button |= PAD_TRIGGER_R;
-                                       Pad[chan].triggerRight = 0xFF;
-                               }
-                       }
-                       else
-                               Pad[chan].triggerRight = 0;
-
-                       if(BTPad[chan].button & BT_TRIGGER_R)
-                               button |= PAD_TRIGGER_Z;
-               }

 // Nunchuck Buttons
                if((BTPad[chan].used & C_NUN) && !(BTPad[chan].button & WM_BUTTON_TWO)) //nunchuck not being configured
@@ -1303,18 +1272,18 @@ u32 _start(u32 calledByGame)
                                goto DoExit;
                }       //end nunchuck configs

-               if(BTPad[chan].used & (C_CC | C_CCP))
+               if(BTPad[chan].used & C_CC)
                {
                        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;
+                        {/* 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
                        {
@@ -1341,7 +1310,78 @@ u32 _start(u32 calledByGame)

                        if(BTPad[chan].button & BT_BUTTON_HOME)
                                goto DoExit;
-               }
+               }
+
+                if(BTPad[chan].used & C_CCP)   //classic controller pro with digital triggers setup
+               {
+                       if(BTPad[chan].button & BT_TRIGGER_ZL)
+                       {
+                               if(BTPad[chan].button & BT_TRIGGER_L)
+                                       Pad[chan].triggerLeft = 0x7F;
+                               else
+                               {
+                                       button |= PAD_TRIGGER_L;
+                                       Pad[chan].triggerLeft = 0xFF;
+                               }
+                       }
+                       else
+                               Pad[chan].triggerLeft = 0;
+
+                       if(BTPad[chan].button & BT_TRIGGER_ZR)
+                       {
+                               if(BTPad[chan].button & BT_TRIGGER_L)
+                                       Pad[chan].triggerRight = 0x7F;
+                               else
+                               {
+                                       button |= PAD_TRIGGER_R;
+                                       Pad[chan].triggerRight = 0xFF;
+                               }
+                       }
+                       else
+                               Pad[chan].triggerRight = 0;
+
+                        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_TRIGGER_Z;
+                                // switch X and R Button for games like ssx4
+                                if(BTPad[chan].button & BT_TRIGGER_R)
+                                        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;
+                                if(BTPad[chan].button & BT_TRIGGER_R)
+                                        button |= PAD_TRIGGER_Z;
+                        }
+                        if(BTPad[chan].button & BT_BUTTON_START)
+                               button |= PAD_BUTTON_START;
+
+                       if(BTPad[chan].button & BT_DPAD_LEFT)
+                               button |= PAD_BUTTON_LEFT;
+                       if(BTPad[chan].button & BT_DPAD_RIGHT)
+                               button |= PAD_BUTTON_RIGHT;
+                       if(BTPad[chan].button & BT_DPAD_DOWN)
+                               button |= PAD_BUTTON_DOWN;
+                       if(BTPad[chan].button & BT_DPAD_UP)
+                               button |= PAD_BUTTON_UP;
+
+                       if(BTPad[chan].button & BT_BUTTON_HOME)
+                               goto DoExit;
+               }

                Pad[chan].button = button
Would it be possible to have
ZL/R as half-pressed GC L/R
L/R as full pressed GC L/R
Minus as GC Z
?
 
with a "wii classic controller pro" ? yes, this should be possible.

I currently have my wiiu at a friends house and cant test,so it'll take a few days at least


edit:
maybe you can test the attached version
 

Attachments

Last edited by mive,
Is there a feature to allow choosing a custom location and file for the emulated memory card? If not, I really think they should implement it as an option, per game or whole depending on what the user chooses. It would be extremely useful when constantly switching between Nintendont and Devolution on Wii U. Then Nintendont could be set up to, instead, load the memory card file from USB:/apps/gc_devo/memcard.bin or wherever someone puts their file. Also they should add Slot B memory card emulation support if they don't already have it.
 
Last edited by Home_Rowed,
Is there a way to force the game to boot using a certain region's BIOS?
For example, to make a japanese game run under iplusa.bin or something?
 
Is there a way to force the game to boot using a certain region's BIOS?
For example, to make a japanese game run under iplusa.bin or something?
Why would you want that? Wouldn’t it be better to just use the Japanese bios for a Japanese game or the ntsc-u bios for a USA game?
 
Is there a feature to allow choosing a custom location and file for the emulated memory card? If not, I really think they should implement it as an option, per game or whole depending on what the user chooses. It would be extremely useful when constantly switching between Nintendont and Devolution on Wii U. Then Nintendont could be set up to, instead, load the memory card file from USB:/apps/gc_devo/memcard.bin or wherever someone puts their file. Also they should add Slot B memory card emulation support if they don't already have it.
no you cant choose a custom mcmemu save location, there is a way to use a slot b card but its preety complicated and it isnt on the settings per say.

nintendont always saves mc emus on root of sd or usb under saves, cant be simpler, if devolution supporrs choosing your sd card location just change that.
 

Site & Scene News

Popular threads in this forum