--File: BcplOps.mesa
--Last edited by Sandman on June 30, 1980 4:47 PM
-- Copyright Xerox Corporation 1979, 1980
DIRECTORY
Mopcodes USING [zSTOP],
AltoFileDefs USING [CFP];
BcplOps: DEFINITIONS =
BEGIN
-- in the definitions below, Finish/Abort must be 0/1
BcplOpcode: TYPE = {Finish, Abort, OutLd, InLd, Punt, JSR};
CleanupReason: TYPE = {
Finish, Abort, OutLd, InLd, Save, Restore, Checkpoint, Restart, Continue,
Uninstanciated};
Stop: PROCEDURE [code: BcplOpcode] = MACHINE CODE BEGIN Mopcodes.zSTOP END;
-- Finish: BcplOpcode = 0;
-- Abort: BcplOpcode = 1;
-- Punt: BcplOpcode = 4;
BcplOutLd: PROCEDURE [
code: BcplOpcode, file: POINTER TO AltoFileDefs.CFP, message: POINTER]
RETURNS [[0..2]] = MACHINE CODE BEGIN Mopcodes.zSTOP END;
-- OutLd: BcplOpcode = 2;
-- return 0=> normal return; 1=> just InLd'ed; 2=> just booted
BcplInLd: PROCEDURE [
code: BcplOpcode, file: POINTER TO AltoFileDefs.CFP, message: POINTER] =
MACHINE CODE BEGIN Mopcodes.zSTOP END;
-- InLd: BcplOpcode = 3;
BcplJSR: PROCEDURE [code: BcplOpcode, address: POINTER, arg: UNSPECIFIED]
RETURNS [UNSPECIFIED] = MACHINE CODE BEGIN Mopcodes.zSTOP END;
-- JSR: BcplOpcode = 5;
END...