VOGONS


First post, by citronalco

User metadata
Rank Newbie
Rank
Newbie

I copied the data of a 32 GByte CF card to a 64 GByte CF card. As I am a Linux user, I simply used "dd" for that.
Then I resized some partitions with gparted, created new ones, and used the CF card for a while. Everything (DOS & Win98) works fine, no problems.
But I recognized that in BIOS and in Windows XP the 64 GByte card still gets detected as 32 GByte card. With the same CHS values of the original card.
Linux shows the correct CHS values.

Is there a way to write the correct CHS values to the CF card, so that BIOS, DOS and Windows XP detect the card properly?

Reply 1 of 6, by kixs

User metadata
Rank l33t
Rank
l33t

What is your hardware - motherboard? It is possible it maxes out at 32GB - very common around 1998 era.

Visit my AmiBay items for sale (updated: 2025-03-14). I also take requests 😉
https://www.amibay.com/members/kixs.977/#sales-threads

Reply 2 of 6, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Linux shows the correct CHS values.

Linux doesn't respect the BIOS.

If I remember correctly, Mr. Torwalds wasn't much of a fan of the BIOS.

Linux kernal thus tries to ignore BIOS pretty much and does everything on its own.

Speaking under correction, though.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 3 of 6, by citronalco

User metadata
Rank Newbie
Rank
Newbie
kixs wrote on 2024-07-01, 22:18:

What is your hardware - motherboard? It is possible it maxes out at 32GB - very common around 1998 era.

It's a socket 370 board from 2001 (QDI Advance 10T) and has no problems detecting HDDs > 128 GByte properly. BIOS supports 48 bit LBA.
The Windows XP I'm writing in my first post is XP SP3, which also supports 48 bit LBA.

Reply 4 of 6, by kixs

User metadata
Rank l33t
Rank
l33t

I have cloned many CF cards (with GHOST) and geometry has never changed. Try manually set the LBA values.

Visit my AmiBay items for sale (updated: 2025-03-14). I also take requests 😉
https://www.amibay.com/members/kixs.977/#sales-threads

Reply 5 of 6, by citronalco

User metadata
Rank Newbie
Rank
Newbie

Mystery is solved:
"dd"-ed the 32 GByte image to another 64 GByte CF card. This time the BIOS correctly reported 64 GByte as size.
The first 64 GByte card, the one that reported the wrong size, was a Sandisk card.
The second 64 GByte card, which reports the correct size, is a Transcend card.
Popped in a brand new 64 GByte Sandisk card, and this also shows up with 32 GByte in BIOS.

I will avoid Sandisk CF cards from now on.

Reply 6 of 6, by javispedro1

User metadata
Rank Member
Rank
Member

I really doubt it is a "Sandisk" problem, unless it is outright a fake (which you can try with f3 from linux side or h2wtest from windows side).
What was the CHS reported by the original card?

XP also doesn't "respect the BIOS".
Most BIOSes (specially LBA48 ones) are not going to passthrough a 32GBs card reported CHS as it would be utterly useless for CHS access... there's a bunch of logic they'll try to do to try to show as much of it to DOS as possible (within the 8GB limit) , and/or respect existing partition limits (so yes, some recent BIOS will even change reported CHS depending on which partitions you define on it...).