One of the capabilities that make the PC the ultimate gaming system is the possibility of emulating the operation of the consoles of a few years ago. Which allows us to enjoy their games from the computer without having the original console. However, it requires hardware that, in terms of requirements and compared to the emulated system, results in overkill. What is this phenomenon due to?
The best way to emulate a previous system is to have its circuits integrated into the new system in some way. However, when you don’t have the rights and w ant to allow the games to be played on this system, you must use an emulator. Which is a program that allows you to understand the code of system programs that you want to simulate and that our computer behaves as close as possible to the original console. However, achieving this faithfully is not only hard work, and all the more so as the systems to be emulated are more complex, but also due to a series of limitations.
What are the difficulties to emulate a console?
The main and most important is the lack of documentation on how some hardware functions work, not because they don’t know what they do, but how they do it. Quite simply, games are responsible for executing certain instructions at certain times which, after an analysis of the code, helps us to know what they are doing, but the key is rather in how they do it.
And there comes the big problem compared to the current emulation and to understand it it is necessary to take into account that certain instructions of a system have precise instants and depend on others. Such that if they are not respected, they can end up causing unexpected results in the emulation of the games or even the fact that they stop working.
Let’s not forget that these are systems that have been created by a single manufacturer, which is the one that controls the distribution and development of the games and, therefore, the development tools and kits. You don’t have to document the hardware to third parties, which makes emulator creators lose their minds.
What if the console is based on PC hardware?
The other example we have in the last two generations of Xbox and PlayStation, which use PC hardware, however, there are a series of differences that make emulation totally different on these systems.
- The boot system is different, which prevents directly loading the operating system of these consoles.
- Consoles use a series of special processors for certain tasks that are not available on the PC. A clear example is on-chip audio DSPs, which differ from platform to platform.
- Most games are compressed with a key, the decompression process requires first discovering it and then having enough capacity to do it fast enough without affecting game performance.
- The memory addresses to which certain peripheral functions are assigned are changed between systems, which may cause certain operating errors.
In general, the fact that a system uses a PC processor does not make it a conventional computer and there may be details behind the scenes that we do not know that require a titanic effort to be able to emulate them.