Gecko OS mod

Started by WiiPower, May 26, 2010, 05:14:52 PM

Previous topic - Next topic

WiiPower

What does it code do? Does it need to be done all the time, or is it a one time thing? If it only needs to be done once, can you tell me what exactly it patches, so i can try to manually patch it before booting the game?

Romaap

#46
Enable hooking 1
20379530 4E800020  // if 32 bits at 80379530 are 4E800020
C637EBD4 800018A8  // create a branch to 8000018A8 in 8037EBD4
C6379530 800018A8  // create a branch to 8000018A8 in 80379530
2130DDC5 7FE3FB78  // endif, if 32 bits at 8130DDC4 are 7FE3FB78
C730DDC4 800018A8  // create a branch to 800018A8 in 8130DDC4
0400183C 00000000  // write 00000000 to 8000183C
E2000000 80008000  // end of code

Enable hooking 2
043CB1A8 3C808000  // write 3C808000 to 803CB1A8
043CB1AC 93E4183C  // write 93E4183C to 803CB1AC
043CB1B0 809F0008  // write 809F0008 to 803CB1B0
043CB1B4 4BDE05A8  // write 4BDE05A8 to 803CB1B4
041AB758 4821FA50  // write 4821FA50 to 801AB758

goemon_guy

Quote from: Link on May 29, 2010, 06:55:04 AM
For Metroid 1.0 the Gamecube master codes are:

Quote8C379530 4E800020
C437EBD4 0000FF01
C4379530 0000FF02
00000000 40000000
8D30DDC4 7FE3FB78
C530DDC4 0001FF03
0400183C 00000000
00000000 40000000

043CB1A8 3C808000
043CB1AC 93E4183C
043CB1B0 809F0008
043CB1B4 4BDE05A8
041AB758 4821FA50

Converted to WiiRd those should be:

Quote20379530 4E800020
C637EBD4 800018A8
C6379530 800018A8
2130DDC5 7FE3FB78
C730DDC4 800018A8
0400183C 00000000
E2000000 80008000

043CB1A8 3C808000
043CB1AC 93E4183C
043CB1B0 809F0008
043CB1B4 4BDE05A8
041AB758 4821FA50

Try running the game with BOTH these codes activated.
For general master codes: yes, they will most likely interfere Gecko's behavior if games come with a 1-line master code (2 lines encrypted) then there should be no need for a master code conversion. Multiline codes require conversion though!

I ran the game with BOTH codes and the game hooked and allowed me to connect to WiiRd
-Currently hacking the following game(s):
...
Request a code via PM, if you wish.

WiiPower

So i actually need all 4 codes? Or which ones exactly did you use?

Bad news: I just tied all hooks i could find in latest Gecko OS and Gecko OS 1.07b. None of them is found in the gamecube games i tried. So until someone finds a new hook, we only have 1 GC hook.

Quote from: Romaap on May 29, 2010, 12:57:27 PM
Enable hooking 1
20379530 4E800020  // if 32 bits at 80379530 are 4E800020
C637EBD4 800018A8  // create a branch to 8000018A8 in 8037EBD4
C6379530 800018A8  // create a branch to 8000018A8 in 80379530
2130DDC5 7FE3FB78  // if 32 bits at 8130DDC5 are 7FE3FB78  (which is weird cause the address ends with a 5)
C730DDC4 800018A8  // create a branch to 800018A8 in 8130DDC4
0400183C 00000000  // write 00000000 to 8000183C
E2000000 80008000  // end of code

Enable hooking 2
043CB1A8 3C808000  // write 3C808000 to 803CB1A8
043CB1AC 93E4183C  // write 93E4183C to 803CB1AC
043CB1B0 809F0008  // write 809F0008 to 803CB1B0
043CB1B4 4BDE05A8  // write 4BDE05A8 to 803CB1B4
041AB758 4821FA50  // write 4821FA50 to 801AB758

Hmm, part 2 is something i could just do. And part 1 looks like hooking to me. A hook is applied this way:
The loader looks for a specific pattern in the .dol, and when it finds it, it overwrites the next (i don't know what it is, a return?) with a branch to 800018A8. So this is actually hooking the game at up to 3 different places? It does look a bit weird to me.

write 00000000 to 8000183C
This looks weird to me too, and if it's required, i fear i only works in the code handler it was created for.

I don't want to criticise anybody, i'm just telling my thoughts.

goemon_guy

#49
I used these ones:
20379530 4E800020
C637EBD4 800018A8
C6379530 800018A8
2130DDC5 7FE3FB78
C730DDC4 800018A8
0400183C 00000000
E2000000 80008000

043CB1A8 3C808000
043CB1AC 93E4183C
043CB1B0 809F0008
043CB1B4 4BDE05A8
041AB758 4821FA50

Also, I think that you tried them in the PAL version of the game, didnt you? These codes are for the American version of the game.

I also tried converting the US version to the PAL version, if that might help.

20372434 4E800020
C6372434 800018A8
C6368A3C 800018A8
21302FB0 80010014
C7302FB0 0001FF03
0400183C 00000000
E2000000 80008000

0419F618 48215954
043B4F6C 3C808000
043B4F70 93E4183C
043B4F74 809F0008
043B4F78 4BDEA6A4
-Currently hacking the following game(s):
...
Request a code via PM, if you wish.

WiiPower

Ok, this one works to hook into it. I thought the code we got earlier was PAL...

So are there any volunteers for writing a guide on how to hack gamecube games on a wii with just wii + usb gecko + pc? I'm willing help little with it, but i don't want to write it.

goemon_guy

I could volunteer, but I am not sure what information should be present in it.

When you say a guide to help hack Gamecube games, do you mean how to set up the Wii and PC for hacking?
-Currently hacking the following game(s):
...
Request a code via PM, if you wish.

WiiPower

Quote from: goemon_guy on May 29, 2010, 03:11:09 PM
I could volunteer, but I am not sure what information should be present in it.

When you say a guide to help hack Gamecube games, do you mean how to set up the Wii and PC for hacking?

No just the stuff you need to do when you have HBC, the official Gecko OS + Ocarina or Wiird running:
TBR to get IOS236
cMIOS installer
what settings to use in Gecko OS mod, which memory card slot to use etc.

Ocarina and Wiird work the same way for gamecube and wii, so you don't need to explain that in detail, that's instructions for another guide.

dcx2

Quote from: Romaap on May 29, 2010, 12:57:27 PM
Enable hooking 1
20379530 4E800020  // if 32 bits at 80379530 are 4E800020
C637EBD4 800018A8  // create a branch to 8000018A8 in 8037EBD4
C6379530 800018A8  // create a branch to 8000018A8 in 80379530
2130DDC5 7FE3FB78  // if 32 bits at 8130DDC5 are 7FE3FB78  (which is weird cause the address ends with a 5)
C730DDC4 800018A8  // create a branch to 800018A8 in 8130DDC4
0400183C 00000000  // write 00000000 to 8000183C
E2000000 80008000  // end of code

That's because an if code with the LSB set is actually an end-if;if combo.  It ends the previous if and starts a new one.

WiiRd Gamer

#54
Do I use the VI hook or debugger in gamecube options because when I'm loading the game it says patching hook then it freezes. :(
Also, do I install cMIOS or patch it?
$M@T_T$

WiiPower

Quote from: WiiRdgamer on May 29, 2010, 06:37:21 PM
Do I use the VI hook or debugger in gamecube options because when I'm loading the game it says patching hook then it freezes. :(
Also, do I install cMIOS or patch it?

You run the cMIOS installer, which installs a patched MIOS. If you get the text mode stuff where it says "hook patched" and "enabled audio streaming" then you should have a compatible cMIOS. There are backup cMIOS that are not compatible, so until you got it work, you must use mine.

Which games do you try? Some games are just not compatible.

Romaap

Quote from: dcx2 on May 29, 2010, 06:23:14 PM
That's because an if code with the LSB set is actually an end-if;if combo.  It ends the previous if and starts a new one.
Oh, yeah.. I forgot about that :)

goemon_guy

#57
I wrote a guide on how to install and stuff. Thrown together rather quickly and supposedly tells all information for even the new users to easily install!
If I missed something major, please tell me so that I can fix it.

[spoiler]*DISCLAIMER*
If you by some chance brick your Wii during the installation process, no one is to blame but yourself.
You have been warned. Continue with caution!

This is a tutorial on how to make Gecko OS Mod work on your Wii.
You're going to need to download the packages to get it to work. The packages that you are going ot want to download are the ones that contain the Application for the HBC, and then the cMIOS installer. The Application runs off of a special cMIOS, so you are going to have to install it if you want to be able to load Gamecube games with cheats or even WiiRd.

So, once you have downloaded them, put them into the applications folder on the root of your SD Card. The folder that the HBC gets all of your apps from.
What you will have to do next is install the cMIOS. Use the cMIOS installer included, and make sure to patch it for homebrew.
I would download the MIOS v4 straight from the NUS servers. To do so, you will have to hit right or left until you get to Download from NUS. In order to do this, you need a valid internet connection to your Wii.

Of course, you could easily also install it using the NUS downloader to download the MIOS from the servers from your PC, or some other method. The wad that you obtain from 'this method' will have to be in on the root of the SD card.


Once you have completely installed the cMIOS, return to the Homebrew channel.
Now you're going to have to go and download something called the Trucha Bug Restorer. This is to restore the Trucha Bug to the IOS36. When you go to download it, get the most recent version. As of July 25th 2010, the latest version is 1.13.
With this Wii application, you can restore the Trucha Bug to the IOS36. But when it asks you where you want to install it, you should make it install it to IOS236. With it in that slot, you will be able to use the rebooter with the Gecko OS Mod.

OK, so now that that is over with, you can now load the Gecko OS Mod, and use the Gamecube cheats with it. With that said, go into the Gecko OS Mod from the Homebrew Channel or some method to load Homebrew.
You can go into options, and go to Ocarina/WiiRd settings, and enable Debugger and Cheats for both Wii and GC. Then, for the GC hook, set it to VI. That is the only hook that is even possible.

Now, you can use codes on your Gamecube games, and if you have a USB Gecko, you can use WiiRd on them!

PS. There will be some games that just wont load with it, or WiiRd just wont communicate. You will have to get a master code from the original game and convert it to hook to the game. [/spoiler]
-Currently hacking the following game(s):
...
Request a code via PM, if you wish.

WiiPower

Good news, i just took a screenshot from Eternal Darkness. I read about the read read issue at WiiBrew and that ejecting and reinserting the disc helps and it does. Well if the loader allows the game to reset the drive, which the current Gecko OS mod doesn't do. I will try to fix those games completely before i upload the updated version.

Yoshi52

You people and your coding. :s


So, l tried those three games...
Wave Race Blue Storm does the same thing as the AR; gives the "Could not read disc" message right as the game launches.
Star fox Adventures has a disc ID so confusing, Gecko OS mod can't read it or something. :P
Metal Gear Solid can launch WITHOUT a hook, but if the hook gets patched, it doesn't go passed the "Enabled Audio Streaming."


Also, I heard those Master Codes were just things telling the AR/GS where to put it's codes in RAM.