1: /*	tabitoh.c	4.1	83/08/05	*/
   2: #define INCH 240
   3: /*
   4:  * C:Itoh Prowriter (dot matrix) 10 pitch
   5:  * nroff driving table
   6:  * by G. Rochlin, 15feb83
   7:  * Because the c:itoh will backspace only in incremental mode,
   8:  * need to write a program to place commands Esc[ and Esc] around ^H.
   9:  * If you want true underline mode instead of _^Hx_^Hy, etc.,
  10:  * have the script first replace _^Hx with EscXxEscY, etc.
  11:  * Further refinements are possible to clean up files and
  12:  * minimize throughput (e.g., delete all EscYEscX pairs).
  13:  * In the terminal initialization (twinit) and exit (twrest)
  14:  * strings, EscN sets 10-pitch. Twrest clears by commanding
  15:  * Esc Y, Esc", and Esc$ to clear ul, bold, and "greek",
  16:  * Esc] to restore logic-seek print, Escf and EscT24 to restore
  17:  * forward linefeed at 6 lines/inch, Esc< for bidirectional
  18:  * print, EscN, and ^M (\015) to clear the print buffer.
  19:  * Since the itoh has no keyboard, you have to run it through
  20:  * a video terminal or micro printer port.
  21:  * The first twinit code (Esc`) and the last twrest code
  22:  * (Esca) set the (proper) "transparent" or "buffered" print
  23:  * mode for tvi950 and tvi925 and Freedom 100. This mode
  24:  * is necessary on intelligent terminals to keep all the Esc
  25:  * codes in the driver tables from scrambling the terminal's
  26:  * brains.  (If you have a dumb terminal, almost any print
  27:  * mode should be safe. Smart terminals without buffered print,
  28:  * such as the tvi920, present problems.)
  29:  * If you have a different terminal,
  30:  * the shell script should also replace these codes with those
  31:  * appropriate for your machine.  If you are using an sed
  32:  * stream for the script, make sure to use single quotes to
  33:  * isolate the ` from the shell.
  34:  */
  35: struct {
  36:     int bset;
  37:     int breset;
  38:     int Hor;
  39:     int Vert;
  40:     int Newline;
  41:     int Char;
  42:     int Em;
  43:     int Halfline;
  44:     int Adj;
  45:     char *twinit;
  46:     char *twrest;
  47:     char *twnl;
  48:     char *hlr;
  49:     char *hlf;
  50:     char *flr;
  51:     char *bdon;
  52:     char *bdoff;
  53:     char *ploton;
  54:     char *plotoff;
  55:     char *up;
  56:     char *down;
  57:     char *right;
  58:     char *left;
  59:     char *codetab[256-32];
  60:     int zzz;
  61:     } t = {
  62: /*bset*/    0,
  63: /*breset*/  0177420,
  64: /*Hor*/     INCH/20,
  65: /*Vert*/    INCH/48,
  66: /*Newline*/ INCH/6,
  67: /*Char*/    INCH/10,
  68: /*Em*/      INCH/10,
  69: /*Halfline*/    INCH/12,
  70: /*Adj*/     INCH/10,
  71: /*twinit*/  "\033`\015\033N",
  72: /*twrest*/  "\033Y\033\042\033$\033]\033f\033T24\033<\033N\015\033a\n",
  73: /*twnl*/    "\015\n",
  74: /*hlr*/     "\033[\033T12\033r\n\033T24\033]\033f",
  75: /*hlf*/     "\033[\033T12\n\033T24\033]",
  76: /*flr*/         "\033[\033r\n\033f\033]",
  77: /*bdon*/    "\033!",
  78: /*bdoff*/   "\033\042",
  79: /*ploton*/  "\033>\033T03",
  80: /*plotoff*/ "\033<\033T24",
  81: /*up*/      "\033[\033r\n\033f\033]",
  82: /*down*/    "\033[\n\033]",
  83: /*right*/   "\033P \033N",
  84: /*left*/    "\b\033Q \033N",
  85: /*codetab*/
  86: #include "code.itoh"

Defined macros

INCH defined in line 2; used 7 times
Last modified: 1983-08-05
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1412
Valid CSS Valid XHTML 1.0 Strict