/*  TCMPUBLIC.H: Global parameters for TCM task 	03/22/84  DTS */

extern	struct rad50	mastsk;		/* Master task name */
extern	struct cmdbuff	srbuf;		/* Fixed Send/Receive buffer */
extern	struct retbuf	ret;		/* Return code for caller */
extern	struct twindcb	*twinroot;	/* Pointer to first window */
extern	struct twindcb	*curwin;	/* Pointer to current window */

    /* Parameters for the edit session */

extern	boolean		wrap;		/* Word wrap on/off */
extern	boolean		insert;		/* Insert/overtype */
extern	boolean		select;		/* Select range active */
extern	boolean		tabdisp;	/* Tab display on/off */
extern	boolean		coldisp;	/* Column display on/off */
extern	boolean		underline;	/* Underscore on/off */
extern	boolean		bold;		/* Bold face on/off */
extern	boolean		rdonly;		/* Display only flag for editor */

extern	boolean		eddone;		/* Edit complete flag */
extern	charpointer	selchr;		/* Ptr to selected char */
extern	int		curline,curcol;	/* Current line & col # on screen */
extern	int		bufline,bufcol;	/* Current line & col in buffer */
extern	int	top,bot,rtmar,lfmar;	/* Current margins */
extern	int		vttype;		/* Video terminal type */
extern	int		vtlin;		/* Maximum line on terminal */
extern	int		vtmar;		/* Maximum column on terminal */
extern	boolean		hdscrl;		/* Hardware scrolling flag */
extern	int		scrlcnt;	/* Hardware scrolling count (+/-) */
extern	int		errlvl;		/* Error level during edit session */

extern	int		count;		/* Temporary Variable */
extern	char		**oldbuf;	/* Place to keep Screen buffer */
extern	char		temp[MAXLEN];	/* Temporary CRT sequences */

    /* Misc. permanente buffers */

extern	char	sidebar[];		/* String to mark side border */
extern	char	delbuf[MAXLEN];		/* last deleted string */
extern	char	line[MAXLEN];		/* Current line buffer */
extern	charpointer	paste;		/* Paste buffer */

extern	struct dsplin	lin[CRTLIN+1];  /* Line display status */

extern	char	colmsg[];
extern	int	colmsz;
extern	char	insmsg[];
extern	int	insmsz;
extern	char	bldmsg[];
extern	int	bldmsz;
extern	char	unlmsg[];
extern	int	unlmsz;
extern	char	mormsg[];
extern	int	mormsz;
extern	char	hlpmsg[];
extern	char	erwdlen[];
extern	char	erbful[];
extern	char	erbkup[];
extern	char	eradvc[];
extern	char	erinky[];


/***	Specific TCM function references    ***/

typedef char *(*funcpointer)();
extern	funcpointer edfunc[];	/* Array of editing function pointers */
extern	rdastinit();
extern	int inchar();
extern	scrlup();
extern	inslin();
extern	savlin();
extern	charpointer getlin();
extern	charpointer fndlast();
extern	charpointer virchr();
extern	charpointer wdwrap();
