WiiRd forum

Wii & Gamecube Hacking => Wii Game hacking help => Topic started by: CrimsoN@DC on August 05, 2012, 10:25:05 PM

Title: Searching the code handler
Post by: CrimsoN@DC on August 05, 2012, 10:25:05 PM
Should be a simple question... how do you make an F6 code search the code handlers regions?  I tried F6000001 80008001, and looked at the code handler to see if the values were found, but they weren't.  I read somewhere how you can do this, however I can't find it anymore.  Help please? (:
Title: Re: Searching the code handler
Post by: Deathwolf on August 05, 2012, 10:31:37 PM
If I remember correctly, the code handler starts at 80000XXX... That's why the F6 code can't find it.
Title: Re: Searching the code handler
Post by: XeR on August 05, 2012, 10:38:56 PM
Quote from: Deathwolf on August 05, 2012, 10:31:37 PM
If I remember correctly, the code handler starts at 80000XXX... That's why the F6 code can't find it.
From 0x800018A8 to 0x80003000

QuoteF60000NN XXXXYYYY
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ

Creates an if (so this code requires an endif), then searches for the NN lines of Z values between XXXX0000 and YYYY0000 (or, if XXXX is 8000, between 80003000 and YYYY0000).
That's why you can't use F6 codes for the code hander.
Title: Re: Searching the code handler
Post by: Deathwolf on August 05, 2012, 10:41:18 PM
Just asking... why would you use a F6 code? The code handler itself isn't game dependent, is it?
Title: Re: Searching the code handler
Post by: CrimsoN@DC on August 05, 2012, 10:47:09 PM
No, as far as I've seen, it always holds the same thing at the same address (not the same value, but the same variable.. if that makes sense, I.e. it always has the hook type at 0x800001888.

However, with that issue, you can't just release the write of a code, unless there's something I don't know about.  For instance, what I was trying to do, was have a code enabled, see if the value was correct, then search the code handler and replace the actual code with 0s.

Edit: smooth move crim, pretty sure I saw what I thought I saw in the F6 code description, however I misinterpreted it.  Sorry that my edit is in the middle of the post, my phone won't let me scroll down any further.

The person I'm trying to help make a code for, doesn't have a gecko, so he can't just disable the code.  I just told him to start the game, activate the code, then take the code off and use codes like normal.

And are you sure you can't?  I know it only search 16 bits address ranges, however, I could've sworn I saw a way to do it somehow.
Title: Re: Searching the code handler
Post by: Deathwolf on August 05, 2012, 10:49:38 PM
What about a simple if code with standard codetypes?
Title: Re: Searching the code handler
Post by: CrimsoN@DC on August 05, 2012, 10:55:00 PM
Quote from: Deathwolf on August 05, 2012, 10:49:38 PM
What about a simple if code with standard codetypes?

Because I won't know what codes he is using, therefore I won't know where the code I'm replacing is.  And, if that is the only code he can use, why even bother with using it.

Maybe I'm taking the wrong approach to this, what the code is, is taking an address, and copying a value from it to another address (using 8C and 80), but has weird side effects if you leave it running.
Title: Re: Searching the code handler
Post by: Bully@Wiiplaza on August 07, 2012, 10:46:37 AM
Set a write breakpoint on the address you´re writing to, it will break and show you the code handler part that did the write. I almost never bother with weird codetypes since I can type down the assembly in a C0 code to achieve almost everything, such as memory copy. Is it what you want?

C0000000 00000003
3D80XXXX 818CXXXX
3D60ZZZZ 616BZZZZ
918C0000 4E800020

XXXXXXXX is the address from where you want to copy it´s value
ZZZZZZZZ is the address to which you want to copy

Title: Re: Searching the code handler
Post by: CrimsoN@DC on August 08, 2012, 02:04:21 AM
No, because without searching, correct me if I'm wrong, you won't know the address the code is at, due to whoever is using the code might have a different set of codes then you.