Go backGo back to index

Speedlock 2 Hacker

Another Multipoke, this time for Speedlock 2. Play whatever tape from the start. Don't try running it on it's own though: because you'll only get an 'Out of data' message: you need to bolt on the game data for hacking the game into line 420 onwards...

Note: Your Sinclair originally printed this Multippoke hacker and called it the original Speedlock hacker (aka Speedlock 1) - It is not for use with Speedlock 1, it is for use with games using Speedlock version 2! (Speedlock 1 was used on Ghostbusters and also Zorro which this hack most certainly won't work with!). To avoid major confusement it has been renamed to the 'Speedlock 2 Hacker' since that is what version of Speedlock you use this Multipoke hacker on! The version numbers for the other Speedlock Multipoke hackers have been renumbered in Appendix I as well to avoid major confusement. Oh dear, yet another error by Your Sinclair I have had to correct...

Speedlock


David Aubrey Jones

Speedlock was the first and most common commercial turbo loader to be ever used on the ZX Spectrum. It was used in hundreds of ZX-Spectrum games, many of which were released by Ocean software. Although there are several revisions of the Speedlock, in the later releases, you can recognize it because the loading screen appears suddenly, there are no coloured stripes in the border whilst loading, and when the loading screen has appeared, there is often a countdown timer showing the remaining time expressed minutes, seconds and tenths of a second. Speedlock version one was the first turboloader to ever appear on the ZX Spectrum and was first developed in 1983. It was not however used commerically until October 1984, when it was used on 'Daley Thompson's Decathlon' which was released by Ocean software, by which time it had reached it's third version. Speedlock was first developed by David Looker and David-Aubrey-Jones (see left inset picture) who also wrote Mercenary for the ZX Spectrum. Further revisions of the Speedlock soon followed. The first type one Speedlocks were completely different to the later releases. They used the same initaliation routine, but a completely standard decrypter. The only differences between the type one Speedlock and an ordinary decrypting loader were it's initialisation routine and it's use of the IY register.

There were seven different versions of Speedlock, plus a hybrid one, although if David wrote all of these is unknown. It should be noted I can only find one game which uses Speedlock 7, and that was Repton 1 which was released by Aligator Software. I can find no reference to any game which uses Speedlock 6, which seems unusual. An interesting piece of history is that David secretly hid a message in his Speedlock one loader which reads "Government Health Warning - Attempting to crack Speedlock can seriously damage your Sanity!" Spectrum hackers attempted to hack the protection system, but it took an experienced and competent hacker who had a good understanding in Z80 assembler language to disassemble and to crack the Speedlock! The main reason why the Speedlock protection system was developed was to reduce the amount of software piracy because a loading system which loaded at over 150% above normal speed would not copy very reliably if a software pirate copied it many times over via a hifi system from cassette to cassette. It was also developed to reduce the loading times of commerical ZX Spectrum games (Speedlock 2 would load a game nearly 150% faster than normal), to keep out any hackers, and to save money (A cassette with a turboloader would load faster, hence the software company would require less cassette tape than was originally needed!). No doubt David made a substantial sum for his idea!

Type 2

Examples : Enduro racer, Knight rider.

Click here to download this hacker (TAP format) or Click here to download this hacker (TZX format).

10 CLEAR 65533 : LET t=0
20 FOR f=23296 TO 23443
30 READ a : POKE f,a
40 LET t=t+(f-23286) * a : NEXT f
50 IF t<>1240275 THEN STOP
60 FOR f=f TO 1e9 : READ a
70 IF a>255 THEN GOTO 100
80 POKE f,a
90 LET t=t+(f-23434) * a : NEXT f
100 IF t<>a THEN STOP
110 RANDOMIZE USR 23296
120 DATA 221,33,203,92,17
130 DATA 234,6,62,255,55
140 DATA 205,86,5,48,241
150 DATA 62,224,50,8,95
160 DATA 62,235,50,11,95
170 DATA 49,252,255,14,112
180 DATA 58,148,91,111,38
190 DATA 98,229,33,252,94
200 DATA 17,192,99,217,1
210 DATA 224,184,217,118,201
220 DATA 42,149,91,1,76
230 DATA 0,22,64,93,122
240 DATA 213,213,237,176,225
250 DATA 14,25,9,119,14
260 DATA 4,9,119,14,8
270 DATA 9,119,14,20,9
280 DATA 119,62,201,18,42
290 DATA 149,91,14,35,237
300 DATA 66,209,116,14,3
310 DATA 9,115,14,32,9
320 DATA 38,64,17,116,91
330 DATA 213,233,83,178,136
340 DATA 164,132,99,96,94
350 DATA 106,33,159,91,78
360 DATA 6,0,33,160,91
370 DATA 237,91,155,91,213
380 DATA 237,176,42,151,91
390 DATA 54,0,42,153,91
400 DATA 209,115,35,114,42
410 DATA 157,91,233

Free Web Hosting