define __KERNEL_STRICT_NAMES to avoid inclusion of kernel types on systems that carry...
[cake.git] / compiler / include / aros / bootloader.h
blobdcabd54eb06db2c1f73dbcfc8978bbe5e75d5b5d
1 #ifndef AROS_BOOTLOADER_H
2 #define AROS_BOOTLOADER_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: bootloader.resource general defines
9 Lang: english
12 #ifndef EXEC_TYPES_H
13 #include <exec/types.h>
14 #endif
15 #ifndef EXEC_LISTS_H
16 #include <exec/lists.h>
17 #endif
18 #ifndef UTILITY_TAGITEM_H
19 #include <utility/tagitem.h>
20 #endif
22 /* Requestable information */
23 #define BL_BASE (TAG_USER)
25 #define BL_MemoryMap (BL_BASE + 1)
26 #define BL_Memory (BL_BASE + 2)
27 #define BL_BootDev (BL_BASE + 3)
28 #define BL_Args (BL_BASE + 4)
29 #define BL_Modules (BL_BASE + 5)
30 #define BL_Drives (BL_BASE + 6)
31 #define BL_LoaderName (BL_BASE + 7)
32 #define BL_Video (BL_BASE + 8)
34 /* Structures */
35 struct MemMapNode {
36 struct MinNode node;
37 ULONG Base;
38 ULONG Length;
39 ULONG Type;
42 /* Defines for MemMapNode type field */
43 #define MMAP_Type_Unknown 0
44 #define MMAP_Type_RAM 1
45 #define MMAP_Type_Reserved 2
46 #define MMAP_Type_ACPIData 3
47 #define MMAP_Type_ACPINVS 4
49 struct DriveInfoNode {
50 struct Node node;
51 UBYTE Number;
52 UBYTE Mode;
53 UWORD Cylinders;
54 UBYTE Heads;
55 UBYTE Sectors;
58 #define DriveMode_CHS 0
59 #define DriveMode_LBA 1
61 struct VesaInfo {
62 APTR FrameBuffer;
63 ULONG FrameBufferSize; /* In KBytes! */
64 ULONG XSize;
65 ULONG YSize;
66 ULONG BytesPerLine;
67 UWORD BitsPerPixel;
68 UWORD ModeNumber;
69 ULONG Masks[4];
70 ULONG Shifts[4];
71 UBYTE PaletteWidth;
74 #define VI_Red 0
75 #define VI_Blue 1
76 #define VI_Green 2
77 #define VI_Alpha 3
79 #endif /* AROS_BOOTLOADER_H */