Hacking What exactly is Hook Type

  • Thread starter Thread starter Crass
  • Start date Start date
  • Views Views 28,023
  • Replies Replies 5

Crass

Rock me Dr. Zaius
Member
Joined
Nov 3, 2006
Messages
1,080
Reaction score
291
Trophies
1
Location
Oregon
Website
www.ds-scene.net
XP
1,080
Country
United States
I know its related to the Ocarina cheats, and that it has to do with when the cheats are initiated into the game code? But can anyone give a techincal answer to what exactly it means, and what the various options in CFG loader mean? Ive scrounged through google and the forum search to find a technical answer, but every thread is basically "I dont know what it means exactly, just that you have to change it sometimes to make cheats work with certain games". Instead of just blindly testing all the options, it would be nice knowing what each one does. Sorry if this has been answered before, its just hard to find the answer.
The options listed in CFG loader are as follows:
  • No Hooks
  • VBI
  • Wii Pad
  • GC Pad
  • GXDraw
  • GXFlush
  • OSSleepThread
  • AXNextFrame
Thanks in advance.
 
Hook types are just known places in executing Wii code where you can place a "hook" that allows you to jump to your code and in this particular case, apply memory hack cheats. In example the first hook listed allows the Gecko OS to do it's thing during the Vertical Blanking Interval of the Wii's Video Output. Normally, this is a perfect place to be, but some games will crash or slow down if this hook is used hence the other options.

That's the gist of it. Any real coder out there would probably explain hooks in a more "correct way" but I hope this gives you an idea.

EDIT: Here's the WIKI article on HOOKING, keep you minds out of the gutter
tongue.gif


-[]D
 
  • Like
Reactions: 1 person
PPSainity said:
Hook types are just known places in executing Wii code where you can place a "hook" that allows you to jump to your code and in this particular case, apply memory hack cheats. In example the first hook listed allows the Gecko OS to do it's thing during the Vertical Blanking Interval of the Wii's Video Output. Normally, this is a perfect place to be, but some games will crash or slow down if this hook is used hence the other options.

That's the gist of it. Any real coder out there would probably explain hooks in a more "correct way" but I hope this gives you an idea.

EDIT: Here's the WIKI article on HOOKING, keep you minds out of the gutter
tongue.gif


-[]D

Thanks for the quick reply, and the wikipedia link, I am still curious what the other hook types mean exactly.
 
  • Like
Reactions: 1 person
usually they get their name from the function that they target. find a game with a .elf in the contents, open the elf in IDA, and search bytes of the hook. It should only find you 1 result in that elf, which should be the function that shares a similar name with the hooktype.


interestingly enough, I wanted to take a screenshot of this to show you an example, and i accidentally found a little "error". here I was looking for the AXNextFrame hook. In the new wheel-of-fortune game, the function "__AXNextFrame" appears to be the target of the hook. But there are 2 instructions in the hook that are reversed in this game. So, if you revers the middle 2 instructions in this hook, you should be able to hook wheel of fortune, and some newer games with this hook.
axnextframe.png
 
  • Like
Reactions: 1 person

Site & Scene News

Popular threads in this forum