<> <> <> <> <> <> <> <> <<>> DIRECTORY DiskFace USING [Label]; SA4000Face: DEFINITIONS = BEGIN GetDeviceAttributes: PROC [DeviceHandle] RETURNS [cylinders, movingHeads, fixedHeads, sectorsPerTrack: CARDINAL]; <> GetTrueDeviceAttributes: PROC [SA4000Face.DeviceHandle] RETURNS [cylinders, movingHeads, fixedHeads, sectorsPerTrack: CARDINAL]; <> GetNextDevice: PROC [DeviceHandle] RETURNS [DeviceHandle]; <> Initialize: PROC [t: WORD, globalState: GlobalStatePtr]; <> InitializeCleanup: PROC; <> Initiate: PROC [OperationPtr]; <> Poll: PROC [OperationPtr] RETURNS [Status]; <> Recalibrate: PROC [DeviceHandle]; <> Reset: PROC [DeviceHandle]; <> DiskAddress: TYPE = MACHINE DEPENDENT RECORD [ cylinder (0): CARDINAL, head (1:0..7): [0..256), sector (1:8..15): [0..256) ]; <> DeviceHandle: TYPE[1]; GlobalStatePtr: TYPE = Base RELATIVE POINTER; Base: TYPE = LONG BASE POINTER; Command: TYPE = { <> vv, vvr, vvw, vvv, vw, vww, vr, vrr, vrw, vrv, rv, rvr, rvw, rvv, rw, rww, rr, rrr, rrw, rrv, w, www }; Operation: TYPE = MACHINE DEPENDENT RECORD [ <> <> <> <> clientHeader (0): DiskAddress, <> labelPtr (2): LONG POINTER TO DiskFace.Label --PilotDisk.Label--, <