Data

Data is a data record. The data in the record is accessed by the fielddefs. The layout below is not required, but is what is output by the built-in applications (except the appointment book). The first few bytes are the fixed fields. They are in the same place in every record. They are radio buttons, checkboxes, times, and dates. Also in this group are relative fields--all the string fields generated by the native palmtop applications are relative. The relative fields give the real offset of the string in the record so that unused space can be packed out.

Offset   Name              Type          Description 
0...5    Record Header     recordheader  See recordheader structure above.
                                         0x0b 0x??  0x??  0x??  0x??  0x??  
6...n    Fixed Fields      int           Either fixed fields or pointers to variable
                                         fields.  Number of entries is determined by the
                                         fielddefs.  
n+1      Null Placeholder  char          A 0 byte.  All null strings in the record are
                                         compressed to point to this single byte, instead
                                         of putting in multiple nulls.  
n+2...m  Relative Fields   char          Relative Fields are null-terminated strings. The
                                         number is determined by the fielddefs.