see below, plz.
Dick
----- Original Message -----
From: "Loboyko Steve" <sloboyko(a)yahoo.com>
To: <cctalk(a)classiccmp.org>
Sent: Friday, June 07, 2002 8:57 AM
Subject: Re: [CCTECH] Interesting tidbit on 6502
Well, it isn't beyond the realm of possibility
that an
unimplemented op code or strange code could do
something bad to the states of a chip, potentially
overheating the i/o interfaces.
If you check the datasheets, I think you'll agree that's not very likely,
so
long as you don't violate the absolute maxima.
For example, the PII/III...etc are designed to shut
down certain subsystems when they aren't used (the
floating point, part, for example). Certain software
can force the processor ro keep everything on and get
the chip to its maximum temperature, possibly causing
a machine with marginal construction or marginal
internal/external thermal management to fail.
The Pentium-class processors of today, and, in fact, any of today's designs,
are so different from the old 6502 types, that it's not helpful to try to
extrapolate backward from the one technology to the other. 6502-based systems
were so simple and easy to design correctly, seldom requiring more than a
day's effort to design, though the drafting could take longer, that it's
unlikely any such concerns would arise.
Also, I was thinking that some of these "smart cards"
might be designed to self-destruct upon execution of
an unimplemented opcode. Maybe a military processor in
a dangerous device might be designed this way also, so
that the computer would crash and immediately
self-destruct before doing something, shall we say,
"unexpected".
... and what would they (smart-cards) have to do with the old 6502 or 6800?
So, I don't think my question was THAT unreasonable. I
am working with 75/76 dated chips marked "XC", also,
so I probably DO have the first externally available
silicon or nearly so.
If you stop and think about it, there's nothing that one instruction stream
will cause the chip to do that another wouldn't. If you allow yourself to
assume worst-case conditions of loading on the address and data bus pins,
among others, I don't think you'll have any trouble convincing yourself of
that. The output transistors are, effectively, resistors, when they're turned
on, so when the load increases, the voltage swing suffers accordingly. The
maximum specifications will clearly show you that the power dissipation in a
normally operating device will not cause enough dissipation to put out heat
sufficient to ignite the PCB, and certainly not the package itself.
The "XC" designation simply indicated that they were pre-production parts,
and, actually, the 'C' refers to the package, IIRC, not that they were
experimental or inadequately characterized. Some such parts were never
relieved of the XC designation, particularly some of the monitor-equipped
single-chippers. An example would be the XC 6801L1, which was a 6801L-1 with
the LILBUG monitor in ROM, and the XC68HC705K1, though that didn't have a
monitor program in it which was the windowed ceramic 16-pin part, however, and
was never used in production due to its high cost ($45-$70 depending on
quantity and source).
There were instructions in the 6502 (note that I keep coming back to that one,
since that's what the thread is about) that were "unimplemented" and could,
if
encountered in the course of an otherwise normal run, cause a running program
to go astray, resulting in a "freeze-up" of the system. If you let a 6502 run
long enough, it might get hot, too, if not provided with adquate air
circulation. The same, of course, is true of any NMOS part, including the
680x series from MOT. Hot, BTW, has several sets of definitions, but, from a
purely pragmatic standpoint, if you lick your finger and then touch the part,
and it sizzles, it's warm, and perhaps out of spec. If you touch the part and
it sizzles BEFORE you lick your finger, then it's HOT! They didn't make
Mil-spec 6502's so that's definitely out of spec. Now, if it's hot enough to
cause the solder to come loose, that's really, Really, REALLY hot. Lots of
the parts would quit before they got that hot. If they quit, they'd cool off
again.
I've seen very few machines "halt and catch fire" without the aid of a
hardware failure of some sort. One example was a Wang 2200 MVP which had an
MOS memory board's clock driver short between the bipolar 12-volt rails, and
quickly caught the PCB on fire, allowing flames and thick black smoke to
emanate from the top of the open cabinet. It STANK!
--- Richard Erlacher <edick(a)idcomm.com> wrote:
> I don't see an HCF in the Mot listings of their
> instruction set.
>
> I've heard about this fiction over several decades
> now, and, surely, it must
> be clear to you that there's no way the
> microprocessor can cause that effect
> without the aid of external hardware.
>
> We used to joke about a BEO instruction (branch and
> execute operator) but I've never seen the effects of
> that one either.
>
> Dick
>
> ----- Original Message -----
> From: "Loboyko Steve" <sloboyko(a)yahoo.com>
> To: <cctalk(a)classiccmp.org>
> Sent: Thursday, June 06, 2002 11:34 PM
> Subject: Re: [CCTECH] Interesting tidbit on 6502
>
>
> > I'm building a 6800 machine right now and I was
> > wondering about this "Halt and Catch on Fire"
> > instruction. Is this for real. This is a serious
> > question. Is there actually an instruction that
> will
> > overheat the chip?
> >
<snip>