/*   ti 9914 card description            john Bidwell 11/23/81 */
/*           (98624a card)  */

/*  read card register description */
    struct read_9914  {
           
	 unsigned    char sf1,     
         t_card_id,                         /* reg 1   */
	 sf2,
         t_stat_addr;                       /* reg 3   */
	 long sf4,
	      sf5,
	      sf6;
	 unsigned char sf7,
	 t_i_st0,                           /* reg #17 */
	 sf8,
         t_i_st1,                           /*      19 */
	 sf9,
         t_bus_ctl_addr_stat,               /*      21 */
	 sf10,
         t_bus_stat;                        /*      23 */
	 long sf10a;
	 unsigned char sf11,
         t_cmd_pass_thru,                   /*      29 */
	 sf12,
         t_data_in;                         /*      31 */
        };

/* write card register description */
   struct write_9914  {
	unsigned char pf1,
        t_card_id,                          /* reg  1 */
	pf2,
        t_int_dma_stat;                     /* reg  3 */
	long pf3,
	     pf4,
	     pf5;
        unsigned char pf6,
	t_i_msk0,                           /* reg 17 */
	pfa6,
        t_i_msk1,                           /*     19 */
	pf7,pf8,pf9,
        t_aux_cmd,                          /*     23 */
	pf10,
        t_address_reg,                      /*     25 */
	pf11,
        t_serial_poll_resp,                 /*     27 */
	pf12,
        t_parallel_poll_resp,               /*     29 */
	pf13,
        t_data_out;                         /*     31 */
       };


/*    aux command register    */

#define      cmdswrt1      0x80                    /*msb high */
#define      cmdswrt0            0 
#define	     cmdrhdf		 2
#define	     cmdhdfa0		 3
#define	     cmdhdfa1	   0x80| 3
#define	     cmdhdfe0		 4
#define      cmdfeoi             8
#define      cmdlon0             9
#define      cmdlon1       0x80| 9
#define      cmdton0            10
#define      cmdton1       0x80|10                              
#define      cmdgts             11
#define      cmdtca             12
#define      cmdrpp1       0x80|14
#define      cmdrpp0            14
#define      cmdsic0            15
#define      cmdsic1       0x80|15
#define      cmdren0            16
#define      cmdren1       0x80|16
#define	     cmdrqc		17
#define      cmdrlc		18
#define      cmddai0            19
#define      cmddai1       0x80|19
#define      cmdshdw0           22
#define      cmdshdw1      0x80|22
#define	     cmdt10		025


/*   command macros   */

#define  auxcommand  wrtptr->t_aux_cmd 
#define  intmask0    wrtptr->t_i_msk0
#define  intmask1    wrtptr->t_i_msk1
#define  commandpass readptr->t_cmd_pass_thru
#define  dataout     wrtptr->t_data_out
#define instat0      readptr->t_i_st0
#define instat1      readptr->t_i_st1
#define ienab        wrtptr->t_int_dma_stat
#define busstat      readptr->t_bus_stat
#define datain       readptr->t_data_in



#define stat_b0       0x10             /* interface ready to accept next data
				       byte in instat0 */
#define stat_bi       0x20	       /* data byte accepted */


       
/* masks for interrupts */

#define	cmdienab	19
#define cmdidisab	147
#define cmdclrtlk	10
#define cmdhdfa		131

#define init		0x80
#define byte0		0x10
#define errck		0x80
#define srq		0x02
#define srqstat		0x40
#define scd		0x60	/*2608 identify secondary*/
