# 2.11BSD#431 - /usr/src/sys/vaxif/if_dmc.h

##### Macros

    CNTLO_BITS        X
    DMC0BITS          X
    DMC1BITS          X
    DMC2BITS          X
    DMCMTU            X
    DMC_BACCI         X
    DMC_BACCO         X
    DMC_BASEI         X
    DMC_CCOUNT        X
    DMC_CNTLI         X
    DMC_CNTLO         X
    DMC_CNTMASK       X
    DMC_DATACK        X
    DMC_DISCONN       X
    DMC_ERROR         X
    DMC_FATAL         X
    DMC_HDPLX         X
    DMC_IEI           X
    DMC_IEO           X
    DMC_IPTYPE        X
    DMC_LOSTDATA      X
    DMC_MAINT         X
    DMC_MAINTREC      X
    DMC_MCLR          X
    DMC_NEXMEM        X
    DMC_NOBUFS        X
    DMC_NTRAILER      X
    DMC_OUR           X
    DMC_OUX           X
    DMC_PERR          X
    DMC_RDYI          X
    DMC_RDYO          X
    DMC_READ          X
    DMC_RESUME        X
    DMC_RQI           X
    DMC_RUN           X
    DMC_SEC           X
    DMC_START         X
    DMC_TIMEOUT       X
    DMC_TRAILER       X
    DMC_WRITE         X
    DMC_XMEM          X
    RDYSCAN           X

##### struct's

    dmc_header        X
    dmcdevice         X

       1: /*
       2:  * Copyright (c) 1982, 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:  *	@(#)if_dmc.h	7.1 (Berkeley) 6/5/86
       7:  */
       8:
       9: /*
      10:  * DMC-11 Interface
      11:  */
      12:
      13: struct dmcdevice {
      14:         char    bsel0;
      15:     char    bsel1;
      16:     char    bsel2;
      17:     char    bsel3;
      18:     short   sel4;
      19:     short   sel6;
      20: };
      21:
      22: /*
      23:  * dmc software packet encapsulation.  This allows the dmc
      24:  * link to be multiplexed among several protocols.
      25:  * The first eight bytes of the dmc header are garbage,
      26:  * since on a vax the uba has been known to mung these
      27:  * bytes.  The next two bytes encapsulate packet type.
      28:  */
      29: struct dmc_header {
      30:     char    dmc_buf[8]; /* space for uba on vax */
      31:     short   dmc_type;   /* encapsulate packet type */
      32: };
      33:
      34: /* packet types */
      35: #define DMC_IPTYPE  1
      36: #define DMC_TRAILER 2
      37: #define DMC_NTRAILER    16
      38:
      39: /*
      40:  * DMCMTU includes space for data (1024) +
      41:  * protocol header (256) + trailer descriptor (4).
      42:  * The software link encapsulation header (dmc_header)
      43:  * is handled separately.
      44:  */
      45: #define DMCMTU  1284
      46:
      47: #define RDYSCAN 16  /* loop delay for RDYI after RQI */
      48:
      49: /* defines for bsel0 */
      50: #define DMC_BACCI   0
      51: #define DMC_CNTLI   1
      52: #define DMC_PERR    2
      53: #define DMC_BASEI   3
      54: #define DMC_WRITE   0       /* transmit block */
      55: #define DMC_READ    4       /* read block */
      56: #define DMC_RQI     0040        /* port request bit */
      57: #define DMC_IEI     0100        /* enable input interrupts */
      58: #define DMC_RDYI    0200        /* port ready */
      59: #define DMC0BITS    "\10\8RDI\7IEI\6RQI"
      60:
      61: /* defines for bsel1 */
      62: #define DMC_MCLR    0100        /* DMC11 Master Clear */
      63: #define DMC_RUN     0200        /* clock running */
      64: #define DMC1BITS    "\10\8RUN\7MCLR"
      65:
      66: /* defines for bsel2 */
      67: #define DMC_BACCO   0
      68: #define DMC_CNTLO   1
      69: #define DMC_OUX     0       /* transmit block */
      70: #define DMC_OUR     4       /* read block */
      71: #define DMC_IEO     0100        /* enable output interrupts */
      72: #define DMC_RDYO    0200        /* port available */
      73: #define DMC2BITS    "\10\8RDO\7IEO"
      74:
      75: /* defines for CNTLI mode */
      76: #define DMC_HDPLX   02000       /* half duplex DDCMP operation */
      77: #define DMC_SEC     04000       /* half duplex secondary station */
      78: #define DMC_MAINT   00400       /* enter maintenance mode */
      79:
      80: /* defines for BACCI/O and BASEI mode */
      81: #define DMC_XMEM    0140000     /* xmem bit position */
      82: #define DMC_CCOUNT  0037777     /* character count mask */
      83: #define DMC_RESUME  0002000     /* resume (BASEI only) */
      84:
      85: /* defines for CNTLO */
      86: #define DMC_CNTMASK 01777
      87:
      88: #define DMC_DATACK  01
      89: #define DMC_TIMEOUT 02
      90: #define DMC_NOBUFS  04
      91: #define DMC_MAINTREC    010
      92: #define DMC_LOSTDATA    020
      93: #define DMC_DISCONN 0100
      94: #define DMC_START   0200
      95: #define DMC_NEXMEM  0400
      96: #define DMC_ERROR   01000
      97:
      98: #define DMC_FATAL (DMC_ERROR|DMC_NEXMEM|DMC_START|DMC_LOSTDATA|DMC_MAINTREC)
      99: #define CNTLO_BITS  \
     100:    "\10\12ERROR\11NEXMEM\10START\7DISC\5LSTDATA\4MAINT\3NOBUF\2TIMEO\1DATACK"

#### Defined struct's

dmc_header defined in line 29; never used
dmcdevice defined in line 13; never used

#### Defined macros

CNTLO_BITS defined in line 99; never used
DMC0BITS defined in line 59; never used
DMC1BITS defined in line 64; never used
DMC2BITS defined in line 73; never used
DMCMTU defined in line 45; never used
DMC_BACCI defined in line 50; never used
DMC_BACCO defined in line 67; never used
DMC_BASEI defined in line 53; never used
DMC_CCOUNT defined in line 82; never used
DMC_CNTLI defined in line 51; never used
DMC_CNTLO defined in line 68; never used
DMC_CNTMASK defined in line 86; never used
DMC_DATACK defined in line 88; never used
DMC_DISCONN defined in line 93; never used
DMC_ERROR defined in line 96; used 1 times

- in line 98

DMC_FATAL defined in line 98; never used
DMC_HDPLX defined in line 76; never used
DMC_IEI defined in line 57; never used
DMC_IEO defined in line 71; never used
DMC_IPTYPE defined in line 35; never used
DMC_LOSTDATA defined in line 92; used 1 times

- in line 98

DMC_MAINT defined in line 78; never used
DMC_MAINTREC defined in line 91; used 1 times

- in line 98

DMC_MCLR defined in line 62; never used
DMC_NEXMEM defined in line 95; used 1 times

- in line 98

DMC_NOBUFS defined in line 90; never used
DMC_NTRAILER defined in line 37; never used
DMC_OUR defined in line 70; never used
DMC_OUX defined in line 69; never used
DMC_PERR defined in line 52; never used
DMC_RDYI defined in line 58; never used
DMC_RDYO defined in line 72; never used
DMC_READ defined in line 55; never used
DMC_RESUME defined in line 83; never used
DMC_RQI defined in line 56; never used
DMC_RUN defined in line 63; never used
DMC_SEC defined in line 77; never used
DMC_START defined in line 94; used 1 times

- in line 98

DMC_TIMEOUT defined in line 89; never used
DMC_TRAILER defined in line 36; never used
DMC_WRITE defined in line 54; never used
DMC_XMEM defined in line 81; never used
RDYSCAN defined in line 47; never used

Last modified: 1986-06-05 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 312 |