125063Sjaap #ifndef lint
2*30059Sjaap static char sccsid[] = "@(#)globals.c	1.3 (CWI) 86/11/13";
325063Sjaap #endif lint
425063Sjaap 
525063Sjaap 
625063Sjaap  /* t0.c: storage allocation */
725063Sjaap #
825063Sjaap #include "defs.h"
925063Sjaap #include <stdio.h>
1025063Sjaap 
11*30059Sjaap char oldname[BUFSIZ];	/* for .lf kludge */
1225063Sjaap int expflg = 0;
1325063Sjaap int ctrflg = 0;
1425063Sjaap int boxflg = 0;
1525063Sjaap int dboxflg = 0;
1625063Sjaap int tab = '\t';
1725063Sjaap int linsize;		/* Pointsize of lines to draw */
1825063Sjaap int delim1, delim2;	/* eqn delimiters (for n specification) */
1925063Sjaap int evenup[MAXCOL];	/* Equal width column */
2025063Sjaap int evenflg;
2125063Sjaap int F1 = 0;		/* First ``funny'' field delimiter */
2225063Sjaap int F2 = 0;		/* Second ``funny'' spanning indicator */
2325063Sjaap int allflg = 0;
2425063Sjaap int leftover = 0;
2525063Sjaap int textflg = 0;
2625063Sjaap int left1flg = 0;	/* Line left of first (output) column */
2725063Sjaap int rightl = 0;		/* Line right of last (output) column */
2825063Sjaap char *cstore, *cspace;
2925063Sjaap char *last;
3025063Sjaap struct colstr *table[MAXLIN];
3125063Sjaap 
3225063Sjaap /*
3325063Sjaap  * Next arrays describe the real table. Could be put in a structure in
3425063Sjaap  * future
3525063Sjaap  */
3625063Sjaap int style[MAXHEAD][MAXCOL];	/* Style of column (l, a, etc.) */
3725063Sjaap int ctop[MAXHEAD][MAXCOL];
3825063Sjaap char font[MAXHEAD][MAXCOL][2];	/* fontstyle of column */
3925063Sjaap char csize[MAXHEAD][MAXCOL][4];	/* pointsize of column */
4025063Sjaap char vsize[MAXHEAD][MAXCOL][4];	/* Vertical spacing (text blocks only */
4125063Sjaap int lefline[MAXHEAD][MAXCOL];	/* line left of specified columns */
4225063Sjaap char cll[MAXCOL][CLLEN];	/* minimum colwumn width wanted */
4325063Sjaap int sep[MAXCOL];		/* Separation between columns in n's */
4425063Sjaap 
4525063Sjaap int stynum[MAXLIN+1];
4625063Sjaap int nslin;
4725063Sjaap int nclin;			/* # of columns in specification part */
4825063Sjaap int fullbot[MAXLIN];
4925063Sjaap char *instead[MAXLIN];
5025063Sjaap int used[MAXCOL], lused[MAXCOL], rused[MAXCOL];
5125063Sjaap int linestop[MAXLIN];
5225063Sjaap int nlin;
5325063Sjaap int ncol;
5425063Sjaap int qcol;		/* quantity of output columns (bwk) */
5525063Sjaap int iline = 1;			/* input line counter */
5625063Sjaap char *ifile = "Input";		/* input file name */
5725063Sjaap /*
5825063Sjaap  * current name of the diversion for textblocks
5925063Sjaap  */
6025063Sjaap char texname = 'a';
6125063Sjaap int texct = 0;			/* index in texstr */
6225063Sjaap /*
6325063Sjaap  * possible names of diversions
6425063Sjaap  */
6525063Sjaap char texstr[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYXZ0123456789";
6625063Sjaap int linstart;
6725063Sjaap char *exstore, *exlim;
6825063Sjaap FILE *tabin  /*= stdin */;
6925063Sjaap int pr1403;
7025063Sjaap 
7125087Sjaap int dbg;			/* debug flag */
7225087Sjaap 
7325063Sjaap /* Device dependencies */
7425063Sjaap int device = HARRIS;
75