71. Acorn DFS 0.90 and 1.20 (DNFS) workspace ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ** GENERAL ALLOCATION ** Memory Locations Function ~~~~~~~~~~~~~~~~ ~~~~~~~~ &D00- DFF General Workspace E00- EFF Copy of Track-0 Sector-0 (with variations) F00- FFF Copy of Track-0 Sector-1 1000-10FF General Workspace 1100-11FF Parameter Blocks for Files 1200-12FF 1st File Buffer + SPOOL/EXEC 1300-13FF 2nd File Buffer 1400-14FF 3rd File Buffer 1500-15FF 4th File Buffer 1600-16FF 5th File Buffer 1700-18FF Further Workspace ** USEFUL LOCATIONS ** {A} means ascii code {N} means literal number &E00-E07 {A} First 8 bytes of disc Title, (see &F00-&F03). E08-E0E {A} First Filename, (7 bytes, padded with spaces). E0F {A} First Directory, (00 if same as current directory). NB: MSB of directory will be set if file is locked. You should AND this byte with 127 to get directory, and AND it with 128 to detect if it is locked. E10-E16 {A} Second Filename E17 {A} Second Directory E18-E1E {A} Third Filename E1F {A} Third Directory E20-E26 {A} Fourth Filename E27 {A} Fourth Directory etc.. EF8-EFE {A} Thirty-First Filename EFF {A} Thirty-First Directory F00-F03 {A} Last 4 bytes of disc Title (If less than 12 characterss, title is terminated with 00 on 0.90, but padded with spaces on 1.20.) F04 {N} Number of writes to the Catalogue. (Hex number which appears after disc Title) F05 {N} Number of files on disc, multiplied by 8. F06 {N} !BOOT file *OPT4 Option number. (eg 3 for EXEC). 0.90 1.20 &10CA &10C9 {A} Current Directory 10CB 10CA {N} Current Drive number 10CC 10CB {A} Library Directory 10CD 10CC {N} Library Drive number