In AMSDOS it is possible to store files in two ways: headerless and with a header. Headerless files are often files which were created with OPENOUT and SAVE"filename",a. Programs normally have a file header, which consist of 128 bytes and contain the following data:
|BYTE||User number||0-15, or #E5 for deleted entries|
|8 BYTES||Filename||Unused characters are filled with space|
|3 BYTES||Extension||Unused characters are filled with space|
|BYTE||Block number||Tape only|
|BYTE||Last block||Tape only|
|BYTE||File type||0:BASIC 1:Protected 2:Binary (ASCII files don't have headers)|
|BYTE||First block||Tape only?|
|WORD||Logical length||Actual file length is here|
|3 BYTES||Real length||24-bit number. Just a copy, not used!|
|WORD||Checksum||Unsigned sum of all bytes until this field|
|59 BYTES||Unused||Free to use|
To calculate the checksum just add all bytes from 00 up to and including byte 66 together.
This is only a summary. All details are in Firmware Guide chapter 9, page 4.