Friday, September 13, 2013

[I Miss My Amiga - Way Back Post] AmigaHASP

CodeProject - How the AmigaHASP was born

Introduction

During 1989, while developing Rashumon, I found myself looking for a copy protection solution for Amiga software but there wasn’t any. The Amiga had a very non standard Parallel port, which made it impossible to just adopt a copy protection dongle from other platforms, and there was a need to develop a completely new system

Background

Hardware based copy protection systems are based on a hardware device which interact with the computer using the port assigned to it. Back then (1989), the USB wasn't invented yet, and the Parallel port was used. The Parallel port was the port used for printers for many years, and therefore any dongle would need to have “pass through” connector allowing the printer to be connected to it, instead to the port directly.

The Amiga HASP is created

Hardware based copy protection requires interaction with the device through most of the connector pins, being able to read each pin’s value, and to change each pin’s value from 0 to 1 and vice versa. The Amiga didn't provide any API to do so, which made me look for undocumented features, and code directly to the hardware instead of using any existing SDK.

With the help of Shimon Groper, the founder of Eliashim, I have made many attempts to create a dongle compatible with the unique and undocumented hardware. I used to go from Tel-Aviv to Haifa, and after several hours, leave with a box, covered with many wires in all colors, which was supposed to be the prototype… Eventually I found the way to implement the first Amiga based copy protection dongle and instead of buying bulk dongles from Aladdin Knowledge Systems, I have accepted the kind offer of Yankee Margalit, their founder and CEO, to by the Amiga product from my small software house (HarmonySoft), and after a short period of negotiation, Aladdin paid me $12,000 and my product became the AmigaHASP.

...

Not a long or in-depth article, but it's Amiga!

No comments: