|Getting Started with Emulation
To understand what emulation is and how it works, it is important to understand how a video game console works. Hardware and software are the two fundamental components of a console. The hardware is the physical equipment such as the console itself, the controllers or other input devices and the physical media a game is stored on such as a cartridge or optical disc. The software is a component stored on the hardware. This would be the actual game itself stored on the cartridge or optical disc as well as a basic operating system stored on the console. When these two components come together, the hardware reads and follows instructions from the software. The end result produces both a video output and sound output of the game running on a television as well as the ability for the gamer to interact with the software through the use of a controller or other input device.
A computer works in much the same way as a home console does, the only difference is the complexity of the hardware as well as the language the hardware understands. An emulator is a piece of software that essentially translates the instructions from a video game and the console’s operating system into instructions a home computer or different console can understand. This eliminates the need for the actual video game hardware itself and instead uses the computer, monitor and existing input devices to run and use the game software.
There are many reasons that someone may want to use an emulator. Those reasons can range anywhere from wanting to move their games over to a more modern medium due to inevitable hardware failure or to up-scaling content from games of the past to take advantage of modern computer hardware. There are also unfortunately some illicit uses. Some see emulation as way to simply get free games without needing to pay for the console or even the software itself. This type of use is one that we do not condone and strongly discourage. This type of use will stifle the development of games as well as emulators and will not further the community in any way. In addition to that, many who look to use emulation for these purposes are simply interested in doing so to play games for the most current consoles of the day. Those users will be disappointed as it takes many years for emulation of more complex consoles to approach any level of playability.
No matter what console you are looking to emulate on your computer, you’ll at minimum need an emulator, and input device, and game software. An emulator will allow your computer to emulate the console of choice and run its software. An input device is most commonly a keyboard, although many gamers opt to use a gamepad for a more comfortable and authentic experience. The game software as previously mentioned, would be the software contained on a game cartridge or optical disc. Depending on the platform and emulator, you may also need a System ROM (also known as the "BIOS") or other plugins.
For most consoles, there are many different emulators that will all perform with varying degrees of playability. The primary factor in choosing an emulator will be compatibility. Compatibility is the measure of how many games an emulator is capable of playing with few to no glitches. Due to the methods emulators use, there is no such thing as a perfect emulator. It will never be possible to mimic the original hardware in every way, shape and form.
The next factor in choosing an emulator is speed. This determines how high the computer’s specifications need to be to match the full speed of the console you’re trying to emulate. Depending on the efficiency of the emulator and complexity of the console, some may require significantly higher specifications than others or it may not even be possible to emulate the console at full speed on present-day computer hardware. It’s also important to understand that no matter how efficient the emulator is, it will always require substantially higher specifications than the console it was originally designed to emulate. A good example would be the Super Nintendo. This console’s CPU was a mere 3.58MHz, but to emulate it at full speed a computer processor of over 100 times that clock speed could easily be required.
The last factor in choosing an emulator will be its feature set. All authors take different approaches in how they develop their emulators. Some choose to focus on accuracy and speed above all else and consider features to be a secondary concern. As such, the emulator may have very high compatibility and speed but may lack some expected features such as gamepad support, a full screen mode and many others. Other authors choose a more balanced approach and some emulators have been in development for many years and have successfully mastered both.
The best source of information to determine where an emulator stands in these categories will be its included documentation, typically in the form of a Readme.txt file or the authors’ website. At VTemulation.net, we’ve also individually evaluated all of the projects that we list and have categorized them by general playability and capabilities. Most beginners will want to start with the "Editor’s Choice" emulator, providing one exists for the platform and then proceed to move down to the "Recommended" emulators. Emulators listed in the "Other" category are typically not suited to general gaming due to being too early in development, having little to no compatibility with most games or simply being unstable.
Virtually all emulators will support the use of a keyboard as an input device, but this can prove to be uncomfortable and difficult to use for most console-based games. For this reason, it is generally best to use a PC gamepad or a controller converter. Controller converters can be found online in many different stores and they allow you to plug in a standard console controller and connect it to a computer’s USB port. The most commonly used controller for this is typically the Playstation DualShock controller due to its generic layout that can be easily adapted to button layout of many different consoles. It is also important to ensure that your emulator supports input from a gamepad.
For classic consoles that used cartridges, games are loaded into the emulator in the form of ROM dumps (commonly called "ROMs"). ROMs are a files containing all of the software from a single cartridge. They are created using special equipment that allows a computer to read a game cartridge and save its contents to a single file.
It is important to understand that typically, any distribution of commercial game software (in any form other than it's original), is illegal and we highly discourage it. As stated before, many emulators can run CD and DVD based games directly from your computer's optical drive and there are many quality "homebrew" public-domain ROMs created for cartridge based systems.
Depending on the particular console and the emulator, additional items may be required to properly emulate it. These can include plugins for emulators that use this architecture as well as a system ROM or BIOS image. Plugins can be required for certain emulators and they are separately developed projects that provide the sound, video, input and other core functionality to the emulator. This architecture allows for more flexible development of the emulator and also can allow users to tweak compatibility and performance. To determine if your emulator uses plugins, it is best consult the documentation that is included as well as to read the author’s site.
Some emulators may also require a System ROM or BIOS. This is the operating system the game console uses to load and run games as well as provide memory management and other functionality. This, like game software is copyrighted content and cannot be legally distributed. Luckily, many emulators are able to emulate a System ROM or BIOS and as such do not need to make use of this software.
Now that you have everything you need, it is extremely important to read the documentation that came with your emulator (and plugins, if applicable) thoroughly. Every emulator’s setup process is different and can vary greatly in its complexity. It is also important to understand that this can take a great deal of patience.
There are many resources available to help you. The first resource would be the documentation included with the emulator you are attempting to run. This will generally cover the basic setup of the specific emulator as well as common questions and answers. From there, many authors also post help materials on their website and may have a discussion forum to assist users. At VTemulation.net, we also provide a support forum that you are welcome to ask your questions in. We do ask however, that no matter where you choose to look for help, you keep the following etiquette in mind: