1 #ifndef LIBRARIES_CONFIGVARS_H
2 #define LIBRARIES_CONFIGVARS_H
5 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
8 Desc: Software structures used by expansion boards
13 #include <exec/types.h>
17 #include <exec/nodes.h>
20 #ifndef LIBRARIES_CONFIGREGS_H
21 #include <libraries/configregs.h>
25 Each expansion board that is found has a ConfigDev structure created
26 for it very early at system startup. Software can search for boards
27 by the manufacturer and product id (for Zorro/AutoConfig(TM) boards).
29 For debugging, you can also look at the entire list of expansion
30 boards. See the expansion.library FindConfigDev() function for more
37 UBYTE cd_Flags
; /* read/write device flags */
39 struct ExpansionRom cd_Rom
; /* copy of boards expansion ROM */
40 APTR cd_BoardAddr
; /* physical address of exp. board */
41 ULONG cd_BoardSize
; /* size in bytes of exp. board */
42 UWORD cd_SlotAddr
; /* private */
43 UWORD cd_SlotSize
; /* private */
44 APTR cd_Driver
; /* pointer to node of driver */
45 struct ConfigDev
*cd_NextCD
; /* linked list of devices to configure */
46 ULONG cd_Unused
[4]; /* for the drivers use - private */
49 /* Flags definitions for cd_Flags */
50 #define CDB_SHUTUP 0 /* this board has been shut up */
51 #define CDF_SHUTUP 0x01
52 #define CDB_CONFIGME 1 /* board needs a driver to claim it */
53 #define CDF_CONFIGME 0x02
54 #define CDB_BADMEMORY 2 /* board contains bad memory */
55 #define CDF_BADMEMORY 0x04
56 #define CDB_PROCESSED 3 /* private */
57 #define CDF_PROCESSED 0x08
60 Boards without their own drivers are normally bound to software
61 drivers. This structure is used by GetCurrentBinding(), and
66 struct ConfigDev
*cb_ConfigDev
; /* SLL of devices to configure */
67 UBYTE
*cb_FileName
; /* disk file name of driver */
68 UBYTE
*cb_ProductString
; /* PRODUCT= tool type from icon */
69 UBYTE
**cb_ToolTypes
; /* tool types from disk object */
72 #endif /* LIBRARIES_CONFIGVARS_H */