--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 PM By: Jose Action: Create file Time: October 7, 1980 6:09 PM By: Jose Action: Change type of BadSector arg. Time: January 13, 1981 2:37 PM By: Forrest Action: add density, rearrange. (1792)\f8