Subject: Re: Problems with dual booting
To: Wolfgang Solfrank <ws@tools.de>
From: Andrew Brown <atatat@atatdot.net>
List: netbsd-help
Date: 04/05/2000 13:14:57
>> as to why it's 255 and not 256...the bios numbers things starting from
>> 1 and 256 is a nine bit number.
>
>No, it's only an 8 bit number.  And the bios does support head numbers
>start from 0 up to 254, which gives 255 heads, where it could support
>head number 255 as well.  Your argument does hold some merit for the
>sector number though, as that does indeed start with 1.

256 is 100000000, which is nine bits.  and i thought they all started
numbering at 1...whatever.

>> >The numbers for the explicit cylinder/head/sector look quite odd, except
>> >for the start of the first partition.  The numbers for start and size
>> >look ok.
>> 
>> that's normal.  at least...that's what i expect and have always seen
>> on disks larger than ~500 megs.
>
>No, that's not normal.  The numbers do make sense normally, at least
>if it's possible to represent the addresses within the 1024/255/63 limits.

they've always looked insane to me, whenever i've looked at them.  so
i just think of them as "normal" now.

>> okay...i'll try that later tonight.  but that'll just write the same
>> stuff back to the disk, no?
>
>No, the procedure I described will recompute the explicit cylinder/head/
>sector numbers from the start and size numbers.  And those are used for
>booting a partition...

okay.  so it doesn't just try to boot wrt the absolute sector start
and size numbers?  that'd make more sense to me...

>> and it probes as:
>> 
>>    wd0: 11513 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 23579136 sectors
>> 
>> but those numbers don't multiply together very well.  the 23392 number
>> that i've got in my disklabel is what freebsd told me.
>
>The 16383 cylinders is another limitation for ide disks (I think), which
>is overcome by another innovation in ide access methods.  It doesn't however
>have a direct relation to the bios limitation.

okay.  it's another one of those power-of-2-off-by-one things.

>> is there any way to test this, short of watching the boot manager fail
>> and guessing?  could i smack together a small assembly program that
>> tries to use this "new method" and see?  something that could test
>> things like this might be a "very good thing".
>
>If you're adventurous, I can send you the procedure to do this
>from within M$dos debug.  I'd have to dig it up first though.  Just
>let me know (in private mail).

sure!  reading from a disk won't break it.  fwiw - i think that having
a collection of small programs like this that one could run from a
bootable dos disk would help people on i386 platforms.

-- 
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org             * "ah!  i see you have the internet
twofsonet@graffiti.com (Andrew Brown)                that goes *ping*!"
andrew@crossbar.com       * "information is power -- share the wealth."