MagicHat : Progress update

Following up on Raphael Szwarc’s work, Wolf Rentzsch’s update, and Colin Barrett‘s suggestions, I finally got some results:


Indexing the frameworks get the assembly code in a CoreData database, which is tappped into to display the relevant data in a text bubble when you click on the function’s name.

There are a few problems left to iron out before a release, such as a major leak issue, and an apparent lax way to extract the data from the framework (I get roughly 80% of the functions), but it looks promising.

Stay tuned!


MagicHat 0.2

Pretending the underpinnings of your program are some sort of black-box may be the norm, but I have never been satisfied with it.

Bugs happen in the “black box” as well, and even though I don’t need to have the actual source code for the libraries I use, I very soon got the habit of stepping through their innards whenever I had something that wasn’t explainable only by looking at my own code.

One of the very first tools I used to hack my way around system libraries was MagicHat. It’s a small application written by Raphael Szwarc that takes the frameworks you use, and prints out every class, method and attributes it can find. Then all you have to do is guess what the function does and what kind of arguments you should use, and chances are, most of your problems are gone.

I had the chance to stumble upon the source code of this nifty application some time ago, and to update it for the current version(s) of Mac OS X.

Now it’s available for everyone to use. After 3 or 4 years of inactivity, it’s back online. Enjoy. I know I will :)