The HCF mnemonic originated as engineering humor but became real: opcodes $9D and $DD on the Motorola 6800 genuinely lock the CPU into a runaway memory-scan loop until reset.
Key Takeaways
Gerry Wheeler named the HCF opcodes himself in BYTE Dec 1977; Motorola’s docs left 59 of 256 6800 bit patterns undocumented, two of which walk the address bus as a 16-bit counter.
The behavior cannot be interrupted; only a reset or power cycle escapes the loop, making it a hard hang with a distinctive oscilloscope signature.
Motorola engineers internally called it HACOF and deliberately kept it because it doubled as a fast RAM scan during hardware bring-up, a documented “happy accident.”
The IBM System/360 catching fire from a bad opcode is the origin of the “catch fire” half; the 6800 itself did not actually burn.
The pattern extends to 6502 illegal opcodes, the Pentium F00F bug, and modern x86 CPU fuzzing, all exploiting undefined decode behavior.
Hacker News Comment Review
Commenters with real hardware experience corroborate the CRT-damage angle: halting a 6845 raster controller on a Commodore PET 4032 parks the electron beam, burning phosphors within minutes.
The IBM 360 fire story drew skepticism, with at least one commenter calling it an urban legend, suggesting the “catch fire” etymology may be more folklore than documented incident.
Discussion drifted to the AMC show and a current Apple TV sale rather than the hardware details, limiting deep technical thread development.
Notable Comments
@greenbit: Commodore PET 4032 with 6545 CRT controller: bad POKE stops raster scan, beam parks center-screen, phosphor burns off in minutes – real-world HCF-adjacent hardware damage.
@kens: Calls the IBM 360 fire story an urban legend, casting doubt on the literal origin of “catch fire.”