Annotation of Examples/DriverKit/SMC16/SMC16_reloc.tproj/wd83C584.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1993 NeXT Computer, Inc.
                      3:  *
                      4:  * WD83C584 Bus Interface Chip.
                      5:  *
                      6:  * HISTORY
                      7:  *
                      8:  * 26 Jan 1993 
                      9:  *     Created.
                     10:  */
                     11: 
                     12: /*
                     13:  * Memory select register.
                     14:  */
                     15: 
                     16: #define BIC_MSR_OFF            0x00
                     17:  
                     18: typedef struct {
                     19:     unsigned char      madr    :6,
                     20:                        menb    :1,
                     21:                        rst     :1;
                     22: } bic_msr_t;
                     23: 
                     24: /*
                     25:  * Interface configuration register.
                     26:  */
                     27:  
                     28: #define BIC_ICR_OFF            0x01
                     29: 
                     30: typedef struct {
                     31:     unsigned char      bus16   :1,
                     32:                        ora     :1,
                     33: #define BIC_ACCESS_BIO 0
                     34: #define BIC_ACCESS_EAR 1
                     35:                        ir2     :1,
                     36: #define ICR_IR2_9      0x00
                     37: #define ICR_IR2_3      0x00
                     38: #define ICR_IR2_5      0x00
                     39: #define ICR_IR2_7      0x00
                     40: #define ICR_IR2_10     0x01
                     41: #define ICR_IR2_11     0x01
                     42: #define ICR_IR2_15     0x01
                     43: #define ICR_IR2_4      0x01
                     44:                        msz     :1,
                     45:                        rla     :1,
                     46:                        rx7     :1,
                     47:                        rio     :1,
                     48:                        sto     :1;
                     49: } bic_icr_t;
                     50: 
                     51: /*
                     52:  * IO Address register.
                     53:  */
                     54:  
                     55: #define BIC_IAR_OFF            0x02
                     56: 
                     57: typedef struct {
                     58:     unsigned char      adrlo   :5,
                     59:                        adrhi   :3;
                     60: } bic_iar_t;
                     61: 
                     62: /*
                     63:  * BIOS ROM Address register.
                     64:  */
                     65:  
                     66: #define BIC_BIO_OFF            0x03
                     67: 
                     68: typedef struct {
                     69:     unsigned char      swint   :1,
                     70:                        bioadr  :5,
                     71:                        biosz   :2;
                     72: #define BIC_NO_BIOS    0x00
                     73: #define BIC_BIOS_16K   0x01
                     74: #define BIC_BIOS_32K   0x02
                     75: #define BIC_BIOS_64K   0x03
                     76: } bic_bio_t;
                     77: 
                     78: /*
                     79:  * EEROM Address register.
                     80:  */
                     81:  
                     82: #define BIC_EAR_OFF            0x03
                     83: 
                     84: typedef struct {
                     85:     unsigned char      rpg     :2,
                     86:                        rpe     :1,
                     87:                        ram     :1,
                     88:                        eeadr   :4;
                     89: } bic_ear_t;
                     90: 
                     91: /*
                     92:  * Interrupt request register.
                     93:  */
                     94:  
                     95: #define BIC_IRR_OFF            0x04
                     96: 
                     97: typedef struct {
                     98:     unsigned char      zws8    :1,
                     99:                        out     :3,
                    100:                        flsh    :1,
                    101:                        irx     :2,
                    102: #define BIC_IRX_9      0x00
                    103: #define BIC_IRX_3      0x01
                    104: #define BIC_IRX_5      0x02
                    105: #define BIC_IRX_7      0x03
                    106: #define BIC_IRX_10     0x00
                    107: #define BIC_IRX_11     0x01
                    108: #define BIC_IRX_15     0x02
                    109: #define BIC_IRX_4      0x03
                    110:                        ien     :1;
                    111: } bic_irr_t;
                    112: 
                    113: /*
                    114:  * LA Address register.
                    115:  */
                    116:  
                    117: #define BIC_LAAR_OFF           0x05
                    118: 
                    119: typedef struct {
                    120:     unsigned char      ladr    :5,
                    121:                        zws16   :1,
                    122:                        l16en   :1,
                    123:                        m16en   :1;
                    124: } bic_laar_t;
                    125: 
                    126: /*
                    127:  * Initialize Jumper register.
                    128:  */
                    129:  
                    130: #define BIC_JMP_OFF            0x06
                    131: 
                    132: typedef struct {
                    133:     unsigned char      init0   :1,
                    134:                        init1   :1,
                    135:                        init2   :1,
                    136:                                :2,
                    137:                        in1     :1,
                    138:                        in2     :1,
                    139:                                :1;
                    140: } bic_jmp_t;
                    141: 
                    142: /*
                    143:  * General Purpose register 2.
                    144:  */
                    145: 
                    146: #define BIC_GP2_OFF            0x07
                    147: 
                    148: /*
                    149:  * LAN Address register.
                    150:  */
                    151: 
                    152: #define BIC_LAR_OFF            0x08 
                    153: #define BIC_ID_OFF             0x0e
                    154: #define BIC_LAR_CKSUM_OFF      0x0f

unix.superglobalmegacorp.com

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