PPSSPP 1.20.3 - all sorts of improvements!

PPSSPP 1.20 is here - or actually 1.20.1, due to a build system mishap I had to increment the version immediately. Get it on the download page for PC or Mac! If you're on Android and already have it installed from Google Play, your update will arrive within a week (to catch crashes early).

PPSSPP 1.20.3 has now been rolled out, with some important bugfixes, including the iOS multitouch bug and background setting bugs. 1.20.2 also introduces an improved ad hoc server list.

See the detailed list of changes since the 1.19.x series, and the 1.20.x updates.

iOS bug alert!

The iOS version 1.20.1 has broken multitouch in OpenGL mode. Update to the latest instead.

Download now!

Changes in 1.20

Major UI improvements

The UI has been re-engineered to support both landscape and portrait layouts - previously landscape layout was simply squished into portrait which didn't look good nor did it work well. Additionally, screen rotation support has been added to the iOS version, which previously lacked it. Also, now touch control layouts and the display layout configuration are separate between portrait and landscape, which simply makes sense.

A large number of icons have been drawn and added to the UI, which makes it friendlier and easier to navigate (and they're now resolution-independent, so look sharper).

Ad hoc multiplayer - support for "relay servers"

Relay servers, or "aemu postoffice", are a new innovation in the PSP ad hoc multiplayer space - they make it far easier to configure, since you no longer have to mess with opening ports in your firewall etc. These are now automatically used for popular servers, and for other servers you can choose whether to try to use them or not.

For a technical overview, see the aemu postoffice design doc.

Rendering and performance fixes

Multiple graphical fixes have been done for Tales of Phantasia X, which recently received an English translation patch.

VSync now works a bit differently - you almost always want to have it on now. If you had it off before, try turning it on and making sure that "Low latency display" is on.

Brave Story performance has been drastically improved - if you used a lower resolution to play this game before, feel free to crank it up again.

A major glitch has been fixed in ATV: Offroad fury. Curiously this was caused by a rare CPU emulation bug, and only happened on ARM64 processors.

Outrun 2006 no longer has slowdowns, no more need to overclock emulation.

Smooth playback mode for audio

In Audio settings, you'll find the new "smooth" playback mode. This greatly reduces glitches when there are slowdowns in games, due to slow file access or background tasks on Android, or just insufficient performance. Since it slightly increases audio latency, it's not on by default, but on lower performance devices it really improves the experience.

Windows for ARM64 is now supported

It already mostly worked fine, but now this version is now officially supported and a few fixes have been made, so it can now be considered finished and supported. If you're using one of the new Snapdragon laptops, this is good news.

Android support

Unfortunately, due to changes in the Android platform, we had to drop support for the very oldest versions of Android. However, Android 5.0 and forward is still supported, and I don't anticipate raising the floor again anytime soon. Android 5 was released 12 years ago in 2014, so that's still pretty good support!

Controller fixes

There's now native support for DualShock, DualSense and experimental support for Switch Pro controllers on Windows. These previously had various glitches or didn't work at all - now they all work, and you can even get tilt input from DualSense.

Important regression fixes

A crash in 7th Dragon has been fixed, music is working again in Tony Hawk's Project 8, and adhoc multiplayer works again in the Syphon Filter games.

Other improvements

There's also been a large amount of smaller improvements, see the full list in the detailed changelog below!

And much more!

Detailed changelog

What's new in 1.20.3

  • Fix issue preventing ad hoc relay servers from working when RetroAchievements are enabled on Windows (#21420)
  • Some ad hoc UI improvements (#21432, #21433)
  • Fix crash/failure setting the background on iOS (#21409)
  • Fix logging to file (#21412)
  • Networking settings cleanup (#21418)
  • Some fixes for assorted rare crashes (#21422)
  • Fix issues when unpausing using a controller binding (#21424), DualSense Edge detection on Windows (#21426)
  • Fix missing savestate undo button (#21425)
  • MMPX texture upscaling algorithm has been restored, the new one has been improved (#21376) and renamed MMPX Advanced (#21421)
  • Fix support for custom game config for homebrew apps (#21434)
  • Improve insets handling on Android (#21437)

What's new in 1.20.2

  • Improved server list for ad hoc multiplayer, dynamically updated and you can now add/remove entries (#21326, #21389, #21351)
  • Fix broken multitouch on iOS with OpenGL (#21350)
  • Ad hoc relay connection improvements (#21352)
  • Fix a lot of minor UI issues (#21400, #21362)
  • Fix background image selection on Android and iOS (#21345, #21384, #21371)
  • Fix file permission issue on iOS (#21374)
  • Add a "hold" version of axis swap toggle (#21357)
  • Fix regression in Gripshift (#21377)
  • Fix crash on audio device switch on Windows (#21341)
  • Fix timing glitches in gamepad input on Windows (#21393)
  • And other assorted fixes.

What's new in 1.20.1

  • User interface

    • New feature: Proper support for Portrait Mode UI - you can now rotate your phone to vertical mode, and things will mostly work fine! (#21185, #21044...)
    • New feature: Separate touch controls and display layout configs for landscape/portrait, new default touch control layout for portrait mode
    • New feature: Upload files via HTTP from devices on the same network
    • Savestate count limit can now be configured (#21112)
    • UI icons are now vector-based, making them look sharper on high-DPI screens (#20824, #20870)
    • Better handling of unsupported ISOs (#21169, #21166)
    • Misc: Improved text rendering, chat box improvements (#20653), PIC0 is now visible on the game screen (#20686), (#20611), rotation fixes (#21145), input fixes (#21248), fixes for XBox FullScreen Experience, background stretch (#21211), handle savedata in main game browser (#21277), Discord Presence improvement (#21246)
    • Show ICON1.PMF on the game info screen (#21303)
  • Regression fixes

    • In 7th Dragon, voice-related crashes are fixed (#20837)
    • Soundtrack is working again in Tony Hawk's Project 8 (#20775)
    • Fix crash in StormBasic homebrew apps (#20715)
    • Built-in songs in Beats work again (#20662)
    • Fix ad hoc in Syphon Filter games (#20642)
    • Fix strange cutscene speedups in Power Stone 2 (Power Stone Collection) (#2124)
    • Work around game bug to help more custom songs play again in GTA LCS (#20692)
  • Multiplayer

    • Support aemu relay servers for AdHoc multiplayer (#21116, #21271)
    • Allow customizing the proAdhoc server list (#20718)
  • Controller and touch screen input

    • Native support for DualSense (#20580, #20620, #21191), DualShock and Switch Pro (#20647) controllers on Windows - including tilt controls for DualSense and Switch Pro
    • Misc touch screen improvements (#21195, #21197, #21258)
  • Graphics

    • Fixed multiple graphical effects in Tales of Phantasia X
    • Reworked the VSync setting to be more intuitive. It's now pretty much never a bad idea to turn it on.
    • Fixes for various glitches in Tales of Phantasia X (#21173, #21141, #21205)
    • Some more framebuffer readback workarounds (#20640, #20631, #20632)
    • MMPX upscaling enhancements by crashGG (#20622, #20541)
    • Huge rendering speedup in Brave Story (#21151)
    • Fix rendering bug caused by CPU emulation bug in ATV Offroad Fury: Blazing Trails (#21238)
    • Partially fix rendering problem in Mahjong Artifacts (#21244) and The Mystery of the Crystal Portal (#21236)
    • Boost the GPU in Outrun 2006 to avoid unnecessary slowdowns (#21304)
  • Other game fixes

    • Fix savedata problem in Silent Hill: Shattered Memories (#21294)
  • Audio

    • Added "Smooth" playback mode, which evens out glitches (while adding a very small amount of latency)
    • Remove DirectSound support (#20533), add support for ultra-low-latency streams on WASAPI, available on some devices (#20535)
  • Platform support

    • Windows
      • D3D9 support has been removed (#19951, #20490)
      • ARM64 is now officially supported, and works great (#20863)
      • Correct fullscreen mode in Xbox Fullscreen Experience (#21189)
      • Assorted improvements (#20778, #20774)
    • Android
      • The minimum Android version has been raised for technical reasons, KitKat is no longer supported (#19658)
      • Support for Android devices with 16KB page size. This is a technical change, required by Google Play, that unfortunately forced us to drop compatibility with the very oldest devices (Android < 5). (#20788)
      • Shortcut widgets can now be created even if the app isn't running (#20798)
      • Removed support for classic Moga controllers, these were only a thing on early Android (#20762)
    • iOS
      • Add support for screen rotation
    • Linux
  • Debugger

  • Other

    • RetroAchievements: Upgrade the support library with perf fixes (#21081), various fixes and improvements
    • Add workaround for infamous God of War crash (#21148)
    • Fix assorted minor UI bugs (#21042, ...)