Nearly six months after the Patreon launched the RPCS3 team have finally improved RPCS3 on Linux to the point where it has reached compatibility and stability parity with Windows. Thanks to the hard work by hcorion we can finally start to provide pre-compiled binaries in the form of AppImages for easy installation on your favorite distribution.
What Was the Issue?
There were a lot of problems. Back in January, quite literally nothing was working. RPCS3 would crash instantly upon booting any game, if the program itself would even start at all. Moreover, additional functionality like the debugger, framerate counter, and firmware installer were completely broken too. While many of these auxiliary issues were quickly identified and fixed, the fact of the matter was that almost every game would hang after running for a few seconds. This turned out to be much more difficult to fix. This was caused by several different bugs in thread synchronization which were fixed continuously in the past few months. Finally, one last relatively small commit in early April fixed the last bug and suddenly RPCS3 on Linux went from basically nothing to Demon’s Souls and [redacted]. Or so we though, but we quickly found out that the LLVM recompiler was completely broken for a lot of users who just got completely nonsense errors. We encountered strange and esoteric bugs and oddities about LLVM and how various Linux software, including the Mesa drivers, were using it. These problems made RPCS3 unusable for a lot of people. A lot of false flags and red herrings later the bugs were fixed not by changing any code, but by using rare compiler flags. RPCS3 on Linux is now working as intended for everyone, including AMD and Intel graphics users with modern Mesa. Even Vulkan with Mesa is now working!
PlayStation 3 Games on Linux
Below are some popular PlayStation 3 games showcased running on Linux. Performance is about the same as on Windows, perhaps even a few percent better in some very intensive games like [redacted]. But take note: These images were either captured on a laptop with a very old i7-2670qm CPU, or a fast desktop with a i7-4770 CPU.
Demon’s Souls on an i7-4770
[redacted] on an i7-4770.
Catherine on an i7-2670qm.
|1942: Joint Strike (i7-4770), Ni no Kuni (i7-4770), Hatsune Miku: Project DIVA F (i7-2670qm), and The Elder Scrolls IV: Oblivion (i7-2670qm)|
Download and Instructions
Builds will be delivered on rpcs3.net in the form of AppImages. With this packaging method every dependency is already taken care of and no special prerequisites are needed. Moreover Travis-CI will build every single new merged pull request, package, and upload.
Be sure to read the quickstart guide as you required to install the official PlayStation 3 firmware in RPCS3. The guide also covers how to run games in practice. It has been updated to highlight one important configuration difference compared to the Windows version. Essentially log files, game data, save files, LLVM cache, and everything else like that will be located in ~/.config/rpcs3/, that is the hidden folder .config in your home directory.
The Future of RPCS3 on Linux
While compatibility and performance are now on par with Windows builds, there are still a few features missing and those are listed below.
Update: Controller support with evdev was merged recently. Refer to the quickstart guide and how to configure evdev for more information.
Input on Windows is supported via the keyboard, native DualShock 4, XInput, and mmjoystick handlers. The two latter are Windows specific input methods meaning that on Linux you can’t directly use any kind of gamepad with RPCS3 except the DualShock 4. You could map keyboard keys to your controller as a workaround but this isn’t optimal. Support for evdev input, that includes for example DualShock 3 and the Xbox 360 controller among many others, is being worked on right now in this PR.
RPCS3 works fine with XWayland but perhaps this isn’t optimal for everyone. However RPCS3 has moved over to Qt, and a lot of the Wayland groundwork is already in place.
RPCS3 is free and open-source software. Lead developers Nekotekina and kd-11 are working on it full time thanks to the generous funding from nearly 500 patrons. Moreover progress is greatly accelerated thanks to the help of everyone else that has contributed to RPCS3.
There are over 2000 games listed in the compatibility database, and only about 20 of those games were tested on Linux by the developers. While a selection of advanced games like Demon’s Souls and [redacted] seem to run fine, it can not be ruled out that there may be issues with other games that only happen on Linux. That is why your help is needed, please test your favorite games with different hardware and software configurations and report your findings on our Discord server or forums.
You can support Lead Core Developer Nekotekina and Lead Graphics Developer kd-11 on Patreon with the link below.