cjl@ecsvax.UUCP (Charles Lord) (03/04/85)
HCF was and is alive and well on the 6800. The instruction
(HALT and catch fire) is only an expression, and does not
make the chip burn as some have suggested. The code is really
a useful utility designed by the engineers at Motorola for
testing primative systems. The address counter merely increments
from 0000-FFFF repeatedly until reset. Although handy for
hardware repair, the code was a villan for many that learned
programming on the D2 or similar manual machines.
As the same engineers then went to form the company
MOS Technology (the inventer of the 6502), it is conceivable
that they hid the same instruction in the 65XX family.
Anyone who has studied ATE(Auto test equipment) principles
can readily undewrstand WHY such instructions exist!
(See- we still need a NET.DiGITAL!)
-Charles Lord
cjl@ecsvaxseifert@mako.UUCP (Snoopy) (03/15/85)
In article <796@ecsvax.UUCP> cjl@ecsvax.UUCP (Charles Lord) writes: > >HCF was and is alive and well on the 6800. The instruction >(HALT and catch fire) is only an expression, and does not >make the chip burn as some have suggested. The way I heard it (sounds like net.jokes, no?) was that there were some leftover opcodes which were set to "don't care" when the logic was designed. There was one of these that would cause the chip to get *real* hot if you managed to execute it, say, by executing your data. I suspect this is where the "halt and catch fire" thing got started. _____ |___| the Bavarian Beagle _|___|_ Snoopy \_____/ tektronix!mako!seifert \___/ If God had intended Man to Smoke, He would have set him on Fire. -the fortune AI project
jel@digi-g.UUCP (John Lind) (03/25/85)
The HCF instruction is not merely left-over microcode. It was built into
the chip ON PURPOSE for a first-line rejection test while the chips are
still on the wafer. The instruction causes the chip to increment the
address bus forever. This is a simple way of seeing if the chip is alive
at all. If it doesn't respond, it is marked dead on the wafer (the test
device has to supply proper power, ground, and reset signals first, of
course). The name comes from two things -- 1) since the chip only
responds to interrupts at instruction COMPLETION, and this instruction
never completes, it is like a halt, and 2) if you have a front panel
with LED's on it, it resembles something burning, if you have a good
imagination. The inspiration for the name comes from a long humorous
list of imaginary opcodes that I first saw in Sperry (then Univac) land
that included such goodies as the following:
EDPMB Execute Data Processing Manager and Branch
RST Rewind and Stretch Tape
PRI Print in Red Ink (this was funny at the time -- now
we do it regularly)
SSD Seek and Scratch Disk
SSP Seek Spindle
HCF Halt and Catch Fire
In fact, the 6800 gets no hotter when executing this instruction than
it does with any other. Dissapating 2W from a 40 pin chip, it gets
uncomfortably warm during normal operation. My authority is experience
and information from Motorola. It has been awhile since I did it, but
one of the TWO codes that used to cause that was, if I remember correctly,
D9. I seldom had to know, as I could usually achieve the desired effect
by simply jumping to random memory -- my chances were good of hitting one
of these -- maybe it was a data item near the start of a ROM, I don't know.
------
John Lind, Starfire Consulting Services
E-mail: ihnp4!umn-cs!digi-g!jel
USnail: PO Box 13001, Mpls MN 55414Cent.Mbeck%MIT-OZ@MIT-MC.ARPA (Mark Becker) (03/28/85)
Ah, yes.. the 6800 HCF. If I recall correctly, opcodes 9D or DD would start things running. There were probably others... not to mention all those "undocumented" opcodes which were nice to have around. In mid-1975 Popular Electronics carried a front page article about a machine MITS had just come up with using the 6800, called the Altair 680. In the stock system (kit) sold, the RESET switch was driven by the Bus Available line to the front panel. If the processor ran into HCF, the only way to reset the machine was to TURN IT OFF! Easy fix - cut the line from the switch to the buffered BA and connect it to ground. But it sure startled a few people... Mark Becker Cent.Mbeck%Mit-Oz@Mit-Mc -------