[File Structure]

File Structure

All Psion files start with a block of 4 longs: the «Header Section». The first three describe what kind of file this is, the last is a checksum.

The exact structure of the remaining file depends on what kind of file this is. But some general things can be said.

[ID 10000037 Files][ID 10000037 File]

ID 10000037 files

Examples of these files are the «Word File» and «Sheet File».

Address Size Description

0000 L UID1: 10000037

0004 L UID2

0008 L UID3

000C L UID4: Checksum of UID1, UID2 and UID3

0010 «Offset» Offset of «Section Table Section»

At offset 0010, usually a long is found with the address of the «Section Table Section». The «Section Table Section» contains a list of section identifiers and their addresses.

[ID 10000050 Files][ID 10000050 File]

ID 10000050 files

NOTE: BELOW DATA IS INCOMPETE AND PARTIALLY INCORRECT! SORRY...

Examples of these files are the Data File and Agenda File.

Address Size Description

0000 L UID1: 10000050

0004 L UID2

0008 L UID3

000C L UID4: Checksum of UID1, UID2 and UID3

0010 L Unknown

0014 L Unknown: always 00 00 00 00 ?

0018 «LListB» The file data

«LListE» Section start table

There are two ways in which you can see this structure. On the one hand, it contains, starting on address 0018, a sequence of a «LListB», a word and a «LListE». The «LListB» contains the bulk data, the «LListE» contains 5 byte elements with offsets, relative to address 001E, in each last long where all sections start.

On the other hand, at address 001E a list of sections start. Each section starts with a word encoding the length of the section. Seen in this way, the Section Start Table is part of just another of these sections.