Terminology: Simulator vs. Emulator

Let's talk about anything related to the 6502 microprocessor.
Marsdam
Posts: 1
Joined: 05 Dec 2019

Re: Terminology: Simulator vs. Emulator

Post by Marsdam »

I feel like we need another term for something in-between. haha
These top of the line mini excavators are ruling the market right now.
kazzie
Posts: 20
Joined: 27 Mar 2018

Re: Terminology: Simulator vs. Emulator

Post by kazzie »

Marsdam wrote:
I feel like we need another term for something in-between. haha
A "semulator"?

(Not to be confused with an imulator, that's when your power supply catches fire. Or is that an immolator? :) )
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigEd »

Just noticed this rather nice diagram in Greg James' SIGGRAPH presentation on the visual6502. The idea here is that emulation has complex code but simple data, whereas simulation has simple code but complex data. Which also opens the possibility that there's a continuum, not a dichotomy.
Emulation-Simulation-Visual6502-GregJames.png
sark02
Posts: 241
Joined: 10 Nov 2015

Re: Terminology: Simulator vs. Emulator

Post by sark02 »

It would be fun to write a forum simulator. Every 8-16 hours it simulates a user composing a new message on the topic and posting it. It could dump its simulation log to a file, which we could review and find out how the AIs argue the nuances of evolving language.

It might be less fun to write a forum emulator. Seems to me that's just an implementation of forum software with the user-facing behavior of the one we're using here.
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigDumbDinosaur »

sark02 wrote:
It might be less fun to write a forum emulator. Seems to me that's just an implementation of forum software with the user-facing behavior of the one we're using here.
Yes, but a real forum emulator would also accurately depict the behavior of flaky Internet connections, server latency and any bugs in the software running the forum. :D
x86?  We ain't got no x86.  We don't NEED no stinking x86!
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigEd »

It's the bugs in the users which cause all the drama...
User avatar
cjs
Posts: 759
Joined: 01 Dec 2018
Location: Tokyo, Japan
Contact:

"Hyperides is a great Emulator of Demosthenes"

Post by cjs »

BitWise wrote:
Sadly no emulator in the OED.
You must be using one of those cheap-o cut-down versions where they remove most of the content. :-P I had no problem finding it in mine.

The word comes from the Latin æmula̅tor, a "zealous imitator", and in English is first attested in 1589. The English meaning was first someone who acts as a rival or competitor ("You are friendly emulators in honest fancie") and it soon was used in the Latin sense as well ("Hyperides is a great Emulator of Demosthenes," 1652).

More to our point, I suppose, is the first attestation in the computing sense: 1965 Communications Assoc. Computing Machinery VIII 753/2, "An emulator is a package that includes both special hardware and a complementary set of software." That should please some people here.

That said, there are further attestations that those people would probably call a simualtor: 1983 Austral. Microcomputer Mag. Sept. 65/1, "The emulator divides the system's memory into two sections. One section holds the operating system and whatever applications program is running. The second section of memory is used to emulate a disk drive." I suppose you can blame it on them being Aussies.
Attachments
oed-emulator.jpg
Curt J. Sampson - github.com/0cjs
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigEd »

I notice the OED publish quarterly updates (their job is to record usage - they know well that usage defines language) and a couple of years ago they added 'remote terminal emulation' and 'remote terminal emulator'. Such a thing is of course a program, a piece of software. I'm sure in due course they will catch up with what is, in our circles, common usage.

(I have read that in the UK it's more common to take usage as primary, whereas in the US it's more common to take documents such as dictionaries and style guides as primary. (Edit: see here, via here.))
litwr
Posts: 188
Joined: 09 Jul 2016

Re: Terminology: Simulator vs. Emulator

Post by litwr »

Thanks to this discussion I have become aware of the distinction between an emulator and a simulator! :)
So a simulator imitates a thing but it can't replace this thing. A chip simulator can't replace this chip. But an emulator effectively replaces a thing. A software developer or a gamer may use an emulator instead of real hardware almost (99.999% :D cases) always.
Interestingly that means that some software projects have rather not accurate titles that state about simulators. I know projects, for instance https://github.com/udo-munk/z80pack that part is called a simulator but it is rather an emulator. The 8080 simulator for the 6502 from the 70s is also rather an emulator. The mentioned programs are bad as simulators because they don't simulate electrical signals but these programs are good as software emulators. However some people use the correct word, for instance the author of fake6502 or authors of 6809.c.
Indeed "a flight simulator" is 100% correct as well as "a chip/computer (software) emulator or simulator".
BigDumbDinosaur wrote:
As the risk of being repetitive, an emulator is hardware
Would you like to check https://www.vocabulary.com/dictionary/emulator ?
A general synonym for word emulator is imitator. It may be a man, a computer or even an ape. :) A computer is as a combined power of hardware and software...
You can also check the usage examples from this page - I doubt that you will be able to find any phrase that means "an emulator as 100% hardware device". A software emulator needs hardware, so a computer emulator is a mix of software and hardware. In addition I doubt that any ICE can survive without some software in its ROM. :)
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigEd »

For me, the important lesson is that different people speak different dialects. This is an easier lesson for someone from the UK because we are almost constantly exposed to American English which is indeed a different dialect.

Anyone who has learned English as a second language will inevitably have picked it up from one place or another, and should know that they have learnt not English as such, but some particular dialect.

And then, there's the useful linguistic term idiolect, which is an individual's unique use of language. The very fact that there is such a term is informative.

And so, we should be clear that there is no single correct answer: as with protocols, we should be liberal in what we accept, even as we are careful in what we say.
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigDumbDinosaur »

litwr wrote:
BigDumbDinosaur wrote:
As the risk of being repetitive, an emulator is hardware
Would you like to check https://www.vocabulary.com/dictionary/emulator ?

That definition doesn't agree with Merriam-Webster, which dictionary is generally considered authoritative for American English. vocabulary.com is not much more authoritative than Wikipedia.

While conversational usage may conflate emulation and simulation, scientific usage does not.
x86?  We ain't got no x86.  We don't NEED no stinking x86!
rwiker
Posts: 294
Joined: 03 Mar 2011

Re: Terminology: Simulator vs. Emulator

Post by rwiker »

This forum really needs an "ignore" mechanism.
User avatar
barrym95838
Posts: 2056
Joined: 30 Jun 2013
Location: Sacramento, CA, USA

Re: Terminology: Simulator vs. Emulator

Post by barrym95838 »

rwiker wrote:
This forum really needs an "ignore" mechanism.
... and a "thumbs up" for you.

It's a shame that so much time and energy are expended on this annoying topic when they could be better spent creating, optimizing and celebrating 65xx stuff.

This post is my final one on this subject. From here on I will be using my biological ignore mechanism.
Got a kilobyte lying fallow in your 65xx's memory map? Sprinkle some VTL02C on it and see how it grows on you!

Mike B. (about me) (learning how to github)
BruceRMcF
Posts: 388
Joined: 21 Aug 2019

Re: Terminology: Simulator vs. Emulator

Post by BruceRMcF »

GARTHWILSON wrote:
White Flame wrote:
"My machine can behave like a completely different machine!" == the act of emulation.

This is generally accomplished by software simulating what goes on in the other machine to whatever detail necessary to correctly perform the desired emulation.

Simulation vs emulation is a false dichotomy.
That's ignoring the problem. There has to be a way to specify that it can connect to modules or other hardware that may be specific to the particular machine, with certain connectors, voltages, set-up times, hold times, etc.. ...
There only has to be such a specification if the functions being emulated extend to the connection of modules or other hardware specific to the system being emulated.

So that in contexts where such a thing must be specified, then a technical term in that context ought to make that clear.

In a context where the functions being emulated do not extend to the connection of modules or other hardware specific to the system being emulated, then it would not be necessary to specify that.
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Terminology: Simulator vs. Emulator

Post by BigDumbDinosaur »

BruceRMcF wrote:
In a context where the functions being emulated do not extend to the connection of modules or other hardware specific to the system being emulated, then it would not be necessary to specify that.

That would be simulation, not emulation. Emulation means the device in question is both hardware- and software-compatible with what is being emulated to a degree in which the emulator is indistinguishable from that which is being emulated. Any commercial aviator can readily explain the difference. As a Boeing engineer once said to me many years ago, the difference is in what happens when you make an unrecoverable error.
x86?  We ain't got no x86.  We don't NEED no stinking x86!
Locked