1 #ifndef DOSBOOT_INTERN_H
2 #define DOSBOOT_INTERN_H
5 Copyright © 1995-2014, The AROS Development Team. All rights reserved.
8 Desc: Internal definitions for dosboot
12 #include <dos/dosextens.h>
13 #include <exec/libraries.h>
14 #include <exec/lists.h>
15 #include <graphics/gfxbase.h>
18 #include "bootflags.h"
24 /* default hidds used in bootmenu and for fallback mode */
32 struct Node db_Node
; /* Node for linking into the list */
33 ULONG db_BootFlags
; /* Bootup flags (identical to IntExpansionBase->BootFlags) */
35 struct BootNode
*db_BootNode
; /* Device to boot up from */
37 struct GfxBase
*bm_GfxBase
; /* Library bases */
38 struct IntuitionBase
*bm_IntuitionBase
;
39 struct ExpansionBase
*bm_ExpansionBase
;
40 struct Screen
*bm_Screen
; /* Screen */
41 struct Window
*bm_Window
; /* Window and gadgets */
42 struct MainGadgets bm_MainGadgets
;
43 APTR bm_BootNode
; /* Boot node selected in the menu */
45 struct BootConfig bm_BootConfig
; /* Current HIDD configuration */
46 APTR animData
; /* Animation stuff */
47 ULONG delayTicks
; /* Delay period. Can be adjusted by animation code */
51 void InitBootConfig(struct BootConfig
*bootcfg
);
52 LONG
dosboot_BootStrap(struct DOSBootBase
*DOSBootBase
);
53 void dosboot_BootScan(struct DOSBootBase
*DOSBootBase
);
55 struct Screen
*NoBootMediaScreen(struct DOSBootBase
*DOSBootBase
);
56 struct Screen
*OpenBootScreen(struct DOSBootBase
*DOSBootBase
);
57 void CloseBootScreen(struct Screen
*scr
, struct DOSBootBase
*DOSBootBase
);
59 APTR
anim_Init(struct Screen
*scr
, struct DOSBootBase
*DOSBootBase
);
60 void anim_Stop(struct DOSBootBase
*DOSBootBase
);
61 void anim_Animate(struct Screen
*scr
, struct DOSBootBase
*DOSBootBase
);
63 #define IntuitionBase DOSBootBase->bm_IntuitionBase
64 #define GfxBase DOSBootBase->bm_GfxBase
66 /* Check to see if the bootnode is bootable */
67 #include <libraries/expansion.h>
68 #include <libraries/expansionbase.h>
70 static inline BOOL
IsBootableNode(struct BootNode
*bootNode
)
72 return ((bootNode
->bn_Node
.ln_Type
== NT_BOOTNODE
) &&
73 (bootNode
->bn_Node
.ln_Pri
> -128)) ? TRUE
: FALSE
;
77 #endif /* DOSBOOT_INTERN_H */