Speedlock

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search


Speedlock is the name of a disc and cassette copy protection designed by Dave Looker (DJL), David Aubrey-Jones and Simon Berry.

Earlier versions mentioned "DJL Software", while later versions mentioned "Speedlock Associates".

Cassette

The Speedlock cassette loader was a combination of an encryption system and advanced cassette routines. It is often recognized by its blue and black stripes in the border during loading.

Certain hacking software, such as Soft-Lok and Bonzo Blitz, attempted to follow the protection development to created unprotected versions of the protected software.

The Speedlock tape protections in their Amstrad CPC versions use 3 different types of encoding :

Speedlock type 2 (1984-1986):

  • 11 A Side Soccer
  • 3D star Fighter
  • Advanced Pinball sim.
  • Arcade Flight Sim.
  • Arkanoid
  • Army Moves UK
  • Batman
  • Beach Head
  • Beach Head II
  • Bounty Bob Strikes Back
  • Bmx Simulator
  • Death Stalker
  • Express Raider
  • Fruit Machine Sim.
  • Galivan
  • Grand Prix II
  • Green Beret
  • Head Over Heels
  • Hyper Sports
  • Impossible Mission
  • International Rugby
  • Italian Super Car
  • It's a Knockout
  • Kong Strikes Back
  • Kung Fu Masters
  • Leaderboard
  • Mikie
  • Mission 1 Project Volcano
  • Ninja Massacre
  • Ping Pong
  • Pro Skateboard sim.
  • Pro Tennis Sim.
  • Raid!!
  • Rambo First Blood Part II
  • SAS combat Sim.
  • Super Heroes
  • Super Stuntman
  • Super Tank
  • Xevious


A Speedlock-protected game with a baud rate of 1900 is Speedlock v4. A Speedlock v6 will not exceed 1675 baud.

Speedlock type 4 (1900 baud) (1986-1988):

  • Arkanoid Revenge of Doh
  • Basket Master
  • Crazy Cars
  • Deliverance Stormlord II
  • Gryzor
  • Mercenary: Escape From Targ
  • Renegade (Hitsquad)
  • Road Runner
  • Robocop
  • Stallone Cobra
  • Tank
  • Target Renegade
  • Tarzan (specific Speedlock)
  • The New Zealand Story
  • World Games

Special speedlock : *Nigel Mansell GP => the main code is protected by Speedlock v4 while the level data uses Speedlock v2. To determine whether a game uses Speedlock v4 or v6, check the baud rate with CSW2CDT.

Speedlock type 6 (1675 baud) (1988-until the CPC death): Note that level data may use either the Spectrum variant 2 scheme, or the Sinclair Spectrum one.

  • Altered Beast
  • Back To the Future III
  • Bad Dudes vs Dragon Ninja
  • Batman the Movie
  • Darkman
  • Fighter Bomber
  • Guerrilla War
  • Hammerfist
  • Monty Python Flying Circus
  • Mutants 64k
  • Ocean Beach Volley
  • Operation Wolf
  • Operation Thunderbolt
  • P47 Freedom Fighter
  • Rainbow Islands
  • SDI (Activision)
  • Shinobi
  • Star control
  • Stormlord
  • Super Wonderboy in Monsterland
  • The Addams Family 128k
  • The Ninja Warriors
  • The Untouchables
  • Turrican II The Final Fight
  • Typhoon
  • Wizball
  • Cabal
  • Midnight Resistance
  • Chase HQ

Disc

Speedlock was also available in disc version.

One version called "8k Speedlock" relied on the fact that the CPC's hardware (specifically, the µPD765 disk controller) could read 8 Kbyte sectors even though it was typically only possible to store more than 6,250 bytes on 300 rpm double density diskettes. Attempting to write an 8 Kbyte sector would cause the system to over-write its header block.

It was written here that "the format was either devised or done on an Atari ST or an IBM PC compatible machine (since the CPC share with them the same FDC controler). The main difference being that an ST or PC can write more data per track than a CPC." This contains several inaccuracies. The Speedlock team in fact wrote the diskettes using diskette interfaces custom-modified for this purpose. Also, an Atari ST also has 6,250 bytes/track although used a WD1772 disk controller, while the PC has over time been based on a variety of formats (e.g. HD was 360 rpm 15 sectors etc.) and controllers (e.g. NEC µPD765 or Intel 8272A or 82072A.

Another statement written here was: "In itself, a 'Speedlock track' exists in 2 versions, used at the discretion of the duplicator, one use a CRC, and the other not." This is inaccurate, in the sense that it was never at the discretion of the duplicator. There were at least two separate versions, one of which may have involved a CRA issue.

A 'Speedlock track' consists of only 512 bytes declared for the sector while all the remaining data is spanned in a huge GAP section. When copied on a CPC, the FDC only stores the 512 first bytes as declared in the CHRN, and discards the remaining contained in the gap section. Those tracks have an EDC (Error Data Checksum) because only 512 bytes are used to calculate the data checksum as well as an illegal data field size. Several other protection mechanisms existed on such tracks, including special codes written by the Trace 1006 duplication equipment commonly in use at the time: these codes could not be written by standard Amstrad disc drives.

Various methods were attempted to circumvent this protection, including:

1. A hardware modification to the Amstrad CPC and a special copy program .

2. Executioner's utility Xexor included a 'brain file' solution to crack individual games before copying them.

3. The Argonauts (Jason Brooks') 8K Disk Copier was sold both through Nemesis and Personally, it worked by approaching the issue the same as Tape to Disk copying the game code to standard sectors after the "Hack" and then copying protected sectors which contained level data at the end of the disk tracks. This can be found on the Git Repo: https://github.com/muckypaws/AmstradCPC