[comp.sys.ibm.pc] How did this program burn out two monitors?

willis@violet.berkeley.edu (Willis Johnson) (05/24/88)

I recently compiled a program that is supposed to do graphics on 
a Hercules graphics adapter.  I've used a similar routine before,
and I would have sworn there was nothing wrong with the software.
Maybe the files got corrupted.  When I ran the .exe file, my monitor
made a high-pitched whine, then the power light went off, and a 
crackling noise came out of the back until I pulled the power cord.
Curious about whether this was a coincidence, I took the program
to work and tried it on an extra monitor I had there.  The second 
monitor burned out too!  I thought it was impossible to damage my
monitor and adapter with software.  Does anybody have any ideas 
what caused this?  I'll post the .exe file and source (in C) to 
any brave or curious souls who request them.  

The hardware:
	1st time:  homebrew PC clone with generic Hercules clone card
		   Quimax DM-15 amber monitor.

	2nd time:  Leading Edge Model D, "turbo" with built in
		   Hercules compatible adapter, Quimax DM-14
		   amber monitor (an earlier version of the DM-15).

Neither video adapter was damaged.  Both monitors are DEAD.  

	Willis Johnson
	willis@violet.BERKELEY.EDU
	(415) 548 - 3023

billo@cmx.npac.syr.edu (Bill O) (05/24/88)

In article <10244@agate.BERKELEY.EDU> willis@violet.berkeley.edu (Willis Johnson) writes:
>I recently compiled a program that is supposed to do graphics on 
>a Hercules graphics adapter.  I've used a similar routine before,
>and I would have sworn there was nothing wrong with the software.
>	willis@violet.BERKELEY.EDU

There is a good chance that the program changed the system bits that
control the scan rate of the signal going to the monitor.  In my
(limited) understanding of these things, I believe that software can
select either 50 or 60 Hertz scan rates.  I have definitely heard that
putting the wrong scan rate into a monitor can cause it to burn-out
(complete with smoke, sound effects, even fire) -- some people have
managed to do it by accident just by poking around in memory.

One (expensive) way to insure yourself against this is to buy one of
the so-called multi-synch or multi-scan monitors -- the kind that
switches scan rates automatically to match the incoming signal.
The watch word here is *automatically*. If the scan rate is changed
by a switch on it somewhere, there's no protection. Better check
the specs carefully if you contemplate actually buying one of
these things.

Alas, this is another example of how seemingly harmless computer
hardware can potentially injure people. Over the years there have been
igniting tape-drives, ballistic disc drives, radiation hazards, toxic
chemicals, and other dangers. Maybe your should submit your experience
to comp.risks.

Bill O'Farrell, Northeast Parallel Architectures Center at Syracuse University
(billo@cmx.npac.syr.edu)

jbn@glacier.STANFORD.EDU (John B. Nagle) (05/24/88)

       This is an old known bug.  You can burn out the IBM monochrome
monitor by stopping the horizontal sweep while keeping everything else
running, and the Hercules card gives you enough control to do this
under software control.  The video chip lets you select the horizontal
and vertical sweep rates independently, and zero rates are possible.
However, the horizontal sweep is used as the oscillator for a switching
power supply, as is typical in TV circuits, and with the sweep rate at
0, DC flows through a coil with high inductance but low resistance,
producing an excessive current that burns out the coil.

       Part of the problem is that the IBM monochrome monitor is a design
lifted from an earlier, pre-PC product line, the IBM Displaywriter, and in
that product, there was no potential vulnerability of this type.

jbn@glacier.STANFORD.EDU (John B. Nagle) (05/24/88)

In article <10244@agate.BERKELEY.EDU> willis@violet.berkeley.edu (Willis Johnson) writes:

>The hardware:
>	1st time:  Quimax DM-15 amber monitor.
>	2nd time:  Quimax DM-14 amber monitor.

     Well, you can't complain it isn't IBM compatible.  Burns up just like
the IBM one.  

					John Nagle

wtm@neoucom.UUCP (Bill Mayhew) (05/24/88)

If you tinker with the registers in the 6845 CRT controller chip on
the video board, you can program in a horizontal scan rate that
will overheat the power supply in the monitor.  The reason being
that a monochrome monitor is designed to only work within a very
narrow range of horizontal frequencies.  The problem seems to come
from accidentally programming a 6845 on a herc display with values
that are appropriate for a CGA monitor.  Such a mistake is pretty
easy to make whilst tinkering with graphics programming and
accidentally using the wrong setup from a library.  Doing herc
graphics with Borland's BGI system seems to be pretty safe, as I
still have my herc monitor intact.

Several people reported that a screen-saver program called
"BURNOUT" fried hercules _boards_, rather than the monitor.  This
surpirses me, but several people were quite emphatic that it was
the board that went south.

--Bill

sleat@ardent.UUCP (Michael Sleator) (05/25/88)

(Apologies if this is excessive detail.)

Typically, the horizontal scan circuit in a video monitor uses a "flyback"
technique in which the horizontal output transistor is turned ON to cause
the beam to sweep from left to right, and turned OFF to allow the magnetic
fields in the yoke and flyback transformer to collapse, quickly returning
the beam to the left edge.  During this time a pulse of, say, 400 to 600
volts appears on the collector of the output transistor.  If, in the middle
of this pulse, you attempt to turn the transistor back on, there will not
be sufficient base drive to saturate the transistor.  The result is extremely
high power dissipation which turns the transistor junction into a puddle of
silicon in a matter of microseconds.  A well designed monitor will not allow
the sync input to change the phase of the horizontal oscillator so abruptly
that this condition can occur.

The moral is that you don't have to set the horizontal frequency to zero
to cause a problem with some monitors.  Simply glitching the horizontal
sync in just the right manner is enough.  In fact, I'm a little skeptical
that turning off horizontal sync could do it.  Most monitors have a horizontal
oscillator that simply free runs in the absence of sync, and even those that
don't seldom have direct coupling to the horizontal output transistor, so
it shouldn't be possible to just turn the transistor on and leave it sitting
there in that state.  After all, if your product (the monitor) self destructs
if it's powered up without drive signals, it's very difficult to even build
it and get it out the door.

Of course, setting that register to 0 in the crt controller chip may in
fact produce a maximum frequency signal, rather than DC, which might wreak
havoc by the mechanism described above.

I vaguely recall rumors of a "letter bomb" program that blew up those silly
Commodore machines with the toy keyboards, way back when.  It zapped the
monitor in precisely this fashion.


				Michael Sleator
				...!uunet!ardent!sleat
				...!hplabs!ardent!sleat

brooks@lll-crg.llnl.gov (Eugene D. Brooks III) (05/25/88)

In article <17460@glacier.STANFORD.EDU> jbn@glacier.UUCP (John B. Nagle) writes:
>       This is an old known bug.  You can burn out the IBM monochrome
>monitor by stopping the horizontal sweep while keeping everything else
>running, and the Hercules card gives you enough control to do this
>under software control.  The video chip lets you select the horizontal
>and vertical sweep rates independently, and zero rates are possible.
>However, the horizontal sweep is used as the oscillator for a switching
>power supply, as is typical in TV circuits, and with the sweep rate at
>0, DC flows through a coil with high inductance but low resistance,
>producing an excessive current that burns out the coil.
This is GREAT, I have been looking for a really good idea in PC viruses,
and THIS IS IT!

billo@cmx.npac.syr.edu (Bill O) (05/25/88)

In article <17460@glacier.STANFORD.EDU> jbn@glacier.UUCP (John B. Nagle) writes
>       This is an old known bug.  You can burn out the IBM monochrome
>monitor by stopping the horizontal sweep while keeping everything else
>running, and the Hercules card gives you enough control to do this
>under software control.  The video chip lets you select the horizontal
>and vertical sweep rates independently, and zero rates are possible.

Well, looks like I was close.  I had said:

>I believe that software can select either 50 or 60 Hertz scan rates.
>I have definitely heard that putting the wrong scan rate into a
>monitor can cause it to burn-out

And went on to suggest that a multi-synch monitor might be immune.
Now I'm not sure if it is -- can it survive the horizontal sweep rate
being reduced all the way to zero?  If not, then what is the benefit
of a mult-synch monitor at all? (They sure are expensive.)

J.B.N goes on...
>... the horizontal sweep is used as the oscillator for a switching
>power supply, as is typical in TV circuits, and with the sweep rate at
>0, DC flows through a coil with high inductance but low resistance,
>producing an excessive current that burns out the coil.

Now I'm wondering why the monitor doesn't burn out when it is
turned-on before the pc (i.e. before there is a sweep signal at all).
Perhaps with the sweep rate set at zero, the voltage on the synch line
is kept high (positive or negative?)  -- as if it were at the
beginning of a sweep -- instead of zero. That voltage would then
put dc current through the coil. Hmmm.. Am I close?

Bill O'Farrell, Northeast Parallel Architectures Center at Syracuse University
(billo@cmx.npac.syr.edu)

wheels@mks.UUCP (Gerry Wheeler) (05/25/88)

In article <366@ardent.UUCP>, sleat@ardent.UUCP (Michael Sleator) writes:
> In fact, I'm a little skeptical that turning off horizontal sync could
> do it.  [...] After all, if your product (the monitor) self destructs if
> it's powered up without drive signals, it's very difficult to even build
> it and get it out the door. 

That's true.  Have you noticed, though, that IBM's monochrome monitor
gets its power directly from the system unit? As soon as you turn off
the computer (and the drive signals) the monitor is turned off too.  I'm
not sure about the period immediately after power on, but I seem to
recall that the BIOS initializes the video hardware tout suite. 

-- 
     Gerry Wheeler                           Phone: (519)884-2251
Mortice Kern Systems Inc.               UUCP: uunet!watmath!mks!wheels
   35 King St. North                             BIX: join mks
Waterloo, Ontario  N2J 2W9                  CompuServe: 73260,1043

nelson_p@apollo.uucp (05/25/88)

>>The hardware:
>>	1st time:  Quimax DM-15 amber monitor.
>>	2nd time:  Quimax DM-14 amber monitor.
>
>     Well, you can't complain it isn't IBM compatible.  Burns up just like
>the IBM one.  
>
>					John Nagle

   This is pretty scary.  I have a Leading Edge Model 'D' 
   with the regular Leading Edge amber monitor and I do
   a lot of experimenting with graphics.  Are the Leading
   Edge monitors also vulnerable to this?  How can I tell?
   Is there any way to prevent this problem?
 
                                    --Peter Nelson

larry@sgistl.SGI.COM (Larry Autry) (05/25/88)

In article <10244@agate.BERKELEY.EDU>, willis@violet.berkeley.edu (Willis Johnson) writes:
> I recently compiled a program that is supposed to do graphics on 
> a Hercules graphics adapter.  [portion deleted] When I ran the .exe file, 
> my monitor  made a high-pitched whine, then the power light went off, 
> and a  crackling noise came out of the back until I pulled the power cord.
> 
I heard about this type of trojan a couple of years ago.  I'm glad I
haven't used it though.  

-- 
					Larry Autry
larry@sgistl.sgi.com
       or
{ucbvax,sun,ames,pyramid,decwrl}!sgi!sgistl!larry

wb8foz@cucstud.UUCP (David Lesher) (05/26/88)

those above and others wrote:
>>       This is an old known bug.  You can burn out the IBM monochrome
>>monitor by stopping the horizontal sweep while keeping everything else
>>running, and the Hercules card gives you enough control to do this
>>under software control.  
>Now I'm wondering why the monitor doesn't burn out when it is
>turned-on before the pc (i.e. before there is a sweep signal at all).
Well you see, it can and will.
Did you ever wonder why IBEAM had that strange power plug on the
mono monitor??
If you take away the horiz. SYNC (not sweep, which is a
internal monitor function in a 'dumb' monitor) the unit should
'free run', the way your boob tube does between {active}
channels. Well, as I heard the story, with the sweep circuit in the
5150 {or whatever # it had}, the horiz. oscillator stalled, the
moment sync disappeared.
Instant Smoke
Anybody else would be tempted to fix the oscillator, but IBEAM
instead made the monitor plug ONLY into the PeeCee, and made
the outlet on it switched with CPU power.
But then the CGA monitor drew too much current for the switch
in the PeeCee, so it had to have a regular cord. (Its design
was TV based, I suspect, so it had to free run)
Why do TV sets/monitors smoke when you kill the horiz drive, you may
well ask. In a circuit trick dating back to the earliest
designs, the retrace time (the big burst of deflection current
to pull the beam back from the right side of the tube to the
left {whilst the electron beam is 'blanked'}) is used [via
another winding] to supply the ~10kv+ high voltage. That
voltage is what the picture tube needs to pull the electrons
up to splat on the face of the tube, and light up in disgust
at their fates (;-}). So -- lots of watts flow through that
horiz circuit, and if it get constipated, stand back.

haugj@pigs.UUCP (John F. Haugh II) (05/27/88)

In article <10244@agate.BERKELEY.EDU>, willis@violet.berkeley.edu (Willis Johnson) writes:
> I recently compiled a program that is supposed to do graphics on 
> a Hercules graphics adapter.  I've used a similar routine before,
> and I would have sworn there was nothing wrong with the software.
> Maybe the files got corrupted.  When I ran the .exe file, my monitor
> made a high-pitched whine, then the power light went off, and a 
> crackling noise came out of the back until I pulled the power cord.
> Curious about whether this was a coincidence, I took the program
> to work and tried it on an extra monitor I had there.  The second 
> monitor burned out too!  I thought it was impossible to damage my
> monitor and adapter with software.  Does anybody have any ideas 
> what caused this?

it sounds as though your program changed the mode of the display
adapter to one which was incompatible with your monochrome display.
a number of cheap hercules adapters which i have seen also include
a CGA compatible mode, which of course, may also require an RGB
monitor to operate.

as someone who has done this to a monitor, i can assure you that
the possibility of ruining a monitor with software, courtesy of an
over anxious display adapter, is quite real.  you only have a few
seconds, so nailing the power switch is not a viable option.  you
may not have enough time ...

if you are considering buying a new display adapter, i would
strongly recommend purchasing one which did not have software
selectable monitor options, unless there was also a method of
disabling this option.  being able to switch monitors with software
seems like a good way to turn an expensive monitor into an expensive
pile of trash.

- john.
-- 
 The Beach Bum                                 Big "D" Home for Wayward Hackers
 UUCP: ...!killer!rpp386!jfh                          jfh@rpp386.uucp :SMAILERS

 "You are in a twisty little maze of UUCP connections, all alike" -- fortune

jiml@cadnetix.COM (Jim Lewczyk) (05/27/88)

In message <10244@agate.BERKELEY.EDU>, willis@violet.berkeley.edu
(Willis Johnson) reports:

>The second 
>monitor burned out too!  I thought it was impossible to damage my
>monitor and adapter with software.  Does anybody have any ideas 
>what caused this? 

I have heard from my cronies of the existance of the rare 
HCF (Halt -- Catch Fire) instruction in some IBM PCs.  The 
condition, if I remember correctly, was caused by the horizontal 
sync pulses (or was it the vertical?) not being generated either 
because the video adaptor was halted or was never initialized 
(the Halt part).  

Normally, this would not be a problem because the monitors have 
internal oscillators which simply run unsynchronized, but in 
this case the sync pulse to the monitor was stopped in mid pulse,
ie, ON, and the internal oscillator was simply stopped.  The 
drive transistors for the horizontal oscillator are heat sinked, but
even so, they are not designed for DC operation, so they burn out (the 
Catch Fire part).

I would not think this was possible if the monitor makers took the 
minor precaution of AC coupling their sync inputs, but it would appear 
that even this protection went the way of the cost cutters.
 James Lewczyk,  Cadnetix Corp.          Internet: jlew@cadnetix.com
 5775 Flatiron Pkwy, Boulder, CO 80301   UUCP: cadnetix!jlew
                                         {uunet,boulder,nbires}!cadnetix!jlew
"Give me one good reason why I should be rational!" 

jcmorris@mitre-bedford.ARPA (Joseph C. Morris) (05/27/88)

In a recent article willis@violet.berkeley.edu (Willis Johnson) writes:
>                              When I ran the .exe file, my monitor
>made a high-pitched whine, then the power light went off, and a 
>crackling noise came out of the back until I pulled the power cord.

I don't have any experience with the Hercules board, but it's likely
that you clobbered one of the registers which controls the oscillators
which drive the deflection circuits in the monitor.  The anode voltage
(the really high voltage -- above 20KV in color displays) is derived
from the horizontal deflection circuits, so if you scribbled on the
registers which control horizontal drive you could make the circuit
run in a manner which could cause troubles.

A few packages I've seen include warnings in their documentation that you
need to select the proper video driver or you could damage the display.
You would think that the designers would include protection against 
likely damage, but I guess that's too much to ask...

wtm@neoucom.UUCP (Bill Mayhew) (05/28/88)

IBM did contract a japanese CRT manufacturer to make the CGA
monitor.  It is also quite true that the CGA monitor's function is
heavily based on NTSC-like tv technology.  IBM, being IBM though,
decided to make life nasty for would-be cloners of the CGA.  IBM
specified that the hoziontal sync should be positive going, rather
than negative going.  While it would be realtively easy for a
cloner to flip the sync polarity needed, it gave IBM several months
as opposed to several weeks lead time with an exlusive market, thus
assuring sales of their own monitor.  From a technical standpoint
there is no reason to have used positive sync, other than to be
nasty.

Since the MDA monitor was only  supposed to be designed to display
text, IBM probably felt that no precautions to prevent goofy scan
rates was necessary since nobody other than the ROM BIOS would be
programming the 6845 CRT controller chip.  We all know about that
assumption! :-).  Hercules brewed up a minor storm when they
released their board that added graphics as a possiblity for the
MDA monitor.

--Bill
  wtm@neoucom.UUCP

jbn@glacier.STANFORD.EDU (John B. Nagle) (05/29/88)

      As far as I know, this problem only occurs with the IBM Personal Computer
Display (the green screen monochrome monitor) and some overly faithful clones
thereof.  The IBM Personal Computer Display is an old design, lifted from the
IBM Displaywriter product line in the early days of the IBM PC.  The
Displaywriter wasn't user-programmable, and thus not vulnerable to abuse by
user programs.

      There's nothing at all mysterious about this problem.  It's well 
understood, and has been written up in the trade press, although it's been
a while, since this display is old.

					John Nagle

henry@utzoo.uucp (Henry Spencer) (05/29/88)

> if you are considering buying a new display adapter, i would
> strongly recommend purchasing one which did not have software
> selectable monitor options...

Actually, what you really want is a monitor which cannot be blown out by
software misbehavior.  Believe it or not, there are such.  In fact they
are the norm everywhere except in the PC world.  Another wonderful
contribution to humanity by IBM... :-[
-- 
"For perfect safety... sit on a fence|  Henry Spencer @ U of Toronto Zoology
and watch the birds." --Wilbur Wright| {ihnp4,decvax,uunet!mnetor}!utzoo!henry