-- Runtime.mesa (last edited by: Sandman on: August 26, 1980 12:18 PM) -- Copyright Xerox Corporation 1979, 1980 DIRECTORY Mopcodes USING [zKFCB], SDDefs USING [sCallDebugger, sUnNew], System USING [GreenwichMeanTime]; Runtime: DEFINITIONS = BEGIN -- Global Frame management GlobalFrame: PROCEDURE [link: UNSPECIFIED] RETURNS [PROGRAM]; --NewConfig: PROCEDURE [file: File.Capability]; --RunConfig: PROCEDURE [file: File.Capability]; UnNewConfig: PROCEDURE [link: UNSPECIFIED]; UnNew: PROCEDURE [frame: PROGRAM] = MACHINE CODE BEGIN Mopcodes.zKFCB, SDDefs.sUnNew END; SelfDestruct: PROCEDURE; -- Frame validation ValidateGlobalFrame: PROCEDURE [frame: UNSPECIFIED]; InvalidGlobalFrame: ERROR [frame: UNSPECIFIED]; ValidateFrame: PROCEDURE [frame: UNSPECIFIED]; InvalidFrame: ERROR [frame: UNSPECIFIED]; -- Debugger interface CallDebugger: PROCEDURE [STRING] = MACHINE CODE BEGIN Mopcodes.zKFCB, SDDefs.sCallDebugger END; Interrupt: PROCEDURE = INLINE {}; -- Build information GetBcdTime: PROCEDURE RETURNS [System.GreenwichMeanTime]; GetBuildTime: PROCEDURE RETURNS [System.GreenwichMeanTime]; -- Debugging information GetCaller: PROCEDURE RETURNS [PROGRAM]; -- Access to compiled tables, etc --GetTableBase: PROCEDURE [frame: PROGRAM] RETURNS [LONG POINTER]; -- Conditional loading information IsBound: PROCEDURE [link: UNSPECIFIED] RETURNS [BOOLEAN]; -- Signals and errors generated by the Pilot Mesa System and of interest to Mesa programmers BoundsFault: SIGNAL; --ConfigError: ERROR [type: ConfigErrorType]; --ConfigErrorType: TYPE = {badCode, invalidConfig, missingCode, versionMismatch, unknown}; ControlFault: SIGNAL [source: UNSPECIFIED --ControlLink--] RETURNS [UNSPECIFIED --ControlLink--]; DivideCheck: SIGNAL; LinkageFault: ERROR; PointerFault: SIGNAL; PortFault: ERROR; StartFault: SIGNAL [dest: PROGRAM]; StackError: ERROR; UnboundProcedure: SIGNAL [dest: UNSPECIFIED --ControlLink--] RETURNS [UNSPECIFIED --ControlLink--]; ZeroDivisor: SIGNAL; END.