23

During years 1987-1988, VGA cards appeared and replaced slowly EGA ones. But for some time, home developers hadn't a lot of knowledge about how to program them.

The book "La Bible du Programmeur PC" (you should have its translation in each country) was the one I had, and it didn't gave a lot of information:
enough to know that programming it with assembly language was using modes and addressing latches registers. But the book warned: Beware! putting wrong values into them could damage your video card!

I remember it took me quite a year to succeed in programming it well enough
with that fear of damaging it following me all the time...

This is why, tens of years after, I'm willing to know: was it really possible to damage my VGA video card by outputting wrong values on its registers?

5
  • 7
    It's perfectly possible to damage hardware by writing wrong values to registers. I actually witnessed this for a TV output encoder, where writing a wrong value caused it to choose a pixel clock that was too high, damaging the chip. Similarly, early monitors didn't have protection against frequencies that were too high, so you could destroy the monitor. I don't know if there was a combination to do this to an early VGA card, but I guess it would depend on the card.
    – dirkt
    Commented Nov 23 at 4:27
  • I suppose if you damage the monitor badly enough, it could catch fire, and the fire might spread to the video card... Commented Nov 23 at 15:54
  • 1
    Vague recollection (so not an answer). On the original genuine VGA card, this was at least theoretically possible by programming the wrong clock values; on later clones it was not. It was also possible to damage some external analogue monitors (but this was a different issue).
    – abligh
    Commented Nov 24 at 15:48
  • 2
    I would also argue that the formulation Beware! putting wrong values into them could damage your video card! is standard lawyer/disclaimer language - no matter whether true or not; they could have thought that including it in the book might save the author from court claims if in a country where suing is popular...
    – AnoE
    Commented Nov 25 at 11:59
  • Anecdotal, but I wrote an undergraduate thesis that involved a lot of direct programming of those registers. I can assure you that I crammed all sorts of incorrect values into any number of VGA registers along the way, and nothing broke. Commented Dec 3 at 20:48

5 Answers 5

18

I don't think the answer is straight-forward, but I do think that there was some degree of "yes" buried in there.

For starters, it would depend on the video card that you were using. There were a number of manufacturers and not all VGA cards were created the same. Likewise, there were a number of CRT display manufacturers that were also not created the same.

The only potential for damage with video cards I've ever been aware of is based on driving a signal frequency that was out of spec, and that - as above - depends.

Standard VGA had a 31kHz output frequency, earlier display standards (such as Amiga, Apple, Atari) had a ~15kHz one, and later resolutions and standards increased this beyond the 31kHz; this is why we eventually had MultiSync monitors as an option. However, not all monitors were able to handle frequencies outside of what they were designed for. For example, I remember one CRT struggling to try and make sense of a higher frequency than it was rated for, and it ended up making strange whining noises while doing so. Of course, it also couldn't display the signal it couldn't understand, so a power-off or reboot followed quickly.

So what I imagine the warning was alluding to is the idea that you could tell some VGA cards to drive a non-standard signal frequency. Maybe some chipsets didn't care what value you provided them with (200kHz? Sure!) and supporting components possibly presumed that out-of-spec frequencies wouldn't happen. Of course, once you tie a video card and a display together that don't have protection from this kind of situation, things can happen that may damage either the video card or the display.

I can't say that I've ever seen something like this happen other than my experience above, though I'm sure if I let that whine continue long enough something would have burned out or failed.

5
  • 6
    It is conceivable that an invalid frequency to the display could result in reflected power back to the card that it was not designed to handle, burning out the line drivers.
    – Jon Custer
    Commented Nov 22 at 16:46
  • I guess that's the closest possible to an answer, given how wide the topic is.
    – Raffzahn
    Commented Nov 22 at 19:18
  • 6
    @JonCuster Could you explain what you mean by reflected power back to the card - preferably in electrical engineering terms instead of hand-waving? What power would reflect back and how? The analog lines are terminated with characteristic impedance of 75 ohms of the cable and the sync signals are logic level.
    – Justme
    Commented Nov 22 at 21:10
  • Another idea that came to my mind is - modern video cards have programmable BIOS chips in them, so flashing an invalid BIOS image could effectively brick them, even if no physical damage was present. Could something similar have existed for old VGA cards? I don't expect that they had a fully programmable BIOS, but perhaps some other kind of permanent settings or some such?
    – Vilx-
    Commented Nov 23 at 13:35
  • 2
    @JonCuster That makes no sense. VGA ports of this era couldn't tell whether something is plugged in, and they still can't for non-DDC sinks. They run fine into a complete open. The only thing is high frequencies can damage push-pull/totem pole output stages. That has nothing to do with reflection.
    – user71659
    Commented Nov 23 at 19:41
11

It might have been possible of course, but I have never before heard such a warning that you can damage a VGA video card by programming the card registers incorrectly. In a way, anything could be damaged if you program it incorrectly without taking some limitations into account. But I am unaware of such limitations in IBM VGA cards.

There are much more warnings about programming the card registers incorrectly, which makes it output a signal that could be dangerous to the monitor electeonics if it cannot handle it.

Back in the day of VGA being introduced, VGA monitors were fixed frequency monitors supporting only 31.47 kHz horizontal rate. The vertical sync support was wider, as standard VGA resolutions have either 70 Hz or 60 Hz nominal frequencies.

2
  • 3
    Can the wrong sync frequency really destroy a CRT monitor? has come up before on this site. I seem to remember another one from hot network questions; I don't think it's that since I don't see any upvotes from myself on anything on that one. Google also found Can a PET 2001 be physically damaged from BASIC? again about CRT damage. Commented Nov 23 at 3:50
  • 6
    @PeterCordes Back in the 1990s, I did manually program video registers (vs. standard values) to overdrive my monitor by (e.g.) 10% to get higher resolution/framerate. This worked ... For about a week ... Until I saw a puff of white smoke from the top of the monitor. The monitor needed to be replaced (and I just used the standard values after that :-). Commented Nov 25 at 4:09
10

It was not possible to damage any VGA video card by sending it bad data to its registers. It was possible, however, to damage your VGA monitor if you set timing registers that the monitor could not handle. This was a potential danger for any fixed-frequency monitor, such as the original IBM 8512 VGA monitor.

Later VGA monitors that could handle SVGA/VESA extended resolutions were "multisync" monitors, and had circuits that could attempt displaying atypical video modes, as well as shut down signal generation that the monitor could not handle. So multisync monitors cannot really be damaged by invalid VGA register programming. It's only the early fixed-frequency monitors you have to worry about. So if you're going to play with "tweak16b" (a common VGA video mode hacking tool in the 1990s), make sure you do so connected to a multisync monitor.

This was not a new phenomenon; it was possible to destroy some MDA (monochrome) monitors with invalid frequency combinations.

1
  • Yup, see my comment under Justme's answer. Commented Nov 25 at 4:14
7

Like the other answers, I don't know about the VGA card itself, but I do have personal experience with destroying a monitor with some kind of unexpected signal. In my case it was trying to use a PC monitor (21" Viewsonic) with a SUN Microsystems box (I do not remember if it was Sparc or UltraSparc).

It actually did work for awhile, but the monitor flat died within fifteen minutes of hooking it to the SUN box.

1

It must have been possible with "classic" VGA cards, the first ones, although I think it was much easier to damage the monitor than the graphics card itself.

On the other hand, with SVGA cards, the VGA, EGA, or CGA interfaces were emulated, so they were somewhat protected against out-of-range values, not to mention that they were connected to multisync monitors, which were more robust. It would therefore be very surprising if one could damage either the card or the monitor from an SVGA card programmed in VGA mode.

And in SVGA mode, the VBE interface was generally used to program them, which usually never exposes the "dangerous" registers, so there was little risk of burning out the card.

As a side note, I once damaged a recent video card by carelessly running overly "intense" CUDA code for too long (several hours straight). The card, despite active cooling, eventually overheated and was damaged. So, even in the modern era, one should ALWAYS be cautious when pushing a video card to its limits.

4
  • What would make a "classic" VGA card more susceptible to be damaged than "non-classic" VGA card, or an SVGA card? Or what would even damage any VGA card, as nobody has yet come up with a scenario where VGA card was damaged by programming registers incorrectly. VBE also did not exist on first SVGA cards. Yes with modern GPUs you can damage it with heavy use.
    – Justme
    Commented Dec 3 at 13:19
  • Early VGA cards exposed all necessary registers directly, interacting with the circuit itself. This made it possible to set incorrect values and burn out components - usually by using timings too fast for analog parts. However, monitors were more likely to be damaged. Emulated circuits have protections preventing out-of-range values, unlike primitive circuits. VBE is a standard that replaced proprietary SVGA systems, which had become unmanageable. Even modern, protected, expensive GPUs can burn out from misuse - imagine "old" hardware, cheaply made in China when "safety" was relative...
    – Wisblade
    Commented Dec 3 at 13:42
  • All VGA and SVGA cards have to expose their registers directly to interface with their hardware circuits directly. I bet you can e.g. program a Cirrus SVGA card to use faster memory bus than what the memory chips can handle and it won't work, but there is no definite method to do damage to a VGA card.
    – Justme
    Commented Dec 3 at 14:36
  • Don’t confuse a register where each bit maps directly to hardware with one read by an FPGA, ASIC, or internal CPU – it’s not the same. At all. Back then, many registers fed shift registers directly to control lines (serial or parallel), or to logic gates. Rapidly toggling values was a bad idea, especially if controlling a PLL or charging a capacitor, and worse if the datasheet said "X-bit values" but higher bits were still wired due to sloppy underspec hardware. And, AGAIN, please read my answer: "I think it was much easier to damage the monitor than the graphics card itself".
    – Wisblade
    Commented Dec 3 at 14:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .