Index: branches/meklort/i386/boot2/boot.c =================================================================== --- branches/meklort/i386/boot2/boot.c (revision 532) +++ branches/meklort/i386/boot2/boot.c (revision 533) @@ -294,9 +294,24 @@ firstRun = false; } + + // Enable touching a single BIOS device only if "Scan Single Drive"=y is set in system config. + if (getBoolForKey(kScanSingleDriveKey, &gScanSingleDrive, &bootInfo->bootConfig) && gScanSingleDrive) { + gScanSingleDrive = true; + } + + // Create a list of partitions on device(s). + if (gScanSingleDrive) { + scanBootVolumes(gBIOSDev, &bvCount); + } else { + scanDisks(gBIOSDev, &bvCount); + } + // Create a separated bvr chain using the specified filters. bvChain = newFilteredBVChain(0x80, 0xFF, allowBVFlags, denyBVFlags, &gDeviceCount); + gBootVolume = selectBootVolume(bvChain); + // Intialize module system if(init_module_system()) { @@ -322,20 +337,9 @@ gEnableCDROMRescan = promptForRescanOption(); } - // Enable touching a single BIOS device only if "Scan Single Drive"=y is set in system config. - if (getBoolForKey(kScanSingleDriveKey, &gScanSingleDrive, &bootInfo->bootConfig) && gScanSingleDrive) { - gScanSingleDrive = true; - } + - // Create a list of partitions on device(s). - if (gScanSingleDrive) { - scanBootVolumes(gBIOSDev, &bvCount); - } else { - scanDisks(gBIOSDev, &bvCount); - } - gBootVolume = selectBootVolume(bvChain); - #if DEBUG printf(" Default: %d, ->biosdev: %d, ->part_no: %d ->flags: %d\n", gBootVolume, gBootVolume->biosdev, gBootVolume->part_no, gBootVolume->flags); printf(" bt(0,0): %d, ->biosdev: %d, ->part_no: %d ->flags: %d\n", gBIOSBootVolume, gBIOSBootVolume->biosdev, gBIOSBootVolume->part_no, gBIOSBootVolume->flags); Index: branches/meklort/i386/modules/GUI/gui.c =================================================================== --- branches/meklort/i386/modules/GUI/gui.c (revision 532) +++ branches/meklort/i386/modules/GUI/gui.c (revision 533) @@ -299,12 +299,14 @@ return 1; } } + return 1; } static int loadGraphics(void) { LOADPNG(background, IMG_REQUIRED); + LOADPNG(logo, IMG_REQUIRED); LOADPNG(device_generic, IMG_REQUIRED); @@ -693,6 +695,7 @@ if ((strlen(theme_name) + 27) > sizeof(dirspec)) { return 1; } + sprintf(dirspec, "/Extra/Themes/%s/theme.plist", theme_name); if (loadConfigFile(dirspec, &bootInfo->themeConfig) != 0) { #ifdef EMBED_THEME Index: branches/meklort/i386/modules/GUI/GUI_module.c =================================================================== --- branches/meklort/i386/modules/GUI/GUI_module.c (revision 532) +++ branches/meklort/i386/modules/GUI/GUI_module.c (revision 533) @@ -86,15 +86,6 @@ **/ void GUI_start() { - replace_function("_initGraphicsMode", &GUI_initGraphicsMode); - replace_function("_getBootOptions", &GUI_getBootOptions); - replace_function("_clearBootArgs", &GUI_clearBootArgs); - replace_function("_showHelp", &GUI_showHelp); - - replace_function("_printf", &GUI_printf); - replace_function("_verbose", &GUI_verbose); - replace_function("_error", &GUI_error); - replace_function("_stop", &GUI_stop); // Start the gui @@ -106,10 +97,23 @@ // initGUI() returned with an error, disabling GUI. useGUI = false; } + else + { + replace_function("_initGraphicsMode", &GUI_initGraphicsMode); + replace_function("_getBootOptions", &GUI_getBootOptions); + replace_function("_clearBootArgs", &GUI_clearBootArgs); + replace_function("_showHelp", &GUI_showHelp); + + replace_function("_printf", &GUI_printf); + replace_function("_verbose", &GUI_verbose); + replace_function("_error", &GUI_error); + replace_function("_stop", &GUI_stop); + } // Hoot for the boot screen register_hook_callback("Kernel Start", &GUI_Kernel_Start_hook); - register_hook_callback("PreBoot", &GUI_PreBoot_hook); + register_hook_callback("PreBoot", &GUI_PreBoot_hook); + } /**