Emulation
The Emulators

What exactly are the emulators that all this debate is about? This section examines a few specific examples of modern software emulators and takes a look at their respective legal statuses.

A sidenote that may be helpful in reading this: there are two main types of emulators, those that use a copied BIOS and those that use a reimplemented BIOS. As mentioned in a previous section, emulators for some systems -- like the Amiga and Macintosh -- must be able to simulate that system's BIOS to function properly. The developers of emulators for these systems have two options when it comes to simulating the BIOS. The first is to reimplement the BIOS from the ground up: to rewrite the BIOS, in other words, despite the fact that a perfectly good BIOS (i.e., the one was implemented in the original system) already exists. Reimplementing the BIOS may seem senseless at first, much like reinventing the wheel, but is often a necessary procedure when the copyright holders of the original BIOS refuse to license the BIOS to the emulator's developers so that they can use that version in the emulator -- as is often the case.

Reimplementation aside, the other option is to have the end user procure his or her own copy of the BIOS. It is fairly easy to write a program that can save the contents of a computer's BIOS to a disk. If such a program can be provided to the end user of an emulator, and if that user happens to own a computer of the platform being emulated, he or she can easily use the BIOS-saving program to legally obtain a copy of the BIOS and can then have the emulator run on that copy.

Amiga Forever

Not so much a single emulator as an emulator software bundle, Amiga Forever promotes an intriguing approach to the legal issues surrounding emulation. The heart of the bundle is WinUAE, a Windows Amiga emulator that requires a copy of the Amiga BIOS to run. Rather than reimplementing the BIOS from the ground up or requiring the end user to supply his or her copy of the BIOS, though, Amiga Forever took the unique step of approaching Amiga International (the copyright holders) to request a license deal for the Amiga BIOS. Amiga International surprisingly agreed, which is why today Cloanto is able to sell an Amiga emulatorŅalong with a verbatim, yet completely legal, copy of the Amiga BIOS that guarantees full Amiga compatibility -- for $30.

Executor

An ambitious, semi-functional Macintosh emulator for Windows whose developers tried -- and, like everyone else, failed -- to license the Macintosh BIOS from Apple. This did not stop them from reimplementing the Mac BIOS and Toolbox from scratch without any disassembly or reverse engineering of the original BIOS. The fact that Executor's BIOS is not original means that the emulator cannot provide full Mac compatibility, but it also means that ARDI -- the company that developed the product -- can, unlike Cloanto, sell Executor without paying any licensing fees to Apple.

ShapeShifter

The opposite of Executor. The developers of this Macintosh emulator also tried and failed to license the Macintosh BIOS from Apple, but this did not deter them. They pursued a different tact than Executor's developers did, though: rather than using a reimplemented copy of the Mac BIOS, ShapeShifter comes with a small utility program, called "Save ROM," that the user can run on a real Mac to copy its BIOS onto a disk. Once the user has the BIOS, he or she can feed it into ShapeShifter, which will run using the provided BIOS copy.

UAE

The Unix Amiga Emulator, like ShapeShifter, comes with a ROM-saving utility that the user can run on a real Amiga to obtain a copy of the Amiga BIOS. UAE will then run using that copy of the BIOS.

Wine

Wine, a WINdows Emulator for Linux that is still a work-in-progress, is not so much an emulator as a "Windows compatibility layer." Wine's developers are reimplementing the Windows APIs from the ground up, so no legal issues with Microsoft should arise if the program is successful in the future.

NEXT: Proposed Solutions


MPEG Layer 3   |   Search Engines and Directories
Reverse Engineering   |   CD Burners

Introduction


Ted LeVan   |   Huat Chye Lim   |   Marissa Mayer   |   Ann Rose Van

Computer Science 201 Final Project
Stanford University, March 1999