Allow to use custom framebuffer fonts

This commit is contained in:
Rafal Kupiec 2024-03-10 10:02:30 +01:00
parent a4d9e6dd8e
commit cb4292dccf
Signed by: belliash
GPG Key ID: 4E829243E0CFE6B4
2 changed files with 14 additions and 0 deletions

View File

@ -102,6 +102,7 @@ typedef struct _LOADER_GRAPHICS_INFORMATION_BLOCK
UINT PixelsPerScanLine;
UINT BitsPerPixel;
UINT Pitch;
PVOID Font;
} LOADER_GRAPHICS_INFORMATION_BLOCK, *PLOADER_GRAPHICS_INFORMATION_BLOCK;
/* Boot Loader information block */

View File

@ -7,6 +7,7 @@
*/
#include <xtos.h>
#include <xtfont.h>
/**
@ -108,6 +109,18 @@ HlInitializeFrameBuffer(VOID)
return STATUS_DEVICE_NOT_READY;
}
/* Check if custom font provided by bootloader */
if(KeInitializationBlock->LoaderInformation.FrameBuffer.Font)
{
/* Use custom font */
HlpFrameBufferData.Font = KeInitializationBlock->LoaderInformation.FrameBuffer.Font;
}
else
{
/* Use default font */
HlpFrameBufferData.Font = (PVOID)&XtFbDefaultFont;
}
/* Save framebuffer information and mark display as initialized */
HlpFrameBufferData.Address = KeInitializationBlock->LoaderInformation.FrameBuffer.Address;
HlpFrameBufferData.Width = KeInitializationBlock->LoaderInformation.FrameBuffer.Width;