E format discs

New configuration commands

*configure ADFSDirCache <size> [K]
This reserves some space for ADFS to keep a cache of recently used directories in a compressed form.

*configure ADFSbuffers <buffers>
This is used to reserve a number of 1K buffers which ADFS can use to speed up BGET, BPUT and GBPB. They are used for write behind, read ahead and caching of most recently used file buffers. If underused some of this space can get temporarily transferred to the directory cache. It does not have an optional K in the syntax since each buffer has a small overhead and hence the space reserved is not an exact number of Kbytes.

*Verify

*Verify will now do up to 5 retries, and report where it retried. Typical output

   Verifying ...
   0009A800  ??                   Managed to verify sector after 2 retries
   Disc error 08 at :0.000C5400   Failed to verify sector after 5 retries
   Verify failed

Final message is one of

    Verified ok
Verified with retries
Verify failed
Some discussion of soft and hard errors needed. This ties in with defects.

RAMFS

The module RAMFS provides a filing system RAM: which appears to the user much the same as ADFS.

New adfs SWIs

ADFS_Retries &40244
This can be used to read/write the retry word, the 4 bytes of which have the following meaning.
byte      meaning
0         number of retries for hard disc read/write sector
1         number of retries for floppy disc read/write sector
2         number of retries in floppy disc mount for each copy of map
3         number of retries for verify after *format before called a defect
On Entry:

On Exit

ADFS_DescribeDisc &40245

On Entry: On Exit: The disc record is filled in as follows: Entries marked * refer to details of new map format

Attribute extension

New directory discs (ie all except L format) have extended attributes. Bits 4-7 no longer repeat bits 0-3, but the only use ADFS makes of them is to display bits 4 and 5 in *FileInfo
   bit           meaning
   0             owner read access
   1             owner write access
   2             always zero
   3             locked bit
   4             public read access
   5             public write access
   6             reserved
   7             reserved

Extension of up call protocol

UpCall_MediaNotPresent (1) and UpCall_MediaNotKnown (2) have had their parameters extended as below to allow the Wimp to detect insertion of a disc if a drive supports disc changed.