Skip to main content

Protection

  • Chapter
  • First Online:
Retrogame Archeology

Abstract

Now, as in the retrogame era, protecting code from analysis and copying is a concern and an active area of study. Protection schemes both old and new can be viewed through the lens of computer security.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 169.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    See, for example, [48]. There are at least two more methods, where you are and who you know, but they are less well known.

  2. 2.

    Game information from static and dynamic analysis. I’ll leave finding the password as an exercise for the interested reader.

  3. 3.

    Verified on, and quote taken from, the DOS version in-emulator.

  4. 4.

    I wrote a program to generate the encoded images, using the prism data from LensKey, and verified the images using LensKey and real Lenslok devices; for clarity, the generated image does not include any extra obfuscating blocks that a real Lenslok implementation could add.

  5. 5.

    There seems to be no available authoritative source for dongle history. Information here is from Wikipedia [66] that I have verified with one of the dongle’s creators [35]; chip information is from [61]. Figure 7.7 is a composite image created from pictures taken by Mike Lake.

  6. 6.

    Thanks to numerous Internet forums for the tip; verified with game on real hardware.

  7. 7.

    Actually, a few retrogame authors might have considered that, but they wouldn’t have been serious about it.

  8. 8.

    Hughes [26], confirmed in cassette mastering source code.

  9. 9.

    Verified in emulator.

  10. 10.

    While this technique sounds plausible, and I have no reason to doubt it, it has been hard to verify. I acquired a working Uridium (1986) on cassette for the Commodore 64 (which should have this protection [26]) and two dual-tape decks; copies from one deck worked, copies from the other didn’t. The only firm conclusion is that tape-to-tape copies of retrogames didn’t always work.

  11. 11.

    Tip from [70], behavior verified in emulator.

  12. 12.

    Not unlike traveling through the Canadian province of Saskatchewan. Game behavior found and verified in emulator.

  13. 13.

    The legal bunfight between Sega and Accolade over Sega’s protection measures is interesting reading but outside the scope of this book; for details, see [32, 46].

  14. 14.

    Verified in emulator. Technical information from static and dynamic analysis.

  15. 15.

    Unfortunately, there are too many creative floppy protection schemes to cover in full. This section’s sampling tries to give a flavor of the variety of methods used without getting too lost in the weeds.

  16. 16.

    I recall hearing in the 1980s that someone had done this with acid as a science fair project.

  17. 17.

    This example is based on DOS 3.3; information from [71]. There’s one slight simplification here, in that some drives would support more than 35 tracks [72].

  18. 18.

    The exact details vary with the system, of course. References used are [28] (Commodore 64) and [71] (Apple II).

  19. 19.

    This assumes the more common “soft sectored” disks. Hard sectored disks, by contrast, had physical index holes denoting the start of sectors.

  20. 20.

    RW18 information from [16, 21, 53]; some of the RW18 source code appears in the released Prince of Persia code, and a commented disassembly of the 5\(\frac{1} {4}^{{\prime\prime}}\) RW18 code [17] was used for verification.

  21. 21.

    This discussion is based on [30, 54], and Fig. 7.13 was inspired by the representation in [54, Figure 9.4].

    Fig. 7.13
    figure 13

    Disk drive read/write head stepping on the Apple II

  22. 22.

    Emphasis on straightforward – at least one set of copy program parameters does this [41]. However, [30, 62] assert that this scheme can be copied by reading and writing quarter tracks, and a different set of copy program parameters follows that advice [41]. I gathered data for the disk read plots from a specially-instrumented emulator.

  23. 23.

    Some sources suggest that the data is read and written as the disk heads are moving (e.g., [68]) but this may be platform-dependent: as Sather notes [54, p. 9–8], ‘phase-1 must be turned off after head positioning or writing to the disk is impossible.’

  24. 24.

    Levy misspelled it as “Spiradisk,” however, which is incorrect according to the protection code’s own banner message [40], a fact that I confirmed on a Spiradisc-protected Frogger image.

  25. 25.

    This check is apparent on the disk read traces for failed boots that I’ve gathered for some Electronic Arts games, like Archon (1983), Pinball Construction Set (1983), and Skyfox (1984). For extra verification, I was able to boot all three non-booting game images in-emulator by copying the track data samples verbatim from one track in the band to all fractional tracks in the band.

  26. 26.

    Information for this example is based on [1, 63]. I hand-aligned the track data on a non-booting image track by track until the image booted in-emulator, then verified that it was only reading the sector’s address field and that the sector numbers matched the protection code.

  27. 27.

    Memory of Wildcard Plus jogged by [13], with additional material from [54, 55].

  28. 28.

    The Freeload loader source contains a signature check for the Expert cartridge on the Commodore 64 along with countermeasures. Other signatures were included in different versions of Freeload [25].

  29. 29.

    Sather mentions the use of ROM checksums for copy protection [54, p. 5-31]. The Choplifter issue on the Apple IIc is noted by [69] and backed up by a disassembly that also reveals the signature method to be byte sequences [49].

  30. 30.

    Mentioned in [25, 26], and present in Freeload source.

  31. 31.

    This is described in many sources. The “KRAKOWICZ’S KRACKING KORNER” series of articles, starting with [34], is an excellent reference.

  32. 32.

    By repeatedly stepping the head out until it beat mercilessly against the outside of the drive, creating the distinctive floppy booting sound the Apple II made.

  33. 33.

    An excellent description of the DOS boot process is in [71], with hardware details from [54].

  34. 34.

    As seen in the source code, in case it wasn’t apparent. This is for the delayed Level 7 effect Ferrie refers to [14].

References

  1. 4am: Video Vegas (4am crack) (12 June 2014). Number 70

    Google Scholar 

  2. Apple Computer, Inc.: Apple II Reference Manual. Apple Computer, Cupertino (1978)

    Google Scholar 

  3. Aycock, J.: Computer Viruses and Malware. Springer, New York/London (2006)

    Google Scholar 

  4. Barton, M., Loguidice, B.: A history of gaming platforms: Mattel Intellivision. Gamasutra. http://www.gamasutra.com/view/feature/132054/a_history_of_gaming_platforms_.php (2008)

  5. Brotby, W.K.: Method and apparatus for frustrating the unauthorized copying of recorded data. United States Patent #4,785,361 (15 Nov 1988)

    Google Scholar 

  6. Catchings, B., Van Name, M.L.: SideShow. Amiga World 6(5), 66–68 (1990)

    Google Scholar 

  7. Central Point Software: Copy II PC option board (advertisement). PC Mag. 5(13), 277 (1986)

    Google Scholar 

  8. Commodore Computer: Commodore 64 Programmer’s Reference Guide. Commodore Business Machines, Wayne/Howard W. Sams & Co., Indianapolis (1982)

    Google Scholar 

  9. Cook, R.: Deadline. PC Mag. 1(7), 110 (1982)

    Google Scholar 

  10. Cutting Edge Enterprises: Graduate… to the Senior PROM! (advertisement). Computist (40) (1987)

    Google Scholar 

  11. Cutting Edge Enterprises: Senior PROM //e, //c Version 3.0 Documentation (1987)

    Google Scholar 

  12. Defendisk Inc.: $10,000 REWARD (classified advertisement). InfoWorld 6(19), 150 (1984)

    Google Scholar 

  13. Elite Software Company: Wildcard Plus User Manual (1983)

    Google Scholar 

  14. Ferrie, P.: Prince of PoC; or, a 16-sector version of Prince of Persia for the Apple ][. POC ∥ GTFO 0x04, 12–15 (2014)

    Google Scholar 

  15. Goodwin, S.: The plastic policeman. CRASH Mag. (24), 152–154 (1985)

    Google Scholar 

  16. Green, A.: pop-codereview-rw18. https://github.com/adamgreen/Prince-of-Persia-Apple-II/blob/build/Notes/pop-codereview-rw18.creole (2 May 2013)

  17. Green, A.: Disassembly of 18 Sector Read/Write Routine. https://github.com/adamgreen/Prince-of-Persia-Apple-II/blob/build/Other/RW18525.S (29 July 2013)

  18. Grynberg, A., Klein, H.: Technique for preventing unauthorized copying of information recorded on a recording medium and a protected recording medium. United States Patent #4,734,796 (29 Mar 1988)

    Google Scholar 

  19. Guglielmino, P.: Copyprotecting system for software protection. United States Patent #4,584,641 (22 Apr 1986)

    Google Scholar 

  20. Gustafsson, R.: Email Communications (10–11 Jan 2015)

    Google Scholar 

  21. Gustafsson, R.: Email Communication (12 Jan 2015)

    Google Scholar 

  22. Henrikson, K.: Electronic Arts C64 Fat Track Loader. http://c64preservation.com/files/EaLoader.txt (Undated)

  23. Hicken, W.: Email Communication (11 Feb 2015)

    Google Scholar 

  24. Hughes, P.: Email Communication (24 Apr 2015)

    Google Scholar 

  25. Hughes, P.: Email Communication (8 Apr 2015)

    Google Scholar 

  26. Hughes, P.: Freeload. http://www.pauliehughes.com/page3/page3.html (Undated)

  27. Hull, S.: Jet vs. F/A-18 Interceptor: clash of the Titans. Amaz. Comput. 3(8), 8–9 (1988)

    Google Scholar 

  28. Immers, R., Neufeld, G.G.: Inside Commodore DOS. Datamost, Northridge (1984)

    Google Scholar 

  29. Intellivision Productions, Inc.: Intellivision II Development History. http://www.intellivisionlives.com/bluesky/hardware/intelli2_tech.html (Undated)

  30. Jones, B.W.: Demystifying the quarter track. Hardcore Computist (21), 12–14 (1985)

    Google Scholar 

  31. Jones, B.W.: Spiradisk [sic] info. Hardcore Computist (25), 4 (1985). Letter to the editor

    Google Scholar 

  32. Kent, S.L.: The Ultimate History of Video Games. Three Rivers Press, New York (2001)

    Google Scholar 

  33. Kocher, P., Jaffe, J., Jun, B.: Differential power analysis. In: 19th Annual International Cryptology Conference, Santa Barbara, pp. 388–397 (1999)

    Google Scholar 

  34. Krakowicz: Krakowicz’s Kracking Korner: The Basics of Kracking I (Undated, probably early- to mid-1980s)

    Google Scholar 

  35. Lake, M.: Email Communication (9 Apr 2015)

    Google Scholar 

  36. Level 9 Computing: The Price of Magik Instructions (Commodore 64 Version) (1986)

    Google Scholar 

  37. Leventhal, L.A.: 6502 Assembly Language Programming, 2nd edn. Osborne McGraw-Hill, Berkeley (1986)

    Google Scholar 

  38. Levy, S.: Hackers: Heroes of the Computer Revolution. Dell, New York (1984)

    Google Scholar 

  39. Linzmayer, O.: Review of Intellivision II. Creat. Comput. Video Arcade Games 1(2), 82–84 (1983)

    Google Scholar 

  40. McFadden, M.M.: Antique softkey for Frogger. Computist (41), 28–29 (1987)

    Google Scholar 

  41. Moore, M.: The Parameter Guide. Moore’s Microware (Undated, probably pre-1985)

    Google Scholar 

  42. Morrison, G.: Atari Software Protection Techniques. Alpha Systems, Stow (1983)

    Google Scholar 

  43. Nagashima, T.: Method for executing software program and circuit for implementing the method. United States Patent #5,796,940 (18 Aug 1998)

    Google Scholar 

  44. Nakagawa, K.: System for determining authenticity of an external memory used in an information processing apparatus. United States Patent #4,799,635 (24 Jan 1989)

    Google Scholar 

  45. Nakagawa, K., Yukawa, M.: Memory cartridge and information processor unit using such cartridge. United States Patent #4,865,321 (12 Sept 1989)

    Google Scholar 

  46. O’Donnell, C.: Production protection to copy(right) protection: from the 10NES to DVDs. IEEE Ann. Hist. Comput. 31, 54–63 (2009)

    Article  MathSciNet  Google Scholar 

  47. Patchett, C., Sherer, R.: Master Memory Map for the Atari. Reston Pub. Co., Reston (1984)

    Google Scholar 

  48. Pfleeger, C.P., Pfleeger, S.L.: Security in Computing, 3rd edn. Prentice Hall, Upper Saddle River (2003)

    MATH  Google Scholar 

  49. qkumba: Choplifter (Brøderbund, 1982). http://www.hackzapple.com/phpBB2/viewtopic.php?t=621 (29 Jan 2012)

  50. Reekie, J.: Letter to the editor. CRASH Mag. (26), 45 (1986)

    Google Scholar 

  51. Rittwage, P.: Copy protection methods. Floppy Disk Preservation Project web site. http://diskpreservation.com/protection (Undated)

  52. Rothstein, E.: Reading and writing; participatory novels. New York Times (8 May 1983)

    Google Scholar 

  53. Sanglard, F.: Prince of Persia Code Review: Part 2 (bootloader). http://fabiensanglard.net/prince_of_persia/pop_boot.php (14 June 2013)

  54. Sather, J.: Understanding the Apple II. Quality Software, Chatsworth (1983)

    Google Scholar 

  55. Schäfer, P.: Apple ][ Wildcard (19 Mar 1994). Schematic, reverse-engineered from Taiwanese board

    Google Scholar 

  56. Simstad, T.N.: Program Protection Manual for the C-64, vol. II. CSM Software, Inc., Crown Point (1985)

    Google Scholar 

  57. Sinclair User staff: The lens: 20/20 vision or mirage? Sinclair User (46), 5 (1986)

    Google Scholar 

  58. Smith, J. III.: Video game cartridge recognition and security system. United States Patent #4,462,076 (24 July 1984)

    Google Scholar 

  59. Taylor, D.M., Taylor, R.H.: C-64 Software Protection Revealed. Value Soft, Portland (1985)

    Google Scholar 

  60. Taylor, J.: Letter to the editor. Sinclair User (48), 16 (1986)

    Google Scholar 

  61. Texas Instruments: SN54165, SN54LS165A, SN74165, SN74LS165A parallel-load 8-bit shift registers. Data sheet (1976, revised 2002)

    Google Scholar 

  62. Thompson, P., Silver, A., Brown, M.: Copy II Plus Apple Disk Backup System. Central Point Software, Portland (1985). Version 5.0

    Google Scholar 

  63. toinet: Video Vegas (Baudville, 1985). http://www.hackzapple.com/phpBB2/viewtopic.php?t=163 (15 June 2007)

  64. Trixter: Life Before Demos (or, Hobbyist Programming in the 1980’s). http://www.oldskool.org/shrines/lbd (25 Sept 1996)

  65. United States Court of Appeals, Ninth Circuit: Sega Enterprises Ltd. v. Accolade, Inc. 977 F.2d 1510 (1992, amended 1993)

    Google Scholar 

  66. Various Contributors: Software Protection Dongle. Wikipedia. http://en.wikipedia.org/w/index.php?title=Software_protection_dongle&oldid=641430223

  67. Vickers, S., Bradbeer, R.: Sinclair ZX Spectrum Introduction. Sinclair Research Limited, Cambridge (1982)

    Google Scholar 

  68. Voelcker, J., Wallich, P.: How disks are ‘padlocked’. IEEE Spectr. 23(6), 32–40 (1986)

    Article  Google Scholar 

  69. Wilson, T.G.: Softkey for Choplifter. Hardcore Computist (23), 10–12 (1985)

    Google Scholar 

  70. Wood, J.: Re: copy a CRT image to be used on a real Commodore 64. comp.sys.cbm, comp.emulators.cbm, alt.c64 Usenet newsgroups (20 Sept 2004)

    Google Scholar 

  71. Worth, D., Lechner, P.: Beneath Apple DOS. Quality Software, Reseda (1981)

    Google Scholar 

  72. Worth, D., Lechner, P.: Beneath Apple ProDOS. Quality Software, Chatsworth (1984)

    Google Scholar 

  73. Yarom, Y., Falkner, K.: Flush+reload: a high resolution, low noise, L3 cache side-channel attack. In: Proceedings of the 23rd USENIX Security Symposium, San Diego, pp. 719–732 (2014)

    Google Scholar 

  74. Yukawa, M.: Cartridge for game machine. United States Design Patent #294,020 (2 Feb 1988)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Aycock, J. (2016). Protection. In: Retrogame Archeology. Springer, Cham. https://doi.org/10.1007/978-3-319-30004-7_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-30004-7_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-30002-3

  • Online ISBN: 978-3-319-30004-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics