1 /*- 2 * Copyright (c) 1991 The Regents of the University of California. 3 * All rights reserved. 4 * 5 * %sccs.include.proprietary.c% 6 * 7 * @(#)tdef.h 4.9 (Berkeley) 04/18/91 8 */ 9 10 #include <sys/param.h> 11 #undef CMASK /* XXX */ 12 #undef BIG /* XXX */ 13 #define MAXPTR (-1) /* max value of any pointer variable */ 14 #ifdef NROFF /*NROFF*/ 15 #define EM t.Em 16 #define HOR t.Hor 17 #define VERT t.Vert 18 #define INCH 240 /*increments per inch*/ 19 #define SPS INCH/10 /*space size*/ 20 #define SS INCH/10 /* " */ 21 #define TRAILER 0 22 #define UNPAD 0227 23 #define PO 0 /*page offset*/ 24 #define ASCII 1 25 #define PTID 1 26 #define LG 0 27 #define DTAB 0 /*set at 8 Ems at init time*/ 28 #define ICS 2*SPS 29 #define TEMP 256 /*65K*/ 30 #endif 31 #ifndef NROFF /*TROFF*/ 32 #define INCH 432 /*troff resolution*/ 33 #define SPS 20 /*space size at 10pt; 1/3 Em*/ 34 #define SS 12 /*space size in 36ths of an em*/ 35 #define TRAILER 6048 /*144*14*3 = 14 inches*/ 36 #define UNPAD 027 37 #define PO 416 /*page offset 26/27ths inch*/ 38 #define HOR 1 39 #define VERT 3 40 #define EM (6*(pts&077)) 41 #define ASCII 0 42 #define PTID 0 43 #define LG 1 44 #define DTAB (INCH/2) 45 #define ICS 3*SPS 46 #define TEMP 512 /*128K*/ 47 #endif 48 49 #include <signal.h> 50 #define NARSP 0177 /*narrow space*/ 51 #define HNSP 0226 /*half narrow space*/ 52 #define PS 10 /*default point size*/ 53 #define FT 0 /*default font position*/ 54 #define LL 65*INCH/10 /*line length; 39picas=6.5in*/ 55 #define VS INCH/6 /*vert space; 12points*/ 56 #ifdef VMUNIX 57 #define NN 528 /*number registers*/ 58 #else 59 #define NN 132 /*number registers*/ 60 #endif 61 /* #define NN 200 */ 62 #define NNAMES 14 /*predefined reg names*/ 63 #define NIF 15 /*if-else nesting*/ 64 #define NS 64 /*name buffer*/ 65 #define NTM 256 /*tm buffer*/ 66 #define NEV 3 /*environments*/ 67 #define EVLSZ 10 /*size of ev stack*/ 68 /* #define EVS 4*256 */ 69 #ifdef VMUNIX 70 #define NM 600 71 #define EVS 6*256 /*environment size in words*/ 72 #else 73 #define NM 300 /*requests + macros*/ 74 #define EVS 3*256 /*environment size in words*/ 75 #endif 76 #define DELTA 512 /*delta core bytes*/ 77 #define NHYP 10 /*max hyphens per word*/ 78 #define NHEX 128 /*byte size of exception word list*/ 79 #define NTAB 35 /*tab stops*/ 80 #define NSO 5 /*"so" depth*/ 81 #ifdef VMUNIX 82 #define WDSIZE 340 /*word buffer size*/ 83 #define LNSIZE 960 /*line buffer size*/ 84 #else 85 #define WDSIZE 170 /*word buffer size*/ 86 #define LNSIZE 480 /*line buffer size*/ 87 #endif 88 /* #define LNSIZE 680 */ 89 #define NDI 5 /*number of diversions*/ 90 #define DBL 0100000 /*double size indicator*/ 91 #define MOT 0100000 /*motion character indicator*/ 92 #define MOTV 0160000 /*clear for motion part*/ 93 #define VMOT 0040000 /*vert motion bit*/ 94 #define NMOT 0020000 /* negative motion indicator*/ 95 #define MMASK 0100000 /*macro mask indicator*/ 96 #define CMASK 0100377 97 #define ZBIT 0400 /*zero width char*/ 98 #define BMASK 0377 99 #define BYTE 8 100 #define IMP 004 /*impossible char*/ 101 #define FILLER 037 102 #define PRESC 026 103 #define HX 0376 /*High-order part of xlss*/ 104 #define LX 0375 /*low-order part of xlss*/ 105 #define CONT 025 106 #define COLON 013 107 #define XPAR 030 108 #define ESC 033 109 #define FLSS 031 110 #define RPT 014 111 #define JREG 0374 112 #define NTRAP 20 /*number of traps*/ 113 #define NPN 20 /*numbers in "-o"*/ 114 #define T_PAD 0101 /*cat padding*/ 115 #define T_INIT 0100 116 #define T_IESC 16 /*initial offset*/ 117 #define T_STOP 0111 118 #define NPP 10 /*pads per field*/ 119 #ifdef VMUNIX 120 #define FBUFSZ 1024 121 #else 122 #define FBUFSZ 256 /*field buf size words*/ 123 #endif 124 #define OBUFSZ 8192 /*bytes*/ 125 #define IBUFSZ 8192 /*bytes*/ 126 #define NC 256 /*cbuf size words*/ 127 #define NOV 10 /*number of overstrike chars*/ 128 #define TDELIM 032 129 #define LEFT 035 130 #define RIGHT 036 131 #define LEADER 001 132 #define TAB 011 133 #define TMASK 037777 134 #define RTAB 0100000 135 #define CTAB 0040000 136 #define OHC 024 137 138 #define PAIR(A,B) (A|(B<<BYTE)) 139 140 #define BLK 128 /*alloc block words*/ 141 142 #ifdef VMUNIX 143 #define BIG 1024 144 #endif VMUNIX 145 146 #ifdef BIG 147 typedef long filep; 148 #define NBLIST BIG /*allocation , BIG = 256 per 65k*/ 149 #define BLKBITS 7 /*for BLK=128*/ 150 #endif 151 #ifndef BIG 152 typedef unsigned filep; 153 #define NBLIST TEMP /*allocation list, TEMP<=512*/ 154 /* BLK*NBLIST<=65536 words, if filep=unsigned */ 155 #define BLKBITS 0 156 #endif 157