VOGONS


First post, by dionb

User metadata
Rank l33t++
Rank
l33t++

I was half way through making a post asking for help when my final step to rule out everything possible actually worked. It was pretty farfetched though and I had exactly zero hits in Google on it, so I'll share it here for future reference.

Situation:
Digital Venturis 575
P75, SiS 5501 chipset, 8MB onboard RAM, S3 Trio64 onboard. Empty DS12887 RTC gave battery error at POST and of course lost settings when power went off.

Previously had a Seagate ST3660A 544MB HDD. After booting into BIOS and autodetecting HDD, it booted into an old Win95 install. However I needed that drive for something else (promised someone a 540MB HDD and the other one was riddled with bad sectors). Then put system away for a while.

This evening I wanted to get it ready for sale/donation/whatever to offload the damn thing. No luck. What didn't work?
- booting from HDD after autodetecting in BIOS.
- running fdisk from floppy after booting into DOS 6.22 - get an "Error reading fixed disk" error.
- booting into DOS 7.1 from floppy - just hangs after POST after briefly trying to access FDD.

Nothing I tried in terms of settings helped, I'd already removed all other hardware from the system, tried four different HDDs and two different known-good IDE cables.

So... what was it?

The damned RTC. I had a recent (2017 date code) DS12887 RTC lying around I had intended for another system I eventually wasn't able to use it in (DS1387 can't be replaced by DS128(8)7... so I got out the Dremel and did it the hard way with the DS1387), so stuck that in the Venturis. No more battery error, but more importantly, after doing the exact same settings in BIOS as before, DOS 7.1 did boot, DOS 6.22 fdisk did find the disk (and C: was there anyway) and I could boot from it.

Pretty odd that not having a working battery could have this effect, but I'm completely puzzled as to how it was able to boot with the ST3660A, despite the 1995-dated RTC being just as dead when that drive was in the system. Anyway, if you have a Digital Venturis or similar system and hit this sort of stuff, try a working battery first 😉

Reply 1 of 4, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

That's not RTC issue, strictly speaking. These chips also have some SRAM that serves to store the so-called CMOS settings. BIOS keeps HDD parameters in there so with the battery dead but the chip still present these settings will be there after a reset (but will fade once you power off). However with the chip missing completely it doesn't matter what you detect and set, that data is lost the moment you exit BIOS. So no HDD parameters will be available to DOS, fdisk and other programs will simply have nothing to work with.

Reply 2 of 4, by dionb

User metadata
Rank l33t++
Rank
l33t++
Deunan wrote:

That's not RTC issue, strictly speaking. These chips also have some SRAM that serves to store the so-called CMOS settings. BIOS keeps HDD parameters in there so with the battery dead but the chip still present these settings will be there after a reset (but will fade once you power off). However with the chip missing completely it doesn't matter what you detect and set, that data is lost the moment you exit BIOS. So no HDD parameters will be available to DOS, fdisk and other programs will simply have nothing to work with.

What you're describing there is the DS1387 Realtime RAMified, which had 4k SRAM onboard. Been there, done that with that one, but that's not the case with the DS128(8)7 here, which is just battery and RTC, with the actual CMOS somewhere else on the motherboard.

Also, the issues occurred with the old DS1287 with dead battery present in the system and working fine as RTC so long as it was under mains power. It most definitely did manage to keep settings such as boot sequence as long as power was connected.

Reply 3 of 4, by Deunan

User metadata
Rank Oldbie
Rank
Oldbie

Even the ancient Motorola MC146818A has 50 bytes of SRAM, and the DS1287 is a direct replacement. PC CMOS memory is up to 128 bytes, you don't need anywhere near 4kB until UEFI.

The somewhat newer 12887 is pin-compatible but has 64 more bytes of SRAM so a BIOS that expects to have ~114 rather than 50 bytes might over-write the first part and self-corrupt the HDD params table. So you can't substitute a 12887 with 1287+external battery, but it should work with another 12887 even if the battery in it is dead (so long it's not shorted and hasn't spilled).