Tony Duell wrote:
Using your definition every machine that has writeable
microcode is "emulating"
something
else...
Not at all. If a machine has a writable control store, it simply has
an extensible
instruction set. Its only emulation if you use that microcode to
What if it has a writeable control store and _no_ ROM microcode? Or
perhaps just a enough ROM to bootstrap the main microcode off a disk (as
the PEEQ does). There's no instruction set built into the machine in that
case.
This is actually quite common. CADR lisp machines work in exactly this way.
Technically speaking, this is known as a dynamic instruction set, its simply not fixed.
implement
another
processor, like the worlds fasted PDP-8, coded on an 11/60.
Are you saying that if I take a PERQ and run the original POS microcode
then it's not an emulator (because that was the instruction set it was
originally designed to run, even though there's almost no hardware or
firmware specific features to aid in running that microcode) but if I
boot PNX (PERQ Unix, which uses a different microcode, optimised (?) for
C) then it's an emulator?
-tony
A PERQ running POS microcode is simply a PERQ running with one instrucion set, and a
PERQ running PNX is running a different instuction set. Because both instruction sets
are running at the same level of hardware abstraction, and not mimicing another
machine, neither is an emulator!
Emulators are simply mimics of other machines, however they are implemented.