FINAL EDITION
copyright (c) 1999 Sam Pettus (aka "the
Scribe"), all rights reserved
All copies must not be altered in any way, including but not limited to reformatting and conversion to alternate document formats, without the express consent of the author. The sole exception is for necessary formatting changes that may be required to adapt this document to suit your particular needs; however, the complete original text must be retained in as close a layout to the original as possible. For any questions in this regard, please contact the author.
No copy may be reproduced in whole or in part within a for-profit commercial publication or Internet site without the express consent of the author. The author recognizes the right of said vendors to reproduce limited portions of his work under the "fair use" clause of the appropriate sections of the U.S. Copyright Act and the Berne Convention for the Protection of Literary and Artistic Works.
Any trademark or other such indica to be
found within this document is the exclusive property of its respective
owner, and is reproduced here merely for the sake of reference.
Module One: The
Emulator
Part 1 - The Basis for
Emulation
And so it begins ....Ambassador Kosh, Babylon 5
|
|
|
|
|
INTRODUCTION
I've been actively
involved with the emulation community in one form or another since the
early days of 1998. I first became aware of the concept back in September
of 1988 when I bought my beloved Amiga 2000 personal computer. You
see, there was this nifty accessory you could get from Commodore called
the PC Bridgeboard - a combination of hardware and software that would
allow you to run IBM PC software on a suitably equipped Amiga. "Cool!"
I thought, but I couldn't afford the price tag for either the A2088 XT
or A2286 AT model at the time.
I was bemoaning
this fact to fellow Amiga user Ken Gillum one day, and he merely shook
his head. "You know," he said, "Commodore used to sell a piece of
software for the old A1000 that would let you run IBM software on an Amiga
without the hardware."
"No way!?" I
said, hardly believing my ears.
"Way," he replied,
"and I've got it. Come to my house this weekend and I'll give you
a copy."
That was my first
step
into the wonderful world of emulation. The program that my friend
gave me was called Transformer, and it did indeed let you run IBM
software on an Amiga without special hardware. True, it was
buggy as all out, only supported text-based software, and had no support
at all for hard drives, but who wanted to play "Beemer" games on an Amiga
anyway? The business apps, such as WordPerfect 4.2 and Lotus
1-2-3, were what mattered, and those were handled ably by that creaky
old software emulator.
It was several
months later, sometime in mid-1989, now having established myself as one
of the Amiga gurus in my local area, that I paid a visit to a nearby Commodore
dealer to get a copy of the demo for the brand-new and highly acclaimed
Psygnosis game Shadow of the Beast. The late Dick Conrad,
owner of the Commodore Connection and a close friend of ours, was quite
excited. "You've got to check this out!" he said, steering me and
my ol' Amiga hacking buddy Steve Smith, aka "Skerran," to his display A2000.
"Have you heard of A-Max?"
"No," I said,
feigning ignorance. Of course I had, but I didn't know of anyone
who had gone to the trouble of buying it.
"Then watch this,"
he said as he turned on his A2000, activated A-Max, and then inserted
a MacOS System 6 disk for bootup. Skerran almost fell over when he
saw this, but I held my tongue and watched. A short time later, we
were looking at a flickering blue-and-white MacOS screen displayed on the
store's interlaced A1084S monitor.
"Now it's a Macintosh,"
the store owner stated proudly.
For those of
you who might not remember, A-Max was a combination hardware and
software product along the same lines as the PC Bridgeboard, except that
it gave the Amiga the capability for near-perfect Macintosh emulation.
All you needed was the A-Max emulation software, the A-Max
adapter, a MacOS boot disk, and a set of Mac BIOS ROMs. Apple was
at that time dead set against any type of cloning of their proprietary
hardware, so the only way A-Max could remain legal was to force
its buyers to go to a licensed Apple vendor and order a set of real Mac
BIOS ROMs. These plugged into the adapter, and the A-Max software
worked in conjunction with them to reconfigure an Amiga into a pretty decent
Mac clone. Yes, it was a bit of a specialty product, it was pricey,
and it really wasn't worth the trouble if you were stuck with an interlaced
monitor - but oh, was it ever so neat!
Two months later
I was in another state at a meeting of several software pirate groups to
shop the latest warez offerings from the Amiga underground. I was
on good terms with one of the better groups in the region, and one of its
members (who shall remain anonymous) tossed me a white 3.5" disk.
"Have you heard of A-Max?" he said.
"Yeah," I replied,
"but it's no good without the Apple BIOS."
"Here's a cracked
copy," he said, "and you don't even need that f--kin' adapter to run it."
He was right.
After testing the disk with the latest release of Steve Tibbet's VirusX
(we had to be careful even back then), I booted the thing up. Sure
enough, there was A-Max, but running without the Mac BIOS!
"How did they do it?" I asked.
"Easy," the hacker
replied, "they just dumped the BIOS and hard-wired it into the emulator.
Now it can run all by itself."
I thanked him
for providing the copy, and a week later was back at the Commodore Connection.
I pointed to Dick's dusty display A500 off to one side - he rarely used
it anymore since his A2000s had arrived. "I can make A-Max
run on that," I said.
"Not without
the adapter, and I'm not taking it off the A2000," he replied.
"I don't need
it," I answered. "Watch and see." And with that, out came the
little white disk.
About five minutes
later, a glassy-eyed and slack-jawed Dick Conrad was staring at a MacOS
screen on his A500. "How in the world did you do that?" he asked.
"This version
doesn't need the adapter," I answered.
"Where did you
get it?" he asked.
"Same place your
techs get their stuff," I shot back, winking as I did so.
"I see," he replied
with a grin. "What do I need to copy it?"
"Nothing special,"
I answered. "Project D will work just fine."
"Here's a disk
and my copy of Project D," he said, shoving them into my hands.
"Go for it."
Emulation has
come a long way since those initial heady days on the Amiga (and the Atari
ST and Mac - let's not forget their contributions, either), but the basic
premises and questions remain the same. The recent attempt by Nintendo
to formulate an official company policy on emulation may have sparked a
lot of ridicule, but was actually a good thing to happen at this time.
As emulation is now suffering from something of a bad reputation in the
public eye, perhaps it is time to take a look back at where we've been,
where we're going, and the legal ramifications that are involved.
The two stories above, which actually happened to me in my younger, wilder
days, serve to illustrate all of the main questions concerning the so-called
"legitimacy of emulation" and the various questions that it poses.
I shall attempt
in the ensuing series of discussions to try and lay to rest some of the
myths and half-truths that shroud the emulation community within a grey
legal haze. Rather than just tossing out highly emotional statements
as most users prefer to do (and of which I am guilty at times), I will
be citing specific examples from the history of the emulation community
as well as related issues within the computer industry as a whole.
I will also cite specific provisions of various laws, statutes, and regulations
where applicable; and I will also refer to a wide range of court cases
(i.e. "case law") that have a direct impact on the emulation issue.
THE PURPOSE OF EMULATION
The first question
one might ask is the most obvious one: "Are emulators legal?"
It depends on how you ask the question - are you dealing with the concept
of emulation as a whole, or are you referring to the creation of an emulator?
In order to resolve this dilemma, let's take a look at the purpose of an
emulator. We will save the legal question concerning the creation
of an emulator for later.
What is an emulator?
An
emulator is a product designed to imitate one system with another so that
both accept the same data, execute the same programs, and achieve the same
results (American Heritage Dictionary, Second College Edition, s.v.
"emulate"). Emulators can be pure hardware, pure software, or a combination
of both. In the two stories that I relate from my past, the Amiga
Transformer
program would be considered a pure software or "true" emulator, while both
the PC Bridgeboard and the unadulterated
A-Max would be considered
"combo" emulators because of the combined hardware and software approach
in their design. An example of a pure hardware or "firmware" emulator
would be the Sega Genesis/MegaDrive's VDP mode 4, which converts the console
into a functional Sega Master System emulator running entirely on its internal
hardware, and all of which is activated via a special code received from
the console's cartridge port.
For those of
you who are still new to the emulation scene and don't have any idea what
I'm talking about, let me describe emulation another way. Many of
you are using IBM PC compatible computers running Microsoft Windows
as its primary operating system. Take a moment to look inside the
Accessories folder. You'll see about a dozen or so programs and directory
entries, but the one I want you to look at is named Calculator. Run
it, and see what happens. You should now have what looks like a little
calculator on your screen - not all that different from the little credit
card sized ones they sell on the J-hooks at your local grocery store.
If you've got one handy, go get it and set it beside your keyboard.
Now, I want you to work a few math problems on Calculator; if you've got
the real thing handy, then double-check your results with it. Neat,
eh? That's because Calculator "emulates" a real calculator - it allows
you to conveniently work math problems without having to have a real calculator
handy, and it serves just as well as the real thing anytime you're sitting
at your computer. Since Calculator is a computer program that does
not require any kind of extra hardware (other than the computer itself),
it would be considered a pure software-based, i.e. "true" emulator.
This brings
us to the underlying idea behind an emulator. It is something designed
to perform a task or series of tasks that you couldn't otherwise do because
they weren't intended for your hardware. That's the core concept.
You're not supposed to be able to play Sega Master System games on a Sega
Genesis, but you can with the use of the PowerBase Converter - a unique
cartridge port accessory that includes a special boot ROM which reconfigures
the console so it can support the older game cartridges. You're not
supposed to be able to run Windows software on a Macintosh, but
SoftWindows
makes it possible. Speaking of my beloved old Amiga 2000, you're
not supposed to be able to run Amiga software on a high-end IBM PC compatible,
but Cloanto's Amiga Forever (the commercially licensed version of
UAE)
makes that possible. The concept is sound and has been employed by
both vendors and users in various ways over the years. Emulation
is a valid use for computer hardware regardless of who you are.
THE REASONS FOR EMULATION
So why even emulate
at all? Four reasons. First, convenience. Remember
the example of Calculator? Beats digging in the ol' office desk for
the one that your secretary borrowed last week and never returned.
Second, back-compatablity. Assuming you have a need to keep
using an older piece of software, it sure is nice to have some kind of
setup that let you use the old stuff with newer hardware - that way you
can junk the old hardware and free up some space. Third, software
development. It's nice being able to develop for a custom system
using one that you already know how to use. Fourth, the old standby
of cross-platform support. It's a lot cheaper to buy just
one multipurpose computer system and different kinds of software to use
with it than buy different systems for different purposes and the software
to match. Emulation allows you to save your money by running software
on the system you have that may have been intended for use with a system
that you either do not have or cannot afford.
Need some examples
of emulation in action? Well, we've already got Calculator from Microsoft
Windows as an example of convenience. There are plenty of examples
for back-compatability, but I'll limit myself to three: the PowerBase
Converter for the Sega Genesis/MegaDrive; the "real 8086" mode of all Intel
and Intel-derived 80286 processors and their descendants; and the famous
"triple mode" operating system feature of the venerable Commodore 128.
As for software development, the best example I know is Sega's TeraDrive,
which was a specially modified 386SX PC-AT compatible computer with on-board
Sega videogame hardware, produced and distributed almost exclusively to
game developers and the like. That also serves as a good example
of cross-platform support, since it allowed the use of both IBM PC and
Sega Genesis/MegaDrive software within the same box.
With the various
back-compatability and SDK issues whizzing about in the minds of computer
programmers, it was inevitable that some bright young programmer would
say to himself, "Screw the US$1000 or so for the SDK - I'm going to write
my own." On the other side of the fence, you have a passionate home
console owner with a computer background and no spares to be found in local
stores to replace his worn-out game carts due to the obsolescence of the
console. "Forget that," he says, "I'll just write an emulator and
dump the cart ROMs instead." Bounce over to the frustrated personal
computer user who has just learned that the game he bought will not work
on his new system because it was designed to run on an older, now-obsolete
model that is no longer in production. "No way," he says, "If the
store won't give me my money back, then I'll find some way to run it anyway."
Along those lines, dare we forget the retrotechs - who just flat out love
old computer stuff and will do almost anything to keep it alive?
"We're tired of hunting for out-of-production parts," they say. "This
neato program will let me run this software on my newer systems."
Or what about the big corporate vendor, who needs to find a way to make
its old software work with its soon-to-be-released new system in order
not to lose a good-sized chunk of its customer base? "What old hardware?"
they say. "We'll just make an emulator for our new system." Many
faces, but the same set of dice. Thus was the modern emulation community
born.
THE BIRTH OF EMULATION
The concept of
emulation was invented by systems engineer Larry Moss of IBM back in 1964
as part of the development effort behind the IBM System/360 family
of mainframe computers. They were quite revolutionary for their day,
being the first mainframes to use integrated circuits all the way throughout
their design, which meant that programs hard-coded for older, transistorized
IBM computers would not work with the new product line. Three approaches
were tried by IBM - first, a series of computer simulations running entirely
in software (sound familiar?), then next came the Moss proposal, and finally
a straightforward firmware approach that resulted in the IBM 1410S (that
sounds familiar, too). Neither of the two extremes would work with
the System/360 product line, though - the "software simulations" were just
too slow and the firmware approach used in the IBM 1410S was way too machine
specific. There had to be a comfortable middle ground in there somewhere,
and that is where Larry Moss stepped into the picture.
Moss used the
word emulator to set his proposed project apart from the pure software
and firmware approaches by others. His design "strove to be like"
the real McCoy without actually being it (per the dictionary definition
of the word), running the same programs at a comparable speed but on a
completely different system. The actual emulator was a mix of hardware
and software components, which worked in conjunction with each other to
allow higher-end System/360 computers to behave as if they were an IBM
7070 mainframe, one of the top computers of its day. Moss believed
then, as the passing years have shown, that the closer the hardware
in the target system was to the system being emulated, then the better
the emulator would function. This is why he chose the "combo"
approach, as it offered the best compromise between portability and cost.
It had only those hardware components that were really required for effective
emulation at a decent speed, with the remaining issues being handled by
the emulation software. Stuart Tucker, who was in charge of System/360
development issues, liked the idea and gave Moss the go-ahead. The
rest, as they say, was history. The System/360 went on to become
IBM's best-selling product line of that era, and the 7070 Emulator
by Larry Moss was so successful that many customers were running their
old software under emulation well into the early 1970s without a hitch.
Thus it was that the technology known as emulation was born, as well as
the three basic approaches to designing an emulator, and we owe it all
to Larry Moss and his coworkers at IBM. For his achievement, Larry
Moss is today considered to be the father of computer system emulation.
SCALING THE TECHNOLOGY DOWN
Credit for
the birth of personal computer emulation is given to three of the true
pioneers in the personal computer industry - Tim Patterson, Don Burdis,
and Bill Gates. In 1980, Microsoft released the Z80 SoftCard,
its first hardware offering and its first such accessory for the Apple
II personal computer. This US$350 add-on was comprised of a plug-in
card and accompanying software that would allow Apple II users to run CP/M
software on their machines. Tim Patterson designed the actual hardware
side of the emulator, with Don Burdis managing the product (and the requisite
software) in its final stages and Bill Gates making sure that everything
stayed on track. Remember, these were the days before the arrival
of the IBM PC and MS-DOS. You couldn't do everything with software
alone, because the available technology was quite limited. CP/M,
invented by Gary Kildall, was the dominant operating system for business
computers prior to IBM's arrival on the scene, but it was incompatible
with the Apple II's MC6502 CPU. Microsoft's SoftCard had an on-board
Zilog Z80 CPU, which was one of the CPUs that CP/M was designed to work
with. The Microsoft Z80 SoftCard was the very first computer system
emulator for a personal computer, allowing the Apple II to greatly
expand its software base and contributing a great deal towards the success
of that classic computer. CP/M itself would remain a viable operating
system well into the mid-1980s, and products similar to the SoftCard subsequently
appeared for other personal computer systems of the decade. The presence
of these various CP/M emulators meant that users didn't have to ditch their
old CP/M software while learning how to use their new systems, and personal
computer users grew to appreciate the concept just as much as mainframe
users had before them.
In 1982, computer
chipmaker Intel announced the release of the 80286 CPU. This
was one of the company's first true 16-bit processors intended for mass
production and represented a quantum leap forward in personal computer
processing capability. All that was well and good, except that Intel
had a problem - almost all of the software of the day was 8-bit in origin.
Fortunately, these were the early heady days for IBM, as its IBM 5150 Personal
Computer (aka the IBM PC) had taken the business computer market
by storm and thus set the standard for all machines that would follow in
its wake. The IBM PC used the 16-bit 8086 as its CPU, but its system
bus and software base were 8-bit in nature. Compaq, who was in the
process of winning the legal battle over the right to use the Phoenix reverse-engineered
BIOS in its PC clones, favored the compatible 8-bit 8088, which Intel had
designed as a cheap alternative to the 8086. With this in mind, Intel
devised a unique solution to ensure that existing 8086/8088 software would
work with their new CPU. The Intel 80286 was designed to operate
in either one of two modes: standard mode, using a 16-bit data path
and 16-bit memory addressing; and real mode, using an 8-bit data path and
8-bit memory addressing. In doing this, Intel had unintentionally
created the first firmware emulator for a personal computer, since
the 80286's real mode perfectly emulated that of an actual 8086 CPU.
It should be noted that 8086 "real mode" remains to this day part of every
Intel CPU released for the personal computer market.
Videogame emulation
had its beginnings around this time, during the heady days of the Atari
Video Computer System (VCS, later redubbed the Atari 2600), as manufacturers
rushed to tap the new and rapidly expanding home videogame market.
The Atari VCS was the undisputed top dog until 1982, when rival manufacturer
Coleco released its ColecoVision console. It was a superior
product, in fact a somewhat retooled Japanese MSX personal computer
in disguise, and its more powerful capabilities provided Coleco the means
by which they could tap into the existing market for Atari VCS games.
Coleco offered a special adapter for the ColecoVision, the Expansion Module
#1, that allowed their console to use videogame cartridges designed to
work with the Atari VCS. Atari promptly sued for patent infringement,
but lost in the courts when it was ruled that the product did not violate
any Atari patents. Coleco later "thanked" Atari for their generosity
in 1983 by releasing the Gemini, a 100% clone of the Atari VCS. The
ColecoVision Expansion Module #1 is nowadays considered by most to be the
first videogame system emulator, but the first "true" videogame emulator
would not appear until some eight years later (Yuji Naka's unreleased NES
emulator for the Sega MegaDrive). It should be noted that so-called
"cart adapters" were made by many different manufacturers for various systems,
each supporting different cartridge formats, and continued to be manufactured
right up until the days of the N64 in the late 1990s, which was the very
last videogame console to use the cartridge format.
The threshold
of so-called "true" emulation with regards to today's systems was crossed
in 1985 thanks largely to the arrival of one particular personal computer
- one that would forever change the industry in many ways.
We're still dealing with Commodore, but with an entirely different system
- the legendary Amiga personal computer, generally regarded as the
most powerful personal computer of its day, the world's first multimedia
computer, and the first computer system to openly support emulation technology.
The Amiga was so powerful that Commodore really didn't know what to do
with it, but at least they had the good sense to realize that it needed
to be IBM compatible in order to stay alive in a market dominated by PC
clones. The Amiga design team had already foreseen this need, and
had a working prototype of a combo IBM PC emulator on hand to demonstrate
to Commodore executives. The literature of the day describes two
parts, with the software side called the Transformer and the hardware side
called the TrumpCard. It was well received, but Commodore insisted
on a number of changes (such as ISA card support for the TrumpCard) that
delayed the emulator's arrival on the market by a full year. In the
meantime, this gave rival computer maker Atari the chance to hurry development
of its own prototype IBM PC emulator, which first demonstrated in a "smoke-and-mirrors"
demo at the rollout for the Atari ST in mid-1985. Their
IBM PC emulator development was accelerated and the product was rushed
to market as soon as possible, finally making it to store shelves in early
1986. Thus it was that PCDitto by Avant-Garde Software for the
Atari ST can lay claim to the title of being the first IBM PC emulator
released to the general public. It was a pure software product
(i.e. a "true" emulator) and notoriously slow, but the fact that it was
available at all spurred Commodore's own efforts in this regard.
The software for the Amiga prototype emulator was quickly recompiled to
remove the need for hardware support and released shortly thereafter by
Insignia Solutions as the A1025 Transformer, Commodore's
own "true" IBM PC emulator program. It was not much better than PCDitto,
but at least Amiga users would have an IBM PC emulator to tide them over
for a few months, and with that the original Transformer/TrumpCard concept
was abandoned for good. The rest of the year was spent with the retooled
TrumpCard concept, and it was finished in time for the 1986 winter trade
shows under the name of the PC Sidecar. It was universally
reviled at the time for various and sundry reasons, but would eventually
serve as the basis for IBM hardware support in the next generation desktop
Amiga that Commodore then had under development. That machine that
was eventually released in 1987 as the Amiga 2000, and it would prove to
be the workhorse of the Amiga product line - emulation support and all.
Atari may
have been first to market and can still claim credit for theirs being the
first "true" IBM PC emulator, but it is Commodore and the Amiga design
team that must be given credit for having the first working IBM
PC emulator. In fact, so
many emulators for various systems, ranging from the well-known to the
obscure, were eventually developed for the Amiga that it earned the unofficial
nickname of "the chameleon machine." No other machine of its day
had the capabilities for emulation that the Amiga had, and only recent
advances in personal computer technology have brought these abilities to
other platforms. The Amiga's reputation for emulation is one that
no other personal computer system has managed to supersede as of this date.
CROSSING THE PROPRIETARY LINE
The concept of
emulation was turned on its head in 1988 by a young man named Simon Douglas.
He was the driving force behind the development of A-Max, a Macintosh
emulator for the Amiga and the first Mac emulator for that platform.
Readysoft demonstrated their Mac emulator at the World of Commodore show
in November of that year, and it immediately drew the attention of everybody
at the show. It received rave reviews and a number of write-ups in
the major personal computing magazines of the day. Like the PC Bridgeboards
by Commodore that were introduced for the Amiga 2000 at the same show,
A-Max
was a combo emulator, incorporating both hardware (an external adapter)
and software components (the A-Max program) in order to provide
the widest possible range of performance and capability. Its external
hardware adapter (and its later internal carded incarnation) required an
actual piece of a Macintosh computer in order for A-Max to work,
and that "missing part" was a genuine Macintosh BIOS 128K chipset (two
chips, as I recall). There was a big difference between
A-Max
and the other Mac emulator that preceded it, however. A-Max
represented the first time that a fully functional emulator had been commercially
released for a given vendor's proprietary system. There had been
an earlier product for the Atari ST (Aladdin), but its capabilities
were rather limited and it was quickly relegated to well-deserved obscurity.
A-Max
transformed a suitably equipped Amiga into a true Mac clone in every sense
of the word, and Apple wasted no time in quickly voicing their objections
to the product.
There was no
question that in-house emulation of a vendor's own products was perfectly
acceptable. There was no debate that neither licensed nor developmental
emulation of proprietary platforms was legal, and a number of such products
had already appeared. There had never been a problem with the older
CP/M emulators, due to their widespread acceptance and the lenient usage
terms by which CP/M had been made available. There was no problem
with emulating the IBM PC ever since IBM had lost the court battle over
the Phoenix BIOS. But a commercially vended emulator for the Mac?!
Everybody knew how jealous Apple was of its little black-and-white computer,
going so far as to use every trick in the book (and then some) to ensure
that the Mac would not be cloned. That is what caused all the buzz
in the personal computer industry at the time, and many predicted that
Readysoft was going to be in for a long and nasty lawsuit at the hands
of the proprietary-minded Apple Computer Corporation. Does this sound
familiar, N64 and PSX emulator users? It was the same thing that
you are going through now, except that it happened a decade ago with an
unauthorized emulator for a personal computer system.
What happened
next is a matter that remains shrouded in mystery. Apple continued
to strenuously object to A-Max, decreeing that it was infringing
use of proprietary Macintosh technology. Many Amiga users of the
day, myself included, remember the widespread fears and discussions about
a possible Apple lawsuit against Readysoft. Strangely enough, though,
object was just about all Apple ever did. Nothing happened, and that
was the biggest surprise of all. Well, almost nothing. The
only public move Apple made over A-Max was to try and dry up all
sources of loose Mac BIOS chipsets, but it did little good. Apple
distributors and repair centers with dead or disabled Macs quickly pulled
the BIOS out of those systems and were quite happy to sell them to cash-toting
A-Max
users. Eventually, Apple gave up on this tactic, and by the following
year A-Max had become an established part of the Amiga and Mac communities,
who now had something in common - even if it was only an emulator. Not
only did A-Max remain a viable product on the Amiga market for several
years afterward, it also became one of the most touted emulators in the
Amiga arsenal, spawning its own line of copycat products (Shapeshifter,
Emplant, Fusion). Though it was eventually superseded by its
competitors, A-Max was one of the products that helped build the
Amiga legacy. Macintosh emulation is quite commonplace nowadays,
and it was A-Max that blazed the trail for later efforts in this
regard.
So why didn't
Apple sue Readysoft?
Because they
couldn't. There was no way for them to win, and they knew it.
Wow! You
mean ... even back then ... and they couldn't? How did that come
about?
The following
explanation is part reason and part conjecture, based on what facts are
known and on careful research of the legal issues involved. Apple
has refused the opportunity to comment on the affair even at this late
date, so perhaps this may be the only answer that we will ever have.
While it is incomplete and given to surmise, it is a reasonable explanation
given the data at hand.
The legal department
at Apple knew full well that unauthorized duplication of copyrighted computer
code, especially a computer's operating system, both in BIOS and on software,
is illegal; in fact, they had helped establish the precedent some five
years earlier over the Franklin ACE 1000, an illegally produced Apple II
clone computer (Apple v. Franklin, 1983). Simon Douglas and his team
were also aware of this, as well as the dispute over the reverse-engineering
of the IBM PC BIOS (IBM v. Compaq, 1982), so they had deliberately designed
A-Max
in such a fashion that it would not infringe upon Apple's intellectual
property rights. The Amiga and Mac used similar processing hardware
and similar components in a similar fashion, and the only real difference
between the two computers was their respective operating systems and communications
ports. This was the reason why the combo approach was chosen for
A-Max.
Its hardware adapter contained the minimum amount of hardware required
for full Mac computability, and that amounted to no more than the custom
Appletalk port and Mac external floppy connector, as well as the appropriate
sockets for a genuine Mac BIOS chipset. The emulation software handled
the rest, reconfiguring the Amiga internals for proper Mac operation.
The fact that almost identical hardware was involved explained why A-Max
was such a solid product, and also reinforced the original supposition
by Larry Moss that similar systems would make for a faster emulator.
In retrospect,
reconfiguring the Amiga floppy disk drives to read native Mac floppy disks
was probably one of the most brilliant pieces of work in the original version
of A-Max. It gave Amiga users who did not have access to external
Mac floppy drives the ability to use Mac software without having to convert
the disk to another format; thus, you could use a real MacOS system disk
to boot up the emulator. Not only was this extremely convenient,
but it was also legally prudent, as we will later learn. A-Max
could handle original Mac software in its native format; therefore, software-related
issues in any possible dispute were neatly sidestepped.
The requirement
of a genuine Mac BIOS chipset was another gutsy yet well-reasoned move,
since Simon Douglas and his team did not have either the resources or desire
to reverse-engineer it. Forcing the use of the actual chipset neatly
killed two birds with one stone. It saved them from the long and
arduous reverse engineering process and the inevitable lawsuit that would
have resulted, and it provided for some small compensation back to Apple
in the form of profits from Mac BIOS sales. It was not as much as
Apple would have gotten from selling an entire Mac, but it was money in
their pocket nonetheless; thus, it could be said that Apple was making
money every time someone bought a copy of A-Max. In addition
to the initial purchase of A-Max by a potential user, the buyer
would also have to cough up extra money to Apple for the proprietary Mac
BIOS that was required to make A-Max work. It was a brilliant
idea and one that was subsequently borrowed in later products, although
the concept of requiring an outside BIOS would be perverted sooner than
anyone would realize (remember the A-Max bootleg?).
As an aside,
it should be noted that Apple's other legal dispute at the time may have
played a part in their eventual muted response to the rise of Macintosh
emulation. Remember, the A-Max affair arose about the same
time that Apple was considering suing Microsoft over the release of Microsoft
Windows, which it felt was an unlawful infringement of MacOS on multiple
counts. Put yourself in Apple's shoes for a moment. You have
before you two different potential lawsuits against a possibly infringing
vendor - one which you may not win based on past case law precedent (A-Max),
and one which you may very well win for the same reason (Microsoft Windows).
Which are you going to pursue?
To sum it all
up, there would have been no way that Apple could have proven willful
intellectual property infringement on the part of either Readysoft or Simon
Douglas and his team. They had been very careful in the way they
had designed A-Max, and their foresight proved itself in the long
run. The question of Macintosh emulation remained the center of much
debate during the better part of 1989, even after A-Max finally
made it to market that summer, and everybody within the Amiga and Mac communities
held their collective breath over the affair. When the year finally
ended, A-Max had emerged unscathed, and all of us breathed a collective
sigh of relief. Apple had decided not to challenge the legality of
Macintosh emulation, and in doing so unknowingly set a legal precedent
for emulation technology that remains with us to this day. I call
it the A-Max precedent, named after the emulator at the center
of the dispute, and it is as follows:
|
|
And with that, the word began to spread - excitedly discussed among the Amiga user community, whispered around the PC clones in many an office, and commented upon in front of the Macs at the local schools. Emulation of proprietary systems was now permissable. There was no more debating the matter. And as we Amiga users of that day saw a steady stream of emulators begin to appear for various systems and wondered to ourselves what system would be emulated next, and as an indignant Apple flailed away at Microsoft in the courts over the release of Microsoft Windows, we knew something special had happened. Though we could not put a label on it at the time, the resolution of the A-Max affair had kicked off what is now called the Golden Age of Emulation (1989 - 1998). The technology known as emulation was no longer bound by proprietary desire, and we owe it all to Simon Douglas and the Commodore Amiga.
INTROSPECTION
So now we're back where we started. "Are emulators legal?" The answer is a resounding "YES!" The concept of emulation is perfectly legal regardless of the nature of the system involved and has been in use for many years now. So much for that. The next question that comes to mind is how one goes about creating a legal emulator. Before we can do that, we first need to try and come to an understanding of the basic concepts behind intellectual property protection and the various forms that it takes. It is best to know how the legal system may affect your intended emulation project, and it is that forum that we shall discuss next.
REVIEW QUESTIONS
1. What is an emulator?
2. What are three different kinds of emulator?
3. What are four reasons for creating an emulator, and what are some examples of each in action?
4. Why would one might want to develop or obtain an emulator?
5. What desire of the computer industry gave rise to the concept of emulation?
6. Who is considered to be the father of emulation technology? Can you tell in brief the story behind the very first emulator?
7. How did emulation get started on personal computers? Who were the people behind it, and what was their product? What did it emulate, and why?
8. How did the development of the Intel 80286 CPU contribute to the rise of emulation?
9. What are the origins of videogame emulation? Why was that product not a real emulator?
10. What legal battle can be said to have "primed the pump" for videogame emulation? How was this important? Why was such a thing possible with a mere videogame console?
11. Why is the Commodore Amiga remembered as "the chameleon machine?"
12. Who was responsible for the first "true" IBM PC emulator? What was the product? How did it come about?
13. What product changed the application of emulation technology forever? Why was it so significant? How did it reinforce one of the guiding principles of emulation?
14. What is one explanation as to why Apple failed to file a lawsuit against this "significant product?" Be sure to give specifics that back up the main points of your answer.
15. What significant precedent did this "significant product" set? What does that precedent say? What does it mean?
QUESTIONS TO PONDER
1. Can you describe some of the emulators that arose from the legitimization of proprietary system emulation? Who made them? What systems do they emulate? Are each of these considered legitimate products to the best of your knowledge? Why
2. How did IBM's failure to stop the PC clone vendors contribute to the eventual rise of the emulation community?
3. How did videogame emulation actually get started?
4. Is emulation legal, at least from a vendor's perspective?
5. What are your thoughts as to the legality of a noncommercial (i.e. unlicensed or freeware) emulator?