Zum Inhalt springen

4.77 MHz: The IBM PC Ran on a Television Crystal

Zusammenfassung

The IBM PC’s processor ran at exactly 4.77 MHz — a speed chosen not for computational performance but to save money. IBM built the machine around a single cheap, mass-produced 14.31818 MHz crystal — the standard oscillator used in every NTSC color television. Dividing it by 3 produced the 4.77 MHz CPU clock; dividing it by 4 produced the 3.579545 MHz color burst the CGA card needed to generate a TV-compatible video signal. One commodity TV part served both the processor and the video circuitry. The choice constrained IBM-compatible PC performance for years and made the 8 MHz and 10 MHz clones that came later feel dramatically faster.

One Crystal, Two Jobs

When IBM began the project that would produce the IBM PC in 1980, the design philosophy was to use cheap, off-the-shelf parts wherever possible. The 14.31818 MHz crystal was about the cheapest precision oscillator on the planet: it was produced by the millions for color televisions, because NTSC video is built around it.

The Color Graphics Adapter (CGA), designed to drive both RGB monitors and ordinary TV sets, needed a 14.31818 MHz pixel clock to generate an NTSC-compatible signal — the color burst frequency is exactly one quarter of it (14.31818 ÷ 4 = 3.579545 MHz). Rather than add a separate crystal for the CPU, IBM’s engineers fed the same 14.31818 MHz signal into the clock generator and divided it by 3, yielding 4.77272… MHz. That number was not optimized; it was simply what fell out of the arithmetic.

The NTSC color burst frequency, 3.579545 MHz, had been chosen in 1953 by the NTSC standards committee as 455/2 times the horizontal scan frequency. Because the whole television industry standardized on it, the 14.31818 MHz crystal that derives it was abundant and nearly free — which is exactly why IBM reused it.

The Performance Consequence

The Intel 8088 was rated for 5 MHz, and faster relatives followed (the Intel 8086 shipped at 5, 8, and 10 MHz in various configurations). Because 4.77 MHz was a byproduct of dividing the TV crystal rather than a deliberate target, the IBM PC ran a few percent below even its own CPU’s rating from the day it launched.

This mattered less than it might seem in 1981, when the software being run on the PC — early spreadsheets, word processors, BASIC programs — was not particularly demanding. It mattered more as the decade progressed and programs became more computationally intensive. The IBM PC/AT (1984) used the Intel 80286 at 6 MHz; the jump from 4.77 to 6 MHz felt significant to users of the era. Third-party “turbo” PC clones ran at 8 or 10 MHz, and speed tests comparing turbo to standard mode were a fixture of early personal computing journalism.

The IBM PC and Its Open Architecture

The choice of the 4.77 MHz 8088 was not IBM’s only constraint-driven design decision. The full story of the IBM PC — including Don Estridge’s 12-person team, the deliberate use of off-the-shelf components, and the decision to publish the BIOS specifications — is covered in The IBM PC. The frequency choice is a representative example of the ways in which cost-driven parts reuse, not engineering optimization, shaped the machine that defined personal computing for a generation.

The 4.77 MHz speed became a de facto compatibility standard. Software that performed timing loops — games that used CPU cycles to control animation speed, or BIOS routines that measured elapsed time by counting instructions — assumed 4.77 MHz. Running this software on a faster clone at 8 or 10 MHz caused timing failures: games ran too fast, BIOS time measurements drifted. This led to the “turbo button” on many clones — a switch that dropped the clock speed from the faster native speed to 4.77 MHz for compatibility with timing-sensitive software.

The Legacy in the NTSC Color Palette

The CGA card’s pixel clock at 14.31818 MHz (4 × NTSC color burst) had an unintended consequence that became a visual signature of the IBM PC era. The CGA composite video output, when connected to a TV set rather than a dedicated RGB monitor, produced color artifacts that were not in the official 16-color palette. These artifacts appeared because the pixel timing created phase relationships with the NTSC color carrier that the TV decoded as colors. Programmers discovered they could exploit these artifacts to display colors beyond the official CGA palette on composite monitors — a technique used in many PC games of the early 1980s that were designed for the TV-connected IBM PCjr and Tandy 1000. The Microprocessor Revolution this machine embodied had constraints baked in at the frequency level.


📚 Sources