Spectrum floppy file format structure - Pera Putnik (PP) format
Used floppies are standard 3.5 inch double density (720K) diskettes. Sides are threaten separated, because of mechanical switch. 10 sector/track is used, so total capacity per side is 400 KB.
It is divided as follows (by sectors):
0 | Pointer to first free sector. Contains only 2 bytes - initially it is 10 | |
1-9 | Catalog of files on
side. Each file record contains 32 bytes, so there is place for 9x16=144 files per disk side |
|
10-799 | Data area. Here are placed files in order as they been recorded |
Minimum used length is 1 sector -
512 bytes. File from 7 bytes uses 1 sector, from 513 bytes 2
sectors etc. No fragmentation... But only last file can be
deleted.
File record structure (by byte):
0 | Type. 0=Basic, 3=Code . Arrays are not supported |
1-15 | Name. Max length is 15 char. Lower case not equ. to capital (like in Unix) |
16-17 | Lenght of file in bytes |
18-19 | Begin address for code, Autostart line for Basic |
20-21 | Lenght of Basic program without variables |
22-23 | Start sector on disk side (logical) |
24 | Lenght in sectors (or used sectors count) for file - byte (Max len 96 sect=48KB) |
25-26 | Stack pointer - for snapshot |
27-31 | Not used, should be zero |
As you may see, first 22 byte is similar to standard Spectrum
tape header, except that name lenght is enlarged to 15 chars.
Additional entries are for file position on disk & snapshot.
Pera Putnik pkpera@sezampro.yu