<> <> <> DIRECTORY BasicTime USING [GMT], FS USING [OpenFile], PrincOps USING [ControlModule], Rope USING [ROPE]; Loader: DEFINITIONS = BEGIN Instantiate: PROC[file: FS.OpenFile, pageOffset: INT _ 0, codeLinks: BOOL _ TRUE] RETURNS[cm: PrincOps.ControlModule, unboundImports: LIST OF IRItem]; <> <> IRItem: TYPE = RECORD[interfaceName: Rope.ROPE, index: NAT]; Start: PROC[cm: PrincOps.ControlModule]; MakeProcedureResident: SAFE PROC[proc: PROC ANY RETURNS ANY]; MakeProcedureSwappable: PROC[proc: PROC ANY RETURNS ANY]; MakeGlobalFrameResident: SAFE PROC[proc: PROC ANY RETURNS ANY]; MakeGlobalFrameSwappable: PROC[proc: PROC ANY RETURNS ANY]; BCDBuildTime: SAFE PROC[proc: PROC ANY RETURNS ANY _ NIL] RETURNS[BasicTime.GMT]; Error: ERROR[type: ErrorType, message: Rope.ROPE _ NIL]; ErrorType: TYPE = { invalidBcd, fileNotFound, versionMismatch, loadStateFull, insufficientVM }; END.