/* Register definitions for a DL-11. */

/*
 *------------------------------------------------------------------
 * $Source: /mit/cgw/src/gw/dev.vax/RCS/dl.h,v $
 * $Revision: 1.1 $
 * $Date: 88/06/05 22:41:46 $
 * $Author: jon $
 *------------------------------------------------------------------
 */

struct dl_reg {
    unss rcsr;			/* receive CSR */
    unss rbuf;			/* receive buffer */
    unss xcsr;			/* transmit CSR */
    unss xbuf;			/* transmit buffer */
};

/* RCSR */
#define DL_RDRENB	0x0001	/* reader enable */
#define DL_RXIE		0x0040	/* receive interrupt enable */
#define DL_RXDONE	0x0080	/* receive done */
#define DL_RXACT	0x0800	/* receiver active */
#define DL_DSSTAT	0x8000	/* set when Carrier or CTS are set */

/* RBUF */
#define DL_RDATA	0x00ff	/* received character */
#define DL_PARITY	0x1000	/* parity error */
#define DL_FRAME	0x2000	/* framing error */
#define DL_OVERRUN	0x4000	/* characters lost due to overrun */
#define DL_ERROR	0x8000	/* set if any other error bits set */

/* XCSR */
#define DL_BREAK	0x0001	/* send break */
#define DL_MAINT	0x0004	/* puts DL in loopback mode */
#define DL_TXIE		0x0040	/* transmit interrupt enable */
#define DL_TCRDY	0x0080	/* transmit ready */
#define DL_PBE		0x0800	/* programmable baud rate enable */
#define DL_BAUD(b) (b << 12)	/* baud rate */
