5+ Disc Systems
The Disc Filing System (DFS) is a computer filing system developed by Acorn Computers Ltd. more...
Acorn's original DFS was a ROM for the BBC Micro. It has an extremely limited design in order to make best use of the 100 k single density floppy discs it was originally designed for. It uses a flat directory structure. Each filename can be up to 7 letters long, plus one letter for the directory in which the file is stored.
Directories in the DFS are single character prefixes on filenames used to group files, such as "F.BankLtr". The arrangement is flat and a default directory of "$" is used instead of a root directory. On requesting a catalogue of the disc, files in the current directory are shown with no directory prefix in one block, and below that are listed all other files in a second block, with their directory prefixes visible. For example:
The top seven files are all in the current directory which is $ on drive 0. Below that are all the files in other directories, in this case A and B. (The first line contains the disc title and the modification count.)
The catalogue (file table) occupies two disc sectors: one for the names and directories and a matching sector holding the file locations, sizes and metadata. Eight bytes of each sector are used for each file. With a further eight bytes from each sector reserved for the 12-byte disc title and the volume information, the total number of files on the disc (irrespective of which directory each file is in) is limited to 31. In the interests of saving space, the most significant bit of the directory letter for a file is used as the locked (read-only) flag.
DFS supports two volume sizes: 100 kB and 200 kB. These were simply referred to as 40 track and 80 track, referring to the number of tracks on the disc. DFS tracks hold 10 256-kilobyte sectors.
DFS is case preserving but not case sensitive. All-capitals filenames may be due to the BBC Micro defaulting to caps lock being on after a hard or soft reset, for the sake of BBC BASIC. The character set is quite permissive, and almost all of 7-bit ASCII from "!" upward is allowed. The single and multiple wildcard characters "#" (which DFS uses instead of "?") and "*" are not allowed in filenames, nor is "|" for no clear reason. Quotation marks are allowed, although BBC BASIC requires that a filename not begin with one:
SAVE "A""" will give A" as a name but the name "A (
SAVE """A") does not work. The ":" (drive) and "." (directory) characters are permitted as long as they're not confusing. A colon cannot begin a name because that is reserved for drive specifiers, but a name like "FOO:BAR" is allowed. "GAME.BAS" is also valid, with the dot being a normal character (one of the seven permitted) instead of a directory specifier such as in "F.MONEY" (file MONEY in directory F).
Read more at Wikipedia.org