
/*
 * defs.h
 *
 * #define rainbow	- rainbow CP/M-86 version
 * #define vms		- vms version (predefined by VAX11C compiler)
 * #define unix		- unix version
 */

/*
 *  Synonyms for ASCII control characters
 *
 */

#define	BACKSPACE	8
#define	BEL		7
#define BELL		7
#define	BLANK		32
#define	CARRIAGE_RETURN	13
#define	NEWLINE		10
#define	RUBOUT		127
#define	TAB		9

/*
 * misc. definitions
 *
 */

#define	EOS		0
#define	HUGE		30000
#define	NO		0
#define	OK		0
#define	YES		1
#define FALSE		0
#define TRUE		1
#define	FILENAMESIZE	50
#define	MAXCHARS	20
#define MAXLINE		256
#define MAXTOK		80
#define ARB		MAXLINE

#define	MAXCARD		MAXLINE-1
#define	MAXNAME		FILENAMESIZE

#define	NCHARS		33
#define MAXOFILES	12

#define	ARGFLAG	'$' 
#define	INSIZE	MAXLINE 
#define	MAXOUT	2*MAXLINE 
#define	MAXDEF	200 
#define	NFILES	MAXOFILES-4
#define	PAGENUM		'#' 
#define	CURRENTDATE	'%' 
#define ESCAPE		'@'
#define VESCAPE		'$'
#define	PAGEJECT	12          /* 12 is ASCII formfeed (control-L) */
#define	PAGEWIDTH	65 
#define	PAGELEN		62 
#define	BUFSIZE		512    	    /* push back buffer */
/*
 * lexical analyser values
 *
 * include lexical analyser return constants
 * generated by ltb.
 *
 */
#include "lextab.d"		/* expended format & roff & runoff */

#define	UNKNOWN	999
#define MACRO	0
#define NEGATED -1
#define	LEFT	1 
#define	CENTER	2 
#define	RIGHT	3

/*
 * structure definition for contents linked list
 *
 */

struct clist {		/* list struct for contents  */
	char level;
	char *str;
	int  page;
	struct clist *nextc;
};

#undef putchar
#define putchar(c) putc((c),poutput);

