|
|
1.1 ! root 1: /* ! 2: * ! 3: * Tektronix 4014 control codes. ! 4: * ! 5: */ ! 6: ! 7: #define NUL '\000' ! 8: #define SOH '\001' ! 9: #define STX '\002' ! 10: #define ETX '\003' ! 11: #define EOT '\004' ! 12: #define ENQ '\005' ! 13: #define ACK '\006' ! 14: #define BEL '\007' ! 15: #define BS '\010' ! 16: #define HT '\011' ! 17: #define NL '\012' ! 18: #define VT '\013' ! 19: #define FF '\014' ! 20: #define CR '\015' ! 21: #define SO '\016' ! 22: #define SI '\017' ! 23: #define DLE '\020' ! 24: #define DC1 '\021' ! 25: #define DC2 '\022' ! 26: #define DC3 '\023' ! 27: #define DC4 '\024' ! 28: #define NAK '\025' ! 29: #define SYN '\026' ! 30: #define ETB '\027' ! 31: #define CAN '\030' ! 32: #define EM '\031' ! 33: #define SUB '\032' ! 34: #define ESC '\033' ! 35: #define FS '\034' ! 36: #define GS '\035' ! 37: #define RS '\036' ! 38: #define US '\037' ! 39: #define DEL '\177' ! 40: ! 41: /* ! 42: * ! 43: * A few definitions used to classify the different tektronix states. OUTMODED ! 44: * is returned by control() and esc(), and typically means the state has changed. ! 45: * ! 46: */ ! 47: ! 48: #define OUTMODED -1 ! 49: #define ALPHA 0 ! 50: #define GIN 1 ! 51: #define GRAPH 2 ! 52: #define POINT 3 ! 53: #define SPECIALPOINT 4 ! 54: #define INCREMENTAL 5 ! 55: #define RESET 6 ! 56: #define EXIT 7 ! 57: ! 58: /* ! 59: * ! 60: * The pen state, either UP or DOWN, controls whether vectors are drawn. ! 61: * ! 62: */ ! 63: ! 64: #define UP 0 ! 65: #define DOWN 1 ! 66: ! 67: /* ! 68: * ! 69: * Coordinates of the upper right corner of the screen - almost the real screen ! 70: * dimensions. ! 71: * ! 72: */ ! 73: ! 74: #define TEKXMAX 4096 ! 75: #define TEKYMAX 3120 ! 76: ! 77: /* ! 78: * ! 79: * The size of the spot in SPECIALPOINT mode is controlled by a non-linear ! 80: * function that has a domain that consists of the integers from 040 to 0175. ! 81: * The next definition is used to initialize the special point mode intensity ! 82: * array that implements the function. Data came from table F-6 in the tektronix ! 83: * 4014 manual. ! 84: * ! 85: */ ! 86: ! 87: #define INTENSITY \ ! 88: \ ! 89: { \ ! 90: 14, 16, 17, 19, 20, 22, 23, 25, \ ! 91: 28, 31, 34, 38, 41, 44, 47, 50, \ ! 92: 56, 62, 69, 75, 81, 88, 94,100, \ ! 93: 56, 62, 69, 75, 81, 88, 94,100, \ ! 94: 0, 1, 1, 1, 1, 1, 1, 2, \ ! 95: 2, 2, 2, 2, 3, 3, 3, 3, \ ! 96: 4, 4, 4, 5, 5, 5, 6, 6, \ ! 97: 7, 8, 9, 10, 11, 12, 12, 13, \ ! 98: 14, 16, 17, 19, 20, 22, 23, 25, \ ! 99: 28, 31, 34, 38, 41, 44, 47, 50, \ ! 100: 56, 62, 69, 75, 81, 88, 94,100, \ ! 101: 56, 62, 69, 75, 81, 88, 94,100, \ ! 102: } ! 103: ! 104: /* ! 105: * ! 106: * The next two definitions give the height and width of characters in the four ! 107: * different sizes available on tektronix terminals. TEKFONT is the default index ! 108: * into CHARHEIGHT and CHARWIDTH. ! 109: * ! 110: */ ! 111: ! 112: #define CHARHEIGHT {88, 82, 53, 48} ! 113: #define CHARWIDTH {56, 51, 34, 31} ! 114: #define TEKFONT 2 ! 115: ! 116: /* ! 117: * ! 118: * The entries defined in STYLES are passed on to the PostScript operator setdash. ! 119: * They're used to implement the different tektronix line styles. Belongs in the ! 120: * prologue! ! 121: * ! 122: */ ! 123: ! 124: #define STYLES \ ! 125: \ ! 126: { \ ! 127: "[]", \ ! 128: "[.5 2]", \ ! 129: "[.5 2 4 2]", \ ! 130: "[4 4]", \ ! 131: "[8 4]", \ ! 132: "[]" \ ! 133: } ! 134: ! 135: /* ! 136: * ! 137: * Variables of type Point are used to keep track of the cursor position. ! 138: * ! 139: */ ! 140: ! 141: typedef struct { ! 142: int x; ! 143: int y; ! 144: } Point; ! 145: ! 146: /* ! 147: * ! 148: * An array of type Fontmap helps convert font names requested by users into ! 149: * legitimate PostScript names. The array is initialized using FONTMAP, which must ! 150: * end with an entry that has NULL defined as its name field. ! 151: * ! 152: */ ! 153: ! 154: typedef struct { ! 155: char *name; /* user's font name */ ! 156: char *val; /* corresponding PostScript name */ ! 157: } Fontmap; ! 158: ! 159: #define FONTMAP \ ! 160: \ ! 161: { \ ! 162: "R", "Courier", \ ! 163: "I", "Courier-Oblique", \ ! 164: "B", "Courier-Bold", \ ! 165: "CO", "Courier", \ ! 166: "CI", "Courier-Oblique", \ ! 167: "CB", "Courier-Bold", \ ! 168: "CW", "Courier", \ ! 169: "PO", "Courier", \ ! 170: "courier", "Courier", \ ! 171: "cour", "Courier", \ ! 172: "co", "Courier", \ ! 173: NULL, NULL \ ! 174: } ! 175: ! 176: /* ! 177: * ! 178: * Some of the non-integer valued functions in posttek.c. ! 179: * ! 180: */ ! 181: ! 182: char *get_font(); ! 183:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.