. .
. The History of Emulation
and its relationship to computer and videogame history
Updated 10/24/99
.
. . . .
. Author: The Scribe

Foreward

I want to thank the many, many people who have made this document possible - providing source material, making suggestions, offering corrections, etc.   I wish I had room to give credit where credit is due, but you know who you are.  Thanks again ... thank you very much.

This document is very much a work in progress.  It is still far from complete on the emulation side of things and probably too long by half on both background data and concurrent events, but this is the way that you have demanded it to read.  My apologies for any errors that may still remain.

As always, your comments are welcome.



Abbreviation key
  • (C) - Combination or "combo" emulator
    • An emulator that has both hardware and software components.  The software component is usually the actual emulator, while the hardware component provides key parts of the original system required for popular emulation.  This offers the most flexibility in terms of design, but is generally frowned upon by emulation purists as not offering "true" emulation.  Combo emulators are by far the most prevalent form of the technology, including many examples not documented here.
  • (F) - Firmware emulator
    • An emulator that is contained entirely within hardware.  This usually involves one or more emulators embedded in ROM that reconfigure the system into behaving like another completely different system.  By far the fastest form of the technology, it is also the most specialized and requires a high degree of systems knowledge in order to implement properly.  Firmware emulators are usually limited to situations where back-compatability with an older system is a major concern.
  • (S) - Software emulator
    • An emulator that is contained entirely within software.  In other words, the only hardware components involved are those of the host system, which the emulator then reconfigures as needed for its own purposes.  Purists consider this to be "true" emulation in that no part of the original system is required.  It is also the slowest form of the technology for the same reason.  The chief advantages to a "true" emulator are twofold - it can be easily changed or updated as need requires, and it can be easily ported across different platforms.


Birth Pains:  Emulation Prehistory (1800 - 1961)
 
In order to make a personal computer system or videogame emulator, you have to have something to emulate.  Well, how did these "wunnerful" technological concepts come about, anyway?  How did they set the stage for the birth of emulation as we know it today?
1822
  • British futurist Charles Babbage conceives of a programmable, multifunction, multitaskable problem-solving machine on a level above and beyond anything available in his day.  He calls it the difference engine, but the steam-and-gear based technology of the time is just too crude to make it a practical reality, although he did live to see it become a reality.  Though he did not realize it, he had just conceived of a computer system as we know it today.  The result is that Babbage is widely regarded as the inventor of the computer.

  • (NOTE:  the Babbage's retail compter store chain is named in his honor, and the device is the object of William Gibson's what-if sci-fi novel The Difference Engine).
1833
  • Charles Babbage refines his difference engine into the analytical engine, another theoretical construct that is designed to use punched cards for input.  It will serve (with surprisingly few changes) as the design concept for the first generation of true computers.
1842
  • Lady Ada Augusta Byron, the daughter of poet Lord Byron and later known as the Countess of Lovelace, documents Babbage's efforts for history.  She also writes a series of letters demonstrating just how Babbage's devices could be dedicated to different tasks.  As a result, the Countess of Lovelace is widely regarded as the first computer programmer.
1855
  • Swedish engineers George and Edvard Scheutz build the first mechanical computing device to be directly influenced by Babbage's theories.
1857
  • A scaled-down version of Babbage's difference engine is delivered to the Dudley Observatory in Great Britian to assist in the computation of math tables.
1889
  • Fusajiro Yamauchi founds the Nintendo company in Japan.
1890
  • The 1890 U.S. Census is tabulated by a punch-card mechanical computing device invented and patented by Herman Hollerith (application made in 1884, issued 1889).  It is the first recorded instance of the commercial application of a computing device.
1896
  • Herman Hollerith founds the company that we know today as International Business Machines (IBM).  Its original name is the Tabulating Machine Company, and its first product is a mechanical sorting machine.
1903
  • The legendary Yugoslavian engineer Nikola Tesla invents and patents (among many other things) the logic gate circuit, which proves to be crucial to subsequent computer developent.
1928
  • Russian immigrant Vladimir Zworykin invents the cathode-ray tube - the major component used in all visual display devices for the remainder of the century.
1931
  • German engineer Konrad Zuse quits his job at Henschel Aircraft, thus giving him the time he needs in order to invent the Z1, the very first calculator.
1939
  • Iowa State College professor John Atanasoff and graduate student Clifford Berry design the world's first true computer, the ABC (Atanasoff-Berry Computer).  The actual working model is not finished until 1945 due to the intervention of World War II.  The honor was eventually granted to the ABC after a lengthy and well-researched court battle (Honeywell v. Sperry, 1973) for right of "first recognition" (i.e. an academic pissing contest).

  • (NOTE:  The ENIAC design team, which had "first recognition" rights prior to the lawsuit, disputed the recognition of the ABC up to the day of their respective deaths)
1940
  • George Stibiz of Bell Labs designs and demonstrates the Complex Number Calculator, considered by several authorities as the first digital computer.
1941
  • Bell Laboratories creates the first video display terminal (VDT) as part of a series of remote processing experiments.
  • The first television broadcast in color is conducted.
  • Konrad Zuse develops the Z3, the first calculating machine with automatic control of its functions.  He has somehow managed to hide his efforts from the Nazis during this time, and continues to do so right up to the end of World War II.  The Z3 is destroyed by an Allied bombing raid in 1944, although a slightly enhanced successor termed the Z4 survived the war.

  • (NOTE:  Zuse is also credited with the first alorighmic programming language, Plankakül, which he developed in 1945.  The Z4 was "rediscovered" in 1949 and used until 1960.  A full-scale mockup of the Z3 can be seen at the Deutsches Museum in Munich.)
  • The British government commissions the building and operation of a series of computer that eventually results in Colossus, an early computer of the hard-wired variety (same as the ABC).  It is designed by Alan Turing and built by M.H.A. Neuman at the University of Manchester.  Its primary task is to crack the Enigma encoding system in use by Nazi Germany (remember, this was during World War II). Some authorities still consider Colossus to be the first "real" computer, as it was the first operational machine to be used outside of academic purposes (unlike the ABC).  Unfortunately, H.M. government kept its existence secret until many years after hostilities had concluded, thereby dimishing its role and all but negating its influence.

  • (NOTEMany emulation experts consider this to be the first early example of emulation in action, since Colossus and its contemporaries were called upon many times to simulate the operational functions of the Enigma machine)
1944
  • Howard Aiken of Harvard designs the ASCC Mark I for IBM (also called the Harvard Mark I), which is generally credited as the first relay-based calculator.  A small but highly vocal handful of IBM advocates claim this to be IBM's first computer (although most historians and computer experts contend otherwise).
1945
  • Mathemetician John von Neuman first describes the stored-program concept in a paper written about the then-developing EDVAC.  He is generally credited as the first to conceive the notion.
  • On 9 September, Lt. (j.g.) Grace Murray Hopper, USN, the third programmer hired to work on IBM's Mark I, discovers the first "computer bug" when she finds the body of a dead moth that had been caught and beaten to death in one of the machine's many mechanical relays.

  • (NOTE:  The term "debugging" is generally credited to American inventor Thomas Alva Edison, who was frequenly quoted as "having to work the bugs out" of his many creations.  Ms. Hopper's discovery has been preserved by the Smithsonian Institution.)
1946
  • The U.S. Department of Defense "officially" completes work on ENIAC (Electronic Numerical Integrator And Computer), designed by J. Presper Eckert and John Mauchly.  It is another hard-wired computer which is located at the University of Pennsylvania.  Its first task was to compute artillery firing tables for the United States Army.  Some sources have it working on an "informal" basis as early as mid-1945 (in the closing stages of World War II), even though it was incomplete at that time.  It was considered to be the first true computer for many years (and you will find it so described in older, non-IBM computer-related books) until the ABC court battle and lack of public knowledge about the Colossus project.  The core unit measured 8' x 100' and weighed some 80 tons.  Its top speed was 5000 additions and 360 multiplications per second.
1948
  • William Shockley, with the assistance of John Bardeen and Walter Brattain, invents the transistor while working under contract to Bell Labs.  It would go on to spark a major revolution in electromechanical technology and eventually supplant vacuum tubes in system design.  Transistor-based technology is generally credited with making the so-called Age of Information possible (1948 - present).
  • 1951
  • The Whirlwind Computer, designed by Jay Forrester and Ken Olsen as the very first computer to operate in real time, is installed at the Massachusetts Institute of Technology (NOTE:  The Whirlwind is now located at the Boston Computer Museum, where it is maintained in full operational condition as a working monument to the era).
  • 1952
  • Computer-based statistical surveys come into being when the Sperry-Rand UNIVAC I is used to predict Dwight Eisenhower as the winner of the American presidental race.  The results are delivered just one hour after the polls close, predicting a 7% margin of victory
  • The United States Department of Justice files criminal and civil charges against IBM, contending violation of the Sherman Anti-Trust Act in establishing an unlawful monopoly over the existing calculating and emerging computing industries.  United States v. IBM would drag on in one form or another for three decades, representing a constant source of annyoment for IBM during this period.
  • 1954
  • FORTRAN, the first programming language, is invented by John Backus for IBM, with the first FORTRAN program successfully executed by Harlan Herrick.  The name stands for FORmula TRANslator, and it is still being taught in some educational institutions as an entry-level language for would-be programmers.
  • 1958
    • NEC of Japan builds the NEC-1101 and NEC-1102, the first "native" computers (of any kind) for that country.
    • William Higinbotham and David Potter invent the very first videogame, Tennis for Two, at the Long Island Research Center while working under contract to the U.S. federal government.  It is an early form of Pong played on an ocilloscope, done to amuse visitors to their laboratory.  They do not patent it for various reasons (but if they had, and their employer had exercised "work for hire" rights, then ... hmmmm!)
    • The Perceptron Mark I by Frank Rosenblatt is the first computer to use a VDT for output.  The resulting subcomponent would eventually become known as a "video monitor" (describing its function - a video screen used to monitor system operations).
    • The Control Data CDC 1604 by Seymour Cray becomes the first fully transistorized computer upon its completion.  It represents a major milestone in system design and sounds the death knell for vacuum tube technology.

    • (NOTE:  Cray would eventually go on to found the company and build the world-famous supercomputers that bear his name)
    1956
    • David Rosen, a Korean War veteran who had moved to Japan, recognizes the growth of leisure income in the Japanese marketplace.  He founds Rosen Enterprises, a company dedicated to the amusement industry

    • (NOTE:  See Part 2 in order to find out what happened to Rosen Enterprises).
    1958
  • The next major breakthrough in computer component design occurs when Jack Kilby of Texas Instruments invents the integrated circuit (IC), consisting of an array of minituarized transistors and other components integrated together within a common housing (sound familar?).  He applies for a patent the following year.
  • 1959
  • The COBOL programming language, long the favorite of mainframe and minicomputer industrial programmers, is defined by the CODASYL conference.  It is directly derived from a concept language called FlowMatic, invented by naval officer and noted computer programmer Grace Murray Hopper.  She has since become known as "the mother of COBOL."
  • 1960
  • Benjamin Curley develops the PDP-1 (Programmed Data Processor) for Digital Equipment Corporation (DEC).  It is the world's first minicomputer, as opposed to the mainframes of the day, and represents a major step forward in computer design and reduction in size.
  • 1961
  • IBM's fully transistorzed Stretch computer, the first to use 8-bit bytes and 64-bit data paths, is delivered to the Los Alamos Nuclear Weapons Laboratory in New Mexico, U.S.  It remains operational until 1971.  It is frequently credited with being the first multitasking computer, despite its less-than-stellar performance.
  • to be continued  . . .

    Permission is hereby granted to reproduce this document subject to the following terms:

    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 Zophar's Domain.  The sole exception is for necessary formatting changes that may berequired to adapt this document to suit your particular needs; however, this document must be retained in as close a layout to the original as possible.  For any questions in this regard, please contact Zophar's Domain or its official representatives.

    No copy may be reproduced in whole or in part within a for-profit commercial publication or Internet site without the express consent of Zophar's Domain.  We recognize the right of our users to reproduce limited portions of his work under the "fair use" clause of the appropriate sections of U.S. copyright law and the international Berne Copyright Convention.

    Any trademark to be found within this document is the exclusive property of its respective owner(s), and is reproduced here merely for reference.



    The History of Emulation by Sam Pettus, copyright © 1999 Zophar's Domain, all rights reserved.

    Want to learn more?  Want to contribute?  Do you have an emulation history story to tell, or want to know more about one?  Then watch in the coming months for the Scribe's next project ...

    A "Year 2000" Zophar's Domain exclusive!
    (besides, we gotta have somthing to do during Y2K, right?  *grin*)


    Questions?  Comments?  Praise?  Flames?
    Contact the Scribe!
     .
    . .