4 ms·
ResEdit was my gateway to reverse engineering, at age maybe 13 or so. I first used it to change icons, add keyboard shortcuts to menu items, and so on. This tau
by matheist 6y ago
ResEdit was my gateway to reverse engineering, at age maybe 13 or so. I first used it to change icons, add keyboard shortcuts to menu items, and so on. This taught me that the internals of software applications weren't just magic but actually were reducible to the 1's and 0's they were made of.
I didn't know how to extend this discovery to the actual behavior of applications until I encountered an upgrade named "Super ResEdit" which provided a disassembly tool.
That showed a mysterious pair of columns with words like "ADD" and "MUL" and "BRA" and "BEQ" and so on in the first column, with some hex in the second column. What do those things mean? Hmm, if I hover over "BRA" and "BEQ" I get a little arrow pointing to a different line, and "BEQ" always follows a line like "CMP"... aha, "BRA" means "branch" and "CMP" means "compare" and "BEQ" means "branch if equal".
And the second column is some hex numbers which are always corresponding in the same way to the first column. If I change the second column, the first column changes to match!
And that's how child-me learned to search for "check_registration_code" and change the "BEQ" at the end to "BRA".
- duskwuff 6y agoThe ResEdit CODE editor was wonderful. It's a pity there was no real equivalent for PowerPC PEF executables. (There were some third-party tools like Fragmalyzer, but they were harder to come by.)
- matheist 6y agoHmm, I don't remember what I did when my family got a PowerPC to replace our 68k. I definitely remember using MacsBug for live debugging but I don't remember whether I had a static disassembler.
- duskwuff 6y agoToo late to edit, but here's a screenshot of the editor in question: https://i.imgur.com/65Y4yLC.png https://i.imgur.com/65Y4yLC.png If you're familiar with the game, you might even be able to guess what this logic is for. :)
- matheist 6y agoWhoa that brings me back! That must be the cheat code detection, though I'm surprised to see "PIRN" -- was it not "PORN TIPS GUZZ ARDO" or something?
- duskwuff 6y agoYep! There's some more code further down that handles the other components of that code. This particular version of the game used a modified version of that cheat code ("pirntopsguzzardo", with some weird conditions to trigger it). No idea what led to that change.
- tambourine_man 6y agoportipsguzzardo… I didn't know english back then, so I memorized the letters in sequence. Amazing I can still remember it, even the rhythmic sound I came up with to help me memorize, 25 years later. So many hours spent in this game. I loved it. And I loved ResEdit just as much.
- hamburglar 6y ago0x4e71 FTW