diff --git a/sdk/xtdk/bltypes.h b/sdk/xtdk/bltypes.h index 1c5149a..25a5127 100644 --- a/sdk/xtdk/bltypes.h +++ b/sdk/xtdk/bltypes.h @@ -67,6 +67,7 @@ typedef EFI_STATUS (*PBL_BOOTPROTO_BOOT_SYSTEM)(IN PXTBL_BOOT_PARAMETERS Paramet typedef EFI_STATUS (*PBL_CLOSE_VOLUME)(IN PEFI_HANDLE VolumeHandle); typedef VOID (*PBL_CLEAR_CONSOLE_LINE)(IN ULONGLONG LineNo); typedef EFI_STATUS (*PBL_CLOSE_XT_PROTOCOL)(IN PEFI_HANDLE Handle, IN PEFI_GUID ProtocolGuid); +typedef PWCHAR (*PBL_CONFIG_GET_VALUE)(IN CONST PWCHAR ConfigName); typedef VOID (*PBL_CONSOLE_CLEAR_SCREEN)(); typedef VOID (*PBL_CONSOLE_DISABLE_CURSOR)(); typedef VOID (*PBL_CONSOLE_ENABLE_CURSOR)(); @@ -226,6 +227,10 @@ typedef struct _XTBL_LOADER_PROTOCOL PBL_REGISTER_BOOT_PROTOCOL RegisterProtocol; } Boot; struct + { + PBL_CONFIG_GET_VALUE GetValue; + } Config; + struct { PBL_CLEAR_CONSOLE_LINE ClearLine; PBL_CONSOLE_CLEAR_SCREEN ClearScreen; diff --git a/sdk/xtdk/xtblapi.h b/sdk/xtdk/xtblapi.h index c95e689..e13f9c4 100644 --- a/sdk/xtdk/xtblapi.h +++ b/sdk/xtdk/xtblapi.h @@ -43,6 +43,7 @@ /* Architecture specific XT kernel routines */ #include ARCH_HEADER(arfuncs.h) +#include ARCH_HEADER(hlfuncs.h) /* Boot Manager specific structures */ #include diff --git a/xtldr/protocol.c b/xtldr/protocol.c index fc71f1f..5cefb67 100644 --- a/xtldr/protocol.c +++ b/xtldr/protocol.c @@ -560,6 +560,7 @@ BlpInstallXtLoaderProtocol() BlpLdrProtocol.Boot.InvokeProtocol = BlInvokeBootProtocol; BlpLdrProtocol.Boot.RegisterMenu = BlRegisterBootMenu; BlpLdrProtocol.Boot.RegisterProtocol = BlRegisterBootProtocol; + BlpLdrProtocol.Config.GetValue = BlGetConfigValue; BlpLdrProtocol.Console.ClearLine = BlClearConsoleLine; BlpLdrProtocol.Console.ClearScreen = BlClearConsoleScreen; BlpLdrProtocol.Console.DisableCursor = BlDisableConsoleCursor;