This Advanced Disc Filing System contains a hierarchical directory structure
which is not compatible with the existing Disc Filing System. The new
filing system is, however, compatible with Winchester drives. A Winchester
drive may be used as one drive number and one or more floppy drives used as
other drive numbers.
The filing system commands include:
*ACCESS <List spec> (E) (L) (W) (R) - Prevents accidental deletion
or erasure of files.
L - Lock, R - Read, W - Write, E - Execute only. D is a pseudo
variable set if the object <List spec> is a directory. In this case
R and W have no meaning and are ignored.
Default states: For a File W & R are set.
For a directory D, L & R are set.
*ADFS - starts ADFS from another filing system (A+BREAK is
*BACK - Used to go back to the previously selected directory prior
to a *DIR or *BACK.
*BYE - closes files and copies RAM buffer onto disc.
*CDIR <Ob Spec> - creates a new directory with the name Ob Spec.
*COMPACT <SP> <LP> - compacts information on a disc. <SP> is the
Start Page of the memory area to be used whilst compacting and <LP>
is the length in pages of the memory. If none specified, current
*COPY <List Spec> <Ob Spec> - copies files defined by <List Spec>
into directory defined by <Ob Spec>.
*DESTROY <List Spec> - deletes multiple objects.
*DIR <Ob Spec> - to select a new Currently Selected Directory. If
no <Ob Spec> is specified the root of the directory is selected. At
start up Drive 0 and the Root directory are automatically selected.
*DISMOUNT (<Drive number>) - this command MUST be used before
exchanging discs in a drive.
*FADFS - same as ADFS but starts with no directory ie no disc
start-up (F+BREAK is equiv).
*FREE - displays free space left in sectors and bytes.
*LCAT - catalogue the current library as in *CAT.
*LEX - examine the current library as in *EX.
*LIB <Ob Spec> - select the current library.
*LOAD <Ob Spec> (<Load address>) - loads a file into memory at the
specified start address or, if not defined, at the file's own start
*MAP - display the free space map for the current drive.
*MOUNT - initialises a disc.
*OPT 1 (n) - this enables or disables the display of a file's
information each time a file is accessed on a disc.
n = 1 to 99 to enable
n = 0 to disable
*OPT 4 (n) - changes the auto-start action, [SHIFT] and [BREAK], of
the disc in the currently selected drive.
*OPT 4 0 does nothing
*OPT 4 1 will *LOAD the file !BOOT
*OPT 4 2 will *RUN the file !BOOT
*OPT 4 3 will *EXEC the file !BOOT
*REMOVE <Ob Spec> - same as *DELETE except that no error message is
produced if the object does not exist.
*RENAME <Ob Spec> <Ob Spec> - renames an object and moves it to
another directory if required.
*RUN <Ob Spec> <Optional parameters> - this command loads a file
into memory and then jumps to its execution address, unless the
execution address is FFFFFFFF when the file is EXEC'd as a text
*SAVE <Ob Spec> <Start addr> <Fin addr> (<Exe addr>) (<Reload addr>)
- saves an area of memory, typically a machine code program, into a
file on the disc. A maximum of 47 objects can be held in a
*SPOOL <Ob Spec> - opens the named file, and spools subsequent
screen output to that file and closes the file when terminated with
*TITLE <Title> - changes the title of the currently selected
directory (a maximum of 19 characters are allowed).
NOTE: See MOS spec for other common filing system commands.
The following calls are relevant for accessing files from assembly language:
OSFIND - Opens a file for reading/writing update
OSFILE - Load/Save data. Enquire after/Alter catalogue information.
OSARGS - Reads/Writes an open file's attributes.
OSGBPB - Write/Read a group of bytes to/from a specified open file.
OSBGET - Gets a byte from a specified open file.
OSBPUT - Puts a byte to a specified open file.
Four OSWORD calls are recognised by ADFS:
OSWORD with A=&70 - Read master sequence number and status byte.
OSWORD with A=&71 - Read free space.
OSWORD with A=&72 - Access disc controller.
OSWORD with A=&73 - Read last error information.