-- Copyright (C) 1983, 1985 by Xerox Corporation. All rights reserved.
-- FloppyHeadDummy.mesa, HGM, 3-Jul-85 3:23:53
DIRECTORY
HeadStartChain USING [Start],
PrincOps USING [StateVector],
Zone USING [Alignment],
FloppyDiskFace USING [Attributes, Context, DeviceHandle, LogStatus, OperationPtr, Status, Tries];
FloppyHeadDummy: PROGRAM
IMPORTS RemainingHeads: HeadStartChain
EXPORTS HeadStartChain, FloppyDiskFace =
PUBLIC BEGIN OPEN FloppyDiskFace;
-- EXPORTED VARIABLES
operationAlignment: Zone.Alignment ← a1;
operationBlockLength: CARDINAL ← 0;
initialAllocationLength: CARDINAL ← 0;
nullDeviceHandle: DeviceHandle ← LOOPHOLE[-1];
Initialize: PROCEDURE [WORD, LONG POINTER] = {};
GetNextDevice: PROCEDURE [DeviceHandle] RETURNS [DeviceHandle] = {
RETURN[nullDeviceHandle]};
SuggestedTries: PROC [DeviceHandle] RETURNS [Tries] = { RETURN[3]; };
GetLogStatus: PROC [OperationPtr] RETURNS [LogStatus] = LOOPHOLE[ErrorProc];
DiskChangeClear: PROCEDURE [DeviceHandle] = LOOPHOLE[ErrorProc];
GetContext: PROCEDURE [DeviceHandle] RETURNS [Context] = LOOPHOLE[ErrorProc];
GetDeviceAttributes: PROCEDURE [DeviceHandle] RETURNS [Attributes] = LOOPHOLE[ErrorProc];
InitializeCleanup: PROCEDURE = LOOPHOLE[ErrorProc];
Initiate: PROCEDURE [OperationPtr] RETURNS [Status] = LOOPHOLE[ErrorProc];
Poll: PROCEDURE [OperationPtr] RETURNS [status: Status, retriedCount: CARDINAL] = LOOPHOLE[ErrorProc];
Reset: PROCEDURE [DeviceHandle] = LOOPHOLE[ErrorProc];
SetContext: PROCEDURE [DeviceHandle, Context] RETURNS [BOOLEAN] =
LOOPHOLE[ErrorProc];
NoFloppyImplementation: ERROR = CODE;
ErrorProc: PROCEDURE = {
s: RECORD [a, b, c: UNSPECIFIED, s: PrincOps.StateVector];
s.s ← STATE;
ERROR NoFloppyImplementation};
Start: PUBLIC PROCEDURE = BEGIN RemainingHeads.Start[]; END;
END.......