+typedef struct _ADDRESS_RANGE
+{
+ ULONG BaseAddrLow;
+ ULONG BaseAddrHigh;
+ ULONG LengthLow;
+ ULONG LengthHigh;
+ ULONG Type;
+} ADDRESS_RANGE, *PADDRESS_RANGE;
+
+#define MB_FLAGS_MEM_INFO (0x1)
+#define MB_FLAGS_BOOT_DEVICE (0x2)
+#define MB_FLAGS_COMMAND_LINE (0x4)
+#define MB_FLAGS_MODULE_INFO (0x8)
+#define MB_FLAGS_AOUT_SYMS (0x10)
+#define MB_FLAGS_ELF_SYMS (0x20)
+#define MB_FLAGS_MMAP_INFO (0x40)
+#define MB_FLAGS_DRIVES_INFO (0x80)
+#define MB_FLAGS_CONFIG_TABLE (0x100)
+#define MB_FLAGS_BOOT_LOADER_NAME (0x200)
+#define MB_FLAGS_APM_TABLE (0x400)
+#define MB_FLAGS_GRAPHICS_TABLE (0x800)
+
+typedef struct _LOADER_MODULE
+{
+ ULONG ModStart;
+ ULONG ModEnd;
+ ULONG String;
+ ULONG Reserved;
+} LOADER_MODULE, *PLOADER_MODULE;
+
+typedef struct _LOADER_PARAMETER_BLOCK
+{
+ ULONG Flags;
+ ULONG MemLower;
+ ULONG MemHigher;
+ ULONG BootDevice;
+ ULONG CommandLine;
+ ULONG ModsCount;
+ ULONG ModsAddr;
+ UCHAR Syms[12];
+ ULONG MmapLength;
+ ULONG MmapAddr;
+ ULONG DrivesCount;
+ ULONG DrivesAddr;
+ ULONG ConfigTable;
+ ULONG BootLoaderName;
+} LOADER_PARAMETER_BLOCK, *PLOADER_PARAMETER_BLOCK;
+
+typedef enum _KAPC_ENVIRONMENT
+{
+ OriginalApcEnvironment,
+ AttachedApcEnvironment,
+ CurrentApcEnvironment
+} KAPC_ENVIRONMENT;
+
+/* FIXME: Are these official values ?? */
+#define STATUS_FS_QUERY_REQUIRED ((NTSTATUS)0xC1000001)
+#define STATUS_HANDLE_NOT_WAITABLE ((NTSTATUS)0xC1000002)
+#define STATUS_OBJECT_FILE_MISMATCH ((NTSTATUS)0xC1000003)
+#define STATUS_INVALID_PARAMETER_MAX ((NTSTATUS)0xC1000004)
+#define STATUS_CONFLICTING_ADDRESS ((NTSTATUS)0xC1000005)
+#define STATUS_NO_MEDIA_IN_DRIVE ((NTSTATUS)0xC1000006)
+
+#define NTSTAT_SEVERITY_SHIFT 30
+#define NTSTAT_SEVERITY_MASK 0x00000003
+#define NTSTAT_FACILITY_SHIFT 16
+#define NTSTAT_FACILITY_MASK 0x00000FFF
+#define NTSTAT_CUSTOMER_MASK 0x20000000
+
+#define NT_SEVERITY(StatCode) (((StatCode) >> NTSTAT_SEVERITY_SHIFT) & NTSTAT_SEVERITY_MASK)
+#define NT_FACILITY(StatCode) (((StatCode) >> NTSTAT_FACILITY_SHIFT) & NTSTAT_FACILITY_MASK)
+#define NT_CUSTOMER(StatCode) ((StatCode) & NTSTAT_CUSTOMER_MASK)
+