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