Many games (Ocean, Ultimate, Hewson) wrote their own loading routines instead of using the Spectrum's ROM loader. Copy software had to:
This process was called "snapshooting" and was the core of tools like Multiface (hardware) or SnapCopy (software).
In the world of retro computing, few names evoke as much nostalgia as the Sinclair ZX Spectrum. For millions of users in the 1980s and early 1990s, the phrase "ZX copy software work" was a gateway to gaming, productivity, and the underground scene of software piracy and preservation. But what exactly does this phrase mean today? How did copy software actually function on such limited hardware?
Whether you are a retro enthusiast trying to restore old tapes, a data hoarder preserving digital history, or simply curious about low-level programming, understanding how ZX copy software works reveals a fascinating intersection of analog audio, digital logic, and clever reverse engineering. zx copy software work
This article explores the mechanics of ZX copy software, from tape copying to disk duplication and modern SD card solutions.
Copy protection on ZX Spectrum was widespread. Copy software worked around it in clever ways:
| Protection | How Software Bypasses It | |------------|--------------------------| | Non-standard header length | Stores raw pulse data, not decoded bytes | | Custom loaders with speed checks | Replicates exact pulse widths | | Laser burn (on disk) | Copies entire track image including error zones | | Auto-detect of copy software | Hides as normal loader, then patches memory | Many games (Ocean, Ultimate, Hewson) wrote their own
Some copy tools, like Multiface, paused execution mid-load, dumped RAM to tape, then restarted—effectively copying even protected run-time code.
zxtool convert source.wav output.tzx --speed=auto --filter=bandpass 1200-2400
This command tells the copy software to automatically determine tape speed and apply audio filtering to remove hiss – something no 1980s copier could do.
Many games had custom loaders (e.g., Speedlock, Alkatraz, Cyclone) that manipulated timing or used self-modifying code. A standard SAVE command would fail. Copy software works because it does bit-level replication—it doesn’t care about the content, only the signal. This process was called "snapshooting" and was the
These weren't copy protection per se but prevented running copied software. Copy software couldn't bypass physical lens devices, but it could crack the code by distributing pre-made patch files alongside the copied data.
When a user instructed the software to copy a tape, the utility entered an "analysis mode." Instead of reading data as digital bytes (0s and 1s), the software sampled the raw audio pulses from the tape deck EAR socket. It measured the duration of pulses to determine the baud rate used by the original tape.
Once the speed and encoding method were identified, the software could read the data blocks directly into the RAM. Crucially, it stored this data not as a functional program, but as a raw memory image.