Basic Structures
Strings
A string is encoded as a SListB. This means it can be upto 3F characters long. Strings use ASCII Codes..
Offsets
At many places, other locations in the file are referenced. These locations are given as Offsets: the number of bytes from the start of the file. Offsets are always encoded in Longs.
Lengths
Lengths are encoded within longs. The unit is a 1/5A0 inch (1/1440 decimal). This means 237 (567 decimal) units corresond to 1 cm.
Sizes
Font sizes are expressed within longs. The unit is a 1/14 point (1/20 decimal). As a point equals 1/48 point (1/72 decimal), this is actually the same unit as used for Lengths.
Colors
Colors are encoded within three bytes. Each byte ranges from 00 (black) to FF (white). This is clearly intended to be a RGB encoding, but the Psion 5 only has a greytone display. All three bytes should be equal to express a greytone, and in practice, only values 00 00 00, 55 55 55, AA AA AA and FF FF FF are seen.