2.9BSD/usr/src/local/sroff/sdef.h

Compare this file to the similar file:
Show the results in this format:

#include <signal.h>
#include <sgtty.h>

	/* printer parameters */
#define BSPEED	B2400
#define	HOR	1	/* 1 mil */
#define	VERT	3	/* actually 3.5 mil */
#define	PTID	0
#define	FT	0	/*default font position*/
#define PFONT	3	/* maximum number of proportional fonts in -F option */
	/*
	 * default spacings
	 */
#define INCH	1000		/*increments per inch*/
#define stou(x)	(int)((long)(x)*7/2)	/* internal vertical steps to units */
#ifdef PGOFF
#define PO	INCH 		/*page offset*/
#else
#define PO	0
#endif
#define DTAB	INCH/2		/* tab stops */
#define NDTAB	INCH/10*8	/* tabs for -nroff */
#define LL	(6*INCH+INCH/2)	/*line length; 39picas=6.5in*/
#define SD_LL	(7*INCH)	/* printer default line length */
#define TOP_MARG   INCH/2	/* printer (hard) top margin */
#define VS	INCH/6		/*vert space; 12points*/

#define LG	0

	/*
	 * internal characters
	 */
#define	LEADER	001
#define	IMP	004		/*impossible char*/
#define	TAB	011
#define	COLON	013
#define	RPT	014
#define	OHC	024
#define	CONT	025
#define	PRESC	026
#define	UNPAD	027
#define	XPAR	030
#define	FLSS	031
#define	TDELIM	032
#define	ESC	033
#define	LEFT	035
#define	RIGHT	036
#define	FILLER	037
#define	JREG	0374
#define	LX	0375		/*low-order part of xlss*/
#define	HX	0376		/*High-order part of xlss*/


	/*
	 * output characters
	 */

	/* ascii control characters */
#define C_DEL	0177		/* DEL, 0177 */
#define C_NUL	0200		/* NULL */
#define C_BS	0201		/* backspace */
#define C_TAB	0202		/* horizontal tab */
#define C_LF	0203		/* linefeed */
#define C_FF	0204		/* formfeed */
#define C_CR	0205		/* carriage return */
#define C_ESC	0206		/* ESC, 033 */
	/* sanders escape sequences */
#define S_FT	0212		/* select font */
#define S_AD	0221		/* select format (adjust) */
#define S_LL	0222		/* set line length */
#define S_TI	0223		/* set temporary indent */
#define S_IN	0224		/* set indent */
#define S_WS	0225		/* set word spacing */
#define S_PL	0226		/* set page length */
	/* characters receiving special handling */
#define C_HY	055		/* hyphen */
#define C_RN	0311		/* root en */
#define C_BR	0341		/* vertical box rule */
#define C_VB	0372		/* single vertical bar */
#define C_UR	0347		/* underrule */
#define C_EM	0350		/* 3/4 em dash */
#define MAXCHAR 0373	/* 1 greater than max printing character */

/*
 *  Sanders escape sequences used internally (sent directly)
 */
#define SE_CHFONT	"\033a"		/* change font */
#define SE_MOUNT	"\033d"		/* mount font */
#define SE_DRAFT	"\033t"		/* mount font */
#define SE_LMARGIN	"\033f"		/* set page offset */

#define SE_VMOT		"\033o"		/* vertical motion */
#define SE_VBLOCK	2047		/* chunks for vertical motion */
#define SE_UPBL		"\033o`A"	/* up VBLOCK */
#define SE_DOWNBL	"\033o_\177"	/* down VBLOCK */
#define SE_UP1		"\033o\177\177"	/* up 1 step */
#define SE_DOWN1	"\033o@A"	/* down 1 step */

#define SE_HMOT		"\033l"		/* horizontal motion */
#define SE_HBLOCK	2047		/* chunks for horizontal motion */
#define SE_LEFTBL	"\033l`A"	/* left HBLOCK */
#define SE_RIGHTBL	"\033l_\177"	/* right HBLOCK */


#define ZONE 8	/*8hrs for PST*/
	/*
	 * fonts; bits in chbits
	 */
#define ZBIT   010000	/*zero width char*/
#define ULMODE 020000	/* underline this character */
#define EBIT   040000	/* stan, character in escape sequence for sanders */
#define NFONTS 8		/* power of 2, maximum 16 */
#define FONTSHFT 8		/* position of font bits in chbits */
#define FONTMSK (NFONTS-1)	/* physical font in fonts[] */
#define PROPOR 0100		/* physical font is proportional */
#define getfont(i)	((i>>FONTSHFT)&FONTMSK)	/* font of char i */

	/* more bit masks */
#define DBL	0100000		/*double size indicator*/
#define MOT	0100000		/*motion character indicator*/
#define MOTV	0160000		/*clear for motion part*/
#define VMOT	0040000		/*vert motion bit*/
#define NMOT	0020000		/* negative motion indicator*/
#define MMASK	0100000		/*macro mask indicator*/
#define CMASK	0100377
#define WDMASK	01777		/* width part of *fontab */
#define BMASK	0377
#define BYTE	8
#define TMASK	037777
#define RTAB	0100000
#define CTAB	0040000


#define PAIR(A,B) (A|(B<<BYTE))

	/* array sizes and limits */
#define NN	200	/*number registers*/
/* NN changed Jan 31 from 132 */
#define NNAMES	14	/*predefined reg names*/
#define NIF	15	/*if-else nesting*/
#define NEV	3	/*environments*/
#define EVLSZ	10	/*size of ev stack*/
#define EVS	4*256	/*environment size in words*/
/* BWK - trying 4*256 instead of 3*256 */
#ifdef VMUNIX
#define NM	500	/*requests + macros */
#else
#define NM	300	/*requests + macros*/
#endif
#define NHYP	10	/*max hyphens per word*/
#define NHEX	128	/*byte size of exception word list*/
#define NTAB	35	/*tab stops*/
#define NSO	5	/*"so" depth*/
#define NDI	5	/*number of diversions*/
#define NPN	20	/*numbers in "-o"*/
#define NPP	10	/*pads per field*/
#define NOV	10	/*number of overstrike chars*/
#define NTRAP	20	/*number of traps*/

	/* buffer sizes */
#define NS	64	/*name buffer*/
#define NTM	256	/*tm buffer*/
#define DELTA	512	/*delta core bytes*/
#define WDSIZE	200	/*stan, changed from 170, word buffer size*/
#define LNSIZE	680	/*line buffer size*/
/* BWK - changed from 480 after EVS changed */
#define FBUFSZ	256	/*field buf size words*/
#define OBUFSZ	512	/*bytes*/
#define IBUFSZ	512	/*bytes*/
#define NC	256	/*cbuf size words*/
#ifdef	VMUNIX
#define MAXPTR (char *)0x7fffffff  /* max value of any pointer variable */
#else
#define	MAXPTR	(char *)(-1)	/* max value of any pointer variable */
#endif

	/* temp file management */
#define BLK	128	/*alloc block words*/
#define TEMP	512	/*65Kw*/
#ifdef BIG
typedef long filep;
#define NBLIST	BIG	/*allocation , BIG = 256 per 65k*/
#define BLKBITS 7	/*for BLK=128*/
#endif
#ifndef BIG
typedef unsigned filep;
#define NBLIST	TEMP	/*allocation list, TEMP<=512*/
/* BLK*NBLIST<=65536 words, if filep=unsigned */
#define BLKBITS 0
#endif