github mihawk-99/PS5_RetroArch v0.4.0-alpha.4
PS5 RetroArch - Alpha 4

latest releases: v4.0.0-beta-4, v3.0.0-beta-3, v2.0.0-beta-2...
pre-releaseone month ago

PS5 RetroArch — Alpha 4 🎮

Native RetroArch for jailbroken PS5 consoles, rendering through
PS5_Vulkan. This release adds GPU-rendered
GameCube/Wii and PlayStation 2 emulation, and fixes every crash testers reported
on earlier builds.

Alpha. The games and paths below are the ones I have tested on my console.
Other games may still fail. Please report them (see Reporting problems).

Highlights

  • Eight cores. Dolphin (GameCube and Wii), LRPS2 (PlayStation 2) and
    PPSSPP (PSP) render on the PS5's GPU through PS5_Vulkan, beside FCEUmm, mGBA,
    Snes9x, FinalBurn Neo and Genesis Plus GX.
  • PlayStation 2 at 4K. LRPS2 uses its Vulkan hardware renderer by default at
    6x internal resolution, with multi-threaded VU1. The games I tested run at
    full speed on my console.
    You need your own PS2 BIOS in system/pcsx2/bios/.
  • GameCube and Wii. Dolphin 2609 with its JIT and fast memory. Five GameCube and Wii
    games are tested; one ran for an hour and another for 30 minutes with no crash.
  • PSP. PPSSPP v1.20.4 on its Vulkan renderer with JIT: the tested games run at
    10× internal resolution.
  • 120 Hz output where the display supports it, with the correct 60 Hz fallback.
  • Faster save states. A 50 MB PS2 save state is written without stdio, which
    was the slow part.

Fixed from tester reports

Report Status in this release
Crash after closing a game (seen with an SNES game) Fixed. The video driver was being re-created on a RetroArch thread, and the console gives such threads only 64 KiB of stack. It crashed with Threaded Video on. RetroArch's threads now get 2 MiB, and the stack-heavy code moved to the heap. I reproduced the crash, then confirmed the fix on the console.
A PSP game crashing after one to two minutes Fixed in the GPU driver: its internal lists were changed from several threads at once without a lock. A new driver test reproduces the corruption on the old driver and passes on the new one. PPSSPP ran a 10-minute soak with the menu opened 25 times and did not crash.
Every game at half speed with V-Sync on Fixed. On a display that only refreshes at 60 Hz, the console accepted the 120 Hz mode and kept refreshing at 60 Hz, so each frame was shown twice. The driver now measures the real refresh rate and falls back to 60 Hz. My display is 120 Hz, so the 60 Hz path still needs confirming on a 60 Hz TV.
A GameCube game crashing after about three minutes Fixed (a race in Dolphin's dual-core GPU FIFO).

With the half-speed fix, V-Sync on is the recommended setting on every display.

Stability work in this release

  • Every thread the title, RetroArch and the driver start now asks for an adequate
    stack instead of the console's 64 KiB default.
  • Driver state that several threads can reach is atomic or locked. A debug-table
    counter could write past its array when two threads recorded commands at once.
  • Before release, every core was run with a game: boot, menu open and close, then a
    Quick Menu action, with Threaded Video on for half of them and V-Sync on
    throughout. There were no crashes and no fatal signals.

Known issues

  • Shader compilation stutter. The first time a game needs a new shader, it can
    hitch while the shader compiles; later runs load it from the cache. Dolphin's
    default is still Synchronous compilation, and the driver compiles one pipeline
    at a time. Asynchronous compilation is the next piece of work.
  • A GameCube game runs at 72–85% for stretches of its attract sequence, even with
    every shader cached. The cost is the driver's CPU work, and it is being worked on.
  • PAL PS2 games (50 fps) on a 120 Hz output alternate two and three refreshes per
    frame, which can look uneven. The console offers no 50/100 Hz mode.
  • PS2 games in .7z archives are not unpacked. Use ISO, CHD, CSO or another
    supported disc format.
  • A Wii game: black flicker on its world map was reported and has not been
    investigated yet.

Install or update

  1. Copy the complete PPSA99169 folder to your homebrew title location, for
    example /data/homebrew/PPSA99169/, and launch it from your homebrew launcher.
  2. Updating keeps your config/, savefiles/, savestates/, system/ and
    content/. Settings already saved there, such as a core's internal resolution,
    are kept rather than replaced by new defaults.
  3. Put games in content/ and BIOS files in system/ (PS2: system/pcsx2/bios/).
    No games or BIOS files are included.

Reporting problems

Include the core, game, file format and the settings you changed. After the
problem, and before relaunching, copy trace.txt and retroarch.log from the
title folder: a new launch replaces them.

Build

Build identity 870bd1bb94d9c35e7ec0efdf32ebfe457500bac3c4387376b7b0ea2e3c42957a

Component Version
RetroArch 1.22.2 with this port's patches
PS5_Vulkan driver 40e9d30
PPSSPP v1.20.4
Dolphin 2609 (libretro/dolphin c6630001)
LRPS2 PS5_LRPS2 6d14775 with the port patch

All five host gates (format, unit, build, integration, evidence) pass, and so does
the driver's host test suite.

Don't miss a new PS5_RetroArch release

NewReleases is sending notifications on new releases.