|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1988 Regents of the University of California. ! 3: * All rights reserved. ! 4: * ! 5: * Redistribution and use in source and binary forms are permitted ! 6: * provided that the above copyright notice and this paragraph are ! 7: * duplicated in all such forms and that any documentation, ! 8: * advertising materials, and other materials related to such ! 9: * distribution and use acknowledge that the software was developed ! 10: * by the University of California, Berkeley. The name of the ! 11: * University may not be used to endorse or promote products derived ! 12: * from this software without specific prior written permission. ! 13: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 14: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 15: * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 16: * ! 17: * @(#)hostctlr.h 4.1 (Berkeley) 12/4/88 ! 18: */ ! 19: ! 20: #define INCLUDED_HOST3270 ! 21: ! 22: /* define orders given to 3270's */ ! 23: ! 24: #define ORDER_SF 0x1d /* Start Field */ ! 25: #define ORDER_SFE 0x29 /* Start Field Extended */ ! 26: #define ORDER_SBA 0x11 /* Set Buffer Address (for output) */ ! 27: #define ORDER_SA 0x28 /* Set Attribute */ ! 28: #define ORDER_MF 0x2c /* Modify field */ ! 29: #define ORDER_IC 0x13 /* Insert Cursor (at buffer address) */ ! 30: #define ORDER_PT 0x05 /* Program Tab (absurdly complicated) */ ! 31: #define ORDER_RA 0x3c /* Repeat next character to some addr */ ! 32: #define ORDER_EUA 0x12 /* Null out every unprotected field ! 33: * to some address. ! 34: */ ! 35: #define ORDER_GE 0x08 /* Graphics Escape */ ! 36: #define ORDER_YALE 0x2b /* This is a special YALE order, which ! 37: * introduces YALE extended orders ! 38: * (like setting tabs, etc.). ! 39: */ ! 40: ! 41: /* The following is defined for initialization and error messages. */ ! 42: ! 43: struct orders_def { ! 44: int ! 45: code; /* As in 3270 data stream */ ! 46: char ! 47: *short_name, /* Short name */ ! 48: *long_name; /* Long name */ ! 49: }; ! 50: ! 51: #define ORDERS_DEF { \ ! 52: ORDER_SF, "SF", "Start Field", \ ! 53: ORDER_SFE, "SFE", "Start Field Extended", \ ! 54: ORDER_SBA, "SBA", "Set Buffer Address", \ ! 55: ORDER_SA, "SA", "Set Attribute", \ ! 56: ORDER_MF, "MF", "Modify Field", \ ! 57: ORDER_IC, "IC", "Insert Cursor", \ ! 58: ORDER_PT, "PT", "Program Tab", \ ! 59: ORDER_RA, "RA", "Repeat to Address", \ ! 60: ORDER_EUA, "EUA", "Erase Unprotected to Address", \ ! 61: ORDER_GE, "GE", "Graphics Escape", \ ! 62: ORDER_YALE, "YALE", "Yale Order" \ ! 63: } ! 64: ! 65: ! 66: #define ATTR_RESET 0x00 /* SA only - reset to default */ ! 67: # define ATTR_DEFAULT 0x00 /* reset to default */ ! 68: /* Also for 0x41-43 below */ ! 69: #define ATTR_FIELD 0xC0 /* Field attributes */ ! 70: # define ATTR_MASK 0xc0 /* control bits */ ! 71: # define ATTR_PROT 0x20 /* protected bit */ ! 72: # define ATTR_NUMERIC 0x10 /* numeric field */ ! 73: # define ATTR_AUTO_SKIP_MASK 0x30 /* mask to check auto skip */ ! 74: # define ATTR_AUTO_SKIP_VALUE 0x30 /* value to have auto skip */ ! 75: # define ATTR_DSPD_MASK 0x0c /* highlighting, etc. */ ! 76: # define ATTR_DSPD_DNSPD 0x00 /* display, no select */ ! 77: # define ATTR_DSPD_DSPD 0x04 /* display, select */ ! 78: # define ATTR_DSPD_HIGH 0x08 /* highlighted, select */ ! 79: # define ATTR_DSPD_NONDISPLAY 0x0c /* non-display, no select */ ! 80: # define ATTR_MDT 0x01 /* modified data tag */ ! 81: ! 82: #define ATTR_EXTENDED_HIGHLIGHT 0x41 /* Extended highlighting */ ! 83: # define ATTR_BLINK 0xf1 /* Blinking */ ! 84: # define ATTR_REVERSE_VIDEO 0xf2 /* Reverse video */ ! 85: # define ATTR_UNDERSCORE 0xf3 /* Underline */ ! 86: #define ATTR_COLOR 0x42 /* Color */ ! 87: # define ATTR_BLUE 0xf1 ! 88: # define ATTR_RED 0xf2 ! 89: # define ATTR_PINK 0xf3 ! 90: # define ATTR_GREEN 0xf4 ! 91: # define ATTR_TURQUOISE 0xf5 ! 92: # define ATTR_YELLOW 0xf6 ! 93: # define ATTR_WHITE 0xf7 /* for 3279; black for 3287; */ ! 94: /* multicolor for triple */ ! 95: /* plane symbol */ ! 96: #define ATTR_PROGRAMMED_SYMBOLS 0x43 /* Programmed Symbols */ ! 97: # define ATTR_SYMBOL_SET_LOW 0x40 /* Lowest loadable set ID */ ! 98: # define ATTR_SYMBOL_SET_HIGH 0xef /* Highest loadable set ID */ ! 99: # define ATTR_SYMBOL_SET_APLTEXT 0xf1 ! 100: ! 101: /* Non-SNA control unit commands */ ! 102: ! 103: #define CMD_ERASE_ALL_UNPROTECTED 0x0f ! 104: #define CMD_ERASE_WRITE 0x05 ! 105: #define CMD_ERASE_WRITE_ALTERNATE 0x0d ! 106: #define CMD_READ_BUFFER 0x02 ! 107: #define CMD_READ_MODIFIED 0x06 ! 108: #define CMD_WRITE 0x01 ! 109: #define CMD_WRITE_STRUCTURED_FIELD 0x11 ! 110: ! 111: /* SNA control unit commands */ ! 112: ! 113: #define CMD_SNA_COPY 0xf7 ! 114: #define CMD_SNA_ERASE_ALL_UNPROTECTED 0x6f ! 115: #define CMD_SNA_ERASE_WRITE 0xf5 ! 116: #define CMD_SNA_ERASE_WRITE_ALTERNATE 0x7e ! 117: #define CMD_SNA_READ_BUFFER 0xf2 ! 118: #define CMD_SNA_READ_MODIFIED 0xf6 ! 119: #define CMD_SNA_READ_MODIFIED_ALL 0x6e ! 120: #define CMD_SNA_WRITE 0xf1 ! 121: #define CMD_SNA_WRITE_STRUCTURED_FIELD 0xf3 ! 122: ! 123: ! 124: #define WCC_RESET 0x40 ! 125: #define WCC_ALARM 0x04 ! 126: #define WCC_RESTORE 0x02 ! 127: #define WCC_RESET_MDT 0x01 ! 128: ! 129: ! 130: /* Special EBCDIC characters unique to a 3270 */ ! 131: ! 132: #define EBCDIC_BLANK 0x40 /* Space */ ! 133: #define EBCDIC_CENTSIGN 0x4a /* Cent sign */ ! 134: #define EBCDIC_DUP 0x1c /* DUP character */ ! 135: #define EBCDIC_FM 0x1e /* Field mark character */ ! 136: #define EBCDIC_PERCENT 0x6c /* Percent sign */ ! 137: #define EBCDIC_SLASH 0x61 /* Slash */ ! 138: #define EBCDIC_SOH 0x01 /* Start of Heading */ ! 139: #define EBCDIC_STX 0x02 /* Start of Text */ ! 140: ! 141: /* Structured field types */ ! 142: #define SF_3270DS 0x40 /* For write operations */ ! 143: #define SF_LPS 0x06 /* Load Programmed Symbols */ ! 144: #define SF_SRM 0x09 /* Set Reply Mode */ ! 145: #define SF_SWO 0x0b /* Set Window Origin */ ! 146: #define SF_READ_PARTITION 0x01 /* Read Partition (Query) */ ! 147: #define SF_ERASE_RESET 0x03 /* Erase (and/or Reset) */ ! 148: #define SF_SCS_DATA 0x41 /* SCS Data */ ! 149: #define SF_CREATE_PARTITION 0x0c /* Create a partition */ ! 150: ! 151: /* AID characters sent to host. ! 152: * ! 153: * Note that this file (the following entries) are scanned by mkhit.c, ! 154: * and that the format must remain more-or-less consistent ! 155: * (#define\tAID_name\t[\t]*TOKEN) ! 156: */ ! 157: ! 158: #define AID_NONE 0x60 /* No AID (display) */ ! 159: #define AID_NONE_PRINTER 0xe8 /* No AID (printer) */ ! 160: ! 161: #define AID_PA1 0x6c ! 162: #define AID_PA2 0x6e ! 163: #define AID_PA3 0x6b ! 164: #define AID_CLEAR 0x6d ! 165: #define AID_TREQ 0xf0 ! 166: #define AID_ENTER 0x7d ! 167: #define AID_SELPEN 0x7e /* ! 168: * Really, only SELPEN with DESIGNATOR ! 169: * = space or null ! 170: */ ! 171: #define AID_PF1 0xf1 ! 172: #define AID_PF2 0xf2 ! 173: #define AID_PF3 0xf3 ! 174: #define AID_PF4 0xf4 ! 175: #define AID_PF5 0xf5 ! 176: #define AID_PF6 0xf6 ! 177: #define AID_PF7 0xf7 ! 178: #define AID_PF8 0xf8 ! 179: #define AID_PF9 0xf9 ! 180: #define AID_PF10 0x7a ! 181: #define AID_PF11 0x7b ! 182: #define AID_PF12 0x7c ! 183: #define AID_PF13 0xc1 ! 184: #define AID_PF14 0xc2 ! 185: #define AID_PF15 0xc3 ! 186: #define AID_PF16 0xc4 ! 187: #define AID_PF17 0xc5 ! 188: #define AID_PF18 0xc6 ! 189: #define AID_PF19 0xc7 ! 190: #define AID_PF20 0xc8 ! 191: #define AID_PF21 0xc9 ! 192: #define AID_PF22 0x4a ! 193: #define AID_PF23 0x4b ! 194: #define AID_PF24 0x4c ! 195: #define AID_PF25 0xd1 ! 196: #define AID_PF26 0xd2 ! 197: #define AID_PF27 0xd3 ! 198: #define AID_PF28 0xd4 ! 199: #define AID_PF29 0xd5 ! 200: #define AID_PF30 0xd6 ! 201: #define AID_PF31 0xd7 ! 202: #define AID_PF32 0xd8 ! 203: #define AID_PF33 0xd9 ! 204: #define AID_PF34 0x5a ! 205: #define AID_PF35 0x5b ! 206: #define AID_PF36 0x5c
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.