/* Context.h
   Created by D. Swinehart, June 24, 1982  11:07 AM
   L. Stewart November 4, 1982  1:40 PM
   L. Stewart November 28, 1982  3:26 PM, maxPSBp1
 */

/*
  WARNING: All Client contexts calling RPC functions
(StartCall, Call, etc.) MUST Allocate an @RPCUser structure
within their contexts.  They must also initialize the user.myPSB
field with the results of calling NewPSB().  See RPCPktIO
listener/server initialization for examples.
 */
  
struct RPCUser {
  int myPSB;		/* randomly-assigned non-null psb*/
  int sigVec[1];
  };
#define lenRPCUser 1
  
struct RPCSystem {
  int maxrun;
  int caller;
  int extra[6];
  };

struct RPCCtx {
  int next;
  int stack;
  int stackMin;
  int initialPC;
  char *name;
  struct RPCSystem rsys;
  struct RPCUser user;
  int stackArea[1];
  };
#define lenRPCCtx ((sizeof (struct RPCCtx)/2)-2)

#define nullPSB 0
#define maxPSB  15
#define maxPSBp1  16