Question

I'm working on an implementation of the Mac OS Classic runtime to run Classic programs on OS X again. The project includes a PowerPC emulator, a PEF executable linker, and the possibility to call into native (x86) code.

The emulator and the linker seem to work well, so I've shifted my focus towards (re)implementing Mac OS Classic libraries. I am currently trying to run MPW tools with my "emulator"; grabbing a copy of the MPW Shell literally just hours before Apple pulled it from its servers and running it inside SheepShaver, I compiled your generic "Hello World!" program and I am able to run it successfully.

However, that's about as far as compatibility goes. As I tried to run the Unmangle program, I found that it is trying to access _IntEnv and __NubAt3, two StdCLib exported globals, for which there apparently remains no documentation. (Google still has some Apple mailing list results for linkage problems in the early days of Mac OS X; Bing and Yahoo! turn back no result.)

I find that lack of documentation particularly upsetting. I am sometimes able to guess the globals' layout with Classic header files or even how they're used in programs with the disassembly, but it's not really efficient and there's nothing to tell me I got it right.

And even if I get most of StdCLib right, I'll still need documentation about other libraries at some point.

Where can I find documentation about the Mac OS Classic runtime?

No correct solution

OTHER TIPS

You may still be able to find some relevant Inside Macintosh volumes among what remains of Apple's classic Mac developer documentation.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top