home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / andistkt.zip / ANDISTKT.EXE / MACDEF.H < prev    next >
Text File  |  1993-05-20  |  4KB  |  156 lines

  1. /*****************************************************************************/
  2. /*                                                                           */
  3. /*   Component   : Sample ANDIS MAC Driver                                   */
  4. /*                                                                           */
  5. /*   Module      : MACDEF.H                                                  */
  6. /*                                                                           */
  7. /*   Description : This module contains structure and symbol definitions.    */
  8. /*                                                                           */
  9. /*****************************************************************************/
  10.  
  11.  
  12. typedef struct                          /* Physical Address structure */
  13.    {
  14.       USHORT    High;
  15.       USHORT    Low;
  16.    } PHYSADDR, *PPHYSADDR;
  17.  
  18.  
  19. typedef struct module *PMODULE;
  20.  
  21. typedef struct module                   /* Module structure */
  22.    {
  23.       PMODULE   pNextModule;
  24.       PHYSADDR  NextModPhys;
  25.       UCHAR     Name[NAME_LEN];
  26.       USHORT    ProtDS;
  27.       struct CommChar   *pProtCCT;
  28.       struct CommChar    CCT;
  29.       struct MACSpecChar SSCT;
  30.       struct MACSpecStat SSST;
  31.       struct MACUprDisp  UDT;
  32.       struct ProtLwrDisp ProtLDT;
  33.       XVPPAT    PPAT;
  34.       ENTRYTBL  PCMEntryTbl;
  35.    } MODULE;
  36.  
  37.  
  38. typedef struct                          /* Request Packet */
  39.    {
  40.       UCHAR     Length;
  41.       UCHAR     Unit;
  42.       UCHAR     Command;
  43.       USHORT    Status;
  44.       ULONG     Reserved;
  45.       ULONG     QueueLink;
  46.    } REQPKT, *PREQPKT;
  47.  
  48.  
  49. typedef struct                          /* Input Init Request Packet */
  50.    {
  51.       UCHAR     Length;
  52.       UCHAR     Unit;
  53.       UCHAR     Command;
  54.       USHORT    Status;
  55.       ULONG     Reserved;
  56.       ULONG     QueueLink;
  57.       UCHAR     Data1;
  58.       PFN       pDevHelp;
  59.       PCHAR     pInitArg;
  60.       UCHAR     FirstUnit;
  61.    } ININITRP, *PININITRP;
  62.  
  63.  
  64. typedef struct                          /* Output Init Request Packet */
  65.    {
  66.       UCHAR     Length;
  67.       UCHAR     Unit;
  68.       UCHAR     Command;
  69.       USHORT    Status;
  70.       ULONG     Reserved;
  71.       ULONG     QueueLink;
  72.       UCHAR     UnitCount;
  73.       USHORT    CodeEnd;
  74.       USHORT    DataEnd;
  75.       PVOID     pBPB;
  76.       UCHAR     Data2;
  77.    } OUTINITRP, *POUTINITRP;
  78.  
  79.  
  80. typedef union                           /* Register structure for DevHelps */
  81.    {
  82.       struct
  83.          {
  84.             USHORT  AX;
  85.             USHORT  BX;
  86.             USHORT  CX;
  87.             USHORT  DX;
  88.             USHORT  SI;
  89.             USHORT  DI;
  90.             USHORT  CFlag;
  91.             USHORT  ES;
  92.          } Word;
  93.       struct
  94.          {
  95.             UCHAR   AL;
  96.             UCHAR   AH;
  97.             UCHAR   BL;
  98.             UCHAR   BH;
  99.             UCHAR   CL;
  100.             UCHAR   CH;
  101.             UCHAR   DL;
  102.             UCHAR   DH;
  103.          } Byte;
  104.    } REGS, *PREGS;
  105.  
  106.  
  107. typedef struct                          /* LAN message structure */
  108.    {
  109.       PCHAR   pCompID;
  110.       PCHAR  *pIvArray;
  111.       USHORT  IvCount;
  112.       USHORT  MsgNumber;
  113.       PCHAR   pMsgFile;
  114.       USHORT  MsgType;
  115.       USHORT  Display;
  116.       PCHAR   pLogPath;
  117.    } LANMSG;
  118.  
  119.  
  120. /* General definitions */
  121.  
  122. #define FAILURE       TRUE
  123. #ifndef SUCCESS
  124. #define SUCCESS       FALSE
  125. #endif
  126.  
  127.  
  128. /* Request Packet Commands */
  129.  
  130. #define COMMAND_INIT    0x00
  131. #define COMMAND_OPEN    0x0D
  132. #define COMMAND_CLOSE   0x0E
  133. #define COMMAND_IOCTL   0x10
  134.  
  135.  
  136. /* Request Packet Status */
  137.  
  138. #define STATUS_DONE     0x0100
  139. #define STATUS_ERROR    0x8000
  140. #define STATUS_GENFAIL  0x000C
  141. #define STATUS_UNKNOWN  0x0003
  142. #define STATUS_SUCCESS  0x0000
  143.  
  144.  
  145. /* DevHelp Op Codes */
  146.  
  147. #define DEVHELP_PHYSTOVIRT         0x15
  148. #define DEVHELP_ALLOCPHYS          0x18
  149. #define DEVHELP_FREEPHYS           0x19
  150. #define DEVHELP_ALLOCGDTSELECTOR   0x2D
  151. #define DEVHELP_PHYSTOGDTSELECTOR  0x2E
  152. #define DEVHELP_FREEGDTSELECTOR    0x53
  153.  
  154.  
  155.  
  156.