Angus Duggan's HDFS shares the same basic file structure as Acorn's DFS.
Sector 1 byte 6 bit 3 is set for HDFS with but 2 clear for single-sided and set for double-sided disks.
HDFS subdirectories follow the same format as the main catalogue.
Catalog format
This is the structure of the catalogue header:
Byte | Track 0 Sector 0 | Track 0 Sector 1 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
0 | 10Sect | First 8 characters of volume title padded with NULs or spaces | Last 4 characters of volume title padded with NULs or spaces | ||||||||||||||
1 | |||||||||||||||||
2 | |||||||||||||||||
3 | |||||||||||||||||
4 | BCD catalogue cycle number | ||||||||||||||||
5 | Number of files | ||||||||||||||||
6 | Boot Opts | 1 | Sides | 98 | |||||||||||||
7 | 7 | Sectors in volume | 0 | ||||||||||||||
8 | 10Sect | File name padded with spaces | 7 | Load address | 0 | Last file | |||||||||||
9 | 18Len | 15 | 8 | ||||||||||||||
10 | 7 | Execution address | 0 | ||||||||||||||
11 | IsDir | 15 | 8 | ||||||||||||||
12 | Read | 7 | File length | 0 | |||||||||||||
13 | Write | 15 | 8 | ||||||||||||||
14 | Exec | 17 16 Exec | 17 16 | 17 16 Load | 9 8 | ||||||||||||
15 | Lk. | Directory | 7 | Start sector | 0 | ||||||||||||
16 | 10Sect | File name padded with spaces | 7 | Load address | 0 | Second to last file | |||||||||||
17 | 18Len | 15 | 8 | ||||||||||||||
18 | 7 | Execution address | 0 | ||||||||||||||
19 | IsDir | 15 | 8 | ||||||||||||||
20 | Read | 7 | File length | 0 | |||||||||||||
21 | Write | 15 | 8 | ||||||||||||||
22 | Exec | 17 16 Exec | 17 16 | 17 16 Load | 9 8 | ||||||||||||
23 | Lk. | Directory | 7 | Start sector | 0 | ||||||||||||
Differences between Acorn DFS and HDFS
-
For the volume header, bytes 0…7 of both sectors:
- Track 0 sector 0 byte 0 bit 7 is bit 10 of the number of sectors in the volume.
- Track 0 sector 1 byte 6 bit 3 is set. Bit 2 is the number of sides-1, 0=single sided, 1=double sided.
-
For file entries:
-
Sect
is bit 10 of the start sector. -
Len
is bit 18 of the file length. -
IsDir
defines if the entry is a file or a subdirectory. -
If the
Read
,Write
orExec
attributes are set then the file can not be read, written or executed respectively.
-
-
For a directory entry, the directory has the same layout as the main Catalog, except the volume title becomes the
directory name
[Citation needed]
.
Sources
This section is based loosely on the following:
- Acorn DFS disk format - beebwiki.mdfs.net
- Acorn, Watford, Solidisk and Duggan DFS Filesystem Structure mdfs.net