[syslinux] Using the cat.c32 sample as a functional equivalent to the FN keys in vesa mode
H. Peter Anvin
hpa at zytor.com
Wed Oct 25 14:37:46 PDT 2006
David W. Koeller wrote:
> I have been hacking around with the new vesa boot menus and I had a
> couple questions.
>
> Do you currently have a method to set the SHADOWING options that are
> coded in menumain.c from within the menu config file? I saw something
> in readconfig that looked like you were parsing single characters to map
> to SHADOW_NONE, etc. constants for these parameters, but I did not
> follow it. The default shadowing looked horrible on a white background
> image I was using. I managed to turn it off by recompiling the
> menumain.c with different color schemes.
>
Yes, but you have to get 3.31 to do that. See MENU COLOR in README.menu
in 3.31.
> I have modified the cat.c32 sample under com32 to invoke a vesa console
> video mode and set the color table accordingly based on code from
> menumain.c. This can then be called from within vesamenu.c32 to cat a
> file containing the help text for optional kernel parameters that could
> be passed at the command prompt. I would really like to add the
> equivalent of a boot: prompt at the bottom of this code in the context
> of vesa so it behaves similar to the traditional FN keys with .msg
> files. I currently just issue a get_key call at the end of the cat.c
> file and inform the user to hit a key to get the boot: prompt which
> works. The only drawback is that the help is now gone when they go to
> type since we are back in a different video mode.
>
> On the same note, is there a return code or call sequence I can invoke
> from within cat.c to reload the default calling vesamenu.c32 if the user
> choses the cat.c32 help and then wants to return to the main menu
> without first hitting enter through the boot: parameter?
Yes, there is an API call INT 22h AX=0004h Run default command.
> All in all, the new vesa menus are pretty awesome looking. Great work.
Thank you :)
-hpa
More information about the Syslinux
mailing list