The original MacOS was written in Pascal which has different calling conventions than C, so this was needed for C to interface with the OS. Definitely not needed anymore.
A file path in the original MacOS: By storing the volume number, the ID of the directory, and the file name, files could be moved without a path to it becoming invalid.
Loaded a resource (structured data) from a resource file (essentially a database of structured data). For some reason the MacOS port of System Shock didn't use the original data files, but converted them to MacOS resource files and then used the OS to load textures etc. So it's not needed anymore when using the original System Shock data files.
Thanks for the background on all of this! Now that things are running reliably, we could start going through and removing all of the Mac specific references.
Not really an issue, just some notes on the comments in the above files:
Carbon.h
:The original MacOS was written in Pascal which has different calling conventions than C, so this was needed for C to interface with the OS. Definitely not needed anymore.
A pointer to a CGrafPort, part of the original MacOS's drawing framework.
A handle (movable pointer, used to avoid memory fragmentation) to a PixMap, a pixel image.
A handle to a ColorTable, a color table (d'uh) used with indexed images.
A file path in the original MacOS: By storing the volume number, the ID of the directory, and the file name, files could be moved without a path to it becoming invalid.
This returns e.g. why the last memory allocation failed. It should be ok to just remove it.
carbon_stubs.c
:Loaded a resource (structured data) from a resource file (essentially a database of structured data). For some reason the MacOS port of System Shock didn't use the original data files, but converted them to MacOS resource files and then used the OS to load textures etc. So it's not needed anymore when using the original System Shock data files.
Sets the CGrafPort (see above) that is used by drawing functions. Indeed not needed anymore after switching to SDL.