-- Actions.mesa  last edit, Bruce  August 14, 1980  4:13 PM

Actions: DEFINITIONS =
  BEGIN

  AsciiDisplay, AsciiRead: PROCEDURE [start, chars: STRING];
  AttachLoadState, AttachImage: PROCEDURE [file: STRING];
  CallNub: PROCEDURE;
  Comment: PROCEDURE [STRING];
  DisplayFrame: PROCEDURE [STRING];
  DisplayModule: PROCEDURE [STRING];
  DisplayStack: PROCEDURE;
  DoKill: PROCEDURE;
  DoProceed: PROCEDURE;
  DoQuit: PROCEDURE;
  FindVar: PROCEDURE [STRING];
  OctalRead: PROCEDURE [start, cnt: STRING];
  OctalWrite: PROCEDURE [loc, val: STRING];
  PrintCoremap: PROCEDURE;
  SearchMode: PROC;
  SetOctalContext: PROCEDURE [STRING];
  SetProcessContext: PROCEDURE [STRING];
  StartUser: PROCEDURE [gf: STRING];
  TeleDebug: PROC [STRING];
  TreeMode: PROC;
  UserScreen: PROCEDURE;
  WorryMode: PROCEDURE;

  Spare: PROC;
  Spare1: PROC [STRING];
  Spare2: PROC [STRING, STRING];

  DumpFrame: PROCEDURE [UNSPECIFIED];
  CallInterpreter: PROCEDURE [resetPrompt: BOOLEAN ← FALSE];

  ReadProc: TYPE = PROCEDURE [LONG POINTER] RETURNS [UNSPECIFIED];
  WriteProc: TYPE = PROCEDURE [LONG POINTER, UNSPECIFIED];

  Read: PROCEDURE [start, cnt: STRING, proc: ReadProc ← ReadUser];
  Write: PROCEDURE [loc, val: STRING, proc: WriteProc ← WriteUser];

  DoRead: PROCEDURE [start: LONG POINTER, cnt: CARDINAL, proc: ReadProc];
  DoWrite: PROCEDURE [loc: LONG POINTER, val: UNSPECIFIED, proc: WriteProc];

  ReadUser: ReadProc;
  WriteUser: WriteProc;

  END.