Progress Report: July 2019

Welcome to July’s Progress Report! Firstly we would like to apologise for the delay in publishing this report. RPCS3’s progress reports are solely written by volunteers and a few of our regular writers could not contribute to this report due to personal commitments. If you hate seeing RPCS3’s reports get delayed and would like to contribute to them, please apply here.

July was an absolute whirlwind of development that saw 60 pull requests merged from both our regular developers as well new contributors. That’s almost 2 pull requests merged everyday! This month, Nekotekina focused on improving TSX performance while kd-11 implemented a second round of bug-fixes that improved multiple AAA titles. On the other hand, eladash ironed out new features to help games go beyond their existing framerate caps and GalCiv implemented microphone support to finally allow RPCS3 to better emulate SingStar and other similar titles. Ohh and let’s not forget the surprise progress made with Metal Gear Solid 4 as well! There’s a lot to cover, so let’s jump straight into it.

In addition to the following report, further details of Nekotekina and kd-11’s work during July and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-07-10)
Status update from kd-11 (2019-07-23)
Status update from Nekotekina (2019-07-31)

Table of Contents

Major Improvements
Games
Other Improvements
Conclusion

For the compatibility list, it was another quiet month as testers were predominantly occupied with testing pull requests before they were merged. The Playable category remained the largest, while the Ingame category showed a small increase. A similar decrease can be seen in the Intro and Loadable categories, dropping the Loadable category to an all-time low of just 20 titles. Finally, the Nothing category doubled in size to 4 games, although it should be noted this was possibly due to an inaccurate report from a tester, which is to be corrected soon.

On Git statistics, there have been 7396 lines of code added and 3334 removed through 60 pull requests by 15 authors.
Continue reading Progress Report: July 2019

New Demon’s Souls 60FPS+ patch

Hello, I’m Whatcookie, an RPCS3 contributor. I’m here today to talk about the brand new 60FPS patch for Demon’s Souls. But before we discuss the details of the patch, let’s first take a look at some 4K 60FPS gameplay:

Demon’s Souls has long been one of the most popular titles for RPCS3. When it went ingame for the first time it made gaming headlines everywhere. I had been following RPCS3 pretty loosely at the time, but when Demon’s Souls went ingame I finally tried out the emulator. Back then the graphics were quite broken, and I was lucky if the framerate went over 20FPS. But despite all that it was still amazing to me. I thought to myself “Wow, it will be so incredible when the game is playable at 30FPS… maybe in 2 years or so”. The game ended up being very playable much earlier than I expected, all the way back in 2017. Since performance was so solid I thought that it would only be a matter of time before someone out there would make a 60FPS patch.
Continue reading New Demon’s Souls 60FPS+ patch

Progress Report: June 2019

Welcome to June’s Progress Report! This month saw a wide variety of… bzzzt we interrupt this broadcast for an important announcement!

RPCS3’s progress reports are written solely by volunteers and we’re looking for more dedicated writers to help us write them. If you have the knowledge, time and are willing to help, please apply here. And secondly, we have recently added functionality that makes it possible to unlock the framerate limit of many games. While this exciting new feature doesn’t work on every game, some big titles such as Uncharted 1-3, The Last of Us, Red Dead Redemption and more are able to go over their framerate cap of 30FPS for the first time! We require the help of the community to submit test results for as many games as possible to determine the effectiveness of the feature. For more details, please click here.

Now back to our regular coverage! This month saw a wide variety of important contributions from both lead developers, Nekotekina and kd-11 as well as many of our usual contributors. June also marked an important milestone in compatibility for the emulator as shown below. In this report, we’ll be going over the implementation of native MSAA in RPCS3 and mutli-threaded RSX workload support, as well as improvements to PPU scheduling and a significant overhaul to the DevOps environment.

In addition to the following report, further details of Nekotekina and kd-11’s work during June and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-06-10)
Status update from Nekotekina (2019-06-24)
Status update from kd-11 (2019-06-25)

Table of Contents

Major Improvements
Games
Other Improvements
Upcoming
Conclusion

Although June was a slow month for compatibility improvements due to our testers taking a break, it did quietly mark the monumental milestone of the Playable category finally becoming the largest category in our compatibility list! This came to fruition from years of development, testing and re-working to ensure a perfect balance of accuracy and performance to emulate the PlayStation 3. While there is still much to be done, the momentum from these milestones continue to accelerate development. In addition to this, the Intro and Loadable categories decreased due to a few games being moved to Ingame or Playable for the first time. The Ingame category also saw a net decrease due to further maintenance done by merging duplicate game entries. This culminated into our second milestone, where the combined percentage of the Loadable and Nothing categories dropped below 1% for the very first time!

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (June 2019)

On Git statistics, there have been 24284 lines of code added and 14514 removed through 42 pull requests by 12 authors.
Continue reading Progress Report: June 2019

Progress Report: May 2019

Welcome to May’s Progress Report! Firstly we would like to apologise for the delay in publishing this report. RPCS3’s progress reports are solely written by volunteers and a few of our regular writers could not contribute to this report due to personal commitments. If you hate seeing RPCS3’s reports get delayed and would like to contribute to them, please apply here.

This month saw some major leaps by Nekotekina and kd-11 on the SPU and RSX fronts. Nekotekina implemented SPU PIC support while kd-11 improved the surface cache implementation. Meanwhile, Megamouse made multiple improvements to the UI, GalCiv overhauled the DualShock 3 pad handler and ruipin tackled regressions in the SPU LLVM backend when using Mega SPU block size.

In addition to the following report, further details of Nekotekina and kd-11’s work during May and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-05-09)
Status update from Nekotekina (2019-05-14)
Status update from kd-11 (2019-05-27)

Table of Contents

Major Improvements
Games
Other Improvements
Conclusion

This month RPCS3 reached one of the most significant milestones in game compatibility. After intensive testing and merging of duplicates, as mentioned in the previous month’s report, the Playable category has tied with the Ingame category at 43.71%. RPCS3 has surely come a long way to have the Playable category stand on the cusp of overtaking the Ingame category. On the other hand, Intro section saw a modest drop while the number of Loadable and Nothing games remained unchanged. For a more detailed look, you can view the compatibility history page to see exactly which games had their status changed this month.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (May 2019)

On Git statistics, there have been 9391 lines of code added and 5430 removed through 45 pull requests by 12 authors.
Continue reading Progress Report: May 2019

Progress Report: April 2019

Welcome to April’s Progress Report! Firstly we would like to apologise for the delay in publishing this report. RPCS3’s progress reports are solely written by volunteers and a few of our regular writers could not contribute to this report due to personal commitments. If you hate seeing RPCS3’s reports get delayed and would like to contribute to them, please apply here.

This has been a very busy month, which saw many contributions from our regular developers and even a few newcomers. Major improvements have been made to RSX emulation by kd-11, fixing the texture cache and improving on the shader decompiler. Meanwhile, eladash in his usual style, fixed a multitude of bugs relating to savedata handling and the PPU/SPU interpreters/recompilers. Numan (Inviuz) implemented a fringe syscall needed for Metal Gear Solid 4 to boot and Nekotekina squeezed quite a bit more performance out of the SPU LLVM path. To also improve the visual aspect of the emulator drysalter created two beautiful new themes and lastly GalCiv expanded DualShock 3 Support to Linux. These and many more improvements have all contributed to making RPCS3 both a better piece of software and a better emulator, moving a bunch of new games into the Playable category.

In addition to the following report, further details of Nekotekina and kd-11’s work during April and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-04-07)
Status update from kd-11 (2019-04-23)

Table of Contents

Major Improvements
Games
Other Improvements
Conclusion

This month RPCS3 reached another milestone in game compatibility. It’s the first time that the Playable category surpasses 40%! As a result, the Ingame and Intro categories see an equivalent, while the Loadable category goes down to 29 games. We are also gearing up to undertake further maintenance to the compatibility list by identifying and merging duplicate entries in the coming months! For a more detailed look, you can view the compatibility history page to see exactly which games had their status changed this month.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (April 2019)

On Git statistics, there have been 9921 lines of code added and 2967 removed through 113 commits by 16 authors.
Continue reading Progress Report: April 2019

Progress Report: March 2019

Welcome to March’s Progress Report! If you were left wanting more after last month’s report, then your wait is over. March saw massive strides in all facets of the emulator as multiple work-in-progress pull requests from our regular developers were finally completed and merged. To start things off, Nekotekina implemented a new LLVM-based SPU interpreter, updated the LLVM submodule to version 9 and fixed the “Out of memory” errors faced by some games. On the other hand, kd-11 continued his mission to improve the RSX texture handling which fixed issues faced in over two dozen titles while GalCiv implemented native support for the DualShock 3. Finally, elad335 made a host of improvements to various core components improving performance and accuracy in an assortment of titles, most notably God of War 3, when running on Windows.

In addition to the following report, further details of Nekotekina and kd-11’s work during March and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-03-02)
Status update from Nekotekina (2019-03-05)
Status update from kd-11 (2019-03-18)
Status update from Nekotekina (2019-03-30)

Table of Contents

Major Improvements
Games
Other Improvements
Conclusion

This month saw more maintenance work done to the compatibility list where duplicate game IDs for the same game were merged into one single entry. A grand total of 118 threads were merged allowing for a fairer representation of RPCS3’s compatibility at this time. Adding to this, our community of testers continued their efforts in acquiring and testing obscure titles that had not been tested recently. The results of this revealed that many of the titles in the Ingame and Intro categories were now indeed Playable and moved according. Thanks to the dual effect of both efforts, the Playable category saw a marginal increase while the Ingame and Intro categories saw a sharp decrease in total number of games listed. Finally, thanks to elad335’s improvements to sys_vm, Doom 3: BFG Edition moved from Nothing category straight into the Playable category, leaving just two more titles in the Nothing category! For a more detailed look, you can view the compatibility history page to see exactly which games had their status changed this month.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (March 2019)

On Git statistics, there have been 6331 lines of code added and 2573 removed through 105 commits by 9 authors.
Continue reading Progress Report: March 2019

Progress Report: February 2019

Welcome to February’s Progress Report! This month saw smaller number of contributions from our regular developers as most of the improvements were still a work-in-progress that required further tweaking before they could be merged in the upcoming months. That’s not to say this February didn’t have big improvements though. On the contrary, this month kd-11 finally implemented the much anticipated On-Screen Keyboard while GalCiv managed to emulate multiple PlayStation 3 accessories using regular controllers. If that wasn’t enough, thanks to the multiple other performance improvements to the emulator, exclusive titles such as Genji: Days of the Blade have seen a huge uplift in performance.

In addition to the following report, further details of Nekotekina and kd-11’s work during February and upcoming contributions can be found in their reports on Patreon. This month’s Patreon reports are:

Status update from kd-11 (2019-02-08)

Table of Contents

Major Improvements
Games
Other Improvements
Upcoming
Conclusion

This month saw RPCS3 reach another milestone in game compatibility with the Ingame and Playable categories cumulatively crossing 85%! This was largely thanks to the conscious efforts of testers to retest all games in Intro, Loadable and Nothing categories and report issues faced to the developers. Once provided relevant causes, our developers were able to fix issues plaguing many of these titles. Their efforts paid off with the Intro category decreasing by 66 titles. But this is just the beginning, with further work being done to improve these titles.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (February 2019)

On Git statistics, there have been 2209 lines of code added and 447 removed through 21 pull requests by 9 authors.
Continue reading Progress Report: February 2019

Progress Report: January 2019

Welcome to the January 2019 progress report! This month saw significant improvements to the core components of RPCS3 such as the introduction of multithreaded cache compilation for the SPU LLVM recompiler, reimplementation of the graphics framebuffer management, overhaul of the audio backend and much more. We also saw RPCS3’s version bump to 0.0.6 to better showcase the state of the emulator.

In addition to the following report, further details of Nekotekina and kd-11’s work during January and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from Nekotekina (2019-01-01)
Status update from kd-11 (2019-01-02)
Status update from kd-11 (2019-01-27)

Table of Contents

Major Improvements
Games
Other Improvements
Conclusion

Over at our forums, a few user and moderators have come together to acquire and test titles that have not been tested recently. Our developers have also been hard at work debugging niche issues that seem to prevent a few titles from progressing ingame. The results of their targeted efforts gives us veracious compatibility statistics from which we can see a big decrease in Intro and Loadable categories and a corresponding increase to Playable and Ingame categories.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (January 2019)

On Git statistics, there have been 8179 lines of code added and 5073 removed through 36 pull requests by 9 authors.
Continue reading Progress Report: January 2019

Progress Report: December 2018

Welcome to our (2018) December Progress Report! We are extremely happy to finally push this report out to you guys after the many delays, for which we tried to make up with other kinds of updates along the way. We hope that you’ll enjoy our deep dive about the last month of the past year, and find its stories equally as intriguing.

December has been an absolute whirlwind for RPCS3 with improvements made to various parts of the emulator. Nekotekina greatly improved performance with the introduction of Approximate xfloat while kd-11 fixed a wide variety of graphical issues affecting multiple AAA titles. Apart from our full-time developers, our regular contributors also made a plethora of improvements to the texture cache predictor, cellCamera emulation, controller/mouse support, GUI and tons of bug fixes. We’ve tried to detail as many as we possibly could in this report. So without further ado, let get into it!

In addition to the following report, further details about Nekotekina and kd-11’s work during December and their upcoming contributions can be found in their weekly reports on Patreon. December’s Patreon reports were:

Status update from kd-11 (2018-12-10)

Table of Contents

Major Improvements
Games
Other Improvements
Upcoming
Conclusion

This month saw improvements to various aspects of the emulator and the compatibility list is no exception. At the start of 2018, the compatibility list was revamped to allow us to merge multiple game IDs for the same game into one single entry. This helped reduce duplication of entries and enhance the quality of the statistics we provide. While we were able to merge IDs of different regions together, due to the way the compatibility list database was structured, titles with multiple IDs from the same region could not be merged and hence were shown as separate entries. Not wanting to leave the job half done, AniLeo refactored the compatibility list once again this month to now allow us to merge IDs from the same region as well!

With this change, we can eliminate unnecessary duplication entirely and significantly improve the quality of our statistics to properly represent the amazing progress made with the emulator. If you take a look at the metrics for this month, you will notice that the number of games has decreased across all categories. This is solely due to the above mentioned revamp of the compatibility list. However, if you take a look at the compatibility history page, we can see that the Playable category has increased by over 15 titles and Ingame category has increase by over 30 new titles. The nothing category also reduced by one, bringing the total to just 3 titles!

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (December 2018)

On Git statistics, there have been 4,802 lines of code added and 2,530 removed through 105 commits by 18 authors.
Continue reading Progress Report: December 2018

Progress Report: November 2018

Welcome to November’s Progress Report! As 2018 now comes to close, we hope you’re enjoying the holiday season. In this report, we will be detailing kd-11’s work on rewriting the FIFO and draw call processing which provides a noticeable improvement in performance in quite a few games. This month also saw the return of another long-time contributor, GalCiv whose contributions fixed a large number of regressions in multiple games. We also saw exclusive titles such as Gran Turismo 5 and MLB: The Show 16 go ingame for the first time on RPCS3. We’ve got lots to share so let’s jump straight into it!

In addition to the following report, further details of Nekotekina and kd-11’s work during November and upcoming contributions can be found in their weekly reports on Patreon. This month’s Patreon reports are:

Status update from Nekotekina (2018-11-04, part 2)
Status update from kd-11 (2018-11-08)
Status update from kd-11 (2018-11-24)
Status update from Nekotekina (2018-11-30)

Table of Contents

Major Improvements
Games
Other Improvements
Upcoming
Conclusion

For the first time, the percentage of games in the Ingame and Playable categories have risen above 80%. This marks yet another milestone in game compatibility for RPCS3. As the accuracy and performance improves, we will see this ratio improve even further! Thanks to the intensive testing done by our testers this month, 95 games were moved out of Intro and Loadable categories. Also, multiple duplicate titles across all categories were identified and merged, improving the overall accuracy of the compatibility list. Finally, the elusive Nothing category has dropped to just 4 games. For a more detailed look, you can view the compatibility history page to see exactly which games had their status changed this month.

Game Compatibility: Game Status
Game Compatibility: Monthly Improvements (November 2018)

On Git statistics, there have been 4,229 lines of code added and 1,843 removed through 30 pull requests by 11 authors.
Continue reading Progress Report: November 2018