1*19953Smckusick /* tdef.h 4.6 85/05/05 */ 214515Ssam 37059Srrh #define MAXPTR 0x7fffffff /* max value of any pointer variable */ 47059Srrh #ifdef NROFF /*NROFF*/ 57059Srrh #define EM t.Em 67059Srrh #define HOR t.Hor 77059Srrh #define VERT t.Vert 87059Srrh #define INCH 240 /*increments per inch*/ 97059Srrh #define SPS INCH/10 /*space size*/ 107059Srrh #define SS INCH/10 /* " */ 117059Srrh #define TRAILER 0 127059Srrh #define UNPAD 0227 137059Srrh #define PO 0 /*page offset*/ 147059Srrh #define ASCII 1 157059Srrh #define PTID 1 167059Srrh #define LG 0 177059Srrh #define DTAB 0 /*set at 8 Ems at init time*/ 187059Srrh #define ICS 2*SPS 197059Srrh #define TEMP 256 /*65K*/ 207059Srrh #endif 217059Srrh #ifndef NROFF /*TROFF*/ 227059Srrh #define INCH 432 /*troff resolution*/ 237059Srrh #define SPS 20 /*space size at 10pt; 1/3 Em*/ 247059Srrh #define SS 12 /*space size in 36ths of an em*/ 257059Srrh #define TRAILER 6048 /*144*14*3 = 14 inches*/ 267059Srrh #define UNPAD 027 277059Srrh #define PO 416 /*page offset 26/27ths inch*/ 287059Srrh #define HOR 1 297059Srrh #define VERT 3 307059Srrh #define EM (6*(pts&077)) 317059Srrh #define ASCII 0 327059Srrh #define PTID 0 337059Srrh #define LG 1 347059Srrh #define DTAB (INCH/2) 357059Srrh #define ICS 3*SPS 367059Srrh #define TEMP 512 /*128K*/ 377059Srrh #endif 387059Srrh 397059Srrh #include <signal.h> 407059Srrh #define NARSP 0177 /*narrow space*/ 417059Srrh #define HNSP 0226 /*half narrow space*/ 427059Srrh #define PS 10 /*default point size*/ 437059Srrh #define FT 0 /*default font position*/ 447059Srrh #define LL 65*INCH/10 /*line length; 39picas=6.5in*/ 457059Srrh #define VS INCH/6 /*vert space; 12points*/ 4613256Srrh #ifdef VMUNIX 4713256Srrh #define NN 528 /*number registers*/ 4813256Srrh #else 4913256Srrh #define NN 132 /*number registers*/ 5013256Srrh #endif 5113256Srrh /* #define NN 200 */ 527059Srrh #define NNAMES 14 /*predefined reg names*/ 537059Srrh #define NIF 15 /*if-else nesting*/ 547059Srrh #define NS 64 /*name buffer*/ 557059Srrh #define NTM 256 /*tm buffer*/ 567059Srrh #define NEV 3 /*environments*/ 577059Srrh #define EVLSZ 10 /*size of ev stack*/ 587059Srrh /* #define EVS 4*256 */ 5913256Srrh #ifdef VMUNIX 6013256Srrh #define NM 600 6113256Srrh #define EVS 6*256 /*environment size in words*/ 6213256Srrh #else 637059Srrh #define NM 300 /*requests + macros*/ 6413256Srrh #define EVS 3*256 /*environment size in words*/ 6513256Srrh #endif 667059Srrh #define DELTA 512 /*delta core bytes*/ 677059Srrh #define NHYP 10 /*max hyphens per word*/ 687059Srrh #define NHEX 128 /*byte size of exception word list*/ 697059Srrh #define NTAB 35 /*tab stops*/ 707059Srrh #define NSO 5 /*"so" depth*/ 7113256Srrh #ifdef VMUNIX 7213256Srrh #define WDSIZE 340 /*word buffer size*/ 7313256Srrh #define LNSIZE 960 /*line buffer size*/ 7413256Srrh #else 757059Srrh #define WDSIZE 170 /*word buffer size*/ 767059Srrh #define LNSIZE 480 /*line buffer size*/ 7713256Srrh #endif 787059Srrh /* #define LNSIZE 680 */ 797059Srrh #define NDI 5 /*number of diversions*/ 807059Srrh #define DBL 0100000 /*double size indicator*/ 817059Srrh #define MOT 0100000 /*motion character indicator*/ 827059Srrh #define MOTV 0160000 /*clear for motion part*/ 837059Srrh #define VMOT 0040000 /*vert motion bit*/ 847059Srrh #define NMOT 0020000 /* negative motion indicator*/ 857059Srrh #define MMASK 0100000 /*macro mask indicator*/ 867059Srrh #define CMASK 0100377 877059Srrh #define ZBIT 0400 /*zero width char*/ 887059Srrh #define BMASK 0377 897059Srrh #define BYTE 8 907059Srrh #define IMP 004 /*impossible char*/ 917059Srrh #define FILLER 037 927059Srrh #define PRESC 026 937059Srrh #define HX 0376 /*High-order part of xlss*/ 947059Srrh #define LX 0375 /*low-order part of xlss*/ 957059Srrh #define CONT 025 967059Srrh #define COLON 013 977059Srrh #define XPAR 030 987059Srrh #define ESC 033 997059Srrh #define FLSS 031 1007059Srrh #define RPT 014 1017059Srrh #define JREG 0374 1027059Srrh #define NTRAP 20 /*number of traps*/ 1037059Srrh #define NPN 20 /*numbers in "-o"*/ 1047059Srrh #define T_PAD 0101 /*cat padding*/ 1057059Srrh #define T_INIT 0100 1067059Srrh #define T_IESC 16 /*initial offset*/ 1077059Srrh #define T_STOP 0111 1087059Srrh #define NPP 10 /*pads per field*/ 10913256Srrh #ifdef VMUNIX 11013256Srrh #define FBUFSZ 1024 11113256Srrh #else 1127059Srrh #define FBUFSZ 256 /*field buf size words*/ 11313256Srrh #endif 114*19953Smckusick #define OBUFSZ 8192 /*bytes*/ 115*19953Smckusick #define IBUFSZ 8192 /*bytes*/ 1167059Srrh #define NC 256 /*cbuf size words*/ 1177059Srrh #define NOV 10 /*number of overstrike chars*/ 1187059Srrh #define ZONE 5 /*5hrs for EST*/ 1197059Srrh #define TDELIM 032 1207059Srrh #define LEFT 035 1217059Srrh #define RIGHT 036 1227059Srrh #define LEADER 001 1237059Srrh #define TAB 011 1247059Srrh #define TMASK 037777 1257059Srrh #define RTAB 0100000 1267059Srrh #define CTAB 0040000 1277059Srrh #define OHC 024 1287059Srrh 1297059Srrh #define PAIR(A,B) (A|(B<<BYTE)) 1307059Srrh 1317059Srrh #define BLK 128 /*alloc block words*/ 13213257Srrh 13313257Srrh #ifdef VMUNIX 13413257Srrh #define BIG 1024 13513257Srrh #endif VMUNIX 13613257Srrh 1377059Srrh #ifdef BIG 1387059Srrh typedef long filep; 1397059Srrh #define NBLIST BIG /*allocation , BIG = 256 per 65k*/ 1407059Srrh #define BLKBITS 7 /*for BLK=128*/ 1417059Srrh #endif 1427059Srrh #ifndef BIG 1437059Srrh typedef unsigned filep; 1447059Srrh #define NBLIST TEMP /*allocation list, TEMP<=512*/ 1457059Srrh /* BLK*NBLIST<=65536 words, if filep=unsigned */ 1467059Srrh #define BLKBITS 0 1477059Srrh #endif 148