*** Please note, this page (and web site) are in early development.
Items are certainly not complete, and may be inaccurate.
Your information, comments, corrections, etc. are eagerly requested.
Send e-mail to Ed Thelen. Please include the URL under discussion. Thank you ***

Go to Antique Computer home page


Emulation/Simulation

Emulation/Simulation of one type of computer using another type of computer

Goal of this page

from Dictionary.com
em·u·la·tion - n.
  1. emulation
    One system is said to emulate another when it performs in exactly the same way, though perhaps not at the same speed. A typical example would be emulation of one computer by (a program running on) another. You might use an emulation as a replacement for a system whereas you would use a simulation if you just wanted to analyse it and make predictions about it.
    (1995-05-12)
    Source: The Free On-line Dictionary of Computing, © 1993-2000 Denis Howe

A proposed difference between Emulation and Simulation
From
George Trimble
... I have written 9 simulators ... as well as designing two more that I call Emulators. I make a distinction between
simulation, which is done by pure software,
and
emulation, which involves special hardware to facilitate the emulation.

Emulation was used by IBM on the S/360 line to be able to run 1401 programs on the S/360 hardware, and there were special registers plus the micro-programming capability to make the hardware look like it was a 1401.

From Peter Hans van den Muijzenberg, October 2005 - isn't this fun :-))
Hi,

Regarding the difference between simulation and emulation:
Not limited to computers I use this distinction:
- A simulation mimics the outward appearance
- An emulation mimics the cause/process.

If you want to convince people that watching television gives you
stomach-aches, you can simulate this by holding your chest/abdomen and
moan. You can emulate it by eating a kilo of unripe apples.

BFN, 
                                Peter Hans van den Muijzenberg

From Arun Parajuli, January 2006 - maybe this is more fun than talking about big old iron boxes filled with wires and things that go pop ;-))
In my view the difference between simulation and emulation is:

Emulation:
A system X is said to emulate another system Y if the behaviour of X is exactly the same as that of Y ( same out put for same input under similar conditions) but the mechanism to arrive at the output ( from the input) is different. Emulation is generally used when we don't exactly know the internal mechanism of the original system but are familiar with the input/output pattern . For example, neural networks may be used to emulate different systems. Neural networks are trained to produce the same output for the same input as that of the original system though the mechanism/procedure to generate the output are quite different.

Simulation:
A system X is said to simulate another system Y when the internal mechanism/procedures of X is a mathematical ( or any other) model known to best represent the actual mechanism of Y. Simulation is generally used when we have some mathematical models of the original system (Y) and want to know output for a given set of inputs. For example we may have a good mathematical model of effect of water temperature on the hurricane formation. We use that system to predict the nature of hurricanes for different water temperatures. It is to be noted that the result of simulation can sometimes be unverifiable. For example the hurricane pattern suggested by the simulator for water temperature equal to 50 degree Celsius will be difficult to verify because we may never encounter such situation.

Arun Parajuli


The use of emulation, historical, current, developmental
  1. The use of emulation, historical
    As a basis for further study of machines that
    - no longer exist, such as the ENIAC or EDSAC
    - are impractical to restore, such as the SAGE
    - are impractical to run, (energy requirements) such as a CRAY II
    - as an exercise, such as ???
  2. The use of emulation, current
    Run software for a machine you had on a machine you have
  3. The use of emulation, developmental
    Run software for a machine that does not yet exist, or is in very short supply


List of news groups
  • alt.sys.pdp8
  • alt.sys.pdp10
  • alt.sys.pdp11

List of emulation web sites

Hans B Pufal wrote
... but there is a loose community of emulator writers centered around their favorite machine, I cite for example Tim Stark who is working (alone AFAIK) on a PDP-10 emulator and is close to booting the TOPS-10 operating system. He chronicles his successes (and failures) on alt.sys.pdp10.

One reason why these older machines are just now being tackled is the word size, emulating 36 bits on a 16 or even 32 bit processor is painfully slow, on a 64 bit architecture with masses of cheap memory we can afford to throw away 28 bits per word!

I forgot to mention a bunch of other emulators I know of,

A PDP-1 emulator in Java capable of running spacewar!

There are several PDP-8 and PDP-11 emulators the later running the full range of operating systems including UNIX.

There is an IBM System/370 ESA/390 emulator for Linux. And the complete with sources to and early IBM OS are also available. see

[moved to] http://www.conmicro.cx/hercules/
for web sites related to this project.

It is these last two project which inspire me to think of resurrecting [the GE-645 and] Multics.

Other such as "Status of Dartmouth BASIC Time-sharing recreation"

 > >-----Original Message-----
> >From: mbates@whoopis.com [mailto:mbates@whoopis.com]
> >Sent: Tuesday, August 26, 2003 9:40 AM
> >To: dtss-project@Mac.dartmouth.edu
> >Subject: [Fwd: DTSS Simulation]
> >
> >Hello,
> >
> >Tom's DTSS BASIC simulation (preliminary edition) is now available:
> >
> >http://www.dtss.org/
> >
> >Scroll down to where it says "new" and click the link to download.
> >   [ Windows only]
> >-- MB
> >
> >---------------------------

----- Original Message ----- From: "John S. McGeachie" To: "Dave Magill" Cc: ; Sent: Tuesday, August 26, 2003 1:41 PM Subject: RE: [Fwd: DTSS Simulation] > Concur. looks very good indeed. > > You can drag a shortcut to the file named dtss.exe to both the desktop and > the webBasicReader folder. > > -john > > At 10:58 AM 8/26/2003, Dave Magill wrote: > > >Looks good. > >10 LET X = 1 > >20 DEF FNF(X) = X ^ 2 > >30 PRINT FNF(-2), X > >40 END > > > >does indeed produce: > > 4 -2 > > > >as it did in the beginning. Unary minus is also the highest priority > >operator. > > > >One thing I found confusing was that after loading it, the executable > >doesn't show up in the Start/Programs list. I just get the "Remove > >webBASIC Reader" there. The executable is in the C drive Program Files > >folder, though. I'm using Windows 2000 SP4. > > > >Dave Magill
----- Original Message ----- From: "Hobbs, Steven" To: ... Cc: "Hobbs, Steven" ; ; "Marion Bates (E-mail)" ; "Nancy. O. Broadhead (E-mail)" Sent: Sunday, November 03, 2002 2:27 PM Subject: Status of Dartmouth BASIC Time-sharing recreation Friends of Dartmouth Time-Sharing: This e-mail is to give you that status of the project to recreate the Dartmouth GE-265 system. Dartmouth has donated a system for the project to use and there is a web page, www.dtss.org, that is hosted on that Dartmouth system. Marion Bates has agreed to system manage the machine. See the web page for more information. Feel free to suggest additions to the web page. (But you will be expected to do most of the work required by your suggestion if it is to be implemented. Like everyone else on the project, Marion is a volunteer and you cannot delegate your suggestion to her.) As we find more listings and manuals of the Dartmouth GE-265 system we will place them on the web site. (Original listings and manuals are "artifacts" and the web site is recording the "archaeological" history of the beginnings of BASIC and DTSS.) Perhaps we will also include some "oral histories" from early participants. I would like to thank everyone that talked to me over the past 2 years. I really enjoyed my phone conversions and e-mail with all the people who used the various versions of the GE-265 time-sharing system. Although most of you did not have any artifacts to donate, almost all of you could give me several more names of people to contact. Following the list of names that you gave me eventually led to discovery of a minimal set of artifacts that should allow the emulation and recreation of the first BASIC time-sharing system. We have listings for the D-30 exec, the 235 exec, the Algol compiler, Algol run-time, and BASIC compiler/run-time/teach. These listing have been scanned and the images are available on the web page. Ron Martin has transcribed the D-30 exec listing into a text file of source card images; John McGeachie has transcribed the 235 exec listing into a text file of source card images; and Tom Kurtz has transcribed the Algol compiler, Algol run-time and BASIC listings into a text file of source card images. We have just started writing simulators. Ron Martin has volunteered to write a D-30 simulator and John McGeachie has volunteered to write a 235 simulator. We have a few more listings that have not yet been scanned nor transcribed, including time-sharing LISP and a batch version of WIZ. However, we are still looking for additional listings. We particularly would like to find: (1) the EDIT system, (2) contents of the LIBBAS, LIBALG, and TEACH libraries, (3) the TSAP system, and (4) background BASIC. Our BASIC listing is quite old (February 1965). It is missing some features (eg. the MAT statements) and it is likely to be quite buggy. It would be nice to find a more up-to-date listing. ("Up-to-date" is defined as 1967 or 1966.) It would also be interesting to find listings of some of the other software that is part of the system: Dartmouth GAP and D-30 GAP, SYMMAINT, time-sharing Fortran, time-sharing LAFF (who can remember what LAFF was and the name of the woman, a Tuck student, who coded it), time-sharing DIP (who can remember what DIP was), the utility program that loaded the D-30 exec onto the disk, the D-30 boot paper tape. The web site also contains scanned images of several manuals: (1) the D-30 CPU manual including *all* appendices, (2) the 235 CPU manual, (3) the 235 AAU (Aux. Arithmetic Unit) manual, (4) selected portions of the GE-235 systems manual dealing with important peripherals, and (5) the GE-265 Time-sharing manual. We have a lot more manuals that can be scanned. The manuals that were initially scanned were chosen to be useful to those writing hardware emulators. Most of this information can be downloaded from the web page. At the moment, a complete set of scanned images and source text files is about 350 MB. People with only dial up access to the internet may find this a large download. For anyone who has done actual systems programming on the original GE-365 T/S system and who does not have broadband internet access, I am willing to make CDROMs of the information on the site. (If you can donate a missing artifact then I will give you a CDROM even if you are not an original systems programmer.) Again, I want to thank everyone for their help. And I urge you to check with your fiends and to check those old boxes in the basement and attic to see if we can find some more "artifacts". Thanks, --Steve Hobbs steven.hobbs@intel.com In the future I will limit myself to the dtss-project@mac.dartmouth.edu mailing list. If you are not on this mailing list then the web page contains instructions for joining.)


If you have comments or suggestions, Send e-mail to Ed Thelen

Return to top
Go to Antique Computer home page

Updated November, 2007