Annotation of 43BSDReno/usr.bin/tn3270/ctlr/hostctlr.h, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.