Emulators & Virtualizers
One source of compatibility problems with older programs and games
is that APIs change as newer Operating Systems are released. APIs,
or Application
Programming Interface, is how a program communicates to the
Operating System, which in turn communicates with the hardware via
drivers. As the APIs evolve, the old games are increasingly unable
to talk fluently with the OS, to the point that they no longer speak
the same language. This is why we sometimes have to run the old
games in the OS that they were written for.
Setting up a dual boot is one way to address this, but as newer
hardware is often not supported by older OSs, this is not always
practical or even possible. No driver support or lack of available
required memory addresses are some of the reasons why. This is where
emulators and virtualizers come in.
Emulators, such as DOSBox,
creates a mathematical model (in the form of a software program)
that emulates ALL of the hardware, including the CPU. Because of
this, the overhead of running an emulator can be rather high, but
potentially perfectly emulate the ideal environment for your old
program or game.
Virtualization is similar
to emulation, but only emulates part of the PC. For some functions,
such as the CPU, it uses some of the host machine's real hardware.
Because of this, a virtualizer will not shield you from speed issues
or other incompatibilities, but will allow you to use a different
OS than that of the host PC. With a virtualizer you create a virtual
machine that you can run your old program in, from within the host
machine.
Virtualizer Pluses:
- Because they do not do full emulation, the overhead can be
lower than that of an emulator, though this is somewhat offset
by the overhead of a second OS.
- They fully support 32 bit Operating Systems and in some cases,
even 64 bit.
- You can install almost any OS that was designed for the architecture
of the virtual machine.
Virtualizer Caveats:
- Unlike DOSBox, you will also need to own and install the desired
Operating System in your virtual machine.
- You will not be shielded from all hardware incompatibility issues.
- Audio hardware emulation is no where as good as that of DOSBox.
- Development goals of these virtualizers are generalized, whereas
DOSBox's development goals are old game compatibility. As such,
DOSBox can emulate a wider range hardware than the above virtualizers
need to or can.
- Direct3D is not available on most virtual machines.
Conclusions
DOSBox should still be your first solution for DOS and Win
3x games. For Win 9x games, try to run them natively in Windows
with "Compatibility Mode" and in some cases various patches,
etc. For some games, a virtualizer may be your only answer. Though
I view it as a solution of last resort, it is a utility that belongs
in every classic gamer's tool kit.
Final notes: There are other uses for VPC. I have successfully
used VPC to install games that will not install in XP, but will
run in XP. Install it in VPC, transfer the files to the host machine
and find any registry entries, "Start Menu" items that
need to be made or system files copied, etc. You can also use it
to try things that think might be risky before you install it on
your real OS. You can easily keep a backup copy of any virtual machine.
You can help keep The Sierra Help Pages alive
by helping to defray some of the costs of hosting this site. If it has been of help to you, please
consider contributing to help keep it online.
Thank you. |
|