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

Martin Str|mberg ams at ludd.ltu.se
Fri Mar 24 00:05:45 PDT 2017


CC:ing syslinux.

Thanks for testing David.

On Thu, Mar 23, 2017 at 05:23:51PM -0700, David Christensen wrote:
> Trying isohdpfd.bin:
...
> Boot it in D865GBFLK Pentium 4 3.4E GHz -- I see a screenful of information,
> with "Key?" at the bottom (see attached picture IMG_1578-r.JPG).
> 
> 
> When I press a key, I see the following message at the bottom and the
> computer stops:
> 
> ISOLINUX 6.03 20150819 CHDDisolinux: Image checksum error, sorry...
> 
> 
> Trying isohdpfc.bin:
...
> Boot it in D865GBFLK Pentium 4 3.4E GHz -- I see a screenful of information,
> with "Key?" at the bottom.

Is it exactly the same numbers as in the picture you attached for the
isohdpfd.bin boot?

> When I press a key, the following message flashes by at the bottom:
> 
> ISOLINUX 6.03 20150819 EHDD Copyright (C) 1994-2014 H. Peter Anvin et al
> 
> 
> The screen goes black, the PC speaker beeps, then the Debian Installer
> starts.  When I select Install, there is a delay of ~20 seconds, the screen
> goes black, then the following message flashes by at the top:
...
[Successful start of install snipped.]


What the ??!! There shouldn't be any difference.

Looking at the code I see there might be a difference in CX _if_ the
EBIOS check call succeeds but doesn't return correct value in BX.

Please try this new isohdpfd.bin that indicates which part of EBIOS
detection fails:
<http://www.ludd.ltu.se/~ams/tmp/isohdpf_dump.2.tgz>

 * If an EBIOS is not detected outputs:
 * <X><LBA0>/<C0>/<H0>/<S0>
 * <LBA1>/<C1>/<H1>/<S1>
 * <LBA2>/<C2>/<H2>/<S2>
 * <LBA3>/<C3>/<H3>/<S3>
 * <Big hex dump of first loaded sector>
 * Key?
 *
 * and waits for a key press.
 * <X> is A if the EBIOS detection failed the extended disk access
 * support bit, B if the EBIOS detection failed the BX signature and
 * C if EBIOS detection failed with carry return.
   
If my theory is correct then this one will print B for <X>.

The included isohdpfc version really forces no EBIOS calls this time
as it makes sure to clear the flag.


Amazingly the size of the code in isohdpfd decreased by one byte
although it's more informative!


-- 
MartinS


More information about the Syslinux mailing list