**/\r
\r
#include "Ui.h"\r
-#include "Language.h"\r
#include "FrontPage.h"\r
\r
EFI_HII_HANDLE gStringPackHandle;\r
0x136a3048, 0x752a, 0x4bf6, { 0xa7, 0x57, 0x9, 0x36, 0x11, 0x95, 0x38, 0xed }\r
};\r
\r
+EFI_GUID mFontPackageGuid = {\r
+ 0x78941450, 0x90ab, 0x4fb1, {0xb7, 0x5f, 0x58, 0x92, 0x14, 0xe2, 0x4a, 0xc}\r
+};\r
+\r
+#define NARROW_GLYPH_NUMBER 8\r
+#define WIDE_GLYPH_NUMBER 75\r
+\r
+typedef struct {\r
+ ///\r
+ /// This 4-bytes total array length is required by HiiAddPackages()\r
+ ///\r
+ UINT32 Length;\r
+\r
+ //\r
+ // This is the Font package definition\r
+ //\r
+ EFI_HII_PACKAGE_HEADER Header;\r
+ UINT16 NumberOfNarrowGlyphs;\r
+ UINT16 NumberOfWideGlyphs;\r
+ EFI_NARROW_GLYPH NarrowArray[NARROW_GLYPH_NUMBER];\r
+ EFI_WIDE_GLYPH WideArray[WIDE_GLYPH_NUMBER];\r
+} FONT_PACK_BIN;\r
+\r
+FONT_PACK_BIN mFontBin = {\r
+ sizeof (FONT_PACK_BIN),\r
+ {\r
+ sizeof (FONT_PACK_BIN) - sizeof (UINT32),\r
+ EFI_HII_PACKAGE_SIMPLE_FONTS,\r
+ },\r
+ NARROW_GLYPH_NUMBER,\r
+ 0,\r
+ { // Narrow Glyphs\r
+ {\r
+ 0x05d0,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x4E,\r
+ 0x6E,\r
+ 0x62,\r
+ 0x32,\r
+ 0x32,\r
+ 0x3C,\r
+ 0x68,\r
+ 0x4C,\r
+ 0x4C,\r
+ 0x46,\r
+ 0x76,\r
+ 0x72,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d1,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x78,\r
+ 0x7C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x7E,\r
+ 0x7E,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d2,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x78,\r
+ 0x7C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x1C,\r
+ 0x3E,\r
+ 0x66,\r
+ 0x66,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d3,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x7E,\r
+ 0x7E,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d4,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x7C,\r
+ 0x7E,\r
+ 0x06,\r
+ 0x06,\r
+ 0x06,\r
+ 0x06,\r
+ 0x66,\r
+ 0x66,\r
+ 0x66,\r
+ 0x66,\r
+ 0x66,\r
+ 0x66,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d5,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x3C,\r
+ 0x3C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x0C,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x05d6,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x38,\r
+ 0x38,\r
+ 0x1E,\r
+ 0x1E,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x18,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ },\r
+ {\r
+ 0x0000,\r
+ 0x00,\r
+ {\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00,\r
+ 0x00\r
+ }\r
+ }\r
+ }\r
+};\r
+\r
/**\r
Initialize HII global accessor for string support.\r
\r
{\r
return HiiGetString (gStringPackHandle, Id, NULL);\r
}\r
+\r
+/**\r
+ Routine to export glyphs to the HII database. This is in addition to whatever is defined in the Graphics Console driver.\r
+\r
+**/\r
+EFI_HII_HANDLE\r
+ExportFonts (\r
+ VOID\r
+ )\r
+{\r
+ return HiiAddPackages (\r
+ &mFontPackageGuid,\r
+ gImageHandle,\r
+ &mFontBin,\r
+ NULL\r
+ );\r
+}\r