comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <eachus@mitre.org>
Subject: Re: Self destructing computers.
Date: 1999/08/18
Date: 1999-08-18T20:11:14+00:00	[thread overview]
Message-ID: <37BB1446.B8328C18@mitre.org> (raw)
In-Reply-To: 37BABDC5.F12A8105@pwfl.com



Marin David Condic wrote:

> I am reminded of an HP programmable calculator which allowed the user to put
> in a sequence of commands to be executed at power-up. A friend of mine had
> one and thought one day "Gee. I wonder what would happen if I put the 'off'
> instruction into the power-up sequence?" The answer to that question was:
> "You get to send your calculator back to Hewlet Packard to have them reset
> the EEPROMs so you can once again turn on your calculator."

    Everyone, I assume, knows the story of the "halt and catch fire"
instruction in the Heath 19.  You could set the horizontal sweep
frequency to zero.  Putting DC through the flyback transformer let out
all the magic blue smoke.  Not many know of a similar problem in the IBM
7094.  This was a $2 million dollar computer back in the early sixties
that had a word of addressable core memory inside the CPU.  These "sense
registers" were setable from the front panel, and provided a neat
power-up feature.  You loaded a transfer instruction to the bootstrap
routine in the sense registers, and when the machine was started it read
the sense registers as an instruction, and away you went.  (For you
young'ens, core memory retains data forever if the power is off, unlike
RAM.)

     What if you put a "Halt and transfer" instruction in the sense
registers?
No problem, reset the sense registers using the front panel and hit
start.  (Incidently, so far everything applies as well to the earlier
7090.)  In a 7090, indirection took an extra cycle.  The computer would
halt, read the address from the instruction, and then do the
indirection.  But, in the 7094, there was one slight difference.  The
7094 was faster both in clock speed and in the number of clock cycles
used for some operations.  (Anyone familiar with digital design will
understand that they triggered on both the rise and fall of the clock,
and the halt occured at the fall.)  The halt occurred after reading the
address but before loading it into a register.  So if you halted the
machine and changed the sense registers, the first thing that happened
after the halt was the write back of the data location read in the
indirection.  (Core memory like DRAM, must be rewritten after reading.)
Next the completion of the indirection loaded the new address into the
address register and transferred there.  Oops!  No matter what you did,
executing an "HTR* *" instruction in the sense registers converted the
machine into so much dead weight until the IBM service engineers showed
up and erased the sense registers with a degausser or replaced the
board.  (An HTR* * was not quite as deadly in main memory, since there
was a pull switch with a cover on the control panel to erase main
memory.)

     Of course there was a very early enginnering fix applied to fix
this, so you had to have a low number machine to have ever run into it. 
MIT had two, one for Project MAC.

-- 

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...




  reply	other threads:[~1999-08-18  0:00 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-08-09  0:00 Ada/ Career Position/ Exceptional Opportunity Tom Gugger
1999-08-09  0:00 ` Marin David Condic
1999-08-09  0:00   ` David C. Hoos, Sr.
1999-08-09  0:00     ` Marin David Condic
1999-08-09  0:00       ` David C. Hoos, Sr.
1999-08-09  0:00         ` Larry Kilgallen
1999-08-09  0:00   ` David F. Harrison
1999-08-10  0:00     ` Ted Dennison
1999-08-16  0:00       ` Ft.W. jobs was " Suz
1999-08-17  0:00         ` Marin David Condic
1999-08-17  0:00           ` Brian Collins
1999-08-18  0:00             ` Marin David Condic
1999-08-18  0:00               ` Robert I. Eachus [this message]
1999-08-18  0:00           ` Suz
1999-08-19  0:00             ` Marin David Condic
1999-08-10  0:00     ` Marin David Condic
1999-08-10  0:00     ` Richard D Riehle
1999-08-10  0:00       ` Jeff Carter
1999-08-09  0:00   ` Jerry Petrey
1999-08-09  0:00   ` Larry Kilgallen
1999-08-09  0:00     ` Marin David Condic
1999-08-09  0:00     ` Ted Dennison
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox