[syslinux] syslinux mkisofs hard-disk-boot isohybrid

Thomas Schmitt scdbackup at gmx.net
Thu Dec 22 01:44:25 PST 2016


Hi,

Pascal wrote:
> rewriting error message [of program isohybrid] ?

It could be more specific, indeed. The error is detected in function
read_catalogue() but not reported there. Its caller main() then does not
know which of the four error conditions triggered the refusal:

de_boot != 0x88 :
  Not an El Torito boot catalog.

de_media != 0 :
  First boot image is not a no-emul-boot El Torito boot image for BIOS,
  which isolinux.bin should be.

(de_seg != 0 && de_seg != 0x7C0) :
  Program start address of El Torito boot image for BIOS is not what
  isolinux.bin would contain.

de_count != 4 :
  The amount of data to load and execute by BIOS is not 2048 bytes,
  which isolinux.bin expects to be.


> is it better to stop with hard-disk-boot
> and go on isolinux.bin ?

If you want to apply program isohybrid, then you must use isolinux.bin.
If the program would be willing to patch the hardisk image file, then it
would spoil it. Therefore it checks a magic number of the boot image in
line 1050:

    if (memcmp(buf, "\xFB\xC0\x78\x70", 4))
        errx(1, "%s: boot loader does not have an isolinux.bin hybrid " \
                 "signature. Note that isolinux-debug.bin does not support " \
                 "hybrid booting", argv[0]);

If you do not want to apply isohybrid then you are free to use other boot
images with other mkisofs El Torito parameters. This opportunity is
demonstrated by your hard disk emulation image (although i currently think
it is rather too successful :).


Have a nice day :)

Thomas


More information about the Syslinux mailing list