I ran into a really weird situation yesterday.
I was testing a bunch of old video cards in my Windows 98SE test system (440BX, PIII 850, storage is a 16GB mSATA SSD converted to IDE), and when I tried to boot with a Diamond Stealth64 Video (Trio64V+ with MPEG audio out jack) the system blue screened. After rebooting I was getting errors about some specific system files being missing, but was still able to use the command prompt. I rebooted again and it froze at the POST screen. This was odd, so I took the card out and saw that it had one tiny bent leg on the main graphics chip and it was contacting the one next to it. So, I used a needle and straightened that out. It passed POST just fine now but I still had the missing file errors at startup.
This wasn't good, but it also wasn't a big deal. The way I run my 98SE test bench is that I have the system boot to command prompt only, and I have about a dozen different Windows folders, all renamed to whatever hardware they are set up for... like win_v3 for Voodoo 3 cards, win_riva for Riva 128 etc. Each Windows folder has a batch file that runs at start up to tell me which one is loaded, so, just as an example... if I had previously tested a Voodoo Banshee but I now needed to test some sort of common VGA card with built in win9x drivers and no 3D acceleration, I would do this:
ren windows win_ban
ren win_vga windows
win
And that's it... Windows will load and often times it doesn't even act like any hardware has changed because the current card uses the same driver as whatever that installation was previously set up for. The renaming also happens instantly because no copying\moving is involved. This is a wonderful setup and has made testing cards so much more reliable since I don't have to worry about conflicting drivers and software.
Sooo... long story short, my win_vga folder seemed to be toast. After renaming a different Windows folder and rebooting the missing file errors were gone. I could now boot with the Stealth64 with no issues, so the card was fine after fixing that leg... but what caused those file errors? I dug into the old windows folder (now renamed win_BAD) and I started scrolling through the Windows folder and sure enough, there it was. "DBLBFB.sys"???? Wow... yeah that's a problem. Also noticed some other files and executables with misspelled filenames and with generic icons rather than the ones they should have had. Holy cow, that one blue screen caused Windows to corrupt and rename important files from the Windows folder??? Why was it even writing those files in the first place???
Again, this isn't a huge issue because I can just copy a few things I need out of that folder, delete it and make a new one from "win_orig" or "win_bak" (very handy to have these). But I find it baffling that a shorted leg on a VGA card could allow the card to actually pass POST and get to the DOS prompt, and yet was capable of crashing Windows 98 in a way that made it rename some random system files. I'm so so SO glad that modern versions of Windows aren't this fragile\suicidal.
EDIT: After thinking about it a little more, is it possible that the pins that were touching were something related to addressing or other system resources and this caused the video card to be sharing\interfering with the resources used by the storage controller? I can't think of any other explanation.
EDIT2: Wow, it's crazy how easy it is to find this information online.
http://www.bitsavers.org/components/s3/DB018- … rator_Jul95.pdf
According to the pinout for the Trio64V+ chip, sure enough, the pins that were shorted were AD29 and AD28, which are labeled as "Multiplexed Address/Data Bus". I bet that was the issue then. I can't believe this is the first time I've had this happen. I have tested hundreds of cards over the past 5-6 years alone, and I've repaired damage on many of them and never run into anything like this before.
Now for some blitting from the back buffer.