4 ms·
A virtual machine does not have to simulate real hardware. So long as it processes instructions and has a state it can be a VM. DosBOX is an example of an emul
by tus88 7y ago
A virtual machine does not have to simulate real hardware. So long as it processes instructions and has a state it can be a VM.
DosBOX is an example of an emulator. It is not an implementation of DOS, it just pretends enough to trick games to run. Emulators usually just translate high level semantics without simulating the real system in any way.
- tus88 7y agoAnother way to imagine an emulator - think of a thin layer of software that read Python byecode, and then dynamically translated it to Ruby bytecode on the fly. This would be neither a Python implementation nor a Python VM - but it would be a Python emulator for the Ruby VM. But if someone wrote their own Python interpreter, like PyPy, this is a new Python VM implementation.
- benj111 7y agoThat's kind if what I was thinking. Scumm as far as I'm aware never existed on ARM, ( or Risc V for the sake of argument), so ScummVM on those platforms are in a sense Python on Ruby. This is of course hugely muddy. Nim for example can target C and Javascript, neither is an emulator, I'm not sure a 3rd target by a separate developer would be either?
- tus88 7y agoBut is Scumm on ARM just a thin layer converting Scumm "bytecode" to ARM machine code? Of course not, it is a full game engine just like on x86. A true Scumm emulator would translate Scumm script to another game engine like SGI (Sierras game engine), but of course due to the extremely high level nature of these game scripting engines finding direct translations would be near impossible.