DELAYLINE

SITE GUIDE · GENERATIVE ASSETS Nº 214

How Delayline was made

A single-page instrument about EDSAC's mercury delay-line memory (Cambridge, 1949): a 17-bit word that exists only as ultrasonic pulses in flight, caught and regenerated at every lap. The page's one job is to make the viewer feel the precariousness of that storage — a number kept alive the way a juggler keeps plates alive — and then let them break it honestly, with a gain knob.

01Palette — argued from the laboratory

Post-war British machine-hall: grey steel chassis, mercury behind glass, a scope trace, valve heaters. The mercury sheen is a line/mark token only — body copy gets its own derived ink.

#14181C · gunmetalground — cold chassis grey-black, not pure black
#C7CED6 · mercury sheenLINE/MARK only — tube highlights, pulse cores, wordmark tube
#A9B2BC · body inkderived from the mercury tone, dimmed — 8.3:1 on gunmetal
#6FA9D4 · scope bluethe pulse train, read tap, register lamps — 7.0:1
#C68A3C · valve amberheater glow, crystal flashes, every failure mark
#E0A75B · amber inkamber as text (log warnings, measured figures) — 8.4:1

02Type

Archivo 500–800

A grotesque with post-war engineering plainness for display and body — set tight and heavy in the masthead, plain and readable in copy. The one moment of typographic bravery is the letterspaced mercury-toned interstitial: THE WORD · IS NEVER · AT REST.

Overpass Mono 400–700

Every number the machine owns — the register, the HUD, the tank log, the recurrence — is set in mono, so measured values read as instrument output, never as marketing copy.

03Techniques — the honest recurrence

Everything is canvas 2D plus DOM; no libraries. The signature is that the stored word is never anywhere all at once: seventeen time slots circulate as acoustic packets (compression bands drawn perpendicular to the tube, amplitude fading with distance as 0.72x, width spreading with dispersion), and the binary register above the tube lights each lamp only while that bit's pulse crosses the read tap — a Gaussian window 0.014 laps wide. The simulation is one recurrence, evaluated at every pulse arrival:

arrival = amplitude × gain × 0.72attenuation × couplingbit   →   ≥0.70 restore to 1.00 · 0.50–0.70 restore to arrival⁄0.70 · <0.50 bit lost
empty slots: ring′ = ring × gain × 0.72 × coupling × 0.62 + 0.02 × gain   →   detected ring ≥0.50 births a phantom

04Measured, not typeset

All failure figures on the page were driven and read back from the recurrence, then pinned as hard asserts in the verification harness: with word 1337 and the gain set to 0.99 at a lap boundary, bit 10 (coupling 0.93) falls through the 0.50 discriminator 6 laps later (its seventh arrival, detected at 0.478), with bit 3 following at lap 14 and bit 5 at lap 19; from nominal equilibrium at gain 2.05, the ring in slot 6 (coupling 1.00) crosses threshold on lap 12 (ring 0.513) and corrupts the circulating word. EDSAC's own figures are hedged to the literature — tubes about a metre and a half, circulation ~560 µs by several accounts, 17-bit short words with sign conventions varying by account — and the on-page tank declares its ≈6,400× slow-down rather than implying period speed.

05Iteration log

PASS 1 · CRAFT

PASS 2 · DEPTH

PASS 3 · HARDENING