NAME¶
PDB - (Pilot Database) file format
SYNOPSIS¶
#define dmDBNameLength 32 /* 31 chars + 1 null terminator */
struct pdb_header { /* 78 bytes total */
char name[ dmDBNameLength ];
Word attributes;
Word version;
DWord create_time;
DWord modify_time;
DWord backup_time;
DWord modificationNumber;
DWord appInfoID;
DWord sortInfoID;
char type[4];
char creator[4];
DWord id_seed;
DWord nextRecordList;
Word numRecords;
};
struct pdb_rec_header { /* 8 bytes total */
DWord offset;
struct {
int delete : 1;
int dirty : 1;
int busy : 1;
int secret : 1;
int category : 4;
} attributes;
char uniqueID[3];
}
DESCRIPTION¶
The PDB (Pilot Database) file format is used by all models of the Palm Pilot and
IBM Workpad. The format consists of a header followed by a set of record
headers followed by the records themselves.
Word Sizes¶
In the SYNOPSIS above, the types ``Byte,''
``Word,'' and ``DWord'' are
used just as in the Pilot headers. The type ``Byte''
is 8 bits; ``Word'' is 16 bits;
``DWord'' is 32 bits. The latter two are in big-endian
format.
CAVEATS¶
- 1.
- The C structures given in the SYNOPSIS above are illustrative and most
likely will not work in actual C code since compilers align data members
on word boundaries.
- 2.
- The PDB file format presented here is not official and was written at the
time when PDB file format was not public. It is possibly outdated. The
official standard is available on the Palm web page. (SEE ALSO)
AUTHOR¶
Paul J. Lucas <pauljlucas@mac.com> Updated by Erik Schanze
<eriks@debian.org>