--FormatSA800.mesa (last edited by: Forrest on: January 13, 1981 6:16 PM)
DIRECTORY
FloppyChannel USING [DiskAddress, Status],
PhysicalVolume USING [Handle, PageNumber];
FormatSA800: DEFINITIONS =
BEGIN
-- FormatDisk a track on the disk.
-- Clients MUST set the context appropriately, and do IBM track0
-- formatting if desired.
FormatTracks: PROCEDURE [
handle: PhysicalVolume.Handle, start: FloppyChannel.DiskAddress, trackCount: CARDINAL]
RETURNS[status: FloppyChannel.Status, countDone: CARDINAL];
-- FormatPilotDisk calls FormatDisk repeatedly to initialize a disk to the format
-- expected on Pilot volumes.
-- ScanPilotDisk reads each sector on a disk formatted for Pilot access
-- BadSector is raised for each (non-fatal) bad page found.
Density: TYPE = {single, double, tryDoubleThenSingle};
PilotResult: TYPE = {goodDisk, cantSetContext, badTrack0, badLabelArea};
BadSector: SIGNAL [p: PhysicalVolume.PageNumber]; -- RESUME’able
FormatPilotDisk: PROCEDURE [
handle: PhysicalVolume.Handle,
name: STRING ← NIL, density: Density ← tryDoubleThenSingle]
RETURNS[status: FloppyChannel.Status, result: PilotResult];
ScanPilotDisk: PROCEDURE [handle: PhysicalVolume.Handle]
RETURNS[status: FloppyChannel.Status, result: PilotResult];
END....
LOG
Time: September 26, 1980 3:09 PMBy: JoseAction: Create file
Time: October 7, 1980 6:09 PMBy: JoseAction: Change type of BadSector arg.
Time: January 13, 1981 2:37 PMBy: Forrest Action: add density, rearrange.