Halt and Catch Fire - in Modern CPUs - Motorola 6800

Motorola 6800

The Motorola 6800 microprocessor was the first for which an HCF opcode became widely known. The 6800 HCF opcode is 0xDD. The opcode came from an article written by Gerry Wheeler (1952–2006) in the December 1977 issue of BYTE magazine on undocumented opcodes.

The opcode makes the processor enter a mode in which it continuously performs memory read cycles from successive addresses, with no intervening instruction fetches. The address bus effectively becomes a counter, allowing the operation of all address lines to be quickly verified. Once the processor has entered this mode, it is not responsive to interrupts, so normal operation can only be restored by a reset. It has been claimed that in some configurations, a 6800 CPU could actually cause the address lines to literally burn when placed in this mode. However, it is likely that the term "catch fire" is intended more as a metaphor for the unresponsive behavior of the CPU when placed in this state; there are no known examples of erratic behavior.

The HCF opcode is believed to be the first built-in self-test feature on a Motorola microprocessor.

The opcode is also present on the 6809.

Read more about this topic:  Halt And Catch Fire, In Modern CPUs