-----Oorspronkelijk bericht-----
From: Chuck Guzis
Sent: Wednesday, May 28, 2014 6:32 PM
To: General Discussion: On-Topic and Off-Topic Posts
Subject: Re: Catch and Halt Fire - Drama set in early days of personal
computing
On 05/28/2014 08:16 AM, Guy Sotomayor wrote:
If an instruction did an indirect memory reference and
the referenced
memory location had bit 15 set (which indicated further redirection) the
instruction won't complete until it fetches a word with bit 15 clear. A
bug
where a word refers to itself (with bit 15 set) or back further in the
chain
would result in an "infinite indirect loop". This was unbreakable since
interrupts are only processed at the completion of an instruction. A
reset
was the only way to break out of it.
If memory serves, there were more than one or two old systems where
infinitely looped indirect addressing was possible.
Were there any where looped "Execute" instructions were possible?
--Chuck
Long ago, I worked on SPERRY 1100 systems (1100/63 and 1100/72), and
was one of the very few people allowed to program MASM. Makes sense,
as I was one of the two EXEC experts (I could read the panic dump and
find out why the system crashed). As said, long ago ...
I remember the EX (execute remote) instruction. I wonder what would
happen if you EX to another EX instruction that EX'd the first EX. That
would cause a loop, I guess. But both systems that I worked on, the
system would not hang, just the CPU executing the EX code.
I also remember a dumb code error ... that caused the system to hang.
The only solution was "$!" from the system console (causes a boot!).
It was a production machine, so my boss was not too glad. My program
executed ER DED$ (IIRC), which permanently allocates a CPU to the
program. The mistake was that the ER (Execute Request) was in a loop ...
Ahh, fond memories still :-)
- Henk