PDB (Palm OS)
PDB is a container format for record databases in Palm OS, Garnet OS and Access Linux Platform. Its structure is similar to PRC resource databases.[1] The PalmDOC eBook format is a special version of the PDB format.[2]
Structure of PDB file
A PDB file contains a PDB header, PDB record headers and records.[3][4]
PDB Header |
PDB Record Header |
PDB Records |
PDB Header
The PDB header is located at the beginning of the file and contains meta-information on the file:[3]
Offset | Name | Type | Size |
---|---|---|---|
0x00 | name | char | 32 Bytes |
0x20 | file attributes | integer | 2 Bytes |
0x22 | version | integer | 2 Bytes |
0x24 | creation time | Macintosh time | 4 Bytes |
0x28 | modification time | Macintosh time | 4 Bytes |
0x2c | backup time | Macintosh time | 4 Bytes |
0x30 | modification number | integer | 4 Bytes |
0x34 | app_info | integer | 4 Bytes |
0x38 | sort_info | integer | 4 Bytes |
0x3c | type | integer | 4 Bytes |
0x40 | creator | integer | 4 Bytes |
0x44 | unique_id_seed | integer | 4 Bytes |
0x48 | next_record_list | integer | 4 Bytes |
0x4c | num_records | integer | 2 Bytes |
PDB Record Header
For every record, there is an eight byte record header, containing:[3]
name | type | size | notes |
---|---|---|---|
offset | integer | 4 bytes | Byte number in the PDB file (counting from zero), where the record is located |
attributes | byte | 1 byte | Attributes of the record (delete/dirty/busy/secret/category) |
UniqueID | integer | 3 bytes | Always 0 |
PDB Records
Now the records themselves follow. The usual order is AppInfoArea, SortInfoArea and records, sequentially.[4]
See also
References
- ↑ N. Rhodes, J. McKeehan. Palm OS Programming, Second Edition, O'Reilly, 2001, ISBN 1-56592-856-3
- ↑ MobileRead Wiki: Specification of the PalmDOC format
- ↑ 3.0 3.1 3.2 Paul J. Lucas (1998) PDB (Pilot Database) file format. Accessed on 20090308
- ↑ 4.0 4.1 Microfirst Software. The Pilot Record Database Format Accessed on 20090308