Annotation of 43BSD/sys/vaxuba/dmzreg.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * Copyright (c) 1985, 1986 Regents of the University of California.
        !             3:  * All rights reserved.  The Berkeley software License Agreement
        !             4:  * specifies the terms and conditions for redistribution.
        !             5:  *
        !             6:  *     @(#)dmzreg.h    7.1 (Berkeley) 6/5/86
        !             7:  */
        !             8: 
        !             9: /*
        !            10:  * HISTORY
        !            11:  * 23-Apr-85  Joe Camaratta (jcc) at Siemens RTL
        !            12:  *     Header file for DEC's DMZ32
        !            13:  */
        !            14: 
        !            15: struct dmzdevice {
        !            16:        short dmz_config;       /* configuration cntl and status register */
        !            17:        short dmz_diag;         /* diagnostic control and status register */
        !            18:        struct {
        !            19:                short octet_csr;        /* octet control and status */
        !            20:                short octet_lprm;       /* line parameter */
        !            21:                union{
        !            22:                        short octet_rb;         /* receiver buffer */
        !            23:                        short octet_rsp;        /* receive silo parameter */
        !            24:                } octet_receive;
        !            25:                union{
        !            26:                        u_short word;           /* word */
        !            27:                        u_char bytes[2];        /* bytes */
        !            28:                } octet_ir;                     /* indirect registers */
        !            29:        } octet[3];
        !            30:        short dmz_unused[2];
        !            31: };
        !            32: 
        !            33: #define octet_sato octet_rsp
        !            34: 
        !            35: /* aliases for asynchronous indirect control registers */
        !            36: #define        IR_TBUF         000     /* transmit character */
        !            37: #define        IR_RMSTSC       000     /* receive modem status, transmit silo count */
        !            38: #define        IR_LCTMR        010     /* line control and transmit modem */
        !            39: #define        IR_TBA          020     /* transmit buffer address register */
        !            40: #define        IR_TCC          030     /* transmit character count (DMA) */
        !            41: 
        !            42: #define        octet_tbf       octet_ir.bytes[0]       /* transmit buffer */
        !            43: #define        octet_tbf2      octet_ir.word           /* transmit buffer, 2 chars */
        !            44: #define        octet_rmstsc    octet_ir.word   /* rcv modem status, xmit silo count */
        !            45: #define        octet_lctmr     octet_ir.word           /* line control, xmit modem */
        !            46: #define        octet_tba       octet_ir.word           /* transmit buffer address */
        !            47: #define        octet_tcc       octet_ir.word           /* transmit character count */
        !            48: 
        !            49: /* bits in octet_csr */
        !            50: #define        DMZ_TRDY        0100000         /* transmit ready */
        !            51: #define        DMZ_TIE         0040000         /* transmit interrupt enable */
        !            52: #define        DMZ_NXM         0030000         /* non-existant memory */
        !            53: #define        DMZ_LIN         0003400         /* transmit line number */
        !            54: #define        DMZ_RRDY        0000200         /* receiver data available */
        !            55: #define        DMZ_RIE         0000100         /* receiver interrupt enable */
        !            56: #define        DMZ_RESET       0000040         /* master reset */
        !            57: #define        DMZ_IAD         0000037         /* indirect address register */
        !            58: 
        !            59: #define        DMZ_IE          (DMZ_TIE | DMZ_RIE)     /* enable transmit and receive */
        !            60: 
        !            61: /* bits in octet_lprm (taken from dmfreg.h) */
        !            62: #define        DMZ_6BT         0010            /* 6 bits per character */
        !            63: #define        DMZ_7BT         0020            /* 7 bits per character */
        !            64: #define        DMZ_8BT         0030            /* 8 bits per character */
        !            65: #define        DMZ_PEN         0040            /* parity enable */
        !            66: #define        DMZ_EPR         0100            /* even parity */
        !            67: #define        DMZ_SCD         0200            /* stop code */
        !            68: #define        DMZ_XTE         0170000         /* transmit rate */
        !            69: #define        DMZ_RRT         0007400         /* receive rate */
        !            70: #define        DMZ_LSL         0000007         /* line select */
        !            71: 
        !            72: /* baud rates */
        !            73: #define        BR_50           000
        !            74: #define        BR_75           001
        !            75: #define        BR_110          002
        !            76: #define        BR_134_5        003
        !            77: #define        BR_150          004
        !            78: #define        BR_300          005
        !            79: #define        BR_600          006
        !            80: #define        BR_1200         007
        !            81: #define        BR_1800         010
        !            82: #define        BR_2000         011
        !            83: #define        BR_2400         012
        !            84: #define        BR_3600         013
        !            85: #define        BR_4800         014
        !            86: #define        BR_7200         015
        !            87: #define        BR_9600         016
        !            88: #define        BR_19200        017
        !            89: 
        !            90: /* bits in octet_rb (taken from dmfreg.h) */
        !            91: #define        DMZ_DSC         0004000         /* data set change */
        !            92: #define        DMZ_PE          0010000         /* parity error */
        !            93: #define        DMZ_FE          0020000         /* framing error */
        !            94: #define        DMZ_DO          0040000         /* data overrun */
        !            95: #define        DMZ_DV          0100000         /* data valid */
        !            96: #define        DMZ_RL          0003400         /* line */
        !            97: #define        DMZ_RD          0000377         /* data */
        !            98: #define        DMZ_AT          0000377         /* alarm timeout */
        !            99: 
        !           100: /* bits in dmz_rmstsc */
        !           101: #define        DMZ_TSC         0x00ff          /* transmit silo count */
        !           102: #define        DMZ_USRR        0x0400          /* user modem signal (pin 25) */
        !           103: #define        DMF_SR          0x0800          /* secondary receive */
        !           104: #define        DMZ_CTS         0x1000          /* clear to send */
        !           105: #define        DMZ_CAR         0x2000          /* carrier detect */
        !           106: #define        DMZ_RNG         0x4000          /* ring */
        !           107: #define        DMZ_DSR         0x8000          /* data set ready */
        !           108: 
        !           109: /* bits in dmz_lctmr (tms half) */
        !           110: #define        DMZ_USRW        0x0100          /* user modem signal (pin 18) */
        !           111: #define        DMZ_DTR         0x0200          /* data terminal ready */
        !           112: #define        DMZ_RATE        0x0400          /* data signal rate select */
        !           113: #define        DMF_ST          0x0800          /* secondary transmit */
        !           114: #define        DMZ_RTS         0x1000          /* request to send */
        !           115: #define        DMZ_PREEMPT     0x8000          /* preempt output */
        !           116: 
        !           117: /* bits in octet_lctmr (lc half) */
        !           118: #define        DMZ_MIE         0040            /* modem interrupt enable */
        !           119: #define        DMZ_FLS         0020            /* flush transmit silo */
        !           120: #define        DMZ_BRK         0010            /* send break bit */
        !           121: #define        DMZ_RE          0004            /* receive enable */
        !           122: #define        DMZ_AUT         0002            /* auto XON/XOFF */
        !           123: #define        DMZ_TE          0001            /* transmit enable */
        !           124: #define        DMZ_CF          0300            /* control function */
        !           125: 
        !           126: #define        DMZ_LCE         (DMZ_MIE|DMZ_RE|DMZ_TE)
        !           127: #define        DMZ_ON          (DMZ_DTR|DMZ_RTS|DMZ_LCE)
        !           128: #define        DMZ_OFF         DMZ_LCE
        !           129: 
        !           130: 
        !           131: /* bits in octet_tcc */
        !           132: #define        DMZ_HA          0140000         /* high address bits */
        !           133: 
        !           134: /* bits added to dm lsr for DMGET/DMSET */
        !           135: #define        DML_USR         0001000         /* usr modem sig, not a real DM bit */
        !           136: #define        DML_DSR         0000400         /* data set ready, not a real DM bit */
        !           137: 
        !           138: #define        DMZ_SIZ         32              /* size of DMZ output silo (per line) */
        !           139: 
        !           140: #define        DMZ(a)          (a/24)
        !           141: #define        OCTET(a)        ((a%24)/8)
        !           142: #define        LINE(a)         ((a%24)%8)
        !           143: 
        !           144: #define        DMZ_NOC_MASK    03
        !           145: #define        DMZ_INTERFACE   000

unix.superglobalmegacorp.com

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