[syslinux] menu.c32 background problem

Ady Ady ady-sf at hotmail.com
Fri Aug 4 09:54:12 PDT 2017

> On 8/4/17, Ady Ady via Syslinux <syslinux at zytor.com> wrote:
> >
> Thanks for the response. Yep, done. I downloaded from kernel.org
> 6.04-pre1, and compiled it. I made certain only using those files.
FWIW and just FTR, I suggested the pre-built binaries already included 
in the official archives. If I were to suggest compiling anew, I would 
had pointed to the current git master head located at:


and to:


At any rate, in this particular case (see below) it wouldn't had 
produced any difference.
> Note, this is booting on a 64-bit UEFI-firmware PC, in a esp fat32 partition.
Aha! The platform (UEFI, x64) is very relevant.

There are several problems regarding the boot screen under UEFI. One of 
them is the (default) screen resolution being supported by each 
particular firmware implementation. Another one is menu.c32 (as opposed 
to vesamenu.c32) being supported (or not) by each particular firmware 
implementation. And there is also the screen refresh problem under 
UEFI, which is the issue that you are experiencing now.

I reported the screen's "refresh" issue(s) under UEFI several years 

For example, while in the boot prompt CLI, pressing [CTRL+L] should 
"home" the prompt (i.e. move it to the upper left corner of the screen) 
and clear the screen. Under UEFI, the boot prompt goes to home, but it 
fails to clear the screen.

There are 3 procedures to clear the boot screen:

_ [CTRL+L] keyboard combination in CLI.

_ Within boot help message (aka "DISPLAY") files, the "ASCII 12" 
character should also clear the screen. When this is used, it is 
usually the very first character in the msg file, but not always (e.g. 
in Barry's help.msg file, it isn't).

_ When using (vesa)menu.c32, the 'MENU CLEAR' directive is supposed to 
clear the screen when the configuration file is parsed.

As I reported several years ago, whichever method (of the above three) 
is used, it (currently?) fails under UEFI.


One potential alternative would be to use less rows in the menu, 
leaving space to display text at the lowermost area of the screen, but 
such text can only use one (electable) color (in contrast to the msg 
files, which can display each character in a different color). IMHO, 
this alternative does not worth the time for this particular project.

Since you are using only 2 menu entries, would you consider the 
possibility of using the msg file(s) and the boot prompt, while 
avoiding the use of (vesa)menu.c32 for this particular project? If you 
do, there is room for improvements.


_ [CTRL+L]:



_ ASCII 12:


More information about the Syslinux mailing list