Debugging channels

Started by Macka, December 20, 2009, 08:36:21 AM

Previous topic - Next topic

Macka

Hi everyone,

I'm hoping I'm posting this in the correct place.

What I'm wanting to know is the limitations of USBGecko in terms of debugging.

Can it be used to debug the Wii System Menu?
Can it be used to debug Wii channels such as the Mii channel and the Photo channel?
Can it be used to debug non-Wii channels such as the HomeBrew channel?

I have searched for a long time (on and off) over a range of sites, the only info I can find is:
It can be used for cheating "hacking" games.
It can be used for debugging games and HomeBrew apps.

Oh, in case this makes any difference, I do not have a modchip, but I do have HBC installed and I'm running Wii System Menu 4.2E.

ichfly

#1
It can debug the systemmenu, channals (I don´t now if it can hack the hbc) but only if your gecko os version is greater than 1.9

You may must patch some IOS to use systemmenu (rebooter) hacking
sorry for bad english

working on pointer search(new version 35% ready) so I won`t make codes yet.

giantpune

they have specifically coded it so that HBC does not show up on the channel list.  you would need to edit that and recompile it to try to load HBC with hooks and stuff.

Romaap

#3
Quote from: brkirch on December 20, 2009, 06:59:26 PM
The code for debugging homebrew is already mostly there, you just need to:
1. Set "Gecko Pause Start" to "YES".
2. Use geckoload.exe to transfer a DOL executable to Gecko OS.
3. Use WiiRD to manually hook the DOL executable.

You will probably need to disassemble the homebrew executable on your PC to find a good location to hook from, but if you have access to the source code for the homebrew you want to debug then I would recommend compiling it and using the ELF file for finding the memory address to hook from and the DOL file for loading onto the Wii.  The reason there isn't a hook for homebrew yet is because there are a lot of variations between the code generated from different versions of devkitpro so it is difficult to find code that is common between all homebrew executables and executes often.