home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / andistkt.zip / IBMANDIS.H < prev    next >
Text File  |  1995-04-19  |  7KB  |  172 lines

  1. /*$Log*/
  2. // ibmandis.h
  3.  
  4. #define         MAX_PPATS            256
  5.  
  6. typedef         unsigned short       ANDIS_PCMID;     /* PCM ID for SCPI Calls */
  7. typedef         unsigned short       ANDIS_REQHANDLE; /* Request Handle for SCPI Calls */
  8. typedef         unsigned short       ANDIS_PARM_1;    /* Parameter 1 for SCPI Calls */
  9. typedef         unsigned long        ANDIS_PARM_2;    /* Parameter 2 for SCPI Calls */
  10. typedef         unsigned short       ANDIS_FC;        /* Function Code for SCPI Calls */
  11. typedef         unsigned short       ANDIS_MAC_DS;    /* MAC DS Parm for SCPI Calls */
  12.  
  13. #define  ANDIS_PARMS  ANDIS_PCMID,ANDIS_REQHANDLE,ANDIS_PARM_1,ANDIS_PARM_2,ANDIS_FC,ANDIS_MAC_DS
  14.  
  15. typedef struct andis_ppat
  16. {
  17.    unsigned short PPAT_Length;      // Length of PPAT
  18.    unsigned char  PPAT_Ver_Major;   // PPAT Structure Version Number
  19.    unsigned char  PPAT_Ver_Minor;   // PPAT Structure Version Number
  20.    unsigned short Port_Interface_Type; // 1 = SCPI
  21.    unsigned char  Port_Interface_Version; // SCPI Version Number
  22.    unsigned char  Conn_Type;        // Connection Type (1-Nonswitched,
  23.                                     //                  2-Switched)
  24.    unsigned char  Phys_Conn_State;  // Physical Connection State
  25.                                     //    00h - Hardware Available, Present
  26.                                     //    01h - Disconnected
  27.                                     //    02h - Connect Pending
  28.                                     //    03h - Connected
  29.                                     //    04h - Disconnect Pending
  30.                                     //    0Eh - Hardware not Present, awaiting insertion
  31.                                     //    0Eh - Hardware Present, non-functional, unowned
  32.                                     //    FEh - Hardware not Present, unowned
  33.                                     //    FFh - Hardware not Present, non-functional, unowned
  34.    unsigned char  ANDIS_MAC_Mode;   // Current Mode of an ANDIS MAC
  35.                                     //    00h - Connection Mode
  36.                                     //    01h - Protocol Mode
  37.                                     //    02h - Unformatted Mode
  38.                                     //    ffh - MAC Connection Management Disabled,
  39.                                     //          PPAT Registration Failed
  40.    unsigned short ANDIS_MAC_DS;     // MACS DS Value for the Current this Port
  41.    void far  *MAC_CCT_ptr;          // Pointer to MACs Common Characteristics Table
  42.    char       Port_Name[16];        // ASCIIZ
  43.    char       Phys_Interface[16];   // ASCIIZ
  44.    int (far pascal *MAC_PPAT_Mgmt)(ANDIS_PARMS);  // MAC's PPAT Management Entry Point
  45.    int (far pascal *PPAT_Mgmt)(ANDIS_PARMS);   //  Registration Fac. PPAT Management Entry Point
  46.    int (far pascal *Port_Mgmt)(ANDIS_PARMS);   // Port Management Entry Point
  47.    int (far pascal *Xmit_Imm)(ANDIS_PARMS);    // Transmit Immediate Entry Point
  48.    int (far pascal *Rcv_Imm_Cnf)(ANDIS_PARMS); // Receive Immediate Confirm Entry Point
  49.    void far  *Port_Log_ptr;         // Pointer to Port Error Log
  50.    unsigned long Max_Speed;         // Maximum Physical Port Speed
  51.    unsigned long Max_Xmit_Buff;     // Maximum Transmit Immediate Buffer size
  52.                                     // (Set by MAC), 0 - MAC doesn't care
  53.    unsigned short Port_ID;          // Port ID/Address (AWP-209)
  54.    unsigned char  Slot_Number;      // Slot Number of Hardware
  55.    unsigned char  Port_Number;      // Port Number of Hardware
  56.    unsigned char  Channel_Number;   // Channel Number of Hardware
  57.    char       ANDIS_Align;          // Reserved space
  58.    char       ANDIS_Reserve[6];     // Reserved space
  59.  
  60. } ANDISPPAT, far *PANDISPPAT;
  61.  
  62.  
  63. typedef struct ppat_list_t {                         //List of PPAT's
  64.  unsigned short             num_of_ppats;          //Number of PPATS
  65.  PANDISPPAT                 ppat_array[MAX_PPATS]; //array of PPAT addresses
  66. } PPAT_LIST, far *PPPAT_LIST;
  67.  
  68.  
  69. /* PCM and Null DLC Entry Table */
  70.  
  71. typedef struct entrytbl_t
  72.    {
  73.       int (far pascal *PortMgmtInd)( ANDIS_PARMS );
  74.       int (far pascal *RecvImmData)( ANDIS_PARMS );
  75.       int (far pascal *XmitImmDataCnf)( ANDIS_PARMS );
  76.       ANDIS_MAC_DS pcm_ds;
  77.    } ENTRYTBL, far *PENTRYTBL;
  78.  
  79.  
  80. /* ANDIS Function Codes */
  81. /* Port Management      */
  82.  
  83. #define ANDIS_FC_REG_PCM         0x0000
  84. #define ANDIS_FC_REL_PCM         0x0001
  85. #define ANDIS_FC_ACT_MODE        0x0002
  86. #define ANDIS_FC_RET_PPI_STAT    0x0003
  87. #define ANDIS_FC_GET_PPAT_PARMS  0x0004
  88. #define ANDIS_FC_SET_PPAT_PARMS  0x0005
  89. #define ANDIS_FC_RESET_PORT      0x0006
  90. #define ANDIS_FC_ACT_PHYS_CONN   0x0007
  91. #define ANDIS_FC_DEACT_PHYS_CONN 0x0008
  92. #define ANDIS_FC_REG_NULL_DLC    0x0009
  93. #define ANDIS_FC_REL_NULL_DLC    0x000A
  94. #define ANDIS_FC_ACT_DTR         0x000B
  95. #define ANDIS_FC_ACT_RTS         0x000D
  96.  
  97. /* Port Management Ind  */
  98.  
  99. #define ANDIS_FC_CONN_ACTIVE     0x0000
  100. #define ANDIS_FC_CONN_INACTIVE   0x0001
  101. #define ANDIS_FC_PPI_SIGNAL      0x0002
  102. #define ANDIS_FC_PPI_EXCEPTION   0x0003
  103. #define ANDIS_FC_PM_REQ_COMPLETE 0x0004
  104.  
  105. /* Transmit Immediate   */
  106.  
  107. #define ANDIS_FC_TX_IMM_DATA     0x0000
  108. #define ANDIS_FC_SEND_BREAK      0x0001
  109.  
  110. /* Transmit Immediate Confirm  */
  111.  
  112. #define ANDIS_FC_TX_IMM_DATA_CNF 0x0000
  113.  
  114. /* Receive Immediate   */
  115.  
  116. #define ANDIS_FC_RX_IMM_DATA     0x0000
  117.  
  118. /* Receive Immediate Confirm  */
  119.  
  120. #define ANDIS_FC_RX_IMM_DATA_CNF 0x0000
  121.  
  122. /* Update PPAT   */
  123.  
  124. #define ANDIS_FC_UPDATE_PPAT     0x0000
  125.  
  126. /* MAC Mode (Used in SCPI Word for Activate Mode primitive) */
  127.  
  128. #define ANDIS_MAC_MODE_CONN      0x0000
  129. #define ANDIS_MAC_MODE_PROTOCOL  0x0001
  130. #define ANDIS_MAC_MODE_DATA      0x0002
  131.  
  132.  
  133. /* Reset Type (Used in SCPI Word for Reset Port primitive) */
  134.  
  135. #define ANDIS_RESET_SOFT         0x0000
  136. #define ANDIS_RESET_HARD         0x0001
  137.  
  138. /* Connect Mode (Used in SCPI Word for Activate Phys Conn primitive) */
  139.  
  140. #define ANDIS_CONN_MODE_PCM      0x0000
  141. #define ANDIS_CONN_MODE_DLC      0x0001
  142. #define ANDIS_CONN_MODE_NULL_DLC 0x0002
  143.  
  144. /* SCPI Return Codes */
  145.  
  146. #define ANDIS_RC_SUCCESS         0x0000
  147. #define ANDIS_RC_REQ_QUEUED      0x0002
  148. #define ANDIS_RC_OUT_OF_RESOURCE 0x0006
  149. #define ANDIS_RC_INVALID_PARM    0x0007
  150. #define ANDIS_RC_INVALID_FUNC    0x0008
  151. #define ANDIS_RC_NOT_SUPPORTED   0x0009
  152. #define ANDIS_RC_HW_ERROR        0x000A
  153. #define ANDIS_RC_TRANSMIT_ERROR  0x000B
  154. #define ANDIS_RC_BUFF_TOO_SMALL  0x000D
  155. #define ANDIS_RC_DRIVER_NOT_INIT 0x0022
  156. #define ANDIS_RC_HW_NOT_FOUND    0x0023
  157. #define ANDIS_RC_HW_FAILURE      0x0024
  158. #define ANDIS_RC_CONFIG_FAILURE  0x0025
  159. #define ANDIS_RC_INT_CONFLICT    0x0026
  160. #define ANDIS_RC_INCOMPAT_MAC    0x0027
  161. #define ANDIS_RC_INIT_FAILED     0x0028
  162. #define ANDIS_RC_NO_BINDING      0x0029
  163. #define ANDIS_RC_NET_NOT_CONN    0x002A
  164. #define ANDIS_RC_INCOMPAT_OS_VER 0x002B
  165. #define ANDIS_RC_ALREADY_REG     0x002C
  166. #define ANDIS_RC_PATH_NOT_FOUND  0x002D
  167. #define ANDIS_RC_INSUF_MEM       0x002E
  168. #define ANDIS_RC_INFO_NOT_FOUND  0x002F
  169. #define ANDIS_RC_GEN_FAILURE     0x00FF
  170.  
  171.  
  172.