MacApp2PPC Developers' Cooperative
Scott Vorthmann, MacApp2PPC Developer

MacApp2PPC Developers' Cooperative
Archived from Previous Years
1990's to 2000

Why New MacApp2PPC?

This version of MacApp2PPC is compatible with and compiles against version 3.3 of the Universal Interfaces. It will serve as a launching point for a Carbonizing effort.

IMPORTANT: in order to compile, a small change must be made to one of the UI files: you must remove the {$IFC qMacApp} condition surrounding the declarations of LongIntPtr and IntegerPtr in MacTypes.p. The reason for this is explained in a comment in UMacAppUtilities.p.

The source files are checked out read-only from a new MPW Projector source database. That database is also available for download, and contains a series of named revisions that represent sources that compile against earlier versions of the Universal Interfaces. See "Interfaces:Prefix Files:MacApp.version" for the full list of named revisions and their descriptions.

I started with the oldest version of MacApp2PPC that I could find, from CodeWarrior 9, and progressively added changes from more recent CodeWarrior CDs. After CodeWarrior Pro 2, MacApp2PPC was no longer included. Starting with the UIs from that disk (3.0.1), I kept adding changes to support each successive version of the Universal Interfaces.

This task was made possible and manageable by the wonderful folder-and-file comparison feature of CodeWarrior Pro 4, and by the CWProjector plugin from ElectricFish.


This was a large enough task anyway, for a volunteer effort. Here are the things that I let slip through the cracks. Hopefully some of you will address these shortcomings, and we can further improve the viability of MacApp2PPC.

  1. In my build testing, I did not compile all the sources. I left out a number of files that my app does not require.
  2. I did not compile any Example applications at all. The examples seem to have been updated for the earlier CW versions, but not for Pro2 (?) and later.
  3. I did not attempt to reproduce old CW build environments before Pro 2. The CW 9 and CW 11 versions of MacApp2PPC probably compile against the relevant UIs, but I cannot guarantee it.
  4. I do not own CW Pro 10, so that intermediate version is missing from the named revisions.

Where's all the stuff?

I've left out all the old MPW scripts and tools, since MPW doesn't do Pascal anymore, and everyone must be using CodeWarrior by now. The old files are separately available from the download site. Also among those files is the Documentation folder, which is fairly useless now.

Also, all the old Metrowerks support folders are missing. The entire collection is separately available from the download site..

What's New?

Besides the updated sources, I've included a "new CW projects" folder. This contains CW projects for the Pro2, Pro3, and Pro4 releases. (I don't own Pro5.) The Pro4 version, "MacApp.Pro4.mcp", was used for compiling against UIs 3.2 and 3.3.

What about Carbon?

One of the nice things about the 3.3 UIs is the compile-time reporting of non-Carbon-compliance when the TARGET_API_MAC_CARBON condition is set. The CW Pro4 project contains a target for trying this out. Of course, there are oodles of compiler errors, but there are less than there were a few days ago... the latest version of MacApp2PPC includes some initial work for Carbonization.

Copyleft © 2001 Scott Vorthmann. Share and share alike.