1: /*************************************************************************
   2:  * This is 'tabepson.c' for an Epson FX80. Default spacing is elite.	 *
   3:  * This represents a combination and very slight modification of two	 *
   4:  *  nroff driving tables. Specifically :				 *
   5:  *									 *
   6:  *     tablpr.c  by UCB Computing Center (the approximation of greek)    *
   7:  *									 *
   8:  *     tabfx80p.c by Goeke@MIT-Multics.ARPA (Epson print mode switching) *
   9:  *	replaces big curly bracket parts with the following:		 *
  10:  *									 *
  11:  *		PRINT MODE:		  CHARACTER SEQUENCE		 *
  12:  *		FX80 set Double Strike 	 	\(lt			 *
  13:  *		FX80 cancels D.S.  	 	\(lb			 *
  14:  *		FX80 set Condensed 	 	\(rt			 *
  15:  *		FX80 cancels Condensed 	 	\(rb			 *
  16:  *		FX80 set Pica size 	 	\(lk			 *
  17:  *		FX80 set Elite size	 	\(rk			 *
  18:  *		FX80 set Proportional 	 	\(bv 			 *
  19:  *		FX80 set Expanded Mode 	 	\(lf 			 *
  20:  *		FX80 cancel Expanded Mode	\(rf 			 *
  21:  *		FX80 underline on 	 	\(lc 			 *
  22:  *		FX80 underline off 	 	\(rc 			 *
  23:  *									 *
  24:  *  --> J. Michael Cherry, 1/18/85  molbio@ucblapis or			 *
  25:  *				    ucbvax!molbio!mike			 *
  26:  *									 *
  27:  *************************************************************************/
  28: 
  29: #define INCH 240
  30: 
  31: struct {
  32:           int bset;               /* terminal driver set          */
  33:           int breset;             /* terminal driver reset        */
  34:           int Hor;                /* horizontal resolution        */
  35:           int Vert;               /* vetical resolution           */
  36:           int Newline;            /* length on one line feed      */
  37:           int Char;               /* character size increment     */
  38:           int Em;                 /* em size                      */
  39:           int Halfline;           /* length of half line feed     */
  40:           int Adj;                /* white size increment         */
  41:           char *twinit;           /* initialize string to printer */
  42:           char *twrest;           /* reset string to printer      */
  43:           char *twnl;             /* newline string               */
  44:           char *hlr;              /* half-line-feed-reverse       */
  45:           char *hlf;              /* half-line-feed-forward       */
  46:           char *flr;              /* full-line-feed-reverse       */
  47:           char *bdon;             /* bold-on string               */
  48:           char *bdoff;            /* bold-off string              */
  49:           char *ploton;           /* plot on string               */
  50:           char *plotoff;          /* plot off string              */
  51:           char *up;               /* these strings move as        */
  52:           char *down;             /*     indicated in plot mode   */
  53:           char *right;            /*     in best available        */
  54:           char *left;             /*     resolution               */
  55:           char *codetab[256-32];  /* see the table                */
  56:           int zzz;
  57:           } t = {
  58: /*bset*/    0,
  59: /*breset*/  0,
  60: /*Hor*/     INCH/120,   /* must be consisten with plot increments */
  61: /*Vert*/    INCH/48,    /* ditto */
  62: /*Newline*/ INCH/6,
  63: /*Char*/    INCH/12,    /* the character unit for the code table */
  64: /*Em*/      INCH/12,    /* the nominal space size */
  65: /*Halfline*/    INCH/12,
  66: /*Adj*/     INCH/12,    /* the white caused by a single plot move */
  67: /*twinit*/  "\033M",    /* invoke elite */
  68: /*twrest*/  "\033@",    /* reset printer to deflauts */
  69: /*twnl*/    "\n",       /* newline code        */
  70: /*hlr*/     "\033j\022",
  71: /*hlf*/     "\033J\022",    /* forward feed */
  72: /*flr*/     "\033j\044",
  73: /*bdon*/    "\033G",    /* Alternate chars.  '\fB' to invoke */
  74: /*bdoff*/   "\033H",    /* Standard chars. '\fP' to invoke */
  75: /*ploton*/  "",
  76: /*plotoff*/ "",
  77: /*up*/      "",
  78: /*down*/    "",
  79: /*right*/   "",
  80: /*left*/    "",
  81: 
  82: "\001 ",    /*space*/
  83: "\001!",    /*!*/
  84: "\001\"",   /*"*/
  85: "\001#",    /*#*/
  86: "\001$",    /*$*/
  87: "\001%",    /*%*/
  88: "\001&",    /*&*/
  89: "\001'",    /*' close*/
  90: "\001(",    /*(*/
  91: "\001)",    /*)*/
  92: "\001*",    /***/
  93: "\001+",    /*+*/
  94: "\001,",    /*,*/
  95: "\001-",    /*- hyphen*/
  96: "\001.",    /*.*/
  97: "\001/",    /*/*/
  98: "\2010",    /*0*/
  99: "\2011",    /*1*/
 100: "\2012",    /*2*/
 101: "\2013",    /*3*/
 102: "\2014",    /*4*/
 103: "\2015",    /*5*/
 104: "\2016",    /*6*/
 105: "\2017",    /*7*/
 106: "\2018",    /*8*/
 107: "\2019",    /*9*/
 108: "\001:",    /*:*/
 109: "\001;",    /*;*/
 110: "\001<",    /*<*/
 111: "\001=",    /*=*/
 112: "\001>",    /*>*/
 113: "\001?",    /*?*/
 114: "\001@",    /*@*/
 115: "\201A",    /*A*/
 116: "\201B",    /*B*/
 117: "\201C",    /*C*/
 118: "\201D",    /*D*/
 119: "\201E",    /*E*/
 120: "\201F",    /*F*/
 121: "\201G",    /*G*/
 122: "\201H",    /*H*/
 123: "\201I",    /*I*/
 124: "\201J",    /*J*/
 125: "\201K",    /*K*/
 126: "\201L",    /*L*/
 127: "\201M",    /*M*/
 128: "\201N",    /*N*/
 129: "\201O",    /*O*/
 130: "\201P",    /*P*/
 131: "\201Q",    /*Q*/
 132: "\201R",    /*R*/
 133: "\201S",    /*S*/
 134: "\201T",    /*T*/
 135: "\201U",    /*U*/
 136: "\201V",    /*V*/
 137: "\201W",    /*W*/
 138: "\201X",    /*X*/
 139: "\201Y",    /*Y*/
 140: "\201Z",    /*Z*/
 141: "\001[",    /*[*/
 142: "\001\\",   /*\*/
 143: "\001]",    /*]*/
 144: "\001^",    /*^*/
 145: "\001_",    /*_ dash*/
 146: "\001`",    /*` open*/
 147: "\201a",    /*a*/
 148: "\201b",    /*b*/
 149: "\201c",    /*c*/
 150: "\201d",    /*d*/
 151: "\201e",    /*e*/
 152: "\201f",    /*f*/
 153: "\201g",    /*g*/
 154: "\201h",    /*h*/
 155: "\201i",    /*i*/
 156: "\201j",    /*j*/
 157: "\201k",    /*k*/
 158: "\201l",    /*l*/
 159: "\201m",    /*m*/
 160: "\201n",    /*n*/
 161: "\201o",    /*o*/
 162: "\201p",    /*p*/
 163: "\201q",    /*q*/
 164: "\201r",    /*r*/
 165: "\201s",    /*s*/
 166: "\201t",    /*t*/
 167: "\201u",    /*u*/
 168: "\201v",    /*v*/
 169: "\201w",    /*w*/
 170: "\201x",    /*x*/
 171: "\201y",    /*y*/
 172: "\201z",    /*z*/
 173: "\001{",    /*{*/
 174: "\001|",    /*|*/
 175: "\001}",    /*}*/
 176: "\001~",    /*~*/
 177: "\001",     /* narrow sp */
 178: "\001-",    /*hyphen*/
 179: "\001\033j\003.\033J\003",  /*bullet*/
 180: "\002\[]",  /*square*/
 181: "\001-",    /*3/4 em*/
 182: "\001_",    /*rule*/
 183: "\0031/4",  /*1/4*/
 184: "\0031/2",  /*1/2*/
 185: "\0033/4",  /*3/4*/
 186: "\001-",    /*minus*/
 187: "\202fi",   /*fi*/
 188: "\202fl",   /*fl*/
 189: "\202ff",   /*ff*/
 190: "\203ffi",  /*ffi*/
 191: "\203ffl",  /*ffl*/
 192: "\001\033j\013o\033J\013",  /*degree*/
 193: "\001|\b\033j\002-\033J\002",   /*dagger*/
 194: "\001 ",    /* section*/
 195: "\001'",    /*foot mark*/
 196: "\001'",    /*acute accent*/
 197: "\001`",    /*grave accent*/
 198: "\001_",    /*underrule*/
 199: "\001/",    /*slash (longer)*/
 200: "\001\0",   /*half narrow space => 1/12 em */
 201: "\001 ",    /*unpaddable space*/
 202: "\201o\b(",     /*alpha*/
 203: "\2018\b|",     /*beta*/
 204: "\201>\b/",     /*gamma*/
 205: "\201d\b`",     /*delta*/
 206: "\201C\b-",     /*epsilon*/
 207: "\000\0",   /*zeta*/
 208: "\201n",    /*eta*/
 209: "\201o\b-",     /*theta*/
 210: "\201i",    /*iota*/
 211: "\201k",    /*kappa*/
 212: "\201,\b\\",    /*lambda*/
 213: "\201u",    /*mu*/
 214: "\201v",    /*nu*/
 215: "\000\0",   /*xi*/
 216: "\201o",    /*omicron*/
 217: "\202i\b~i\b~", /*pi*/
 218: "\201p",    /*rho*/
 219: "\201o\b~",     /*sigma*/
 220: "\201i\b~",     /*tau*/
 221: "\201u",    /*upsilon*/
 222: "\201o\b|",     /*phi*/
 223: "\201x",    /*chi*/
 224: "\201u\b|",     /*psi*/
 225: "\201w",    /*omega*/
 226: "\201I\b~",     /*Gamma*/
 227: "\202/\b_\\\b_", /*Delta*/
 228: "\201O\b-", /*Theta*/
 229: "\202/\\",  /*Lambda*/
 230: "\201=\b_", /*Xi*/
 231: "\202TT",   /*Pi*/
 232: "\201>\b_\b~",  /*Sigma*/
 233: "\000",     /**/
 234: "\201Y",    /*Upsilon*/
 235: "\201O\b|", /*Phi*/
 236: "\201U\b|", /*Psi*/
 237: "\201O\b_", /*Omega*/
 238: "\001v\b/", /*square root*/
 239: "\000\0",   /*terminal sigma*/
 240: "\001~",    /*root en*/
 241: "\001>\b_", /*>=*/
 242: "\001<\b_", /*<=*/
 243: "\001=\b_", /*identically equal*/
 244: "\001-",    /*equation minus*/
 245: "\001~\b_", /*approx =*/
 246: "\001~",    /*approximates*/
 247: "\001=\b/", /*not equal*/
 248: "\002->",   /*right arrow*/
 249: "\002<-",   /*left arrow*/
 250: "\001|\b^", /*up arrow*/
 251: "\001|\bv", /*down arrow*/
 252: "\001=",    /*equation equal*/
 253: "\001x",    /*multiply*/
 254: "\001:\b-", /*divide*/
 255: "\001+\b_", /*plus-minus*/
 256: "\002(\b~)\b~", /*cup (union)*/
 257: "\002(\b_)\b_", /*cap (intersection)*/
 258: "\002(=",   /*subset of*/
 259: "\002=)",   /*superset of*/
 260: "\002(=\b_",    /*improper subset*/
 261: "\002=\b_)",    /*improper superset*/
 262: "\002oo",   /*infinity*/
 263: "\001o\b`", /*partial derivative*/
 264: "\002\\\b~/\b~", /*gradient*/
 265: "\000\0",   /*not*/
 266: "\000\0",   /*integral sign*/
 267: "\002oc",   /*proportional to*/
 268: "\001O\b/", /*empty set*/
 269: "\001<\b-", /*member of*/
 270: "\001+",    /*equation plus*/
 271: "\003(R)",  /*registered*/
 272: "\003(C)",  /*copyright*/
 273: "\001|",    /*box rule */
 274: "\001c\b/", /*cent sign*/
 275: "\001|\b=", /*dbl dagger*/
 276: "\002=>",   /*right hand*/
 277: "\002<=",   /*left hand*/
 278: "\001*",    /*math * */
 279: "\000\0",   /*bell system sign*/
 280: "\001|",    /*or (was star)*/
 281: "\001O",    /*circle*/
 282: "\000\033G",    /* FX80 set Double Strike */    /* \(lt */
 283: "\000\033H",    /* FX80 cancels D.S.  */    /* \(lb */
 284: };

Defined macros

INCH defined in line 29; used 7 times
Last modified: 1985-05-21
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1383
Valid CSS Valid XHTML 1.0 Strict