Macintosh Pascal - Aronnax9000/WatchmakerSuite GitHub Wiki

Macintosh Pascal is a flavor of the Pascal programming language designed for the classic Macintosh. The first compiler native to the Macintosh which used Macintosh Pascal was MPW. Later, THINK Pascal, CodeWarrior, and Xcode supported Macintosh Pascal. Today, the Free Pascal compiler supports Macintosh Pascal through its "Mode MACPAS" compiler directive, although Free Pascal does not support the object-oriented features of Macintosh Pascal.

Primitive types

Macintosh Pascal is little-endian, and the values in its saved animals serialization files are in little-endian order. This was an issue in the Xcode port of monochrome Blind Watchmaker, where file input and output routines write values in big-endian format. It is not an issue in WatchmakerSuite (Java), as the ByteBuffer class used for file I/O is little-endian by default.

Ranges

A Pascal variable may be declared to hold a range of integer values, such as -1..1 seen in the [HandednessType]] gene of [conchomorphs.

Enumerations

Enumerated types in Macintosh Pascal are represented as a single byte.