Add a way to define custom boot menu handler
This commit is contained in:
@@ -66,12 +66,14 @@ typedef INT_PTR (*PBL_GET_SECURE_BOOT_STATUS)();
|
||||
typedef EFI_STATUS (*PBL_OPEN_VOLUME)(IN PEFI_DEVICE_PATH_PROTOCOL DevicePath, OUT PEFI_HANDLE DiskHandle, OUT PEFI_FILE_HANDLE *FsHandle);
|
||||
typedef EFI_STATUS (*PBL_OPEN_XT_PROTOCOL)(OUT PVOID *ProtocolHandler, IN PEFI_GUID ProtocolGuid);
|
||||
typedef EFI_STATUS (*PBL_READ_FILE)(IN PEFI_FILE_HANDLE DirHandle, IN CONST PWCHAR FileName, OUT PVOID *FileData, OUT PSIZE_T FileSize);
|
||||
typedef VOID (*PBL_REGISTER_XT_BOOT_MENU)(PVOID BootMenuRoutine);
|
||||
typedef VOID (*PBL_SLEEP_EXECUTION)(IN ULONG_PTR Milliseconds);
|
||||
typedef VOID (*PBL_TUI_DISPLAY_ERROR_DIALOG)(IN PWCHAR Caption, IN PWCHAR Message);
|
||||
typedef VOID (*PBL_TUI_DISPLAY_INFO_DIALOG)(IN PWCHAR Caption, IN PWCHAR Message);
|
||||
typedef XTBL_DIALOG_HANDLE (*PBL_TUI_DISPLAY_PROGRESS_DIALOG)(IN PWCHAR Caption, IN PWCHAR Message, IN UCHAR Percentage);
|
||||
typedef VOID (*PBL_TUI_UPDATE_PROGRESS_BAR)(IN PXTBL_DIALOG_HANDLE Handle, IN PWCHAR Message, IN UCHAR Percentage);
|
||||
typedef EFI_STATUS (*PBL_WAIT_FOR_EFI_EVENT)(IN UINT_PTR NumberOfEvents, IN PEFI_EVENT Event, OUT PUINT_PTR Index);
|
||||
typedef VOID (*PBL_XT_BOOT_MENU)();
|
||||
|
||||
/* Boot menu list structure */
|
||||
typedef struct _XTBL_BOOTMENU_ITEM
|
||||
@@ -148,6 +150,7 @@ typedef struct _XTBL_LOADER_PROTOCOL
|
||||
{
|
||||
PBL_BOOTMENU_INITIALIZE_OS_LIST InitializeBootMenuList;
|
||||
PBL_OPEN_XT_PROTOCOL OpenProtocol;
|
||||
PBL_REGISTER_XT_BOOT_MENU RegisterBootMenu;
|
||||
} Protocol;
|
||||
struct
|
||||
{
|
||||
@@ -168,6 +171,7 @@ typedef struct _XTBL_LOADER_PROTOCOL
|
||||
/* XTLDR Status data */
|
||||
typedef struct _XTBL_STATUS
|
||||
{
|
||||
PBL_XT_BOOT_MENU BootMenu;
|
||||
BOOLEAN BootServices;
|
||||
ULONG DebugPort;
|
||||
CPPORT SerialPort;
|
||||
|
Reference in New Issue
Block a user