The author mentions that they didn't have a debugger and couldn't get MacsBug to work inside the emulator. A useful technique here is to use the emulator itself as the debugger: most emulators have features for setting breakpoints and single stepping through emulation and directly reading memory values from the emulated system's memory (by absolute memory address). For example, here is the documentation for 'hardware'-level debugging in the PCE emulator: https://github.com/jsdf/pce/blob/pcejs/doc/monitor.txtOne 'nice' thing about working with old architectures like classic Macintosh is that there is basically no abstraction between the software and the hardware, so manipulating the behavior of the emulated hardware becomes a powerful debugging tool.
saagarjha|5 years ago
duskwuff|5 years ago
It also had mouse support -- you could click any address on screen to view its contents and information about the memory region it was in, for instance -- and a menubar. :)
Macsbug won't run in the SheepShaver emulator, as it takes a number of shortcuts which are incompatible with MacsBug. It works fine under qemu-system-ppc, though!
monocasa|5 years ago