VOGONS


First post, by digistorm

User metadata
Rank Member
Rank
Member

I just removed the CMOS from my 486 motherboard and replaced it with an external battery box. After I put the settings back in the BIOS, the BIOS hangs after the memory test and after a long wait it says: Hard disk(s) fail (20). According to some documentation (the documentation of my motherboard doesn't explain them) it means "HDD initialization error". On the bottom it says "Press F1 to continue" and when I do that it boots normally!
Also, if I change the layout from LBA to NORMAL, it doesn't give the error and loads the bootsector, but of course it fails to read the disk. Does anybody have a clue what the reason can be of this behavior?
I already cleared the CMOS, reseated the I/O and VGA card, that didn't help.
I wonder if there have been hidden settings from since it left the factory that aren't accessible through the BIOS setup.

Also, I have set my disk up as 1023 cyls, 64 heads, 63 sectors and LBA. But this aren't the autodetect values because they didn't work. But in this BIOS you can't change the values when you select LBA. So I selected NORMAL before, set the desired values and then changed back to LBA. I don't know why it worked before, but now it doesn't. Did I do something terribly wrong? And what would be the best way to setup a HDD of 2GB? I remember I did it this way because if DOS tries to read beyond cylinder 1023 it causes trouble. It wraps around or something eventhough the BIOS happily sets more then 16000 cylinders when you use autodetect.

Reply 1 of 5, by derSammler

User metadata
Rank l33t
Rank
l33t

Auto-detect and LBA would be the correct way if there only is LBA and NORMAL, but no LARGE. If that does not work (i.e. it's no longer booting), then you need to re-partition and re-format it. It was probably set up differently before.

You can not use NORMAL, as that is limited to 504 MiB (CHS 1024/16/63).

You get error (20) because you don't use the auto-detected values. That's required for LBA, as the translation does not work otherwise. You can only use CHS values that are supported by the translation of the drive and it most likely does not translate to 64 heads.

Reply 2 of 5, by digistorm

User metadata
Rank Member
Rank
Member

Okay, thanks. The strange thing is that I somehow set it up in the past with those parameters that are different from the auto detect values. I have no problem in reformatting the drive, but it would be a shame to do it for nothing.

To be clear: the bios also has a LARGE setting, but somehow I got it working in the past with the settings I posted above. I don’t remember exactly why (it was a while ago) but I remember that the BIOS insists on selecting more then 1023 cylinders with auto detect and LBA. I can also select LARGE, but is it possible that my HDD doesn’t support those parameters or that mode? (it is a 30-odd GB IBM hdd with the limit-to-2GB jumper set)

Reply 3 of 5, by derSammler

User metadata
Rank l33t
Rank
l33t
digistorm wrote on 2020-03-04, 15:05:

but I remember that the BIOS insists on selecting more then 1023 cylinders with auto detect and LBA

That's no problem at all, as the whole point of LBA is to translate CHS values to consecutive numbers. This is done by the BIOS, so the values coming from the drive must be used. Since DOS uses the BIOS for hard disk access, it will not run into any issues. The BIOS takes care of the correct translation.

If there is LARGE, you can use that as well (limit is 8 GB, CHS 1024/256/63). I mostly had trouble with the LARGE setting even on early Pentium mainboards however, so I normally avoid it. But whatever you settle on, you need to FDISK and FORMAT the drive using the new settings.

Reply 4 of 5, by digistorm

User metadata
Rank Member
Rank
Member

I tried LBA now with the auto detect function and it will load the bootsector, so I think I'm going to backup my files and repartition the drive with the different paramaters…
But if I may ask: is it possible that this BIOS doesn't properly support HDD's with more than 1023 cylinders? I remember I read something like that on this forum. Because I had a lot of trouble getting this drive to boot on this mainboard. It would fdisk and format correctly, but after transferring the system files it would never get past the loading of the bootsector.
The original drive of this system was 540 MB's and I could also put that one back, but it is kind of small to house DOS, Win3.11 and Win95 together with some games and music files.

Reply 5 of 5, by digistorm

User metadata
Rank Member
Rank
Member

Okay, I ran into the same problem as the previous time I tried to partition this disk. So I set up my BIOS to autodetect the drive, and it results in this setup:

IMG_7510.JPG
Filename
IMG_7510.JPG
File size
1.85 MiB
Views
461 views
File license
Fair use/fair dealing exception

But when I try to partition the drive, FDISK from Windows 95 sees the drive like it is 8 GB:

IMG_7511.JPG
Filename
IMG_7511.JPG
File size
1.57 MiB
Views
461 views
File license
Fair use/fair dealing exception

and OS/2 Warp, which I used the previous time to partition the drive, doesn't even recognise the drive correctly and refuses to create a partitior or sees only 95 MBs of it.
So previously I "winged" it with the config I posted in the opening post, but now my BIOS give a hard disk failure. Has anybody an idea what I could do to properly setup the drive?

Addition:
I tried setting up two partitions with the NORMAL option in the BIOS, but FDISK only sees 504 MBs of the drive, and when I run the speedsys test I can see speedsys only sees 1023 cylinders of the 16000+.

IMG_7513.JPG
Filename
IMG_7513.JPG
File size
1.48 MiB
Views
448 views
File license
Fair use/fair dealing exception

When using the LBA option after I partitioned the drive with the NORMAL option, FDISK says it sees 8 GB's again, but when I want to add a logical partition it can only be 8 MB's in size. The only way I got this working before was like I did it in the opening post, but after swapping out the CMOS battery the BIOS refuses to continue. This is really weird…