[syslinux] Syslinux Text menu not redrawing/resetting the screen

Ady Ady ady-sf at hotmail.com
Sun Jul 10 09:55:38 PDT 2016


> On Fri, Jul 8, 2016 at 11:46 AM, Ady Ady via Syslinux
> <syslinux at zytor.com> wrote:
> >
> >> Hi,
> >>
> >>  I have been using syslinux on my portable disk with success on many
> >> types of machines  (both bios boot and EFI boot)
> >>
> >>  I however hit a small issue recently
> >>
> >>  If I use menu.c32, on some UEFI systems (HP) the menu does not appear
> >> after the vendor splash screen. The system however goes ahead and
> >> after the timeout configured in the menu system syslinux boots the
> >> kernel. I can then (after kernel is loaded) see the kernel messages
> >>
> >>  If I change menu.c32 to vesamenu.c32, the menu is now displayed.
> >>  I think menu.c32 must reset the display which is missing ?
> >>
> >> Is there a config line where I can explicitly reset the display so
> >> that the text menu is shown compulsarily ?
> >>
> >>
> >> Thanks
> >> Bhasker C V
> >
> >
> > UEFI tries to replace the traditional VGA BIOS standards with something
> > else (UGA in some implementations, GOP in newer ones).
> >
> > My guess would be that your UEFI implementation doesn't completely /
> > correctly support the default display mode for menu.c32.
> >
> > There might be some setting in your firmware, such as "fastboot" or
> > some additional / similar names; have you tried disabling / changing
> > their status?
> The bios/firmware does not at present show any  secure boot or similar
> menu options.
 
Your answer is somewhat confusing to me. First, for syslinux.efi to 
boot, you would need to disable secure boot, and considering that you 
are already booting with syslinux.efi, then you must have some way to 
disable secure boot, somewhere. You might not have secure boot set "on" 
right now, but it doesn't mean that the option doesn't exist (unless 
your system is prior to the introduction of secure boot).

Additionally, I didn't mention "secure boot" but rather "fast boot" (or 
some similar term). The "fast boot" feature could be thought of the 
equivalent to "skipping the POST" in the "old" days of BIOS (i.e. not 
UEFI) firmware.


Perhaps it might be helpful to know which exact model of HP are we 
talking about, and which version of firmware / BIOS / UEFI is currently 
using.


> >
> > Is this HP model capable of booting in Legacy BIOS (CSM) mode, or only
> > in UEFI mode? This might give us a clue about its video capabilities /
> > support.
> Legacy BIOS boot shows the menu properly. It is only the UEFI boot
> which does not show the text menu
 
 
Just to be clear, do you mean that you have tested booting in CSM mode 
_in this same system_, and it works as expected?


> >
> > What is the screen resolution being displayed when you are using
> > vesamenu.c32? Do you also use a menu background image and/or the MENU
> > RESOLUTION directive?
> When I try a vesamenu.c32, the screen appears and the menu appears.
> But any attempt to set
> the MENU BACKGROUND leads to a black screen with brown menu. The menu
> works but no-matter what I do, the
> image does not get loaded. If someone has a working image, please can
> then send me so that I can try it out directly
> on my system.
> I am also not sure how to find the screen resolution used.
> 
 
 
Even if you don't know which screen resolution the system is using / 
expecting during the pre-OS, you should be able to tell us which 
resolution is your background image using. The MENU RESOLUTION 
directive shall match the resolution of the background image you are 
using; any mismatch might cause unexpected results.

Regarding the colors, the result might also depend on additional MENU 
directives in your syslinux.cfg. In theory, the result should be 
consistent on different systems, but, as you know now by experience, 
UEFI implementations are not really "standard" in practice.

Posting the entire content of your syslinux.cfg might show some points 
for improvements.

> >
> > Have you tried updating your firmware?

No answer? No model? No firmware version?

> >
> > Are you able to boot to the Syslinux boot prompt instead of using a
> > menu?
> the boot prompt does not show up.
 
Well, sure, because you are starting with (vesa)menu.c32. The question 
was in fact a suggestion plus a question. Or, are you saying that you 
actually tried booting to the Syslinux boot prompt and it failed to be 
displayed too? Would you please post your entire syslinux.cfg?


> >
> > Are you able to boot into a UEFI shell and then select syslinux.efi
> > from it?
> Yes. If I use UEFI boot from file or shell, the menu shows up properly.

This is a very relevant point. So, again, any "fast boot" or similar?


> >
> > In the past we have seen some people from HP(E) posting in this
> > Syslinux Mailing List, although I doubt they are following it. Their
> > input / comments might be helpful, not only for this particular case
> > but for others, and for improving both, the UEFI implementations in HP
> > machines and (vesa)menu.c32 under UEFI.
> >
> > Regards,
> > Ady.
> >
> > PS: MS requires 1024x768 32bpp as minimum GOP mode in WHQL. I would not
> > be surprised if some UEFI Class 3 systems end up not supporting
> > 640x480.
> >
> > _______________________________________________
> > Syslinux mailing list
> > Submissions to Syslinux at zytor.com
> > Unsubscribe or set options at:
> > http://www.zytor.com/mailman/listinfo/syslinux

Regards,
Ady.



More information about the Syslinux mailing list