Copylock
The protection standard
Rob Northen's disk protection system that became the industry standard on Amiga and Atari ST, using sophisticated techniques to detect original disks and resist cracking.
Copylock was Rob Northen’s disk copy-protection system for the Atari ST and Amiga, sold to publishers and developers through his company Rob Northen Computing from 1987. Northen’s own count is around 500 commercial Amiga games between 1988 and 1996, most of them in 1989-92; when Amiga Joker interviewed him in March 1992 he put the figure at three to four hundred and the system at “twelve different versions and around a hundred updates”. The disk carried one track a drive could read but not write, the check code that recognised it was encrypted and wrapped in anti-hacking routines, and the game could go on to use the result rather than test it and branch.
Fast facts
- Creator: Rob Northen — he had protected Acornsoft’s BBC Micro floppy games before going independent; the first system sold under the Copylock name was for the Atari ST in 1987, with an Amiga version “soon after” sharing the same 68000 code.
- Platforms: Atari ST, Commodore Amiga.
- Era: 1987 to the mid 1990s; by 1994-95 the work “just dried up when publishers stopped releasing the games”.
- Usage: around 500 Amiga games by Northen’s count, Populous among them; Ocean and Domark were his best customers.
- Evolution: twelve versions and about a hundred updates by early 1992, changed regularly on purpose.
- Companion products: the RNC PDOS disk format, ProPack compression, and the dual-format cover disks ST Format was using in 1990.
How it worked
The protected track exploited a difference between reading and writing. Drives “are quite tolerant of reading data at varying bitcells, within reason”, but “will always write data at a constant bitcell”. So the keydisk carried a track — “probably track 0” on the ST — with one sector written at a reduced bitcell. A drive could read it without error, and any copy made by a drive came out at the standard rate. The check timed the reads: the slow sector “had to take at least 15% longer to read than the other sectors or it failed the protection test”. Northen used “a similar technique, and variations of it” on the Amiga.
The code that ran the check was encrypted and full of anti-hacking measures — the interviewers who later asked him about it called it “the encrypted trace-mode code”, and the illegal-instruction tricks it relies on are why later hard-disk installers have to remove a Copylock rather than run it. Its result was not a yes or no. Each customer’s keydisks carried a unique 32-bit serial number, and the routine returned either 0 on failure or that number; later versions delivered it more quietly, writing it to an address passed in a data register or XORing it into memory. Northen’s advice to programmers was never to write cmp.l #$12345678,d0 / bne.s fail, but “to incorporate somehow the number into their own data, which would be used later in the game” — so that a copy did not fail at a branch a cracker could patch, but somewhere downstream, with wrong data. Some programmers checksummed the code around his routines as well.
There were two ways to fit it. If Northen protected the finished master himself, he replaced the game’s loader with his own encrypted loader, which “would go through various anti-hacking routines, check for the protected disk format and finally run the original game loader” — a check that ran once, at startup. The better route, and the one he preferred because it left him free to work on the routines, was to post the programmer a set of keydisks and the check code, so the checks “were embedded in the game and would be called at various stages of game play”. Alongside them went PROTECT, a program for encrypting the game’s own files with “as many random elements of encoding as I could”, so that no two protected copies of the same file were alike — though “quite often the programmer would not encrypt the game, but just rely on calling the Keydisk code”.
Mastering
The special track could not be written by the target machine, so it was made on the same hardware the duplicators used: a Trace 1006, a Unix box with a floppy controller and disk loaders, which Northen bought for £15,000 in 1990. Before that, a Trace engineer named Paul Caton had written the keydisk-creation program, which Northen could send to any duplicator with a Trace machine. He supplied the format files the duplicators needed to read a Copylock master, and because the protection was usually on a single track, a Copylock disk took no longer to duplicate than a standard one — about 40 seconds with verification.
Why publishers bought it
Northen’s own account, to Amiga Joker in 1992: the protection was “certainly not the worst”, he changed it regularly, and he offered service — “the programmers can reach me round the clock”. It also needed no per-title tailoring — “it does not have to be adapted to each program” — which is why most developers installed it themselves. On the Codetapper side he adds that he sent out “literally hundreds of jiffy bags containing Copylock routines and keydisks”.
The cracker response
Northen claimed no contact with crackers, with one exception. He had hidden his telephone number in the encryption to see how far anyone got; a German hacker rang very early one morning several weeks after the release of the ST R-Type, and by his 1992 account “a few crackers plagued me for weeks with night-time calls to tell me they had got another step further”. Asked in 1992 about the “Rob Northen Autocracker” tools circulating in the scene, he said he owned a good number of them and most were useless — “if they work at all, then only on a single game” — and that constant changes meant there could never be a working autocracker, “just as there will never be the perfect copy protection”.
From the other side, Subzero, who supplied originals to Skid Row, describes protection as a logistics problem: having the original disk was “a huge advantage over only having a disk image due to the fact that some games had tricky protections that could not be written back to disk”, so the group’s edge was getting the disk to its cracker on release day; when a major title “had heavier protection, Eurosoft took care of it”. Northen’s own verdict on the contest was that “the better the protection the greater the challenge. It’s just a matter of time.”
Preservation
The format’s defining property — readable but not writable by a standard drive — is also what a sector-level disk image loses, and the check code depends on illegal instructions that hard-disk installers do not emulate, so protected games are installed by removing the Copylock. By 1994-95 Northen was doing that work for the publishers themselves, who “were releasing a lot of game compilations then and sending me games to remove the protection”.