mirror of
https://github.com/CloverHackyColor/CloverBootloader.git
synced 2024-12-25 16:37:42 +01:00
Merge branch 'master' of https://github.com/CloverHackyColor/CloverBootloader
This commit is contained in:
commit
94340676ea
@ -46,7 +46,7 @@ then
|
||||
fi
|
||||
if ! [ -f "$SCRIPT_DIR"/disk_image_gpt.img ]
|
||||
then
|
||||
unzip -o "$SCRIPT_DIR"/disk_image_gpt.img.zip
|
||||
unzip -o "$SCRIPT_DIR"/disk_image_gpt.img.zip -d "$SCRIPT_DIR"
|
||||
rm -rf "$SCRIPT_DIR"/__MACOSX
|
||||
fi
|
||||
|
||||
|
@ -2881,47 +2881,47 @@ EFI_STATUS GetEarlyUserSettings (
|
||||
if (Prop != NULL) {
|
||||
gSettings.Language = Prop->getString()->stringValue();
|
||||
if ( Prop->getString()->stringValue().contains("en") ) {
|
||||
gSettings.GUI.gLanguage = english;
|
||||
gSettings.GUI.Language = english;
|
||||
// gSettings.GUI.Codepage = 0xC0;
|
||||
// gSettings.GUI.CodepageSize = 0;
|
||||
} else if ( Prop->getString()->stringValue().contains("ru")) {
|
||||
gSettings.GUI.gLanguage = russian;
|
||||
gSettings.GUI.Language = russian;
|
||||
// gSettings.GUI.Codepage = 0x410;
|
||||
// gSettings.GUI.CodepageSize = 0x40;
|
||||
} else if ( Prop->getString()->stringValue().contains("ua")) {
|
||||
gSettings.GUI.gLanguage = ukrainian;
|
||||
gSettings.GUI.Language = ukrainian;
|
||||
// gSettings.GUI.Codepage = 0x400;
|
||||
// gSettings.GUI.CodepageSize = 0x60;
|
||||
} else if ( Prop->getString()->stringValue().contains("fr")) {
|
||||
gSettings.GUI.gLanguage = french; //default is extended latin
|
||||
gSettings.GUI.Language = french; //default is extended latin
|
||||
} else if ( Prop->getString()->stringValue().contains("it")) {
|
||||
gSettings.GUI.gLanguage = italian;
|
||||
gSettings.GUI.Language = italian;
|
||||
} else if ( Prop->getString()->stringValue().contains("es")) {
|
||||
gSettings.GUI.gLanguage = spanish;
|
||||
gSettings.GUI.Language = spanish;
|
||||
} else if ( Prop->getString()->stringValue().contains("pt")) {
|
||||
gSettings.GUI.gLanguage = portuguese;
|
||||
gSettings.GUI.Language = portuguese;
|
||||
} else if ( Prop->getString()->stringValue().contains("br")) {
|
||||
gSettings.GUI.gLanguage = brasil;
|
||||
gSettings.GUI.Language = brasil;
|
||||
} else if ( Prop->getString()->stringValue().contains("de")) {
|
||||
gSettings.GUI.gLanguage = german;
|
||||
gSettings.GUI.Language = german;
|
||||
} else if ( Prop->getString()->stringValue().contains("nl")) {
|
||||
gSettings.GUI.gLanguage = dutch;
|
||||
gSettings.GUI.Language = dutch;
|
||||
} else if ( Prop->getString()->stringValue().contains("pl")) {
|
||||
gSettings.GUI.gLanguage = polish;
|
||||
gSettings.GUI.Language = polish;
|
||||
} else if ( Prop->getString()->stringValue().contains("cz")) {
|
||||
gSettings.GUI.gLanguage = czech;
|
||||
gSettings.GUI.Language = czech;
|
||||
} else if ( Prop->getString()->stringValue().contains("hr")) {
|
||||
gSettings.GUI.gLanguage = croatian;
|
||||
gSettings.GUI.Language = croatian;
|
||||
} else if ( Prop->getString()->stringValue().contains("id")) {
|
||||
gSettings.GUI.gLanguage = indonesian;
|
||||
gSettings.GUI.Language = indonesian;
|
||||
} else if ( Prop->getString()->stringValue().contains("zh_CN")) {
|
||||
gSettings.GUI.gLanguage = chinese;
|
||||
gSettings.GUI.Language = chinese;
|
||||
// gSettings.GUI.Codepage = 0x3400;
|
||||
// gSettings.GUI.CodepageSize = 0x19C0;
|
||||
} else if ( Prop->getString()->stringValue().contains("ro")) {
|
||||
gSettings.GUI.gLanguage = romanian;
|
||||
gSettings.GUI.Language = romanian;
|
||||
} else if ( Prop->getString()->stringValue().contains("ko")) {
|
||||
gSettings.GUI.gLanguage = korean;
|
||||
gSettings.GUI.Language = korean;
|
||||
// gSettings.GUI.Codepage = 0x1100;
|
||||
// gSettings.GUI.CodepageSize = 0x100;
|
||||
}
|
||||
@ -4027,6 +4027,7 @@ static void getACPISettings(const TagDict *CfgDict, SETTINGS_DATA& gSettings)
|
||||
DBG(" (%s)", dsdtPatch.PatchDsdtLabel.c_str());
|
||||
|
||||
Prop3 = Prop2->propertyForKey("Disabled");
|
||||
dsdtPatch.Disabled = IsPropertyNotNullAndTrue(Prop3);
|
||||
dsdtPatch.PatchDsdtMenuItem.BValue = !IsPropertyNotNullAndTrue(Prop3);
|
||||
|
||||
//DBG(" DSDT bin patch #%d ", i);
|
||||
|
@ -417,9 +417,10 @@ public:
|
||||
class DSDT_Patch
|
||||
{
|
||||
public :
|
||||
bool Disabled = bool();
|
||||
XString8 PatchDsdtLabel = XString8();
|
||||
XBuffer<UINT8> PatchDsdtFind = XBuffer<UINT8>();
|
||||
XBuffer<UINT8> PatchDsdtReplace = XBuffer<UINT8>();
|
||||
XString8 PatchDsdtLabel = XString8();
|
||||
XBuffer<UINT8> PatchDsdtTgt = XBuffer<UINT8>();
|
||||
INPUT_ITEM PatchDsdtMenuItem = INPUT_ITEM();
|
||||
|
||||
@ -502,13 +503,13 @@ public:
|
||||
{
|
||||
public:
|
||||
XStringW DsdtName = XStringW();
|
||||
bool DebugDSDT = 0;
|
||||
bool Rtc8Allowed = 0;
|
||||
bool DebugDSDT = 0;
|
||||
bool Rtc8Allowed = 0;
|
||||
UINT8 PNLF_UID = 0;
|
||||
UINT32 FixDsdt = 0;
|
||||
bool ReuseFFFF = 0;
|
||||
bool SuspendOverride = 0;
|
||||
XObjArray<DSDT_Patch> DSDTPatchArray = XObjArray<DSDT_Patch>();
|
||||
bool ReuseFFFF = 0;
|
||||
bool SuspendOverride = 0;
|
||||
} DSDT = DSDTClass();
|
||||
|
||||
class SSDTClass
|
||||
@ -548,9 +549,9 @@ public:
|
||||
bool NoASPM = 0;
|
||||
bool smartUPS = 0;
|
||||
bool PatchNMI = 0;
|
||||
XString8Array SortedACPI = XString8Array();
|
||||
bool AutoMerge = 0;
|
||||
XStringWArray DisabledAML = XStringWArray();
|
||||
XString8Array SortedACPI = XString8Array();
|
||||
XObjArray<ACPI_NAME_LIST> DeviceRename = XObjArray<ACPI_NAME_LIST>();
|
||||
|
||||
} ACPI = ACPIClass();
|
||||
@ -568,7 +569,7 @@ public:
|
||||
XStringW ScreenResolution = XStringW();
|
||||
bool ProvideConsoleGop = 0;
|
||||
INTN ConsoleMode = 0;
|
||||
LANGUAGES gLanguage = english;
|
||||
LANGUAGES Language = english;
|
||||
bool KbdPrevLang = 0;
|
||||
class MouseClass {
|
||||
public:
|
||||
|
@ -846,34 +846,26 @@ void LOADER_ENTRY::AddDefaultMenu()
|
||||
|
||||
if (OSFLAG_ISSET(Flags, OSFLAG_HIBERNATED)) {
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.takeValueFrom("Cancel hibernate wake");
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_HIBERNATED);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.takeValueFrom("Cancel hibernate wake");
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_HIBERNATED);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Boot %s with selected options", macOS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Boot %s with selected options", macOS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
#if 0
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Boot %s with injected kexts", macOS);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_CHECKFAKESMC);
|
||||
SubEntry->Flags = OSFLAG_SET(SubEntry->Flags, OSFLAG_WITHKEXTS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Boot %s with injected kexts", macOS);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_CHECKFAKESMC);
|
||||
SubEntry->Flags = OSFLAG_SET(SubEntry->Flags, OSFLAG_WITHKEXTS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Boot %s without injected kexts", macOS);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_CHECKFAKESMC);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_WITHKEXTS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Boot %s without injected kexts", macOS);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_CHECKFAKESMC);
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_WITHKEXTS);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
#endif
|
||||
SubScreen->AddMenuEntry(SubMenuKextInjectMgmt(), true);
|
||||
SubScreen->AddMenuInfo_f("=== boot-args ===");
|
||||
@ -916,58 +908,50 @@ void LOADER_ENTRY::AddDefaultMenu()
|
||||
|
||||
// default entry
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Run %ls", FileName.wc_str());
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Run %ls", FileName.wc_str());
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
if (Quiet) {
|
||||
SubEntry->Title.SWPrintf("%ls verbose", Title.s());
|
||||
SubEntry->LoadOptions.removeIC(quietLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls quiet", Title.s());
|
||||
SubEntry->LoadOptions.AddID(quietLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (WithSplash) {
|
||||
SubEntry->Title.SWPrintf("%ls without splash", Title.s());
|
||||
SubEntry->LoadOptions.removeIC(splashLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls with splash", Title.s());
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (WithSplash) {
|
||||
if (Quiet) {
|
||||
SubEntry->Title.SWPrintf("%ls verbose", Title.s());
|
||||
SubEntry->Title.SWPrintf("%ls verbose without splash", Title.s());
|
||||
SubEntry->LoadOptions.removeIC(splashLitteral);
|
||||
SubEntry->LoadOptions.removeIC(quietLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls quiet", Title.s());
|
||||
SubEntry->LoadOptions.AddID(quietLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
if (WithSplash) {
|
||||
SubEntry->Title.SWPrintf("%ls without splash", Title.s());
|
||||
SubEntry->Title.SWPrintf("%ls quiet without splash",Title.s());
|
||||
SubEntry->LoadOptions.removeIC(splashLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls with splash", Title.s());
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
SubEntry->LoadOptions.Add(quietLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
if (WithSplash) {
|
||||
if (Quiet) {
|
||||
SubEntry->Title.SWPrintf("%ls verbose without splash", Title.s());
|
||||
SubEntry->LoadOptions.removeIC(splashLitteral);
|
||||
SubEntry->LoadOptions.removeIC(quietLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls quiet without splash",Title.s());
|
||||
SubEntry->LoadOptions.removeIC(splashLitteral);
|
||||
SubEntry->LoadOptions.Add(quietLitteral);
|
||||
}
|
||||
} else if (Quiet) {
|
||||
SubEntry->Title.SWPrintf("%ls verbose with splash",Title.s());
|
||||
SubEntry->LoadOptions.removeIC(quietLitteral); //
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls quiet with splash",Title.s());
|
||||
SubEntry->LoadOptions.AddID(quietLitteral);
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
} else if (Quiet) {
|
||||
SubEntry->Title.SWPrintf("%ls verbose with splash",Title.s());
|
||||
SubEntry->LoadOptions.removeIC(quietLitteral); //
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
} else {
|
||||
SubEntry->Title.SWPrintf("%ls quiet with splash",Title.s());
|
||||
SubEntry->LoadOptions.AddID(quietLitteral);
|
||||
SubEntry->LoadOptions.AddID(splashLitteral);
|
||||
}
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
} else if ((LoaderType == OSTYPE_WIN) || (LoaderType == OSTYPE_WINEFI)) {
|
||||
// by default, skip the built-in selection and boot from hard disk only
|
||||
@ -977,36 +961,33 @@ void LOADER_ENTRY::AddDefaultMenu()
|
||||
|
||||
// default entry
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Run %ls", FileName.wc_str());
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Run %ls", FileName.wc_str());
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.takeValueFrom("Boot Windows from Hard Disk");
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.takeValueFrom("Boot Windows from Hard Disk");
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.takeValueFrom("Boot Windows from CD-ROM");
|
||||
LoadOptions.setEmpty();
|
||||
LoadOptions.Add("-s"_XS8);
|
||||
LoadOptions.Add("-c"_XS8);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.takeValueFrom("Boot Windows from CD-ROM");
|
||||
LoadOptions.setEmpty();
|
||||
LoadOptions.Add("-s"_XS8);
|
||||
LoadOptions.Add("-c"_XS8);
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
if (SubEntry) {
|
||||
SubEntry->Title.SWPrintf("Run %ls in text mode", FileName.wc_str());
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_USEGRAPHICS);
|
||||
LoadOptions.setEmpty();
|
||||
LoadOptions.Add("-v"_XS8);
|
||||
SubEntry->LoaderType = OSTYPE_OTHER; // Sothor - Why are we using OSTYPE_OTHER here?
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
SubEntry->Title.SWPrintf("Run %ls in text mode", FileName.wc_str());
|
||||
SubEntry->Flags = OSFLAG_UNSET(SubEntry->Flags, OSFLAG_USEGRAPHICS);
|
||||
LoadOptions.setEmpty();
|
||||
LoadOptions.Add("-v"_XS8);
|
||||
SubEntry->LoaderType = OSTYPE_OTHER; // Sothor - Why are we using OSTYPE_OTHER here?
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
|
||||
}else{
|
||||
// default entry
|
||||
SubEntry = getPartiallyDuplicatedEntry();
|
||||
SubEntry->Title.SWPrintf("Run %ls", FileName.wc_str());
|
||||
SubScreen->AddMenuEntry(SubEntry, true);
|
||||
}
|
||||
|
||||
// SubScreen->AddMenuEntry(&MenuEntryReturn, false); //one-way ticket to avoid confusion
|
||||
|
@ -752,7 +752,7 @@ UINTN REFIT_MAINMENU_SCREEN::RunMainMenu(IN INTN DefaultSelection, OUT REFIT_ABS
|
||||
MenuExit = RunGenericMenu(&DefaultEntryIndex, &MainChosenEntry);
|
||||
TimeoutSeconds = 0;
|
||||
|
||||
if (MenuExit == MENU_EXIT_DETAILS && MainChosenEntry->SubScreen != NULL) {
|
||||
if (MenuExit == MENU_EXIT_DETAILS && MainChosenEntry->SubScreen != NULL && MainChosenEntry->SubScreen->Entries.size() > 0) { // if MainChosenEntry->SubScreen->Entries.size() == 0, we got a crash in GraphicsMenuStyle
|
||||
XString8Array TmpArgs;
|
||||
if ( gSettings.Boot.BootArgs.length() > 0) {
|
||||
TmpArgs = Split<XString8Array>(gSettings.Boot.BootArgs, " ");
|
||||
@ -865,6 +865,8 @@ UINTN REFIT_MAINMENU_SCREEN::RunMainMenu(IN INTN DefaultSelection, OUT REFIT_ABS
|
||||
}
|
||||
//---------
|
||||
}
|
||||
}else{
|
||||
MenuExit = 0; // loop on main menu
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -94,7 +94,7 @@ void XTheme::LoadFontImage(IN BOOLEAN UseEmbedded, IN INTN Rows, IN INTN Cols)
|
||||
EFI_GRAPHICS_OUTPUT_BLT_PIXEL *PixelPtr;
|
||||
EFI_GRAPHICS_OUTPUT_BLT_PIXEL *FontPtr;
|
||||
EFI_GRAPHICS_OUTPUT_BLT_PIXEL FirstPixel;
|
||||
BOOLEAN isKorean = (gSettings.GUI.gLanguage == korean);
|
||||
BOOLEAN isKorean = (gSettings.GUI.Language == korean);
|
||||
XStringW fontFilePath;
|
||||
const XStringW& commonFontDir = L"font"_XSW;
|
||||
|
||||
@ -108,7 +108,7 @@ void XTheme::LoadFontImage(IN BOOLEAN UseEmbedded, IN INTN Rows, IN INTN Cols)
|
||||
CharWidth = 22; //standard for korean
|
||||
} else {
|
||||
MsgLog("...using english\n");
|
||||
gSettings.GUI.gLanguage = english;
|
||||
gSettings.GUI.Language = english;
|
||||
}
|
||||
}
|
||||
|
||||
@ -308,7 +308,7 @@ INTN XTheme::RenderText(IN const XStringW& Text, OUT XImage* CompImage_ptr,
|
||||
for (UINTN i = 0; i < TextLength && c0 != 0; i++) {
|
||||
UINT16 c = Text.wc_str()[i]; //including UTF8 -> UTF16 conversion
|
||||
DBG("initial char to render 0x%hx\n", c); //good
|
||||
if (gSettings.GUI.gLanguage != korean) { //russian Codepage = 0x410
|
||||
if (gSettings.GUI.Language != korean) { //russian Codepage = 0x410
|
||||
if (c >= 0x410 && c < 0x450) {
|
||||
//we have russian raster fonts with chars at 0xC0
|
||||
c -= 0x350;
|
||||
|
@ -2669,19 +2669,19 @@ void afterGetUserSettings(const SETTINGS_DATA& gSettings)
|
||||
|
||||
ThemeX.DarkEmbedded = gSettings.GUI.getDarkEmbedded(ThemeX.Daylight);
|
||||
|
||||
if ( gSettings.GUI.gLanguage == english ) {
|
||||
if ( gSettings.GUI.Language == english ) {
|
||||
GlobalConfig.Codepage = 0xC0;
|
||||
GlobalConfig.CodepageSize = 0;
|
||||
} else if ( gSettings.GUI.gLanguage == russian ) {
|
||||
} else if ( gSettings.GUI.Language == russian ) {
|
||||
GlobalConfig.Codepage = 0x410;
|
||||
GlobalConfig.CodepageSize = 0x40;
|
||||
} else if ( gSettings.GUI.gLanguage == ukrainian ) {
|
||||
} else if ( gSettings.GUI.Language == ukrainian ) {
|
||||
GlobalConfig.Codepage = 0x400;
|
||||
GlobalConfig.CodepageSize = 0x60;
|
||||
} else if ( gSettings.GUI.gLanguage == chinese ) {
|
||||
} else if ( gSettings.GUI.Language == chinese ) {
|
||||
GlobalConfig.Codepage = 0x3400;
|
||||
GlobalConfig.CodepageSize = 0x19C0;
|
||||
} else if ( gSettings.GUI.gLanguage == korean ) {
|
||||
} else if ( gSettings.GUI.Language == korean ) {
|
||||
GlobalConfig.Codepage = 0x1100;
|
||||
GlobalConfig.CodepageSize = 0x100;
|
||||
}
|
||||
@ -2771,6 +2771,7 @@ RefitMain (IN EFI_HANDLE ImageHandle,
|
||||
// PauseForKey(L"press\n");
|
||||
#endif
|
||||
}
|
||||
gBS->Stall(2500000); // to give time to gdb to connect
|
||||
|
||||
#ifdef CLOVER_BUILD
|
||||
construct_globals_objects(gImageHandle); // do this after self.getSelfLoadedImage() is initialized
|
||||
|
@ -1138,7 +1138,7 @@ void HelpRefit(void)
|
||||
//else {
|
||||
// HelpMenu.TitleImage.setEmpty();
|
||||
//}
|
||||
switch (gSettings.GUI.gLanguage)
|
||||
switch (gSettings.GUI.Language)
|
||||
{
|
||||
case russian:
|
||||
HelpMenu.AddMenuInfo_f("ESC - Выход из подменю, обновление главного меню");
|
||||
|
Loading…
Reference in New Issue
Block a user