8

I have a Mac OS Classic application (a game) that I want to "debug". It has data files in a unique format than I am attempting to reverse-engineer. I've made some progress with a hex editor, but really need to see the code to work out the algorithm. I have been able to get the program running in Basilisk II, and it plays without issue. It runs under Mac OS Classic 7.5.3.

I am familiar with using OllyDbg and other Windows tools to add breakpoints to a running application, trap I/O, step through code, and disassemble memory. Is there a similar tool for Mac OS Classic?

Alternately, since it is running under an emulator, are there any emulators that have a built-in debugger function for the applications running inside it?

1
  • Not debugger, but disassembler, thus not an answer: IDA Pro is still one of the best disassemblers, and perfectly understands 68k code.
    – tofro
    Commented Oct 26, 2018 at 9:48

3 Answers 3

8

Back in the day, MacNosy was the go to disassembler tool to attack things like that. He also wrote a debugger. I can't speak to its status today. Apparently the web site still exists: https://www.jasik.com

(We are talking 68K code, right?)

2
  • 68k, yes (though it may be a fat binary, Basilisk II only does 68k). It looks like The Debugger is the answer here. I'll have to see if I can locate a copy. And maybe upgrade my OS to 7.6.1 since that's what the system requirements list on the site. Commented Oct 26, 2018 at 3:02
  • 1
    ResEdit also includes a decompiler which can help as well. A surprising number of programs were compiled with debug symbols left in so you can learn a lot about how they work that way. Several of my friends managed to crack 68k software with nothing more than ResEdit. Commented Oct 26, 2018 at 17:21
2

While the Jasik Debugger is probably the most capable tool, and appears to still be available for purchase, there is also TMON.

TMON has more capability than MacBugs, and is designed to explore the structure of memory and executing programs. It also seems to provide hints on parameters for system calls used by the program, making the code potentially much easier to trace than a pure disassembly.

I have seen TMON available for download in Classic Macintosh archives, such as macintoshgarden.org.

1

I remember MacsBug as a System wide debugger "INIT". It could be activated by pressing the NMI-Button on the programmer's switch on real hardware (or else by keyboard with Cmd-PowerOn, if I remember right).

See Wikipedia for details.1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .