home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 2 / goldfish_vol2_cd1.bin / gnu / os-include / libraries / configvars.h < prev    next >
C/C++ Source or Header  |  1993-10-15  |  2KB  |  70 lines

  1. #ifndef LIBRARIES_CONFIGVARS_H
  2. #define LIBRARIES_CONFIGVARS_H
  3. /*
  4. **    $VER: configvars.h 36.14 (22.4.91)
  5. **    Includes Release 40.15
  6. **
  7. **    Software structures used by AutoConfig (tm) boards
  8. **
  9. **    (C) Copyright 1985-1993 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. */
  12.  
  13. #ifndef    EXEC_TYPES_H
  14. #include "exec/types.h"
  15. #endif    /* EXEC_TYPES_H */
  16.  
  17. #ifndef EXEC_NODES_H
  18. #include "exec/nodes.h"
  19. #endif /* EXEC_NODES_H */
  20.  
  21. #ifndef LIBRARIES_CONFIGREGS_H
  22. #include "libraries/configregs.h"
  23. #endif /* LIBRARIES_CONFIGREGS_H */
  24.  
  25. /*
  26. ** At early system startup time, one ConfigDev structure is created for
  27. ** each board found in the system.  Software may seach for ConfigDev
  28. ** structures by vendor & product ID number.  For debugging and diagnostic
  29. ** use, the entire list can be accessed.  See the expansion.library document
  30. ** for more information.
  31. */
  32. struct ConfigDev {
  33.     struct Node        cd_Node;
  34.     UBYTE        cd_Flags;    /* (read/write) */
  35.     UBYTE        cd_Pad;        /* reserved */
  36.     struct ExpansionRom    cd_Rom;        /* copy of board's expansion ROM */
  37.     APTR        cd_BoardAddr; /* where in memory the board was placed */
  38.     ULONG        cd_BoardSize;    /* size of board in bytes */
  39.     UWORD        cd_SlotAddr;    /* which slot number (PRIVATE) */
  40.     UWORD        cd_SlotSize;    /* number of slots (PRIVATE) */
  41.     APTR        cd_Driver;    /* pointer to node of driver */
  42.     struct ConfigDev *    cd_NextCD;    /* linked list of drivers to config */
  43.     ULONG        cd_Unused[4];    /* for whatever the driver wants */
  44. };
  45.  
  46. /* cd_Flags */
  47. #define    CDB_SHUTUP    0    /* this board has been shut up */
  48. #define    CDB_CONFIGME    1    /* this board needs a driver to claim it */
  49. #define    CDB_BADMEMORY    2    /* this board contains bad memory */
  50. #define    CDB_PROCESSED    3    /* private flag */
  51.  
  52. #define    CDF_SHUTUP    0x01
  53. #define    CDF_CONFIGME    0x02
  54. #define    CDF_BADMEMORY    0x04
  55. #define    CDF_PROCESSED    0x08
  56.  
  57. /*
  58. ** Boards are usually "bound" to software drivers.
  59. ** This structure is used by GetCurrentBinding() and SetCurrentBinding()
  60. */
  61. struct CurrentBinding {
  62.     struct ConfigDev *    cb_ConfigDev;        /* first configdev in chain */
  63.     UBYTE *        cb_FileName;        /* file name of driver */
  64.     UBYTE *        cb_ProductString;    /* product # string */
  65.     UBYTE **        cb_ToolTypes;        /* tooltypes from disk object */
  66. };
  67.  
  68.  
  69. #endif /* LIBRARIES_CONFIGVARS_H */
  70.