A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
Go to file
Henrik Rydgård 16d97aa810
Some checks failed
Build / build-windows (ARM64) (push) Has been cancelled
Build / build-windows (x64) (push) Has been cancelled
Build / build-uwp (push) Has been cancelled
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Has been cancelled
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Has been cancelled
Build / build_test_headless_alpine (push) Has been cancelled
Generate Docker Layer / build (push) Has been cancelled
Build / test-windows (push) Has been cancelled
Build / test (macos-latest) (push) Has been cancelled
Build / test (ubuntu-latest) (push) Has been cancelled
Merge pull request #19507 from hrydgard/misc-fixes-again
Prevent soft-locking the emulator on bad PBP files
2024-10-03 19:08:31 +02:00
.github Merge pull request #19371 from fjtrujy/master 2024-08-24 16:57:01 -06:00
android vr banner fix 2024-10-03 18:15:42 +02:00
assets Add missing translation string for RAIntegration 2024-10-03 16:52:11 +02:00
cmake Warning fixes 2024-05-20 10:04:11 +02:00
Common Fix a wrong assert 2024-10-03 16:52:34 +02:00
Core Warning fixes 2024-10-03 18:19:11 +02:00
dx9sdk@f481ecb043 Bump dx9sdk submodule 2024-09-18 21:34:05 +02:00
ext Fix broken libvulkan symlink 2024-09-24 13:54:00 +02:00
ffmpeg@82049cca2e Bump ffmpeg submodule 2023-10-15 07:58:30 +02:00
GPU Fix possible framebuffer binding bug in EmuScreen 2024-10-02 16:21:53 +02:00
gradle/wrapper Update to the latest version of gradle. 2024-06-19 11:13:00 +02:00
headless RetroAchievements: Cleanup better on login failure 2024-09-26 01:09:56 +02:00
icons Add gold icon for Mac 2023-04-19 14:12:13 +02:00
ios iOS: Unify style for entitlement messages 2024-09-04 12:57:37 +02:00
libretro RetroAchievements: Cleanup better on login failure 2024-09-26 01:09:56 +02:00
macOS Typo fix 2024-06-13 00:00:33 +02:00
pspautotests@2e02c4a7c0 Update pspautotests submodule 2023-03-31 20:59:45 +02:00
Qt Add Copy button for calculated CRCs on game info screen 2024-09-02 22:48:47 +02:00
scripts Update makeappimage_64-bit.sh 2024-06-21 17:21:51 -04:00
SDL MacOS: Fix text input (got broken in #19441, would no longer send CHAR events) 2024-10-02 16:21:53 +02:00
source_assets Add play/pause button to the bottom right of the pause screen 2023-12-11 13:56:16 +01:00
Tools Add new strings 2024-09-24 10:51:50 +02:00
UI Add a "Back" button to the crash screen for convenience 2024-10-03 18:55:22 +02:00
unittest RetroAchievements: Cleanup better on login failure 2024-09-26 01:09:56 +02:00
UWP Update UWP.vcxproj.filters 2024-10-01 21:29:38 +02:00
Windows Windows inputbox: Add flags field, delete dupe code, add ability to mask passwords 2024-09-26 10:48:31 +02:00
.editorconfig Simplify the inner loop of ff_atrac3p_ipqf (prepare for SIMD) 2024-04-13 10:35:42 +02:00
.gitattributes Add a .gitattributes to normalize newlines. 2014-09-26 21:20:50 -07:00
.gitignore ignore vscode files 2024-09-18 17:42:56 +02:00
.gitlab-ci.yml libretro: macOS x86: Don't use system libpng 2024-08-19 09:39:50 -04:00
.gitmodules Ugprade miniupnp submodule to latest 2024-06-05 00:18:00 +02:00
.ycm_extra_conf.py Merge ext/native/ext/... directly into ext. 2020-09-30 00:30:42 +02:00
appveyor.yml Appveyor: disable scanning for tests. 2017-03-20 07:22:11 -07:00
asciifont_atlasscript.txt Split the atlas into three, well two, but two different cases for the fonts. 2021-12-10 23:22:08 +01:00
b-appstore.sh iOS: Default to 2x internal resolution, slight build script improvements 2024-05-20 10:04:11 +02:00
b.sh Add NO_MMAP flag in the compilation scripts 2024-07-29 17:54:06 +02:00
build_ppgeatlas.sh Switch all images to dynamic lookup in the atlas by string ID. 2020-03-01 12:06:47 +01:00
build.gradle Android: Another gradle plugin version bump. Typo fix. 2024-10-01 10:04:43 +02:00
buildatlas.sh Add play/pause button to the bottom right of the pause screen 2023-12-11 13:56:16 +01:00
CMakeLists.txt Minor CMake fix 2024-09-30 16:43:17 -04:00
copyrelease.sh Update copyrelease.sh 2017-05-17 20:20:47 +03:00
Dockerfile Using latest sdl2 version 2024-07-19 00:23:09 +02:00
font_atlasscript.txt Split the atlas into three, well two, but two different cases for the fonts. 2021-12-10 23:22:08 +01:00
git-version.cmake Build: Avoid git-version regen if matching. 2022-12-24 17:42:09 +00:00
gradle.properties Fix some gradle deprecation warnings 2024-01-17 23:43:00 +01:00
gradlew Add Gradle build. This time, we don't remove the old build system and we don't switch Travis. 2017-03-15 19:42:17 +01:00
gradlew.bat Add Gradle build. This time, we don't remove the old build system and we don't switch Travis. 2017-03-15 19:42:17 +01:00
history.md linkify readme 2024-01-27 10:55:42 +01:00
LICENSE.TXT Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK. 2012-11-04 23:24:00 +01:00
link_readme.py Fix readme 2023-09-08 17:03:05 +02:00
notinstalled.txt Add InnoSetup script to make a basic installer. 2013-10-15 11:55:02 +02:00
ppge_atlasscript.txt Update PPGE atlas (font used for in-game save dialogs etc) 2016-02-15 19:24:39 +01:00
ppsspp_config.h Merge pull request #18498 from KatyushaScarlet/dev-loongarch64 2023-12-09 17:42:17 +01:00
ppsspp.desktop.in Improve Freedesktop integration 2022-10-05 01:21:52 +02:00
ppsspp.iss Add assets/vfpu to Windows installer generator script 2023-09-08 13:32:35 +02:00
README.md Replace links to Orphis buildbot with /devbuilds 2024-04-07 21:14:45 +02:00
settings.gradle Remove duplicate library; use the existing one 2018-10-06 20:01:28 +03:00
tesselationhwON-mesa3drun.sh Script mesa3d enable for HW Tesselation 2017-01-28 04:47:41 +11:00
test.py Temporarily disable the gpu/vertices/texcoords test that is not quite working 100% on ARM 2024-04-29 11:43:31 +02:00
ui_atlasscript.txt Add play/pause button to the bottom right of the pause screen 2023-12-11 13:56:16 +01:00

PPSSPP - a fast and portable PSP emulator

Created by Henrik Rydgård

Additional code by many contributors, see the Credits screen

Originally released under the GPL 2.0 (and later) in November 2012

Official website: https://www.ppsspp.org/

Discord: https://discord.gg/5NJB6dD

No BIOS file required to play, PPSSPP is an "HLE" emulator. Default settings balance good compatibility and speed.

To contribute, see the development page. Help testing, investigating, or fixing is always welcome. See the list of issues.

For the latest source code, see our GitHub page.

For documentation of all kinds (usage, reference, development), see the documentation on the main website

For build instructions and other development tutorials, see the wiki.

To download fresh development builds for Android, Windows and Mac, go to the /devbuilds page

For game compatibility, see community compatibility feedback.

What's new in 1.17.1

  • Fixed green rendering errors on some PowerVR GPUs (#18781)
  • Release all held keys on pause to avoid "stuck keys" after unpausing or in run-behind-pause (#18786)
  • UI fixes (#18785)
  • Update libchdr with zstd support, warn the user about bad CHDs (#18824, #18803)
  • Add workaround for AdHoc mode in Resistance (#18821)
  • Fix graphics in Tokimeki Memorial 4 (#18822)
  • Fix crash in UFC 2010 on Mali GPUs (#18813)
  • Temporarily disable MSAA on Adreno GPUs due to crashing (#18819)
  • Fixed some crashes and optimized the game metadata cache (#18794, #18775)
  • Additional crashfixes and similar (#18777, #18779, #18823)
  • Fixed playback of frame dumps with Vulkan (#18793)
  • Volume slider added for RetroAchievements sounds (#18772)

What's new in 1.17

  • Rendering performance and fixes
    • Fix for very old rendering issue in Tokimeki Memorial 4 (#18650) (didn't quite work, see 1.17.1)
    • Performance improvement in Tactics Ogre by avoiding a readback (#18599)
    • Cull small draws that are quick to check that they are offscreen (#18446)
    • Assorted optimizations (#18586, #18573, #18476, #18413, #18416, #18219)
    • Fix HUD in Tiger Woods 06 (#18554)
    • Adrenotools support added - you can now load custom Vulkan drivers on Adreno (#18532, #18548, #18699)
    • Fix rendering with bad Z parameters, fixes homebrew Zig example (#18535)
    • Fix Z problem in Hayate no Gotoku!! Nightmare Paradise #18478
    • Fix frozen pitch meters in MLB games (#18484)
    • Enable MSAA on modern mobile devices (Vulkan-only) (#18472)
    • Fix video flicker in Naruto: Ultimate Ninja Heroes 2 (#18454)
  • UI
    • Track total time played per game (#18442)
    • When opening the pause menu, there's now an option to keep the game running behind the menu. This is enforced in multiplayer to avoid inadvertent desyncs (#18517, #18515)
  • ISO loading improvements
    • The CHD file format is now fully supported (use chdman createdvd!), including with Remote ISO and Retroachievements
    • Improvements to remote ISO: optional tab on home screen, can now share whole folders (#18627, #18639, #18640, #18631, #18632, #18633,)
  • Controller and touchscreen fixes
    • More control bindings, organize into categories (#18635, #18589)
    • Fix inverse deadzone (low end) for joystick input
    • Fix analog deadzones for XInput controllers (#18407)
    • Improved tilt control further (#18533)
    • Mouse input supported on Android (#18551, #18473)
    • Customizable threshold for analog-trigger to button-press mapping, customizable delay for mouse-scroll key-up (#18621, #18585)
    • Make it work better to bind an analog stick to four buttons, useful for camera control in some games
    • Can now unpause with the key you bound to pause (#18591)
  • Other fixes and updates
    • More work on the IR JITs (#18234, #18235, #18228, #18227, #18226, many more)
    • Moving the memstick directory on Android is now faster and safer #18744
    • Workaround problems in Add Doko Demo Issho, Driver 76, Harukanaru Toki no Naka, Ace Combat by slowing down the emulated UMD drive to match reality better (#18436, #18445)
    • VR: Quest 3 rendering issues fixed (#18677)
    • Various bugfixes in texture replacement (#18638, #18610, #18519, #18466, #18747)
    • RetroAchievements: Rich presence, renamed Challenge Mode back to the recommended Hardcore Mode, various error handling improvements, configure per game (#18468, #18651, #18488, #18428, #18425)
    • HLE: Slice large-and-slow memcpy/memset operations, can help with some stalls. (#18560)
    • Other various minor fixes and optimizations (#18558, #18555, #18538, #18529, #18450, #18314, #18233, #18678, #18749, #18736, #18704)
    • SoftGPU fixes (#18362)
    • Fixed international fonts on Steam Deck (#18732, #18734)
    • GoExplore (GPS app) now starts up and allows navigation (#18665, #18666, #18668, #18669)
    • SDL: Improve input latency in Vulkan mode by running rendering on a separate thread (#18268)
    • Assorted multiplayer fixes (#18435)
    • Support for emulating the infrared port of the original PSP through sceSircs (#18684)

What's new in 1.16.6

  • Fix performance issue with Vulkan descriptor set allocation (#18332)
  • Smoother loading of replacement textures
  • Fix the store on iOS (#18323)
  • Fix problem with waves background (#18310)
  • Some translation updates
  • Other minor fixes

What's new in 1.16.5

  • Additional crash and memory-leak fixes (#18243, #18244, #18247)
  • Revert bad change that broke things with hardware transform turned off (#18261)
  • Fix menu texture problem in Naruto Kizuna Drive in OpenGL (#18255)
  • Apply flicker fix to WWE SvR 2007
  • More efficient handling of accelerometer events (#18250)
  • Fix for jumpy graphics in Harvest Moon (#18249)

What's new in 1.16.4

What's new in 1.16.3

  • Fix crash bug and performance issue in Vulkan shader cache (#18183, #18189)
  • Fix crash in icon loading in homebrew store (#18185)
  • Add some memory safety check (#18184, #18194)
  • Fix problem when changing backend from the Windows menu (#18182)

What's new in 1.16.2

  • Fix for HTTP support on Linux on networks with shaky or incomplete IPv6 support
  • Assorted fixes for leaks and crashes (#18169, #18151)
  • Fix hang when switching UMD with RetroAchievements enabled (#18143)
  • Fix math bug in new IR JIT for x86 (#18165)
  • Minor math optimization -fno-math-errno (#18158)
  • Fix for software renderer crash

What's new in 1.16.1

  • Move RetroAchievements to the Tools tab in settings (#18127)
  • Fix graphics regressions in Hot Shots Golf 2 / Everybody's Golf 2 and Final Fantasy Tactics (#18142)
  • Fix hang on startup with OpenGL, that happened often if "buffer commands" was set to off.
  • Fix problem with the sc instruction that broke Beats (#18133, #18140)
  • Fix problem with the chat window accidentally closing on typing X (#18135)
  • Fix some crashes, add some asserts and reporting hooks (#18129)
  • Fix some text rendering in the software renderer (#18126)

What's new in 1.16

Special thanks to unknownbrackets for the new JIT compilers, and fp64 for finally cracking the vrnd instruction.

  • RetroAchievements support (#17589, #17631, many more). See RetroAchievements on ppsspp.org.
  • New JIT backends:
    • RISC-V, based on IR
    • x86 JIT based on IR. Often faster than the existing one.
  • Input fixes
    • Improve behavior when analog and digital inputs clash (#17960)
    • Combo mapping is now disabled by default (#17673)
    • Android: Better tracking of devices names (#17562, auto config)
    • Fix mapping custom touch buttons to analog inputs (#17433)
  • Rendering performance and fixes
    • Fix flicker in WWE Smackdown vs Raw 2006 (#18009), video flicker in Naruto 2 (#18008)
    • Fix bad colors in Syphon Filter: Logan's Shadow menu (#17965)
    • On lower-end devices, avoid "uber" shaders due to performance and driver bugs (#17449, #17922)
    • Allow disabling V-sync on Android with Vulkan, more SDL platforms (#17903, #18087)
    • On Vulkan, reduce input lag when "Buffer graphics commands" is set to off (#17831)
    • Assorted minor perf (#17810, #17505, #17478, #17471, #17452, #17446, #17442)
    • Fix shadows in MotorStorm (#17602) (not actually a rendering problem)
    • Fix rendering issue in Lunar Silver Star (#17451)
    • Add a cache for MakePixelsTexture, improving perf in God of War (#17534)
    • Lots of software renderer improvements (#17571, #17569, #17619, #17621, #17618, #17609, ...)
  • Networking
    • HTTPS support now enabled in store and for RA on Windows, Android, Mac, iOS (#17744, ...)
    • Ad-hoc: Fix for Metal Gear Acid issue with Link Battle (#17947)
  • Texture replacement fixes
    • Fix Tactics Ogre texture issues (#18001, #18011)
    • Fix problem with anisotropic filtering (#17930)
    • Fix glitches on D3D11 with KTX2 textures (#17749)
  • UI changes
    • Color emoji support on some platforms (#17854, #17856)
    • Use TTF fonts on SDL where available (macOS, Linux/Steam Deck) (#17844), support HiDPI (#17651)
    • Allow setting the PSP's MAC address directly (#17755)
    • Better looking notifications (#17606, #17674, #17672)
  • Cheats
    • Fix loading cheat dbs on Android devices with scoped storage (#17834)
  • VR (Quest, other Android VR devices)
  • Other
    • Fix horrible audio glitch in After Burner (#18076)
    • Emulate the vrnd instruction accurately (#17506, #17549)
    • Fix timing issue causing slowdowns in MLB games (#17676, #17677)
    • UWP keyboard support, many other updates (#17952, #17974)
    • Allow choosing the display resolution on Android again (#17473)
    • Fix issue running some file types out of the Download folder on Android (#17466)

Older news

Looking for older news?

You can also find the full update history on the website.

Adhoc support

Not fully functional, but some games work. Check the Ad-Hoc section of the forum for help.

Credit goes to: