ReactOS 0.4.16-dev-737-g3368adc
uefildr.h File Reference
#include <freeldr.h>
#include <Uefi.h>
#include <DevicePath.h>
#include <LoadedImage.h>
#include <GraphicsOutput.h>
#include <UgaDraw.h>
#include <BlockIo.h>
#include <Acpi.h>
#include <GlobalVariable.h>
#include <debug.h>
#include <machuefi.h>
Include dependency graph for uefildr.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _REACTOS_INTERNAL_BGCONTEXT
 

Typedefs

typedef struct _REACTOS_INTERNAL_BGCONTEXT REACTOS_INTERNAL_BGCONTEXT
 
typedef struct _REACTOS_INTERNAL_BGCONTEXTPREACTOS_INTERNAL_BGCONTEXT
 

Functions

VOID __cdecl BootMain (IN PCCH CmdLine)
 

Typedef Documentation

◆ PREACTOS_INTERNAL_BGCONTEXT

◆ REACTOS_INTERNAL_BGCONTEXT

Function Documentation

◆ BootMain()

VOID __cdecl BootMain ( IN PCCH  CmdLine)

Definition at line 91 of file freeldr.c.

92{
93 /* Load the default settings from the command-line */
95
96 /* Debugger pre-initialization */
98
100
101 TRACE("BootMain() called.\n");
102
103#ifndef UEFIBOOT
104 /* Check if the CPU is new enough */
105 FrLdrCheckCpuCompatibility(); // FIXME: Should be done inside MachInit!
106#endif
107
108 /* UI pre-initialization */
109 if (!UiInitialize(FALSE))
110 {
111 UiMessageBoxCritical("Unable to initialize UI.");
112 goto Quit;
113 }
114
115 /* Initialize memory manager */
117 {
118 UiMessageBoxCritical("Unable to initialize memory manager.");
119 goto Quit;
120 }
121
122 /* Initialize I/O subsystem */
123 FsInit();
124
125 /* Initialize the module list */
127 {
128 UiMessageBoxCritical("Unable to initialize module list.");
129 goto Quit;
130 }
131
133 {
134 UiMessageBoxCritical("Error when detecting hardware.");
135 goto Quit;
136 }
137
138 /* Launch second stage loader */
140 {
141 UiMessageBoxCritical("Unable to load second stage loader.");
142 }
143
144Quit:
145 /* If we reach this point, something went wrong before, therefore reboot */
146 Reboot();
147}
void LoadSettings(void)
Definition: settings.c:53
@ Reboot
Definition: bl.h:891
#define DebugInit(DebugString)
Definition: debug.h:120
VOID FsInit(VOID)
Definition: fs.c:646
#define MachInitializeBootDevices()
Definition: machine.h:127
BOOLEAN MmInitializeMemoryManager(VOID)
Definition: meminit.c:336
BOOTMGRINFO BootMgrInfo
Definition: settings.c:18
VOID UiMessageBoxCritical(_In_ PCSTR MessageText)
Definition: ui.c:372
BOOLEAN UiInitialize(BOOLEAN ShowUi)
Definition: ui.c:92
#define FALSE
Definition: types.h:117
static const WCHAR CmdLine[]
Definition: install.c:48
static ULONG LaunchSecondStageLoader(VOID)
Definition: freeldr.c:69
VOID FrLdrCheckCpuCompatibility(VOID)
Definition: macharm.c:65
VOID MachInit(IN PCCH CommandLine)
Definition: macharm.c:182
BOOLEAN PeLdrInitializeModuleList(VOID)
Definition: peloader.c:525
@ ESUCCESS
Definition: arc.h:32
#define TRACE(s)
Definition: solgame.cpp:4
PCSTR DebugString
Definition: settings.h:12