What are you going to do with games that have dongles?

Some games came with an external hardware device (a “dongle”) that had to be attached to the computer to allow the game to be played. Two examples are Robocop 3 and Leaderboard Golf on the Amiga, both of which came with a device that had to be plugged into one of the joystick ports.

The side affect of these piracy control measures is that preservation of such games is more complicated.

In the short term we can at least allow people to recreate their disks, so those people that legally own the game will be unaffected. However, as a preservation strategy, the dongle should also be reproducible.

Dongle Techniques

Our aim is to reverse engineer these hardware devices to allow them to be physically reproduced and emulated. We expect these devices to be rather simple, however they may possibly use any of the following techniques:

  • Data
  • Wiring
  • Challenge-Response

A data dongle is where it contains some critical portion code or data that is tested for, or even required for the game to work. For preservation, the data will have to be extracted and put it in an IPF file (IPF‘s are not just for disk images). Hopefully this can be done via software (the game can read it, so we should be able to) but if not, we can always take one apart and dump the memory if we need to. Hardware booby traps are very unlikely on such a cheap device.

A wiring technique is where the dongle connects the pins of the port it is connected to in some way. It should be fairly obvious what is being connected to what using a simple multimeter, but the check in the game code will also tell us the correct wiring.

The challenge-response technique is where the dongle implements some type of function or algorithm which the software queries for a correct result given some input. The easiest way to verify the operation of this type of dongle is to look at the game code.

Emulator Use

Dongle-protected games are going to need specific emulation to allow them to work. If a dongle contains data, then it will have to be loaded in somehow, but if it is some logic that needs to be emulated, then it is really up to the emulator developers to implement. Obviously, in figuring out the protection and disk format, we are likely to know how the dongle works. Any information we have, will be provided to emulator writers as normal.

Physical Use

If you write the game back to disk to play on a real machine, you will obviously have to have the dongle in order for it to work. No preservation is complete without being able to actually recreate the dongle protection. Therefore we intend to describe how to build these devices on the web site, as DIY projects.