From: Conrad on

I recently managed to scrape enough pennies to rebuild my lightning-bit
workstation. Motherboard ECS KM400-M2 (rev 3.0) HD wd1600JB, 160gb.

I created a small NTFS partition (8gb) for Win2k, and a few more
30gb FAT32 partitions to share with FreeBSD and Linux, which also
need to go on this box. Then I noticed a problem. Windows was
only showing 137GB for the drive size in system informatien.
I looked in the BIOS and found the following geometry:
C/H/S is 65535/16/255, which adds up to about 137gb.

I then attempted to install FreeBSD which immediately complained
of bad geometry and enforces a C/H/S of 19457/255/63.
(which is much closer to the 160gb I paid for) FreeBSD apparently
ignores (?) BIOS and queries the HD directly.

While I know FreeBSD will happily run drives much larger than the
BIOS will support, that is on systems dedicated to FreeBSD - mine
needs to play nice with Windows.

Questions: Deos anyone know if I can happily accept the FreeBSD
geometry, or will FreeBSD write things in the partition table that
will screw up Windows? I thought somewhere is some MBR voodoo
that needs some consistency in the cyl/head/sector geometry.

Further, because Windows apparently believes the limited BIOS
geometry, and since FreeBSD is apparently more correct, what happens
to the FAT32 partitions that I want to write to from either O/S?

Should I wipe the whole disk and use FreeBSDs FDisk utility to
create the NTFS and FAT32 partitions?

I've taken a look at the addressing modes available in BIOS:

LBA: Cyl - 16643, Heads - 255, Sectors - 63 = 136893335040 bytes
Large: Cyl - 4095, Heads - 240, Sectors - 255 = 128314368000 bytes
CHS: Cyl - 65535, Heads - 16, Sectors - 255 = 136899993600

Auto, which is what I had when I installed Win2K apparetly uses
CHS, at least the geometry reported by Auto matches - but none
of the options gets past 137gb


Many thanks,

Conrad
From: Rod Speed on
Conrad <nospam(a)nothanks.org> wrote

> I recently managed to scrape enough pennies to rebuild my lightning-bit
> workstation. Motherboard ECS KM400-M2 (rev 3.0) HD wd1600JB, 160gb.

> I created a small NTFS partition (8gb) for Win2k,

You need to ensure that Win2K has 48
bit LBA enabled for a drive over 137G.
http://support.microsoft.com/default.aspx?scid=kb;en-us;q305098

> and a few more 30gb FAT32 partitions to share with FreeBSD and Linux, which
> also need to go on this box. Then I noticed a problem. Windows was only
> showing 137GB for the drive size in system informatien.

See above.

> I looked in the BIOS and found the following geometry:
> C/H/S is 65535/16/255, which adds up to about 137gb.

What matters is what it shows the size as in the black bios
screen at boot time. Looks like you need to update the bios too.

> I then attempted to install FreeBSD which immediately complained
> of bad geometry and enforces a C/H/S of 19457/255/63.
> (which is much closer to the 160gb I paid for) FreeBSD apparently ignores (?)
> BIOS and queries the HD directly.

Yep.

> While I know FreeBSD will happily run drives much larger than the BIOS will
> support, that is on systems dedicated to FreeBSD - mine needs to play nice
> with Windows.

Then you need to enable 48 bit LBA in Win.

> Questions: Deos anyone know if I can happily accept the FreeBSD geometry, or
> will FreeBSD write things in the partition table that will screw up Windows?

Dunno, but you should fix it the other way, enable 48 bit
LBA support in Win and then that problem will go away.

> I thought somewhere is some MBR voodoo that needs some consistency in the
> cyl/head/sector geometry.

Yeah, some of the partition managers will chuck a wobbly about it.

> Further, because Windows apparently believes the limited BIOS
> geometry, and since FreeBSD is apparently more correct, what happens to the
> FAT32 partitions that I want to write to from either O/S?

They'll be fine while ever they are below the 137G boundary.

You'll have a problem using the full size of the drive and you
will get the drive wrapping around in some situations and that
will wipe out the partitions on the front of the drive.

> Should I wipe the whole disk and use FreeBSDs FDisk utility to create the NTFS
> and FAT32 partitions?

You still need to enable 48 bit LBS in Win, so you
might as well just wipe the drive and recreate the
partitions again in Win after you have done that.

> I've taken a look at the addressing modes available in BIOS:

> LBA: Cyl - 16643, Heads - 255, Sectors - 63 = 136893335040 bytes
> Large: Cyl - 4095, Heads - 240, Sectors - 255 = 128314368000 bytes
> CHS: Cyl - 65535, Heads - 16, Sectors - 255 = 136899993600

> Auto, which is what I had when I installed Win2K apparetly uses CHS,

Nope, it just fakes that up. It still has to use LBA for a drive that large.

> at least the geometry reported by Auto matches - but none of the options gets
> past 137gb

You need to update the bios.


From: Peter on
> I recently managed to scrape enough pennies to rebuild my lightning-bit
> workstation. Motherboard ECS KM400-M2 (rev 3.0) HD wd1600JB, 160gb.

Your MB should support EIDE disks up to 400GB, so that is fine.
Make sure BIOS settings are AUTO.

> I created a small NTFS partition (8gb) for Win2k,

Here is a problem. Install proper W2K Service Pack and perform registry
changes to support 48bit-LBA.
Reboot and check in Windows 2000 again.


From: Conrad on
Rod Speed wrote:
> Conrad <nospam(a)nothanks.org> wrote
>
>
>>I recently managed to scrape enough pennies to rebuild my lightning-bit
>>workstation. Motherboard ECS KM400-M2 (rev 3.0) HD wd1600JB, 160gb.
>
>
>>I created a small NTFS partition (8gb) for Win2k,
>
>
> You need to ensure that Win2K has 48
> bit LBA enabled for a drive over 137G.
> http://support.microsoft.com/default.aspx?scid=kb;en-us;q305098
>

I came across that mskb article - requirement #1 threw me:

The following conditions are necessary for the correct functioning of
48-bit LBA ATAPI support:
? A computer with a 48-bit LBA-compatible Basic Input/Output System
(BIOS) installed.


Since when I looked in BIOS, and none of the addressing modes
showed a C/H/S combination over 137GB, I assumed that the
BIOS was NOT 48-bit LBA, but limited by the 137gb "barrier".

>
>>I looked in the BIOS and found the following geometry:
>>C/H/S is 65535/16/255, which adds up to about 137gb.
>
>
> What matters is what it shows the size as in the black bios
> screen at boot time. Looks like you need to update the bios too.
>

Cool, I'll watch that number at boot.

I would LOVE to update the BIOS. This particular board is a
ECS KM400-M2 (rev 3.0) - the rev 1 board has BIOS images up
to 1.0e currently - the rev 3.0 board (mine) only shows BIOS
rev 1.0 - along with all kinds of dire warnings on the page
about being sure your board revision number matches or
the earth will tremble, pigeons will fly upside down, George
Bush will grow a brain, and other signs of the apocolypse.
Maybe I bought an orphan.


>>I thought somewhere is some MBR voodoo that needs some consistency in the
>>cyl/head/sector geometry.
>
>
> Yeah, some of the partition managers will chuck a wobbly about it.
>
>
>>Further, because Windows apparently believes the limited BIOS
>>geometry, and since FreeBSD is apparently more correct, what happens to the
>>FAT32 partitions that I want to write to from either O/S?
>
>
> They'll be fine while ever they are below the 137G boundary.
>

That's encouraging - I guess - everything over 130G was going to
be Linux or FreeBSD anyway.


> You'll have a problem using the full size of the drive and you
> will get the drive wrapping around in some situations and that
> will wipe out the partitions on the front of the drive.
>

That's NOT encouraging - is that scenario only if NTFS partitions
or FAT32 partitions cross that boundary? The upper reaches of the
drive were destined for FreeBSD and Linux anyway.

>
>>Should I wipe the whole disk and use FreeBSDs FDisk utility to create the NTFS
>>and FAT32 partitions?
>
>
> You still need to enable 48 bit LBS in Win, so you
> might as well just wipe the drive and recreate the
> partitions again in Win after you have done that.
>

One drive. I'm on a bit of a budget. The NTFS partition
creation is the first thing that the WIN2K install does,
(reasonably). This is a bit of a chicken and egg - I have
to install Win2k to enable 48-bit to create the partition
that Win2k needs to live on...

Thanks much - I'm clueless about the new drives - the last
actual drive "programming" I did involved 8" floppies on
a TRS-80 - things have changed a bit.

Conrad
From: Conrad on
Peter wrote:
>>I recently managed to scrape enough pennies to rebuild my lightning-bit
>>workstation. Motherboard ECS KM400-M2 (rev 3.0) HD wd1600JB, 160gb.
>
>
> Your MB should support EIDE disks up to 400GB, so that is fine.
> Make sure BIOS settings are AUTO.
>

From the ECS website - when I look under HDD support, the board
revision 1.0 shows support for 400GB - true - but I have the
rev 3.0 board - which under hdd support just gives a blank, and
under BIOS revisions shows only 1.0 - The BIOS setting is currently
AUTO, but setting it to LBA still gives the results in the original
post, C/H/S is 65535/16/255 - which is only (about) 137GB.

>
>>I created a small NTFS partition (8gb) for Win2k,
>
>
> Here is a problem. Install proper W2K Service Pack and perform registry
> changes to support 48bit-LBA.
> Reboot and check in Windows 2000 again.
>
>

I have a single disk. Win2k HAS to create a partition before it can
install - which it does under the (probably) 24-bit LBA that my
BIOS is apparently providing. This is a chicken and egg problem.
At any rate, requirement #1 on the Microsoft Knowledge base
(http://support.microsoft.com/default.aspx?scid=kb;en-us;q305098)
says:
"A computer with a 48-bit LBA-compatible Basic Input/Output System
(BIOS) installed."
If I had 48-bit LBA, wouldn't it show a geometry in the BIOS setup
that reflects a 160GB drive instead of a 137GB drive?

Cheers,

Conrad