Annotation of 43BSDReno/usr.bin/tn3270/ctlr/oia.h, revision 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:  *     @(#)oia.h       4.1 (Berkeley) 12/4/88
        !            18:  */
        !            19: 
        !            20: /*
        !            21:  * This file describes the Operator Information Area in the 3270.
        !            22:  *
        !            23:  * Our OIA looks like that used by the 3270 PC and PC 3270 products.
        !            24:  */
        !            25: 
        !            26: #define        INCLUDED_OIA
        !            27: 
        !            28: typedef struct {
        !            29:     char
        !            30:        online_ownership,
        !            31:        character_selection,
        !            32:        shift_state,
        !            33:        pss_group_1,
        !            34:        highlight_group_1,
        !            35:        color_group_1,
        !            36:        insert,
        !            37:        input_inhibited[5],
        !            38:        pss_group_2,
        !            39:        highlight_group_2,
        !            40:        color_group_2,
        !            41:        comm_error_reminder,
        !            42:        printer_status,
        !            43:        reserved_group_14,
        !            44:        reserved_group_15,
        !            45:        autokey_play_record_status,
        !            46:        autokey_abort_pause_status,
        !            47:        enlarge_state;
        !            48: } OIA;
        !            49: 
        !            50: /* Bits in online_ownership */
        !            51: #define        OIA_SETUP               0x80
        !            52: #define        OIA_TEST                0x40
        !            53: #define        OIA_SSCP_LU             0x20
        !            54: #define        OIA_LU_LU               0x10
        !            55: #define        OIA_UNOWNED             0x08
        !            56: #define        OIA_SUBSYSTEM_READY     0x04
        !            57: 
        !            58: /* Bit in character_selection */
        !            59: #define        OIA_EXTENDED_SELECT     0x80
        !            60: #define        OIA_APL                 0x40
        !            61: #define        OIA_KANA                0x20
        !            62: #define        OIA_ALPHA               0x10
        !            63: #define        OIA_TEXT                0x08
        !            64: 
        !            65: /* Bits in shift_state */
        !            66: #define        OIA_NUMERIC             0x80
        !            67: #define        OIA_UPPER_SHIFT         0x40
        !            68: 
        !            69: /* Bits in pss_group_1, highlight_group_1, and color_group_1 */
        !            70: #define        OIA_SELECTABLE          0x80
        !            71: #define        OIA_FIELD_INHERIT       0x40
        !            72: 
        !            73: /* Bits in insert */
        !            74: #define        OIA_INSERT_MODE         0x80
        !            75: 
        !            76: /* We define this to be a 'long' followed by a 'char' (5 bytes) */
        !            77: 
        !            78: #define        OIA_NON_RESETTABLE      0x80
        !            79: #define        OIA_SECURITY_KEY        0x40
        !            80: #define        OIA_MACHINE_CHECK       0x20
        !            81: #define        OIA_COMM_CHECK          0x10
        !            82: #define        OIA_PROGRAM_CHECK       0x08
        !            83: #define        OIA_RETRY               0x04
        !            84: #define        OIA_DEVICE_NOT_WORKING  0x02
        !            85: #define        OIA_DEVICE_VERY_BUSY    0x01
        !            86: 
        !            87: #define        OIA_DEVICE_BUSY           0x80
        !            88: #define        OIA_TERMINAL_WAIT         0x40
        !            89: #define        OIA_MINUS_SYMBOL          0x20
        !            90: #define        OIA_MINUS_FUNCTION        0x10
        !            91: #define        OIA_TOO_MUCH_ENTERED      0x08
        !            92: #define        OIA_NOT_ENOUGH_ENTERED    0x04
        !            93: #define        OIA_WRONG_NUMBER          0x02
        !            94: #define        OIA_NUMERIC_FIELD         0x01
        !            95: 
        !            96: #define        OIA_OP_UNAUTHORIZED         0x80
        !            97: #define        OIA_OP_UNAUTHORIZED_MIN     0x40
        !            98: #define        OIA_INVALID_DEAD_KEY_COMBO  0x20
        !            99: #define        OIA_WRONG_PLACE             0x10
        !           100: 
        !           101: #define        OIA_MESSAGE_PENDING           0x80
        !           102: #define        OIA_PARTITION_WAIT            0x40
        !           103: #define        OIA_SYSTEM_WAIT               0x20
        !           104: #define        OIA_HARDWARE_MISMATCH         0x10
        !           105: #define        OIA_LOGICAL_TERM_NOT_CONF     0x08
        !           106: 
        !           107: 
        !           108: #define        OIA_AUTOKEY_INHIBIT             0x80
        !           109: #define        OIA_API_INHIBIT                 0x40
        !           110: 
        !           111: /* Bits in pss_group_2 */
        !           112: #define        OIA_PS_SELECTED         0x80
        !           113: #define        OIA_PC_DISPLAY_DISABLE  0x40
        !           114: 
        !           115: /* Bits in highlight_group_2 and color_group_2 */
        !           116: #define        OIA_SELECTED            0x80
        !           117: 
        !           118: /* Bits in comm_error_reminder */
        !           119: #define        OIA_COMM_ERROR          0x80
        !           120: #define        OIA_RTM                 0x40
        !           121: 
        !           122: /* Bits in printer_status */
        !           123: #define        OIA_PRINT_NOT_CUSTOM    0x80
        !           124: #define        OIA_PRINTER_MALFUNCTION 0x40
        !           125: #define        OIA_PRINTER_PRINTING    0x20
        !           126: #define        OIA_ASSIGN_PRINTER      0x10
        !           127: #define        OIA_WHAT_PRINTER        0x08
        !           128: #define        OIA_PRINTER_ASSIGNMENT  0x04
        !           129: 
        !           130: /* Bits in autokey_play_record_status */
        !           131: #define        OIA_PLAY                0x80
        !           132: #define        OIA_RECORD              0x40
        !           133: 
        !           134: /* Bits in autokey_abort_pause_status */
        !           135: #define        OIA_RECORDING_OVERFLOW  0x80
        !           136: #define        OIA_PAUSE               0x40
        !           137: 
        !           138: /* Bits in enlarge_state */
        !           139: #define        OIA_WINDOW_IS_ENLARGED  0x80
        !           140: 
        !           141: /* Define functions to set and read the oia */
        !           142: 
        !           143: #define        SetOiaOnlineA(oia) SetOiaMyJob((oia))           /* Side-effect */
        !           144: #define        ResetOiaOnlineA(oia) \
        !           145:        /* Nothing defined for this */
        !           146: 
        !           147: #define        IsOiaReady3274(oia)     ((oia)->online_ownership&OIA_SUBSYSTEM_READY)
        !           148: #define        ResetOiaReady3274(oia)  (oia)->online_ownership &= ~OIA_SUBSYSTEM_READY
        !           149: #define        SetOiaReady3274(oia)    (oia)->online_ownership |= OIA_SUBSYSTEM_READY
        !           150: 
        !           151: #define        IsOiaMyJob(oia)         ((oia)->online_ownership&OIA_LU_LU)
        !           152: #define        ResetOiaMyJob(oia)      (oia)->online_ownership &= ~OIA_LU_LU
        !           153: #define        SetOiaMyJob(oia)        (oia)->online_ownership |= OIA_LU_LU
        !           154: 
        !           155: #define        IsOiaInsert(oia)        ((oia)->online_ownership&OIA_INSERT_MODE)
        !           156: #define        ResetOiaInsert(oia)     (oia)->online_ownership &= ~OIA_INSERT_MODE
        !           157: #define        SetOiaInsert(oia)       (oia)->online_ownership |= OIA_INSERT_MODE
        !           158: 
        !           159: #define        IsOiaSystemLocked(oia)  ((oia)->input_inhibited[3]&OIA_SYSTEM_WAIT)
        !           160: #define        ResetOiaSystemLocked(oia) \
        !           161:                                (oia)->input_inhibited[3] &= ~OIA_SYSTEM_WAIT
        !           162: #define        SetOiaSystemLocked(oia) (oia)->input_inhibited[3] |= OIA_SYSTEM_WAIT
        !           163: 
        !           164: #define        IsOiaTWait(oia)         ((oia)->input_inhibited[1]&OIA_TERMINAL_WAIT)
        !           165: #define        ResetOiaTWait(oia)      (oia)->input_inhibited[1] &= ~OIA_TERMINAL_WAIT
        !           166: #define        SetOiaTWait(oia)        (oia)->input_inhibited[1] |= OIA_TERMINAL_WAIT
        !           167: 
        !           168: #define        IsOiaApiInhibit(oia)    ((oia)->input_inhibited[4] &   OIA_API_INHIBIT)
        !           169: #define        ResetOiaApiInhibit(oia) ((oia)->input_inhibited[4] &= ~OIA_API_INHIBIT)
        !           170: #define        SetOiaApiInhibit(oia)   ((oia)->input_inhibited[4] |=  OIA_API_INHIBIT)
        !           171: 
        !           172: /* A macro to let the world know that someone has modified the OIA. */
        !           173: #define        SetOiaModified()        oia_modified = 1
        !           174: #define        SetPsModified()         ps_modified = 1

unix.superglobalmegacorp.com

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