-- SDDefs.Mesa  Edited by Sandman on  9-Dec-81 10:27:19

SDDefs: DEFINITIONS =
  BEGIN

  -- indices in system data vector (including trap codes)

  SD: POINTER TO ARRAY [0..0) OF UNSPECIFIED = LOOPHOLE[1000B];

  -- [0..37B] are known by microcode

  sBreakTrap: CARDINAL = 0;
  sStackError: CARDINAL = 1;
  sBoot: CARDINAL = 2;
  sRescheduleError: CARDINAL = 3;
  sXferTrap: CARDINAL = 4;
  sOpcodeTrap: CARDINAL = 5;
  sControlTrap: CARDINAL = 6;
  sCodeTrap: CARDINAL = 7;
  sHardwareError: CARDINAL = 10B;
  sUnboundTrap: CARDINAL = 11B;
  sDivZeroTrap: CARDINAL = 12B;
  sDivCheckTrap: CARDINAL = 13B;
  sInterruptError: CARDINAL = 14B;
  sProcessTrap: CARDINAL = 15B;
  sBoundsTrap: CARDINAL = 16B;
  sPointerTrap: CARDINAL = 17B;

  -- Signals

  sSignalList: CARDINAL = 40B;
  sSignal: CARDINAL = 41B;
  sErrorList: CARDINAL = 42B;
  sError: CARDINAL = 43B;
  sReturnErrorList: CARDINAL = 44B;
  sReturnError: CARDINAL = 45B;
  sUnnamedError: CARDINAL = 46B;

  -- Instructions

  sStringInit: CARDINAL = 50B;

  -- Processes

  sFork: CARDINAL = 52B;
  sJoin: CARDINAL = 53B;

  -- Frames

  sCopy: CARDINAL = 54B;
  sUnNew: CARDINAL = 55B;
  sStart: CARDINAL = 56B;
  sRestart: CARDINAL = 57B;
  sGFTLength: CARDINAL = 60B;

  -- Debugger

  sAlternateBreak: CARDINAL = 66B;

  sBreakBlock: CARDINAL = 70B;
  sBreakBlockSize: CARDINAL = 71B;
  sPerfMonitor: CARDINAL = 72B;
  sLogging: CARDINAL = 73B;
  sXferTrapMonitor: CARDINAL = 74B;

  sFirstCedar: CARDINAL = 140B;
  sLastCedar: CARDINAL = 257B;

  sFirstPilot: CARDINAL = 260B;
  sLastPilot: CARDINAL = 316B;

  -- [317B..377B] are known by germ

  sGermCount: CARDINAL = 317B;
  sFirstGermRequest: CARDINAL = 320B;
  sLastGermRequest: CARDINAL = 377B;

  sLastSD: CARDINAL = 377B;

  END...