|
|
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.