3 ms·
I’m curious. Is emulation development becoming easier these days now that modern consoles are essentially stripped down pc systems.
by deelowe 2y ago
I’m curious. Is emulation development becoming easier these days now that modern consoles are essentially stripped down pc systems.
- Keyframe 2y agoyes, and when generations share same-ish architecture it goes even faster.
- ultimaweapon 2y agoI don't know about the older generation so I'll explain how PS4 emulation can be achieve. The first step is to understand how the console run the game. The good news is the PS4 has been hacked and almost all of its file and information has been decrypted and dumped. The official PS4 SDK also leaked. Now we know how the console run the game. The next step is how to use this information run the game outside the console. The good news is PS4 system is just a modified version of FreeBSD, which mean how it works is very similar to the PC. A PS4 executable is just a custom ELF file. So to run a PS4 game outside the console we need to manually map the game executable and provide the symbol it needed somehow (e.g. a custom implementation or reuse the PS4 library).
- lxgr 2y agoWhile that might be true for the CPU side, that description is omitting a ton of complexity on the GPU side this project must be doing.
- fasa99 2y agoExactly. I will make explain more how PS4 emulator can be achieve. First, you can make the whole universe. You need a universe for PS4 to live in. Then, you make do PS4 emulator. Now you have achieve.
- eddieroger 2y agoWe also have better access to others doing the same thing thanks to the Internet, and better and more computing power to figure out how these things work. But I imagine better access to information is a big driver.
- EPWN3D 2y agoThe common ISA definitely helps -- it opens the door to just running the game image directly and shoving the right dependencies under it (i.e. what WINE does) rather than having to boot the console's OS. Generally speaking there's been a lot of good work in the industry for binary translation too, cf. Rosetta 2. That's another tool in the box for hoisting a binary on to a different host environment.