Psion Agenda File Format
Series 3t Agenda files are normal database files (see Psionics file DBF.FMT).
Each record holds five fields: four words followed by one qstr
.
The descriptive record contains one subrecord of type 15. This subrecord always contains exactly 12 bytes:
Offset | Length | Description |
0 | 2 | Time of first appointment slot shown on a day, in minutes past midnight |
2 | 2 | Default length of an appointment, in minutes |
4 | 2 | 0 = alarms off by default, else alarms on by default |
6 | 2 | Default advance time for alarms, in minutes |
8 | 2 | Default alarm time for untimed appointments, in minutes past midnight |
10 | 1 | Time separator character |
11 | 1 | Unused |
Each data record holds one calendar event (possibly repeating), one day-note event (possibly repeating), or one to-do item. The record contents for each of these are described here.
Calendar events have the format:
Field | Type | Description |
1 | 16-bit int | day number of the event |
2 | 16-bit int | duration of the event in minutes, times 2, plus 1 if there is not an alarm attached |
3 | 16-bit int | time of the event, in minutes past midnight |
4 | 16-bit int |
time of the alarm in minutes before 23:59 of the day the event occurs on, or 0xFFFF if there is no alarm |
5 | qstr |
item text |
Repeating calendar events have the format:
Field | Type | Description |
1 | 16-bit int | 0xFFFE |
2 | 16-bit int | duration of the event in minutes, times 2, plus 1 if there is not an alarm attached |
3 | 16-bit int |
time of the event, in minutes past midnight |
4 | 16-bit int | time of the alarm in minutes before 23:59 of the day the event occurs on, or 0xFFFF if there is no alarm |
5 | qstr |
item text followed by repeat information |
Day note events have the format:
Field | Type | Description |
1 | 16-bit int | day number of the event |
2 | 16-bit int | 0 if an alarm is attached, or 1 if not |
3 | 16-bit int |
position of item in list:
|
4 | 16-bit int | time of the alarm in minutes before 23:59 of the day the event occurs on, or 0xFFFF if there is no alarm |
5 | qstr |
item text |
Repeating day note events have the format:
Field | Type | Description |
1 | 16-bit int | 0xFFFE |
2 | 16-bit int | 0 if an alarm is attached, or 1 if not |
3 | 16-bit int |
position of item in list:0x8000 = first day item on that date, 0x8001 = second day item on that date, etc.
|
4 | 16-bit int |
time of the alarm in minutes before 23:59 of the day |
5 | qstr |
item text followed by repeat information |
To-do items have the format:
Field 1 (word): 0xFFFF
Field 2 (word): position of item among those with this priority:
0 = first item
2 = second item
4 = third item
6 = fourth item
etc.
Field 3 (word): item priority (1 to 9 inclusive)
Field 4 (word): unused
Field 5 (qstr): item text
For repeating items, the item text is always followed by a 6 byte block giving the repeat information (this block is included in the qstr
as far as the database format is concerned). This block has the form:
Offset 0 (byte): repeat type:
0 = yearly
1 = monthly by date
2 = monthly by day
3 = weekly
4 = daily
5 = workdays
Offset 1 (byte): repeat interval
Offset 2 (word): day number of the first occurence
Offset 4 (word): day number of the last occurence, or 0 if repeats forever
Day numbers must lie between 29219 and 54786 (years 1980 and 2049) inclusive. The end of a calendar event must lie in the same day as its start.
No Comments