[syslinux] "isolinux.bin missing or corrupt" when booting USB flash drive in old PC

Thomas Schmitt
Sun, 19 Mar 2017 11:39:51 -0000

Hi,

MartinS wrote:
> Sigh.

Ok. I deserve that.
I was stubbornly looking at the structure of the documentation rather
than at the documented sequence of instruction parameters.


I ponder whether it would be possible to create a diagnostic MBR
which does not necessarily have to boot but rather tells what the
isohybrid MBR would perceive: Presence of partition table,
EBIOS or CBIOS, block address used with INT 13, content of the block
read by the first INT 13, ...

One could preserve the isohybrid MBR of an ISO and replace it by
the diagnostic one for testing purposes:

  dd if=/dev/sdc bs=1 count=512 of=isohybrid_mbr.bin

  dd of=/dev/sdc bs=1 count=432 if=diagnostic_mbr_code.bin

The diagnostic MBR should only use 432 bytes because at byte 432
to 435 of the isohybrid MBR there is the 512-byte-block address of
file isolinux.bin, which was patched in by isohybrid or xorriso.
So the code would be able to work with any isohybrid ISO.


Have a nice day :)

Thomas