VOGONS


First post, by RetroSpector78

User metadata
Rank Member
Rank
Member

I've stumbled upon 2 old identical 286 PCs. Identical except for the hard drives.

One has a Connor CP3000 42MB hard drive and the other a Kalok KL-343 43MB hard drive.

https://stason.org/TULARC/pc/hard-drives-hdd/ … -SL-IDE-AT.html

CHS : 1045 / 2 / 40
CHS (translated) : 980 / 5 / 17

https://stason.org/TULARC/pc/hard-drives-hdd/ … -HH-IDE-AT.html

CHS : 676 / 4 / 31
no translation

The one with the Connor hard drive I was able to setup easily.
The BIOS does not do HD auto detection or user type, there is just a pre-defined list of some 40 CHS configurations.
In the bios there was no 980 / 5 / 17 in the hard drive list, but there was a 977 / 5 / 17 so I figured that was close enough and the hard drive was booting fine.

Now, for the second one with the Kalok drive the closest match I found was 615 / 4 / 26 , but that resulted in only 30MB capacity, and after ms-dos format it reported 2mb of bad sectors and it wasn't able to boot from it (garbled text showed up on boot).
I then tried to confgure the Kalok with 977 / 5 / 17 (same valus as I used with the connor) and that seemed to work fine. Only 6kb of bad sectors and I was able to boot.

So a couple of questions :

  • What does that "translated" CHS mean on stason. (Because for the connor I had to match it against the translated CHS values and not 1045 / 2 / 40). Is it a translation between physical CHS and software or BIOS CHS ?
  • For the Kalok there are not translated values. Is this something you can do yourself ? How does one know how to configure such a hard drive
  • And why does the Kalok work fine with 977 / 5 / 17 but results in a lof of bad sectors and fails to boot with 615 / 4 / 26 ?

Thx

Reply 1 of 2, by elianda

User metadata
Rank l33t
Rank
l33t

In the CHS definition BIOSes used at that time cylinders are limited to 1023. So you can not represent 1045 cylinders.
So one could cap that to 1023 / 2 / 40 but then you would loose capacity. So the drivers offer a translated geometry that fits the capacity:

1045 * 2 * 40 = 83600 sectors
980 * 5 *17 = 83300 sectors. This geometry fits within the cylinder representation and you loose only 300 sectors (~150 kB) compared to the actual hardware geometry.

- Kalok has no translation because it is not needed, all CHS values are below the BIOS specification limit.

About the bad sectors:
Of course a HDD can be registered in the BIOS with a lower CHS geometry. So if the Kalok is 676 / 4 /31 you can use any geometry where each value is less or equal the maximum given geometry. Of course one looses some capacity in accessing the drive.
If the actual CHS specification of the HDD can not be selected in the BIOS the user probably has used some other or some tool that patches the correct CHS translation in afterwards. Works if the HDD is a slave or secondary.

There is no quick way to find out:
Try the disk on a more modern PC where you can set 676 / 4 / 31 and just try to read all content, e.g. with xcopy to nul. If there are no errors then this was the geometry used on partition creation.
If that does not work, go through the predefined BIOS profiles in your 286 and try the xcopy to nul until you succeed.

Sometimes it is not as obvious. There are cases where the original system had e.g. a 30 MB HDD which broke at some point. It was replaced with a 120 MB HDD but for compatibility reasons it was set to the same geometry as the 30 MB HDD.

Retronn.de - Vintage Hardware Gallery, Drivers, Guides, Videos. Now with file search
Youtube Channel
FTP Server - Driver Archive and more
DVI2PCIe alignment and 2D image quality measurement tool

Reply 2 of 2, by RetroSpector78

User metadata
Rank Member
Rank
Member
elianda wrote:

About the bad sectors:
Of course a HDD can be registered in the BIOS with a lower CHS geometry. So if the Kalok is 676 / 4 /31 you can use any geometry where each value is less or equal the maximum given geometry. Of course one looses some capacity in accessing the drive.

That's what I tried to do by specifying 615 / 4 / 26 but that didn't work. So I'm guessing it was partioned / formatted with a different CHS.

When you mean trying with "less or equal the maximum given geometry", do you mean "any CHS combo that results in less of equal the total amount of sectors (C*H*S)" , or does it have to be "less or equal amount of cylinders" AND "less or equal amount of heads" AND "less of equal amount of sectors" ?

Because it ended up working with 977 / 5/ 17 but obviously 977 > 615 so I was surprised that this worked.

elianda wrote:
There is no quick way to find out: Try the disk on a more modern PC where you can set 676 / 4 / 31 and just try to read all con […]
Show full quote

There is no quick way to find out:
Try the disk on a more modern PC where you can set 676 / 4 / 31 and just try to read all content, e.g. with xcopy to nul. If there are no errors then this was the geometry used on partition creation.
If that does not work, go through the predefined BIOS profiles in your 286 and try the xcopy to nul until you succeed.

Sometimes it is not as obvious. There are cases where the original system had e.g. a 30 MB HDD which broke at some point. It was replaced with a 120 MB HDD but for compatibility reasons it was set to the same geometry as the 30 MB HDD.

Thx I'll give that a try next time (ended up formatting the drive now and seems to work ... was not really interested in the data here but good to know for a future project.

Let's say you have a 40MB hard drive that is configured in a system using 980 / 5 / 17. Does that mean that every bigger hard drive can be installed in that system with this CHS combo and it will work exactly as the 40MB one ?