|
|
1.1 ! root 1: /* tabitoh12.c 4.1 83/08/05 */ ! 2: #define INCH 240 ! 3: /* ! 4: * C:Itoh Prowriter (dot matrix) 12 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, EscE sets 12-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, EscE, 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: #define INCH 240 ! 36: struct { ! 37: int bset; ! 38: int breset; ! 39: int Hor; ! 40: int Vert; ! 41: int Newline; ! 42: int Char; ! 43: int Em; ! 44: int Halfline; ! 45: int Adj; ! 46: char *twinit; ! 47: char *twrest; ! 48: char *twnl; ! 49: char *hlr; ! 50: char *hlf; ! 51: char *flr; ! 52: char *bdon; ! 53: char *bdoff; ! 54: char *ploton; ! 55: char *plotoff; ! 56: char *up; ! 57: char *down; ! 58: char *right; ! 59: char *left; ! 60: char *codetab[256-32]; ! 61: int zzz; ! 62: } t = { ! 63: /*bset*/ 0, ! 64: /*breset*/ 0177420, ! 65: /*Hor*/ INCH/24, ! 66: /*Vert*/ INCH/48, ! 67: /*Newline*/ INCH/6, ! 68: /*Char*/ INCH/12, ! 69: /*Em*/ INCH/12, ! 70: /*Halfline*/ INCH/12, ! 71: /*Adj*/ INCH/12, ! 72: /*twinit*/ "\033`\015\033E", ! 73: /*twrest*/ "\033Y\033\042\033$\033]\033f\033T24\033<\033E\015\033a\n", ! 74: /*twnl*/ "\015\n", ! 75: /*hlr*/ "\033[\033T12\033r\n\033T24\033]\033f", ! 76: /*hlf*/ "\033[\033T12\n\033T24\033]", ! 77: /*flr*/ "\033[\033r\n\033f\033]", ! 78: /*bdon*/ "\033!", ! 79: /*bdoff*/ "\033\042", ! 80: /*ploton*/ "\033>\033T03", ! 81: /*plotoff*/ "\033<\033T24", ! 82: /*up*/ "\033[\033r\n\033f\033]", ! 83: /*down*/ "\033[\n\033]", ! 84: /*right*/ "\033P \033E", ! 85: /*left*/ "\b\033P \033E", ! 86: /*codetab*/ ! 87: #include "code.itoh"
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.