This is history moved out from README.md, which was getting a bit long.
- Fix for graphics glitches in the on-screen keyboard
- A few crash fixes (#14085, #14089, #14091, #14092), a few adhoc fixes
- Glitchy menu audio on some devices (#14101), in-game UI font memory leak (#14078)
- Couple of adhoc fixes (#14106, #14117)
- Lots of minor bug fixes, crash fixes, and performance fixes and improvements.
- New Browse... button to allow opening SD cards on Android 11
- Countless AdHoc networking fixes by ANR2ME, for example Dragon Ball Shin Budokai, PowerStone, Bleach Heat The Soul 7, Kingdom Hearts, GTA: VCS and many more.
- Graphics issue with car reflections fixed in Outrun, Dirt 2 (#13636, #13640, #13760)
- Cut-off cards in Yu Gi Oh fixed (#7124).
- Numerous fixes to the builtin fonts by nassau-tk
- Added exception handler so PPSSPP stays alive if a game crashes (#11795/#13092)
- Desktop: Support for multiple instance multiplayer (#13172, ...)
- Workaround for rendering bugs with flat shading in iOS 14
- Multiple fixes to the IR interpreter (#13897, ...)
- UI: New fullscreen button on desktop platforms, optional navigation sounds (#13239)
- Audio and multiple hangs fixes in UWP version (#13792, ...)
- Partial microphone support (#12336, ...)
- Workaround for wacky action mirroring bug in Hitman Reborn Battle Arena 2 (#13706, #13526)
- Hardware texture upscaling for Vulkan, mipmap generation (#13235, #13514)
- Added MMPX Vulkan texture upscaling shader (#13986)
- Depth texturing support in Vulkan and D3D11 (#13262, #13556, ...)
- Performance fix for Test Drive Unlimited (#13355, ...)
- Allow rewind on mobile (#13866)
- Added option to disable on-screen messages (#13695)
- Added "Lower resolution for effects" on libretro (#13654)
- Allow chaining multiple post-processing shaders (#12924)
- Support for loading game-specific plugins (#13335)
- Fixed Assassin's Creed: Bloodlines Save issue on Android (#12761)
- Hanayaka Nari Wa ga Ichizoku: mono voices fixed (#5213)
- Additional fixed games:
- Namco Museum - Battle Collection, Vol 2 (#9523, #13297, #13298)
- Dream Club Portable (graphics bugs, GL and Vulkan) (#6025)
- Capcom Classic Collection Reloaded (stuck in return game) (#4671)
- Xyanide Resurrection (freezing) (#8526)
- Dissidia Final Fantasy Chinese (patched game, invalid address) (#13204)
- Crazy Taxi (#13368)
- Spiderman: Friend or Foe (#13969)
- Downstream Panic (US) (New Game crash) (#13633)
- Fix for control layout editor (#13125)
- More crashfixes (#13094, #13093)
- Improve download performance and cancel behavior (#13095)
- Restore the removed I/O on Thread option (#13096)
- Graphics and compatibility fixes (#12800, #12670, #12635, #12857, #12941, #11898, #12695, more)
- Assorted minor performance improvements, game load speedup (#12462, #12652)
- Screen inset (notch) support on Android (#12779)
- Analog stick support for menu navigation (#12685)
- Fixed audio glitches in SDL builds (#12916, #12920)
- Support more languages in in-game dialogs (#12702). Croatian language added to PPSSPP.
- Simple multiplayer chat (#12667)
- More advanced postprocessing (multipass, parameters) (#12905, #12901)
- Add PPSSPP-specific CWCheat (#12816, #12912)
- Reintroduce Cardboard VR, allow more resolutions (#12449, #8714)
- Fix some crashes (#12908, #12876)
- Ghost in the Shell graphics fixed (JIT inaccuracy with inf * 0) (#12519)
- Mac build now supports Vulkan on top of MoltenVK (#12583)
- Raspberry Pi 4 EGL crash fixed (#12474)
- VSync now supported on all backends, frame duplication option added for 30 Hz games (#12659, #12602)
- Camera supported on Windows, Linux and Mac (still no microphone though) (#12572, #12580, #12607)
- Darkstalkers fixed and working through software rendering. SW rendering fixed on GLES 2.0 (#12443, #12898)
- Hot Shots Golf slowdown and flicker on Vulkan fixed (#12873, #12746)
- Pangya Golf crashes and hangs fixed (#12718)
- Allow rebinding of right touch screen analog (#12486)
- Add option to prevent mipmaps from being dumped (#12818)
- Tilt control now have a base radius to help with deadzone (#12756)
- Mappable auto rotating analog stick to pass some game checks (#12749)
- Touch control position can now be snapped to a grid (#12517)
- HiDPI retina display support (#12552)
- Rapid-fire on touch control (#12601)
- Toggle mute button (#12643)
- Add option to resize game icons and more (#12646, #12637)
- Frames in-flight now configurable to reduce input lag at the cost of speed (#12660)
- Add toggle mode to combo button (#12623)
- SDL mouse support, Qt menu upgrades (#12612, #12817)
- Real support for Chinese patched version of Hatsune Miku Project Diva Extend (#13007)
- Some minor kernel module support (#13028, #12225, #13026, #13004, #13038, #13023)
- Fixed fullscreen toggling with Vulkan in SDL builds ([#11974])
- Sizing/touch fixes on Android
- Fixes for some crashes
- Flicker fixed in God of War that appeared with newer drivers for Mali GPUs (#12224)
- Improve performance of God of War on Vulkan (#12242), implement built-in GPU profiler (#12262, #12266)
- Vertex range culling fixed on ARM Mali (#12227)
- Started to improve VFPU precision, resulting so far in a fix for the long standing Tekken 6 leg shaking problem (#12217)
- Fixed a VFPU precision snafu on ARM64, fixing disappearing officers in Warriors Orochi (#11299) and some problems in Tomb Raider (#11179).
- Vulkan is the default again on Android versions newer than Pie
- Fix various homebrew store issues
- GPU pause signal handling fixed, fixing some hangs in Bleach and Armored Core games (#12160)
- Audio sample rate conversion handling fixes (#12147)
- Some Vulkan optimizations (pre-rotation (#12216), perf fix in Metal Gear Acid, etc)
- Multiple fixes for the UWP build (#12036, others)
- MP3 playback fixes (#12005)
- Audio in Motorstorm: Arctic Edge fixed by returning errors correctly (#12121)
- Audio glitches in Final Fantasy Tactics fixed (#9956)
- Camera display in Invizimals fixed (#12278, #8521)
- Added hotkeys for texture dump and replace (#11938)
- Added Visual Studio 2019 support. Windows XP is no longer supported (#11995, others)
- Fixes for video capture (#12069)
- Added a separate sound volume for alternative speed (#12124)
- Improved mouse control (Windows only) (#12173, #12176)
- Support for installing texture packs and ISOs from zips (#12175)
- Right analog support for touch controls (only used by patched games and some HD remasters) (#12182)
- Android: Fix OpenSL initialization, possibly helps audio crackle a little. (#12333).
- Fix graphics on Amazon Fire TV Stick 4K
- Fixed strange vehicle behavior in MGS:PW (somehow) (#12342)
- Avoid crash when starting PPSSPP due to bad AMD Vulkan drivers (#11802)
- PowerVR Vulkan display corruption fixed (#11744, #11747)
- Naruto Shippuden 3 hang fixed (#11780)
- Fixes to various lighting bugs (#11567, #11574, #11577)
- Fix control issue in Sonic Rivals and Rock Band (#11878, #11798, #11879)
- Significant performance improvement in Earth Defense Force 2 (#11172)
- Fix "real clock sync" setting (helps with latency for music games - #11813)
- More speed in FF4 effects and other generated curves (#11425)
- Support for resizing Vulkan on Linux (#11451)
- Improved support for GLES on Linux/IoT (#11507, #11537, #11541, #11632, #11746, #11806, #11845)
- Percentage based frameskipping (#11523)
- DXT accuracy improved, fixing thick white line in Gran Turismo sky (#11530)
- Fix Motorstorm freeze on non-Windows (#11618)
- Faster block transfer in some games like Digimon Adventures (#11531, #11553, #11776)
- Blending optimizations and improvements (#11543, #11620)
- Improve D3D11 rendering issues (#11584)
- Change default graphics backend to D3D11 or OpenGL (#11621, #11658)
- Remove some outdated settings (#11665, #11666, #11667)
- Fix remote disc streaming with ipv6 (#11689, #11700)
- Vulkan: Workarounds for some driver bugs for 5xx series Qualcomm GPUs (#11691, #11694)
- Fix some Qt port issues with recent performance improvements (#11720, #11807, #11808)
- UWP Xbox One: fix X/Back button confusion (#11740)
- Fix Formula 1 2006 timing issue (#11767)
- Fixes and workarounds for some vertex range culling bugs that broke a few games (#11785, #11859), and disable it on older GPUs (#11712, #11773, #11787)
- Android: Allow putting PSP storage on custom paths like SD cards (#11812)
- Corrected vocp instruction, fixing models in Artdink games (#11822, #11835)
- Bundle SDL in binary for macOS builds (#11831)
- Prevent keeping games open on Windows (#11842)
- Fixes for a couple of common crashes
- Reverted immersive mode change temporarily to see if it helps misaligned buttons
- Change default adhoc server address
- Update text of "Buy PPSSPP Gold" button
- Minor crashfixes, lang updates
- Save bug fixed (#11508)
- Fix for insta-crash on Galaxy Note 9, some Xiaomi devices, and the new nVidia Shield (#11441)
- Vertex range culling on most platforms, fixes DTM: Race Driver and similar (#11393)
- Major speed boost in some Gundam and Earth Defense Force games (#10973)
- Fix for issues with post processing shaders in GL 3+ (#11182)
- Fixes to sound output switching on Windows (WASAPI) (#11438)
- Detects DirectInput devices when running (#11461)
- Simple Discord integration (#11307)
- New debugging APIs (#10909)
- Task switching made a lot more robust (fixes GPD XD problems) (#11447)
- Texture decoding optimizations (#11350)
- Tons and tons of miscellaneous bugfixes and compatibility fixes
- Crashfixes, task switching and one in Phantasy Star Portable
- Improve graphics in PoP on some devices
- Crashfixes
- Fix broken graphics in flOw.
- OpenGL backend now properly multithreaded, giving a good speed boost.
- Various Vulkan performance improvements (like #10911) and memory allocation fixes.
- GPU command interpreter performance improvements (#10658)
- Various fixes for app switching and widgets (#10855) on Android
- Bugfixes and some performance improvements in the ARM64 JIT compiler and IR interpreter
- Shader cache enabled for Vulkan
- Multiple iOS fixes, including JIT (#10465) and file browser (#10921).
- Improved compatibility on Mac (#10113)
- Texture replacement ID bugfix (note: some textures from 1.5.4 may become incompatible)
- Adhoc multiplayer fixes (#8975)
- Vulkan support on Linux/SDL (#10413)
- Retroarch support
- Bugfixes and crashfixes!
- Full Vulkan support, also for Android now. Very fast on supported devices. (#10033, #10049)
- Smarter graphics state management, reduced CPU consumption on all backends (#9899)
- Android: Support for Arabic and other scripts we couldn't support before
- Fix Android widgets, screen scaling (#10145)
- Fixes to video dumping
- Geometry problems fixed in Medal of Honor
- Implement immediate draws, fixing Thrillville (#7459)
- Software rendering improvements, speed and accuracy
- Hardware tesselation of PSP Beziers and Splines (used by a few games)
- Partial sceUsbGps and sceUsbCam support (Android)
- Android "Sustained performance mode" to avoid thermal throttling (#9901)
- Linux controller mapping fixes (#9997)
- Assorted bugfixes and compatibility improvements
- Fixed longstanding bug causing games to crash on ARM64
- Software rendering crashfix, plus hide it for Android users
- D3D9 pixel offset bug fix (blurriness)
- Fixes for homebrew: Timing, MEMSIZE
- Fixes for some common hangs and crashes (#9698, ...)
- Vertex decoder optimizations (#9674)
- Corrections to mipmap bias and selection function (#9633)
- Major improvements and fixes to software renderer, including mipmap support (#9635, ...)
- UI background image support
- Basic mouse input support on Windows
- Windows desktop touch fixes (#9560)
- D3D11 "depal" color fixes, fixing Sonic Rivals
- Fix crash in framebuffer blits affecting Persona 3 (#9566)
- Bugfix release - build system didn't copy the flash0 directory to the APK on Android.
- Support D3D11 (performs better than OpenGL or D3D9 on most hardware)
- Audio quality improvement (linear interpolation) (#8950)
- Hardware spline/bezier tesselation in OpenGL, D3D11 and Vulkan (...)
- Post-processing shaders in D3D11
- Prescale UV setting removed, now the default (improves perf) (#9176)
- High DPI display fixes
- Various fixes for UMD switching for multi-UMD games (#9245, #9256)
- New audio setting to improve compatibility with Bluetooth headsets
- Various desktop gamepad compatibility fixes
- Workaround for mipmap issue, fixing fonts in Tactics Ogre Japanese
- Assorted minor compatibility fixes, code cleanup and performance improvements
Support for Symbian, Maemo and Blackberry has been removed.
- Fix JIT problems on Galaxy S7 and iOS 9+ devices. (#8965, #8937)
- Fix Android TV support and use latest FFmpeg. (#8651, #8870)
- Texture replacement support - for custom textures and upscaling. (#8715, #8821)
- Initial game recording / TAS features. (#8939, #8945)
- Correctly map memory on Raspberry Pi 3, much better performance. (#8801)
- Workaround rendering issues on Tegra K1/X1. (8294a54)
- Disc streaming to play quickly from tablet/phone on wifi. (#8845)
- Initial Vulkan support - not full featured yet. (#8601, etc.)
- Experimental new CPU backend and CPU fixes. (#8725)
- Allow insert/eject of memstick - required by some games. (#8889)
- Better support for ps3 controller mapping. (#8949)
- Better UI handling for settings with long names in some languages. (#8900, #8898)
- Screenshots in compatibility reporting, better website. (#8812)
- Fix type D cheat codes, allow for homebrew. (#8818)
- Graphic glitch fixes in several games. (#8686, #8757, #8804)
- Fix video playback glitches in several games. (#8793, #8803, #8867, #8914)
- Various performance and compatibility improvements. (#8868, #8884, #8932, #8934, #8813, #8701, #8960)
- Various debugger and GE debugger improvements. (#8882, #8762)
- Fix some problems when switching away from and back to the app (#8968)
- Went back to the old way of initializing graphics on Android. Should fix many recent issues.
- Some graphical fixes, a vertex cache performance improvement and a screen clear optimization
- Fix for dual source blending on most SHIELD devices, causing graphical issues.
- Fix the homebrew store incorrectly unzipping some games. This will lead to more games being added.
- Slightly faster ISO handling
- Fixes for some crash-on-shutdown and app switching problems.
- A major rework of sceAtrac audio decoding, fixing various music hangs and similar issues
- Many fixes and workarounds to depth and stencil buffer usage, and also FBO management
- Audio reverb support
- Combo keys - custom touch buttons that press multiple PSP buttons
- 5xBR upscaling on GPU (postprocessing effect)
- Fix problems with playback of video with mono audio
- Performance improvements like multithreaded audio mixing
- ARM64 JIT crash bug fixes
- GLSL shader cache to reduce stuttering ingame
- Support render-to-CLUT functionality that some games use to change colors of various monsters
- x86-64 support on Android
- Auto-hide on-screen controls after a while of no usage
- Fixes to prescale UV speedhack, now seems reliable
- Faster ISO RAM cache
- New UI for moving around the PSP display on larger screens
- Minor UI fixes like better slider controls
- Assorted stability fixes (ffmpeg crash, etc)
- Volume setting is back
- Preparations for supporting more graphics APIs
- AdHoc port offset
- Support another HD remaster (Sora no Kiseki Kai HD)
- Fixed new crash in Persona and other games on ARM64, like Galaxy S6
- Fixed crashes when trying to launch web browser when not present on Android, like on Android TV
- Fix crash in games that used "depal" functionality (OpenGL)
- Fixed rounding mode problems in the JITs
- Fix crash when loading savestates many times, and savestate compatibility on Android-x86
- Fix minor glitch in Ridge Racer
- Support for ARM64 on Android, for improved performance on new devices. Has some new optimizations.
- Support Android TV, like nVidia Shield TV
- Screen rotation on PC, useful for vertical games like Star Soldier
- Many minor performance improvements and compatibility bug fixes
- GPU emulation fixes like correct depth rounding, fixing text in Phantasy Star
- Other graphical fixes like UV rotation
- Support savestates for homebrew apps
- Simple integrated "Homebrew Store" to download PSP homebrew apps
- Minor AdHoc multiplayer improvements. Still many issues left.
- Disable a dangerous optimization on ARM, causing walk-through-walls in Tenchu
- sceAtrac music compatibility fixes, fixing noise in a few games
- Better texture scaling performance
- Direct3D closer in features to OpenGL
- Works better on BSD operating systems
- Savedata management UI
- Bugfixes like the save state scroll issue, cosmetic issues like overscroll
- Some cheat code bugfixes
- Adler32 and Mersenne Twister modules added (fixes some obscure games)
- Fix for Jak & Daxter slowdown
- Graphics hack for Phantasy Star Portable 2 for Direct3D9
- Fix compatibility with some PowerVR devices broken since v0.9.5-959-g4998044
- Many, many bug fixes in JIT and elsewhere, improving compatibility
- Proper fix for Zenfone and related devices
- Direct3D 9 supported as a rendering backend on Windows, helps on old GPUs and can be faster than OpenGL in many cases
- You can now create specific configs per game
- FPU rounding modes much better supported, fixes the Peace Walker boss that was undefeatable. NOTE: This breaks saves in Gods Eater - you must turn off the better rounding, load your save game, turn it on and save.
- The JIT now uses SSE on x86, improving speed considerably. This does not affect ARM devices, that's for the next version or two.
- Improved audio output code on both Windows and Android, reducing audio latency on Windows and on some Android systems
- FFMPEG upgraded, fixed some music hangs ("GHA phase shifts")
- Some Ad Hoc improvements, coldbird.net is now default adhoc server. Ad Hoc still unfinished and hard to use.
- Graphics fixes: Bezier/spline drawing fixes, vertex position fixes, DanganRonpa on Adreno fixed, flat shading fixed, vertex cache improved, some PowerVR blockiness issues fixed, screen scaling filter added, Google Cardboard support
- Simulate UMD speed better, fixing hangs in several games
- More Atrac3 fixes, fixing hangs
- Somewhat better disk full handling
- Fixes to dynamic unloading of code, fixing problems in GEB and TRM 2/3
- Updated to SDL2 where applicable (Linux, Mac)
- Some new features, like analog/dpad-swap hotkey, graphics hack for Phantasy Star, show last bit of debug log in dev tools, etc
A few issues have been discovered in the release that need fixing, the Star Ocean fix had a bug and there are some unexpected slowdowns.
Improved sceMpegRingbufferAvailableSize - UFC© Undisputed™ 2010 now playable
Improved ISO File System - Bleach Soul Carnival 2 now in-game (but freeze when in menu)
- CLUT (paletted) texturing from framebuffers supported, fixing many graphical issues like the shadows in Final Fantasy: Type-0
- More types of framebuffer copies are now handled correctly, fixing a variety of graphical issues, like the sun in Burnout and many more
- Better savedata compatibility with the real PSP
- Support for more codecs used by "Custom BGM" and sometimes regular music in games: MP3, AAC
- PMP video format support
- Implemented some strange blending modes like ABSDIFF as shaders, fixing the outlines in DBZ Tag Team and more.
- Emulation of the vrot CPU instruction improved - it caused cracks in FF3 graphics before
- Many bugfixes around the UI, touch D-pad now works better when scaled large
- Workaround implemented to support Star Ocean's stencil trickery as efficiently as possible on all platforms
- Major corrections to module loading and memory management, fixing further games
- Bulgarian and Thai language translations were contributed
- Many, many more game fixes and bug fixes
- OpenGL ES 3 detection bug on Xperia devices fixed, graphics work again.
- More accurate audio mixing and emulation
- Software rendering and display list performance improvements
- Workaround for timing issue hanging Crash Tag Team Racing
- Galician language
- Built-in ARM disassembler improvements (dev feature)
- Fix for immersive mode volume key issue on Android Kitkat
- And more minor tweaks and fixes as always.
- Some critical bugfixes (rotation, haptic feedback on Android, etc)
- Several scheduling and audio fixes, fixing black screens in Yu Gi Oh games among other things.
- Screen rotation and immersive mode support on Android
- Large improvements to the software renderer (still not really playable, but looks right more often than not)
- New VPL allocator and bugfixes, fixing Pangya Golf performance problems.
- Some mpeg/video playback fixes, fixing Parappa The Rapper and others. Some issues remain.
- Fix save state bugs causing incompatibility between 32 and 64-bit platforms.
- Symbol map/debugger improvements
- Depth buffer copy, fixing Jeanne D'arc. May cause minor slowdowns though, this will be worked around in the future.
- MsgDialog fixes. Saving fixed in numerous games.
- Initial multitouch support on Windows 8 for on-screen controls.
- Large general speed improvements and assorted bug fixes
- "Software Skinning" option which speeds up many games with animated 3D characters (but may slow down a few, like Monster Hunter games - experiment with turning it off)
- Various fixes around stencil/alpha, reducing glow problems in Wipeout and Gods Eater Burst.
- Timing improvements making more games run at the correct FPS, also fixing some audio issues
- More debugger features
- Option for four-way touch dpad, avoiding diagonal dpad issues
- Better looking and individually resizable touch controls
- Add ability to switch UMD in multi-disc games (works for most)
- Emulate PSP-2000 rather than the 1000 model by default. Not much different in practice.
- Automatic install of games from ZIP files, like demos and many homebrew.
- VERY basic ad-hoc online play support, to be improved in future versions. See below.
- Software renderer improvements
- Many, many emulation fixes:
- bezier/spline curve support, fixing LocoRoco and others
- stencil clear emulation, fixing Final Fantasy IV text
- Performance improvements in some games
- Post-processing shaders like FXAA, scanlines, vignette
- More solid save states (we will try to keep them working from now on. Save states only upgrade forward, not backward to older versions though).
- Change render resolution independently of window size
- Massive debugger improvements
- Win32 menu bar is now translatable
- Multiple UI bugs were fixed, and the UI instantly changes when a new language is selected
- Win32: Ability to store PPSSPP's config files and memory stick files in places other than the same directory
- Android-x86 support
- Unofficial port for modified Xbox 360 consoles
- Atrac3+ plugin no longer required. Symbian now supports Atrac3+ audio.
- Symbian audio and ffmpeg is now threaded for more consistent media processing.
- Haptic feedback support for mobile devices.
- Accurate system information for mobile devices.
- Qt audio has been fixed.
- Analog controller support for Blackberry.
This is based on coldbird's code: https://code.google.com/archive/p/aemu/ All credit goes to him!
Code is a bit of a mess and it's not fully functional yet, I still need to implement some functions and add a upnp lib(really important for people with routers).
I did test it with some games(emulator <-> real psp with the server running locally) and it's looking good:
- Worms Open Warfare: Ran just fine, I was able to play a whole match without problems
- Monster Hunter Freedom Unite: Runs fine too. Gathering Hall and embarking on quests works
- Dissidia Duodecim 012: Doesn't work. It requires some functions that I haven't implemented yet. Also, it uses a port < 1000 and thats reserved for admin apps on linux, running the emu as sudo "solves" it, but it's far from ideal.
- Pacman World Rally: Works too.
- Now compiles on both Mac OSX and Windows. For more details on how to play and build go to see there http://forums.ppsspp.org/showthread.php?tid=3595&pid=59241#pid59241
- Got it tested windows <-> mac osx <-> psp, it works
- Monster Hunter 3rd HD works too, as well as God Eater Burst.