VLIR File Structure A VLIR file is a tree structured file. The directory points to a single sector called the VLIR sector. This sector is a list of the initial tracks and sectors of each of its branches (or chains). If the branch address is track $00 sector $FF, then that branch does not exist and is not used. It is a place holder. A branch address of track $00 sector $00 specifies the end of the sector. This is used by the OpenRecordFile to count the number of branches. It is possible not to have this end marker. That is the case when there are 127 branches. This limit of 127 branches explains many of GEOS's limits, i.e. 127 note pad pages, 127 pictures in a photo album, 64 pages and 63 pictures in a GEOwrite file, etc. Each branch is the equivalent of a normal file, i.e. each sector points to the next with the first two bytes. VLIR Sector ------------- -------------- -------------- | Record 1 |-------> | Data Block | --> | Data Block | -> ... | Track/Sec | -------------- -------------- |-----------| -------------- | Record 2 |-------> | Data Block | | Track/Sec | -------------- |-----------| -------------- -------------- | Record 3 |-------> | Data Block | --> | Data Block | -> ... | Track/Sec | -------------- -------------- |-----------| | . | | . | |-----------| -------------- -------------- | Record 127|-------> | Data Block | --> | Data Block | -> ... | Track/Sec | -------------- -------------- -------------