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

Defined struct's

dmzdevice defined in line 15; used 38 times

Defined macros

BR_110 defined in line 75; never used
BR_1200 defined in line 80; never used
BR_134_5 defined in line 76; never used
BR_150 defined in line 77; never used
BR_1800 defined in line 81; never used
BR_19200 defined in line 88; never used
BR_2000 defined in line 82; never used
BR_2400 defined in line 83; never used
BR_300 defined in line 78; never used
BR_3600 defined in line 84; never used
BR_4800 defined in line 85; never used
BR_50 defined in line 73; never used
BR_600 defined in line 79; never used
BR_7200 defined in line 86; never used
BR_75 defined in line 74; never used
BR_9600 defined in line 87; never used
DMF_SR defined in line 103; used 1 times
DMF_ST defined in line 113; used 2 times
DML_DSR defined in line 136; never used
DML_USR defined in line 135; used 1 times
DMZ defined in line 140; used 3 times
DMZ_6BT defined in line 62; used 1 times
DMZ_7BT defined in line 63; used 1 times
DMZ_8BT defined in line 64; used 1 times
DMZ_AT defined in line 98; never used
DMZ_AUT defined in line 122; never used
DMZ_BRK defined in line 120; used 3 times
DMZ_CAR defined in line 105; used 3 times
DMZ_CF defined in line 124; never used
DMZ_CTS defined in line 104; used 1 times
DMZ_DO defined in line 94; used 1 times
DMZ_DSC defined in line 91; used 1 times
DMZ_DSR defined in line 107; used 1 times
DMZ_DTR defined in line 111; used 5 times
DMZ_DV defined in line 95; never used
DMZ_EPR defined in line 66; used 1 times
DMZ_FE defined in line 93; used 1 times
DMZ_FLS defined in line 119; used 1 times
DMZ_HA defined in line 132; never used
DMZ_IAD defined in line 57; never used
DMZ_IE defined in line 59; used 12 times
DMZ_INTERFACE defined in line 145; used 1 times
DMZ_LCE defined in line 126; used 3 times
DMZ_LIN defined in line 53; never used
DMZ_LSL defined in line 70; never used
DMZ_MIE defined in line 118; used 1 times
DMZ_NOC_MASK defined in line 144; used 1 times
DMZ_NXM defined in line 52; used 1 times
DMZ_OFF defined in line 128; used 3 times
DMZ_ON defined in line 127; used 2 times
DMZ_PE defined in line 92; used 1 times
DMZ_PEN defined in line 65; used 2 times
DMZ_PREEMPT defined in line 115; never used
DMZ_RATE defined in line 112; never used
DMZ_RD defined in line 97; never used
DMZ_RE defined in line 121; used 1 times
DMZ_RESET defined in line 56; never used
DMZ_RIE defined in line 55; used 1 times
  • in line 59
DMZ_RL defined in line 96; never used
DMZ_RNG defined in line 106; used 1 times
DMZ_RRDY defined in line 54; never used
DMZ_RRT defined in line 69; never used
DMZ_RTS defined in line 114; used 5 times
DMZ_SCD defined in line 67; used 1 times
DMZ_SIZ defined in line 138; used 1 times
DMZ_TE defined in line 123; used 5 times
DMZ_TIE defined in line 51; used 1 times
  • in line 59
DMZ_TRDY defined in line 50; used 1 times
DMZ_TSC defined in line 101; never used
DMZ_USRR defined in line 102; used 1 times
DMZ_USRW defined in line 110; used 1 times
DMZ_XTE defined in line 68; never used
IR_LCTMR defined in line 38; used 6 times
IR_RMSTSC defined in line 37; used 2 times
IR_TBA defined in line 39; used 1 times
IR_TBUF defined in line 36; used 1 times
IR_TCC defined in line 40; never used
LINE defined in line 142; never used
OCTET defined in line 141; used 5 times
octet_lctmr defined in line 45; used 12 times
octet_rmstsc defined in line 44; used 2 times
octet_sato defined in line 33; used 2 times
octet_tba defined in line 46; used 1 times
octet_tbf defined in line 42; used 1 times
octet_tbf2 defined in line 43; never used
octet_tcc defined in line 47; used 1 times

Usage of this include

dmzreg.h used 1 times
Last modified: 1986-06-05
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 1688
Valid CSS Valid XHTML 1.0 Strict