home *** CD-ROM | disk | FTP | other *** search
- {++++++++++++++++++++++++++++++++++++++++++++++++++++++++}
- {+ GLOBALS FOR KFORMAT Text Output Processor. +}
- {++++++++++++++++++++++++++++++++++++++++++++++++++++++++}
-
- CONST
- BACKSPVAL = 8;
- COMNDFLAG = '.';
- DEFAULT = 255; { The default length such that all strings }
- { do not have to be 255 chars in length }
- DQUOTE = '"';
- EOSVAL = 0; { same as a null value }
- FOMARGDEF = 3; { default footer margin }
- HEMARGDEF = 3; { default header margin }
- HUGE = 32000; { not quite infinity }
- MAXBUF = 255; { maximum allowed string length }
- MINUS = '-';
- maxargc = 5;
- null = 0;
- PAGENUM = '#';
- PAGWIDDEF = 60; { default page width }
- PAGLENDEF = 66; { default page length }
- PLUS = '+';
- SMAX = 255; { MAXIMUM ALLOWED STRING LENGTH }
- SPACE = ' ';
- SQUOTE = '''';
-
-
- TYPE
- byte = 0..255;
- int = INTEGER;
- DSTRING = STRING DEFAULT;
- MSTRING = STRING SMAX;{ Max string }
- S$0 = string 0 ;
- S$255 = string SMAX ;{ Max string }
- CMDVAL = packed array [1..2] of char; { *** 3-81 *** }
- BUFFER = MSTRING;
-
- CMDSET =
- (CMD0,{ command set lower limit }
- bp, {<+,-><n> Begin Page & set page number }
- br, { BReak, finish current line }
- ce, {<n> CEnter n lines <DEFAULT=1> }
- fi, { FIll <fill lines but not justify> }
- fo, {<text> FOoter text }
- he, {<text> HEader text }
- ind, {<+,-><n> INdent n columns }
- ls, {<+,-><n> Set Line Spacing }
- nf, { Lines Not Filled <justify OFF> }
- pl, {<+,-><n> Page Length n lines }
- rm, {<+,-><n> Right margin n columns }
- sf, { Space Fill lines <justify text> }
- sp, {<n> Break and SPace n lines <DEFAULT=1> }
- ti, {<+,-><n> temporary indent n columns }
- ul, {<n> underline n lines <DEFAULT=1> }
- UNKN);{command set upper limit, command error flag }
-
-
- VAR
- {++++++++++++++++++++++++++++++++++++++++++++}
- {+ VARIABLES USES IN EXTERNAL PROCEDURES. +}
- {++++++++++++++++++++++++++++++++++++++++++++}
- argc : byte;
- argv : ARRAY [1..maxargc] OF DSTRING;{ * proc STDOPEN * }
- infile, { * proc STDOPEN * }
- outfile,
- params : byte;
- xeof, { end of file flag }
- xeoln:BOOLEAN;{ end of line flag }
- ioresult,
- con_wanted,
- printer_wanted : boolean;
-
- EOS, { holds value of END-OF-STRING character }
- BACKSPACE, { holds value of back-space }
- BLANK, { holds value of space }
- NEWLINE, { holds value of END-OF-STRING character }
- TAB { holds value of tab char }
- :CHAR;
-
- STDIN, { standard input file }
- STDOUT { standard output file }
- :TEXT;
-
- spacefill, { straight left and right INIT = FALSE }
- direction, { control for space filling INIT = FALSE }
- fill { fill if TRUE INIT = TRUE }
- :BOOLEAN;
-
- lsval, { current line spacing INIT = 1 }
- inval, { current indent >= 0 INIT = 0 }
- rmval, { current right margin INIT = PAGWIDDEF}
- tival, { current temporary indent INIT = 0 }
- ceval, { number of lines to center INIT = 0 }
- ulval, { number of lines to underline INIT = 0 }
- spval, { number of lines to space INIT = 0 }
- curpag, { current output page number INIT = 0 }
- newpag, { next output page number INIT = 1 }
- lineno, { next line to be printed INIT = 0 }
- plval, { page length in lines INIT = PAGLENDEF}
- m1val, { margin before and inc header INIT = HEMARGDEF}
- m2val, { margin after header INIT = 2 }
- m3val, { margin after last text line INIT = 2 }
- m4val, { bottom margin incl footer INIT = FOMARGDEF}
- bottom { last text line on page = plval-m3val-m4val }
- :int;
-
- header, { top of page title INIT = NEWLINE }
- footer { bottom of page title INIT = NEWLINE }
- :BUFFER;
-
- cmdlist { array used for command decoding }
- :ARRAY [CMD0..UNKN] of CMDVAL;
-
- outp, { last char position in output INIT = 0 }
- outw, { current WIDTH of outbuf INIT = 0 }
- outwds { number of words in outbuf INIT = 0 }
- :int;
-
- inbuf, { input buffer work area }
- outbuf { output buffer work area }
- :BUFFER;
-
-
- {++++++++++++++++++++++++++++++++++++++++++}
- {+ COMPILER OPTIONS FOR PASCAL/Z COMPILER +}
- {++++++++++++++++++++++++++++++++++++++++++}
- {$C-}{ * control-c checking OFF * }
- {$F-}{ * floating point error checking OFF * }
- {$M-}{ * integer mult & divd error checking OFF * }
-
-