[syslinux] Problems with gfxboot.c32
aheinlein at gmx.com
Wed Jul 3 23:45:33 PDT 2013
Am 03.07.2013 23:05, schrieb Sebastian Herbszt:
> Matt Fleming wrote:
>> On Wed, 03 Jul, at 09:53:32PM, Sebastian Herbszt wrote:
>>> gfxboot.c32 is supposed to work as expected if you put all required
>>> inside the bootlogo archive.
>> From reading com32/gfxboot/gfxboot.c, the code in the bootlog archive
>> calls *out* into a realmode section compiled into gfxboot.c32
>> (realmode_callback.asm) to do things like open files, read sectors, etc.
>> It's these utility functions that no longer work.
> Calls to those functions only happen if the gfxboot core (bincode.asm)
> requests them.
> cb_status, cb_fopen and cb_fread are only called from gfxboot core
> (prim_findfile) if
> the requested file is not part of the bootlogo archive.
> cb_getcwd is deprecated, cb_chdir and cb_mount were never supported on
> upstream syslinux.
> The only function left is cb_readsector which seems optional in
> gfxboot core.
> There should be no loss of functionality if required files are part of
> the bootlogo archive.
Looks like you're right. I added '*.tr *.hlp *.pcx back.jpg gfxboot.cfg
langlist' to the 'bootlogo' archive, and now I get the menu, and
everything seems to work!
If that's really the only problem, I wouldn't consider this a bug. IIRC,
the 'unpacked' form of gfxboot archives is a special case of SYSLINUX
anyway, grub expects/needs the files in their packed form. Then this
change just needs to be documented somewhere
More information about the Syslinux