Angus Duggan HDFS

Alternate DFS for the BBC Micro

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 or Exec 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: