Copyright (C) 1990, Digital Equipment Corporation           
 All rights reserved.                                        
 See the file COPYRIGHT for a full description.              
 Last modified on Tue Aug  9 09:54:25 PDT 1994 by kalsow     
      modified on Wed Mar 13 01:21:53 1991 by muller         
INTERFACE RTProcess;
 This interface provides the runtime shutdown routines. 
PROCEDURE RegisterExitor (p: PROCEDURE ());
 Registers the procedure p to be executed when Exit is called.
   The registered procedures are executed in reverse of the order
   they were registered. 
PROCEDURE Exit (n: INTEGER);
 call the registered exitors and terminate the program with status n.
   Terminating a Modula-3 program by ``falling off the end'' is like
   calling Exit(0).
PROCEDURE Crash (msg: TEXT);
 Call the registered exitors and terminate the program with the
   error message msg.  If possible, invoke a debugger or generate a
   core dump. 
PROCEDURE InvokeExitors ();
 Run the registered exit procedures, at most once. 
PROCEDURE OnInterrupt (p: InterruptHandler): InterruptHandler;
 Register 'p' as the handler to be called on the next interrupt signal
   and return the currently registered handler.  Note that 'p' must be NIL
   or a top-level procedure. 
TYPE InterruptHandler = PROCEDURE ();
PROCEDURE RegisterInterruptSetup (enable, disable: PROCEDURE ());
 Registers enable and disable as the machine-specific setup procedures
   to enable and disable respectively control-C handling. 
END RTProcess.