github mihawk-99/PS5_RetroArch v0.5.5-alpha.5
PS5 RetroArch - Alpha 5.5

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

PS5 RetroArch v0.5.5-alpha.5 (experimental)

Native RetroArch for jailbroken PS5 consoles, rendering through RADV.

Experimental build. This release is for those who can't wait. It brings
seven new cores before they would have gone through a full alpha
round. Everything below ran on my console, but these cores have had far less
play than the ones from earlier releases. Expect rough edges, and please
report what you find (see Reporting problems).

Not included: RPCS3 (PlayStation 3). The PS3 core runs on my console, but
it is still unstable, and it stays out of releases until it isn't. More below.

Highlights

  • Seven new systems: PlayStation, Nintendo 64, Sega Saturn, Commodore 64,
    arcade (MAME), Nintendo DS and Nintendo 3DS. Each has one core, chosen for how
    well it runs on RADV and how far it upscales. By default each uses the highest
    graphics settings that hold full speed in the games I tested.
  • A GameCube game's crash when leaving a mission is fixed. Dolphin needs a
    small piece of executable memory for each vertex format a game uses. The title
    handed out at most 128 of these, and the game passed that between a mission
    and the main menu. There is no limit now, for every core with a JIT: Dolphin,
    PPSSPP, Mupen64Plus-Next, DeSmuME and Azahar. On the console, 2,000 small
    blocks and 300 larger regions were allocated, and each ran its own code. I
    haven't replayed the exact mission-to-menu path yet.
  • Simpler content browsing. Load Content now shows two places: INTERNAL,
    the title's own folder, and EXTERNAL, the console's external storage.
    Parent Directory from either takes you back to those two, not to the console's
    root folder.
  • Licences in the package. The title folder now carries a licenses/ folder:
    the licence texts of every part, and a list tying each executable to its
    source revision. The source of every part is attached to this release.

New cores

System Core PS5 defaults Tested on my console
PlayStation Beetle PSX HW Vulkan renderer at 16×, 32-bit colour, PGXP (no wobbling polygons), the disc read into memory at load Full speed
Nintendo 64 Mupen64Plus-Next ParaLLEl-RDP at 8× upscaling, ParaLLEl-RSP, JITs on Full speed after boot
Sega Saturn Beetle Saturn upstream's Loads, then needs your BIOS (below). Gameplay not yet tested
Commodore 64 VICE x64sc upstream's A .d64 disk game, full speed
Arcade MAME 0.289 Raster games at native size, scaled on the GPU; vector games drawn at 4K Full speed
Nintendo DS DeSmuME 5× (1280×960), JIT, eight rendering threads Full speed (6× ran at 93–95%)
Nintendo 3DS Azahar Vulkan at 18×, asynchronous shaders, JIT Full speed after boot

Each ran through boot, the menu opened and closed twice, Close Content from the
Quick Menu, and the same game loaded again. There was no crash, and every game
ran at full speed after the reload.

What each core needs:

  • PlayStation: runs without a BIOS (it has a built-in replacement). Your own
    scph5501.bin (and the others the core lists) in system/ is used when there.
  • Sega Saturn: your own mpr-17933.bin (US/EU) or sega_101.bin (JP) in
    system/. Without it the game refuses to load, and the menu stays usable.
  • MAME: sets must match 0.289. Non-merged sets are simplest; keep BIOS sets
    (such as neogeo.zip) in the same folder as the game.

Coming next: PlayStation 3

The RPCS3 core boots PS3 games, with its Vulkan renderer on RADV:

  • One game reached gameplay at 4K.
  • Another boots, saves and loads states, and runs at about 50 fps at 4K with a
    frame-rate patch; the game was locked to 30 fps before.

Currently optimising RPCS3 around the PS5's own hardware. It isn't in this
build because it isn't stable yet.

Update (v0.5.6-alpha.5): RPCS3 will not be in any release. It is licensed
GPL-2.0-only and this port is GPL-3.0-or-later, so the two cannot be
distributed together: if you want it, compile it yourself from source (see
the README). Piracy is not condoned.

Known issues

  • EXTERNAL is empty for now. The console's app sandbox hides USB drives and
    extended storage from the title. Keep games under INTERNAL (content/ in the
    title folder) until that is solved.
  • A GameCube game (Dolphin) still slows to about 76–85% at some transitions,
    and the audio stutters when it does. This isn't shader compiling: Dolphin's
    emulation thread is waiting, and the game's memory emulation is slow on this
    console. I'm working on it.
  • Dolphin's first start of a game compiles its shaders while the game boots.
    A GameCube game's first 20 seconds ran at 83% and 92% speed. Later starts read the
    shader cache.
  • Not yet tested: Saturn gameplay, and MAME's vector games at 4K.
  • Carried over from Alpha 5: the 60 Hz fallback still needs confirming on a
    60 Hz TV; PAL PS2 games can look uneven at 120 Hz; PS2 games in .7z archives
    are not unpacked; and there is black flicker on a Wii game's world map.

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 you've already saved there are kept, not replaced by new
    defaults.
  3. Put games in content/ (a folder per system works well) and BIOS files in
    system/ (PS2: system/pcsx2/bios/). No games or BIOS files are included.

Reporting problems

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

Source

This ZIP was built from PS5_RetroArch commit [built commit], which is this
release's tag. The source of every part is attached to the release, and the
title's licenses/ folder lists every part's licence and source revision.
Snes9x, FinalBurn Neo and Genesis Plus GX are licensed for non-commercial use:
this package may not be sold.

Build

Build identity [identity]

Component Version
RetroArch 1.22.2 with this port's patches
Graphics driver RADV from PS5_Mesa [revision], built by PS5_Vulkan [revision]
PS5 payload SDK fork 4ba45cf
PPSSPP v1.20.4
Dolphin 2609 (libretro/dolphin c6630001)
LRPS2 PS5_LRPS2 9c2eea4
Beetle PSX HW PS5_BeetlePSX e43b398
Mupen64Plus-Next PS5_Mupen64Plus 98ec101
Beetle Saturn PS5_BeetleSaturn 41a8a4b
VICE x64sc PS5_VICE 2b4b5e3
MAME 0.289, PS5_MAME fa592b0
DeSmuME PS5_DeSmuME 532c50e
Azahar PS5_Azahar 4598458 (dynarmic from PS5_Dynarmic 1df2a07)

Don't miss a new PS5_RetroArch release

NewReleases is sending notifications on new releases.