LockerGnomeTech news and nostalgia for today's technology professionals
Subscribe

Search

Retro

A PET command decoded MICROSOFT from bytes hidden after the sine table

Michael Steil’s disassembly separates a reproducible firmware trick from the colorful story attached to its authorship.

Chris lifting a floor tile to reveal a hidden gem beside a 1970s all-in-one computer, in purple hectograph
Illustration: LockerGnome

Commodore PET owners had a peculiar way to make Microsoft introduce itself. On BASIC V2, WAIT6502,1 displays the company’s name near the top left of the screen. The bytes were already there, waiting behind a mathematical table. A sine of the times, if you will.

Michael Steil’s disassembly and historical comparison traces the mechanism through early BASIC implementations. The interesting distinction is small but important: a machine doing a repeatable trick is evidence of the trick. A popular story explaining exactly who inserted it, and why, needs evidence of its own.

The PET command checks for the special address 6502, a number that also names the processor family. When the relevant path is triggered, the routine decodes a concealed string and writes the result into screen memory. The command therefore exposes something included in the interpreter rather than downloading a new message or discovering text in a user’s program.

The ten stored bytes sit after the coefficients used for sine calculations. Their order and encoding hide the plain company name from a casual read of the ROM. It is a compact place for a signature, with the decoding routine providing the missing instructions for reading it. Even the Easter egg had to live within the furniture already in the room.

Steil examines related BASIC versions to see which portions of the hidden material survive. That makes the technique useful for software archaeology: a peculiar sequence of bytes can help identify shared ancestry across programs whose visible presentation differs. The evidence becomes stronger when the code that uses the sequence travels with it.

The attribution is less tidy. Steil introduces a legend connecting Bill Gates, a disagreement with Jack Tramiel and a desire to prove Microsoft’s authorship. His analysis explicitly treats the motive and personal attribution as speculation. Repeating the legend as a confirmed confrontation would make the anecdote more dramatic by making the reporting worse.

For someone exploring an old machine, firmware revision belongs beside the command. “Commodore BASIC” covers more than the particular PET version demonstrated here. A command that works on one ROM can do something else, or nothing useful, on another. The exact image matters more than whether the case happens to wear the same logo.

A safe exploration could start with a documented ROM in an emulator, keeping the image identifier and the resulting screen together. That would let another person reproduce the observation and inspect the matching bytes. Anyone comparing versions should keep the raw files unchanged and record where each came from, so the comparison does not slowly turn into a collection of mislabeled souvenirs.

The hidden text gives preservation a detail that a screenshot of the BASIC prompt cannot carry. It also leaves a human question open: the surviving code can reveal where the signature is, while the person who placed it there has not been established by the bytes alone.

MICROSOFT! had been there all along.

More Retro

Every Retro story →