This message is from the T13 list server.

By the way, does anybody here know where public discussion of PC boot Bios occurs?

In particular, I wonder why it is that Win/ Linux commonly can't boot from any 
connected media, though Mac OS can (umm, except not Usb, I think I heard?).  Below you 
see me arguing that a contributing factor to this Win/ Linux incapacity is the 
enduring power of the C:H:S legacy over the Atapi Cdb standards.  Here I find my 
ignorance painful, I'd appreciate some relief.

Thanks in advance, Pat LaVarre

---

Subj: [usb-mass:0178] bootability - page x05 C:H:S 
Date: Wednesday, January 22, 2003 3:19:59 am
From: [EMAIL PROTECTED]
...

> If BIOS would like to know sector size or MAX LBA,
> to use Read capacity or Read Format Capacities
> command.  Flexible Disk page will obsolete.

I've been told that specific Usb/Atapi bridge vendors list page x05 C:H:S support as a 
feature available only in certain products.  If you want that feature, you have to 
give others up: you can't just pay more, whoops.

As far as I know, no Bios engineer has ever stood up and given a public, credible, 
coherent answer to the pernicious question of why does the Bios need page x05 when the 
O.S. gets by just fine with op x25 ReadCapacity result.

I hear people widely accept the idea that any disk over 8GB or so has a known C:H:S 
geometry, but below that the PC Bios folk and Adaptec have competing standards.  I 
don't remember seeing that fact posted anywhere, nor what the blessed C:H:S geometry 
is.  [Maybe it is H:S = xFF:3F = 255:63?]

> no ... public, credible, coherent answer

But this time around I have the beginnings of a clue ...

Web trails like:
http://members.aol.com/plscsi/
http://members.aol.com/plscsi/data/partboot.html
http://members.aol.com/plscsi/data/iom4pb.html
http://members.aol.com/plscsi/2002/10/04/partiom901123.txt
give us a disassembled partition sector.

If you can read x86 machine code, then at a glance you can see booting this disk 
requires the Bios to decide what it means to read a block from C:H:S = x00:01:01 (i.e. 
the partition.cyl:head:sector of the boot_ind=x80 partition).

For the Bios to do this, the Bios must guess a geometry, whoops.  If the op x25 
ReadCapacity result happens to be below 8GB, then the Bios must guess, does the PC 
Bios standard apply, or the Adaptec standard, or some other.  The Bios has to guess 
long before Dos or some other O.S. loads a filesystem driver that can pass the 
start_sect to extended int x13 rather than the cyl:head:sector to legacy int x13.

I'm betting that Bios folk are more engineers than programmers: they prefer to pretend 
they don't guess much.  They prefer saying "device not bootable" over trying to 
explain to people that because they guessed, a disk bootable by one Bios will not be 
bootable by another.  They're somehow specifically unwilling to automagically choose a 
geometry that fits the first legacy cyl:head:sector int x13 meaning start_sect 
extended int x13.

This unwillingness collides with a symmetrical unwillingess to make the system work in 
device folk, who say C:H:S is a legacy fiction with no real meaning, thus entirely a 
Bios problem, why bother me.

I specifically remember seeing a product ship with a mode page x05 coded in ignorance 
of the secret that the mode page x05 C:H:S fields do not contain 16:8:8 bits as 
documented, but rather something less.  Maybe 10:6:8?  I don't exactly remember.

This could all be slanderously wrongheaded: I'm speaking from a place of deepest 
ignorance, because "as far as I know, no Bios engineer has ever stood up and given a 
public, credible, coherent answer to" this "pernicious question".

Hope this helps, thanks in advance, Pat LaVarre

Reply via email to