home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / list / ep-misc.ark / EP.DCL < prev    next >
Text File  |  1988-05-21  |  3KB  |  100 lines

  1.  
  2. /* FGET.C - file stack functions for EP        */
  3. /* flnum should be set to 0 before 1st call    */
  4. struct _ebuf {
  5.     int _fd;
  6.     int _nleft;
  7.     char *_nextp;
  8.     char _buff[SECSIZ];
  9. /*    char _flags;*/
  10. };
  11.  
  12. struct _ebuf fl[8];
  13. int flnum;
  14.  
  15.  
  16. int    pgno,
  17.     errtype,        /* to pass to eperror            */
  18.     llength,        /* current ll minus indents        */
  19.     vposition,        /* vert'l position of printhead        */
  20.     spdots,            /* number dots to move printhead
  21.                    down before printing, even at
  22.                    the beginning of a page        */
  23.     skdots,            /* as above, but not at beginning
  24.                    of page                */
  25.     emode,            /* what the Epson thinks the current
  26.                    mode is                */
  27.     allmode,        /* keep mode for } command        */
  28.     errcode;        /* to pass to eperror            */
  29. char    dt1, dt2,        /* 1st and 2nd letter of command    */
  30.     brkflag,        /* signal don't justify this line     */
  31.     bsflag,            /* overprint next char            */
  32.     epsflag,        /* have an Epson char in output line    */
  33.     grfflag,        /* have a graphics char in output line    */
  34.     unidir,            /* Epson unidir'l print assumption    */
  35.     tallflag,        /* tall char in output line        */
  36.     tabottom,        /* last 3 passes when tall char present */
  37.     scrncol;        /* apparent column on screen when
  38.                    line of text was edited        */
  39.  
  40. char    fnbuf[30], *fname;    /* filename buffer & ptr        */
  41. /*char    ibuf[BUFSIZ];         input buffer                */
  42.  
  43.  
  44. int    inpoint;
  45.     char inbuf[MAXLINE];    /* one line from the text        */
  46.  
  47. int    glen,            /* cumulative length of line
  48.                    currently being formed, in dots    */
  49.     gpoint;
  50.     char gbuf[2000];    /* dot graphics data for one line
  51.                    of output                 */
  52.  
  53. int    outpoint;
  54.     char  xoutbuf[MAXLINE],    /* character data for one line of output */
  55.         *outbuf; 
  56.     int  xattrbuf[MAXLINE],    /* mode attributes for each character    */
  57.         *attrbuf,
  58.           xwidbuf[MAXLINE],    /* width of each character        */
  59.         *widbuf;
  60.         /* the pointers above are used so that the buffers
  61.            can be used temporarily for the page number (I
  62.            painted myself into a corner)            */
  63.  
  64. int    brccount,        /* count unpaired left braces        */
  65.     nubrcpt,        /* brace stack pointer            */
  66.     brcstk[MAXCOL][6];    /* brace stack                */
  67.  
  68. /* font data */
  69. unsigned ftp[NUMFTS];        /* memory addresses where fonts
  70.                    begin in 'fnt'            */
  71. int    fix[NUMFTS][128];    /* for each font, indices of
  72.                    individual character definition     */
  73. char    ftlen[NUMFTS][128],    /* character widths - determined
  74.                    by values in 'fix'            */
  75.     ftname[NUMFTS][LENFTN],    /* names - e.g. MODERN            */
  76.     nextft;            /* number of next font to load        */
  77.  
  78.  
  79.  
  80. int begovr, endovr;
  81. int brcpt[MAXCOL], lindent[MAXCOL];
  82. char pendc;
  83.  
  84. int attach[32];
  85. char duplflag;
  86.  
  87. /* for processline: */
  88.     char hycorrect;
  89. /* from main to cseq */
  90. int gargc;
  91. char **gargv;
  92.  
  93. /* for cseq: (now private in csm)*/
  94. /*    int arg, typeval, measure, divisor;*/
  95. /*    char dt3, dt4, dt5, eqref, havearg;*/
  96. /* for stowc: */
  97. /*    int stowlen, stowmode, stowkern; */
  98.  
  99. char strstore[1024];
  100.