home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / coders / jËzyki_programowania / ace_basic / ace / include / libraries / configvars.h < prev    next >
C/C++ Source or Header  |  1977-12-31  |  3KB  |  86 lines

  1. #ifndef LIBRARIES_CONFIGVARS_H
  2. #define LIBRARIES_CONFIGVARS_H 1
  3. /*
  4. ** configvars.h for ACE Basic
  5. **
  6. ** Note: Translated to ACE by ConvertC2ACE
  7. **       @ MapMeadow Software, Nils Sjoholm
  8. **
  9. **
  10. ** Date: 09/01/95
  11. **
  12. **
  13. */
  14.  
  15. /*
  16. ** This are the StructPointer defines for configvars.h
  17. */
  18. #ifndef ConfigDevPtr
  19. #define ConfigDevPtr ADDRESS
  20. #endif
  21. #ifndef CurrentBindingPtr
  22. #define CurrentBindingPtr ADDRESS
  23. #endif
  24. /*
  25. ** End of StructPointer defines for configvars.h
  26. */
  27.  
  28.  
  29. #ifndef EXEC_TYPES_H
  30. #include <exec/types.h>
  31. #endif  /* EXEC_TYPES_H */
  32.  
  33. #ifndef EXEC_NODES_H
  34. #include <exec/nodes.h>
  35. #endif /* EXEC_NODES_H */
  36.  
  37. #ifndef LIBRARIES_CONFIGREGS_H
  38. #include <libraries/configregs.h>
  39. #endif /* LIBRARIES_CONFIGREGS_H */
  40.  
  41. /*
  42. ** At early system startup time,  one ConfigDev structure is created for
  43. ** each board found in the system.  Software may seach for ConfigDev
  44. ** structures by vendor & product ID number.  For debugging and diagnostic
  45. ** use,  the entire list can be accessed.  See the expansion.library document
  46. ** for more information.
  47. */
  48. STRUCT ConfigDev  
  49.     Node cd_Node 
  50.     BYTE        cd_Flags    /* (read/write) */
  51.     BYTE        cd_Pad      /* reserved */
  52.     ExpansionRom cd_Rom      /* copy of board's expansion ROM */
  53.     ADDRESS        cd_BoardAddr  /* where in memory the board was placed */
  54.     LONGINT       cd_BoardSize    /* size of board in bytes */
  55.     SHORTINT       cd_SlotAddr     /* which slot number (PRIVATE) */
  56.     SHORTINT       cd_SlotSize     /* number of slots (PRIVATE) */
  57.     ADDRESS        cd_Driver   /* pointer to node of driver */
  58.     ConfigDevPtr  cd_NextCD   /* linked LIST of drivers TO config */
  59.     STRING cd_Unused SIZE 16  /* 4*SIZEOF(LONGINT)*/    /* FOR whatever the driver wants */
  60. END STRUCT 
  61.  
  62. /* cd_Flags */
  63. #define CDB_SHUTUP  0   /* this board has been shut up */
  64. #define CDB_CONFIGME    1   /* this board needs a driver to claim it */
  65. #define CDB_BADMEMORY   2   /* this board contains bad memory */
  66. #define CDB_PROCESSED   3   /* private flag */
  67.  
  68. #define CDF_SHUTUP  &H01
  69. #define CDF_CONFIGME    &H02
  70. #define CDF_BADMEMORY   &H04
  71. #define CDF_PROCESSED   &H08
  72.  
  73. /*
  74. ** Boards are usually "bound" to software drivers.
  75. ** This structure is used by GetCurrentBinding() and SetCurrentBinding()
  76. */
  77. STRUCT CurrentBinding  
  78.     ConfigDevPtr  cb_ConfigDev        /* first configdev in CHAIN */
  79.     ADDRESS   cb_FileName         /* file NAME of driver */
  80.     ADDRESS   cb_ProductString    /* product # STRING */
  81. ADDRESS   cb_ToolTypes        /* tooltypes from disk object */
  82. END STRUCT 
  83.  
  84.  
  85. #endif /* LIBRARIES_CONFIGVARS_H */
  86.