[Please find the unmangled patch attached. I have no idea how to turn off line wrapping in Mozilla Thunderbird.]
Currently, even with `etc/threads` set to 2 in CBFS, the boot splash is only shown for a short period, while SeaBIOS detects the hard disk on the ASRock E350M1, which takes 10 seconds with this particular hard drive model.
So move the call to wait for the threads to finish further up, so it is before the instruction to disable the boot splash.
On the ASRock E350M1 the boot splash is shown the whole time now. Note, sometimes the GRUB menu from the MBR is not shown, and boot splash can still be seen. The screen only changes, once the Linux kernel boots. This seems to be a GRUB issue though .
diff --git a/src/boot.c b/src/boot.c index 706b7df..af3c627 100644 --- a/src/boot.c +++ b/src/boot.c @@ -468,6 +468,7 @@ interactive_bootmenu(void) u32 menutime = romfile_loadint("etc/boot-menu-wait", DEFAULT_BOOTMENU_WAIT); enable_bootsplash(); int scan_code = get_keystroke(menutime); + wait_threads(); disable_bootsplash(); if (scan_code != menukey) return; @@ -476,7 +477,6 @@ interactive_bootmenu(void) ;
printf("Select boot device:\n\n"); - wait_threads();
// Show menu items int maxmenu = 0;