A cassette was built to remember sound. A file is a stream of numbers. The whole trick is to make those numbers into a sound the tape can keep — and to read it back without losing a single one.
Four steps, and the file comes back exactly as it left.
A game, a book, a model — just bits. Ones and zeros, in a fixed order.
Each chunk of bits becomes a precise musical tone. The file is now a piece of audio.
Recorded to ordinary ferric cassette. The magnetic heads press the tones into the tape.
Play the tape, listen to the tones, turn them back into bits. Same file. Not one bit moved.
There's something almost tender about it. You take a thing that only exists as pure information — weightless, copyable, abstract — and you give it a body. You make it audible. You let a forty-year-old machine, designed only to remember music, remember a video game instead.
Here's the honest, plain version of what happens. A computer file is a long list of numbers. Sound is also a long list of numbers — the up-and-down wiggle of air, measured thousands of times a second. The two have always been the same kind of thing wearing different clothes. We just translate between them.
We don't record a screech of random noise. We split the file into small groups of bits and assign each group a clean, specific tone — like a tiny piano where every note means a number. Played in sequence, the whole file becomes a strange, purposeful music. To a passing ear it's a hiss with a rhythm. To the deck it's a faithful copy.
A cassette doesn't know it's holding DOOM. It only hears tones — and it keeps them, patiently, in the dark.
Cassettes drift. The motor speeds up and slows down a hair (that wobble is called wow and flutter), the heads add hiss, a quiet click can swallow a few milliseconds. Left alone, that would scramble the numbers. So we wrap the data in a mathematical safety net — the same family of error-correcting codes that kept the Voyager probes talking from beyond the planets. If a few tones arrive smudged, the math fills them back in, exactly.
We also lay down anchors: a chirp at the start and end, and a steady pilot tone, so the decoder can measure how fast your particular deck is running and re-time itself to match. That's why the same recording can survive a wobbly motor it has never met.
On the way out, the decoder listens to the tones, undoes the translation, repairs any smudges, and reassembles the file. Then it checks its work with a cryptographic fingerprint — a SHA-256 hash. If even a single bit were wrong, the fingerprint wouldn't match. With DOOM, it matched. The file that came off the tape was identical to the file that went on.
Same numbers in, same numbers out — through magnetism, through the air, through a speaker and a microphone. Lossless.
Some releases are tuned to come back perfectly on an everyday cassette deck and a phone microphone. Others pack the tape much denser, and want a clean electrical line-in (a small USB audio interface) to hit the highest rates.
Every release card tells you which tier it needs — a green badge for plays on any deck, an amber one for hi-fi setup. The Deck Test tape will even measure your own hardware and tell you what it can carry.
On a quiet living-room playback, the real cassette channel came back at 39 dB SNR with 0.44% flutter — clean enough to read DOOM back with zero errors.
The decoder is open source, so every release is free to read back yourself. You play the tape and capture the audio: for the plays-on-any-deck tier your phone is plenty; for the dense hi-fi tier you want a clean electrical line-in from a small USB audio interface. Anything class-compliant with a real stereo line input works — you don't need a studio rig.
| Option | Input | ~Price | Notes |
|---|---|---|---|
| Phone + Voice Memos | deck headphone-out → phone | free | Records lossless and sample-accurate. Enough for the plays-on-any-deck tier — no interface needed. |
| Behringer UCA222 / UCA202 | RCA L/R line-in | ~$30 | Our reference rig. Plug-and-play and level-matched to consumer line-out. |
| Behringer U-PHONO UFO202 | RCA line-in (+ phono) | ~$35 | The UCA202 plus a phono preamp — handy if you also digitise vinyl. |
| ART USB Phono Plus | RCA (line / phono switch) | ~$80 | Nicer converters, switchable line or phono input. |
| Behringer UMC202HD | 2× combo, needs RCA→¼″ | ~$70 | Cleanest budget converters; set the input gain to taste. |
| Focusrite Scarlett 2i2 | 2× combo, needs RCA→¼″ | ~$180 | Excellent clock and converters, USB-C. Overkill, but lovely. |
| PreSonus AudioBox USB 96 | 2× combo, needs RCA→¼″ | ~$100 | A solid all-rounder if you also want an interface for music. |
Capture tip: record with a PortAudio-based tool (or your interface's own app), not ffmpeg's avfoundation backend — on macOS it can silently drop ~10 % of samples and fail the decode. The hardware above is sample-accurate; the capture software is what usually trips people up.
DOOM came off a real cassette, byte-exact. You can play that exact build right now, in your browser.