added concrete implementations of putc(), getc(), getchar() and gets()
[tangerine.git] / compiler / include / libraries / expansionbase.h
blobd8da0e9ffdf8f65e123df0638d42af0fc30d58e8
1 #ifndef LIBRARIES_EXPANSIONBASE_H
2 #define LIBRARIES_EXPANSIONBASE_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Publicly visible ExpansionBase data.
9 Lang: english
12 #ifndef EXEC_TYPES_H
13 #include <exec/types.h>
14 #endif
16 #ifndef EXEC_LIBRARIES_H
17 #include <exec/libraries.h>
18 #endif
21 BootNodes are used by dos.library to determine which device to boot
22 from. Items found on the list are added to DOS's list of available
23 devices before the system boot, and the highest priority node will
24 be used to attempt to boot. You add BootNodes with the expansion
25 AddBootNode() call.
27 If you use the AddDosNode() call, you will have to create and add
28 your own BootNode. It is preferred to use AddBootNode().
31 struct BootNode
33 struct Node bn_Node;
34 UWORD bn_Flags;
35 APTR bn_DeviceNode;
39 Most of this data is private, but you can use the expansion.library
40 functions to scan the information.
42 Use FindConfigDev() to scan the board list.
45 struct ExpansionBase
47 struct Library LibNode;
48 UBYTE Flags; /* Flags, read only */
49 UBYTE eb_Private1;
50 IPTR eb_Private2[6];
51 struct List eb_Private3;
52 struct List MountList; /* BootNode entries - public */
55 /* The error codes from expansion boards */
56 #define EE_OK 0 /* no error */
57 #define EE_LASTBOARD 40 /* board could not be shut up */
58 #define EE_NOEXPANSION 41 /* no space expansion slots, board shut up */
59 #define EE_NOMEMORY 42 /* no normal memory */
60 #define EE_NOBOARD 43 /* no board at that address */
61 #define EE_BADMEM 44 /* tried to add a bad memory card */
63 /* ExpansionBase flags, READ ONLY !! */
65 #define EBB_CLOGGED 0 /* a board could not be shut up */
66 #define EBF_CLOGGED (1L<<0)
67 #define EBB_SHORTMEM 1 /* ran out of expansion memory */
68 #define EBF_SHORTMEM (1L<<1)
69 #define EBB_BADMEM 2 /* tried to add bad memory card */
70 #define EBF_BADMEM (1L<<2)
71 #define EBB_DOSFLAG 3 /* reserved by AmigaDOS */
72 #define EBF_DOSFLAG (1L<<3)
73 #define EBB_KICKBACK33 4 /* reserved by AmigaDOS */
74 #define EBF_KICKBACK33 (1L<<4)
75 #define EBB_KICKBACK36 5 /* reserved by AmigaDOS */
76 #define EBF_KICKBACK36 (1L<<5)
78 /* If the following flag is set by a floppies boot code, then when DOS
79 awakes, it will not open its initial console window until the first
80 output is written to that shell. Otherwise the old behaviour will
81 apply.
83 #define EBB_SILENTSTART 6
84 #define EBF_SILENTSTART (1L<<6)
86 #define EBB_START_CC0 7 /* allow/try boot from CC0 */
87 #define EBF_START_CC0 (1L<<7)
89 #endif /* LIBRARIES_EXPANSIONBASE_H */