RPCS3-5 1.2.2 Beta (PPSA99303) ============================== RPCS3-5 is a personal build of KB-RPCS3 v0.1.0-alpha (https://github.com/kamb205/KB-RPCS3), the RPCS3 PS3 emulator ported to jailbroken PS5 consoles, with PS3 disc-drive support (disc helper version 15). For your own consoles only: KB-RPCS3's author asks that builds are not shared (RPCS3's GPL-2.0-only core is combined with GPL-3.0 PS5 components). Beta software: expect some crashes. WHAT'S NEW IN 1.2.2 BETA ------------------------ - No more freeze every ~15 seconds while playing from the disc. 1.2.1 released the drive whenever nothing had read it for 2 s, so during a game's pauses in reading it was closed, and the next read had to open (and spin up) the drive again: a hitch of a second or more, over and over. The helper (version 15) now keeps the drive while a game is reading from it and releases it when the game ends, so the disc still ejects once you are back on the RPCS3-5 home screen. In Modern Warfare 3, 7 minutes of play went from a freeze every ~15 s to 2 slow disc reads, both while loading. - Disc reads that take 200 ms or more are written to ps5-boot.log ("disc: slow read"), to tell a disc hitch from any other kind. - New tool: kb-loggrep-fps.elf prints the frame-rate history of the current session back to the PC. WHAT WAS NEW IN 1.2.1 BETA -------------------------- - The PS5 ejects the disc again after you play. RPCS3-5's disc helper kept the drive open until the console restarted, and an open drive locks the tray. The helper (version 14) let go of the drive as soon as nothing read it; 1.2.2 refines this (held while a game reads). Ejecting while a game is running stays blocked, as it should. - If an older helper is still running from before the update, eject works after RPCS3-5 has been opened once (it replaces the helper), or run tools\kb-helper-quit.elf. WHAT WAS NEW IN 1.2 BETA ------------------------ - Games no longer freeze at their first loading screen. Games that open a network (UDP) socket at start, such as Call of Duty: World at War and Modern Warfare 3, froze for good a few seconds in: on the PS5 the socket stayed "blocking", its read waited forever for a packet while holding an emulator-wide lock, and every other game thread queued behind it. Sockets are now truly non-blocking. Call of Duty: World at War (BLUS30192) now boots and plays from the disc; it used to freeze at its first loading screen. - Warning for a disc swapped in rest mode: the PS5 can keep the previous disc's size, so everything past it fails to read (trophy error, endless loading). RPCS3-5 now compares the disc's own size table with the drive and says "restart the console with this disc inserted" on the home screen. - Hang dump: if a game shows no new frame for ~12 s, RPCS3.log gets every thread's state and call chain ("PS5 HANG DUMP"), once per boot. This is what found the freeze above. - No more false "watchdog: main thread silent for 18446744073709551584 ms" lines in ps5-boot.log. - Installer: works with the newer PS5 Upload app (it needs the PS5 address as IP:9113). - New tools: kb-logs.elf (prints the logs back to the PC) and kb-launch.elf (restarts RPCS3-5 booting the disc in the drive). Tip for Call of Duty games: set the resolution to 1280x720 in the game's own settings (Video > Resolution). At 1920x1080, Modern Warfare 3 stops right at boot. TESTED ON RPCS3-5 (PS5 Slim, firmware 13.60, games from the disc drive) ----------------------------------------------------------------------- Call of Duty: World at War BLUS30192 Plays (1.2). Intros and menus at 60 FPS. Call of Duty: Modern Warfare 3 BLUS30838 Plays (1.2.2) at 1280x720: mostly 45-60 FPS in game, with occasional short stutters (the PS5's CPU running SPU code). At 1920x1080 it stops right at boot. KB-RPCS3's own list (LIMBO, WWE '12, GTA IV) was tested on its author's build, not on RPCS3-5. WHAT WAS NEW IN 1.1 BETA ------------------------ - Per-game settings now save. They failed with "failed to create temporary file" because the custom_configs folder was never created on the PS5. - Disc helper version 12: after a game saves, the helper goes straight back to full privileges, so the disc drive (and covers, tiles, game deletion) keep working however many times you swap discs. - Disc opens are sturdier: a connection that drops while the helper restarts is retried instead of reporting "no disc", and the first start gets 8 s instead of 5 s. - The app names itself RPCS3-5 everywhere (it said KB-RPCS3 inside the app). - Logs no longer grow forever: ps5-title.log and ps5-boot.log move to *.old.log past 1 MB. - Installer: works without the PS5 Upload app, over the PS5's FTP server (automatic, or -Ftp). Running it over 0.1.0 updates in place (games, saves, settings and firmware stay). - New tools\kb-beta-test.elf: checks the helper, the save-then-disc case, disc read speed, and saved per-game settings. DOWNLOADS --------- RPCS3-5-v1.2.2-beta.zip the app, installer, tools and this README (required) RPCS3-5-v1.2.2-beta-redump-keys.zip Redump disc keys (4,460), needed to play PS3 discs from the drive SHA256SUMS.txt checksums of both zips Put both zips in the same folder and extract the app zip there; the installer finds the keys zip by itself. (Or extract both zips into the same folder: the keys land in PPSA99303\rpcs3\data\redump\.) Check a download (PowerShell): Get-FileHash .\RPCS3-5-v1.2.2-beta.zip (compare with SHA256SUMS.txt) WHAT'S IN THE APP ZIP --------------------- PPSA99303\ the app, ready to copy to the console Install-RPCS3-5.ps1 one-command installer / updater (PS5 Upload app or FTP) tools\ upload and diagnostic tools (see TROUBLESHOOTING) CONSOLE REQUIREMENTS -------------------- - Jailbroken PS5 (tested: PS5 Slim, firmware 13.60) - etaHEN (provides the ELF loader on port 9021, which the app uses to start its disc/write helper) - kstuff lite, loaded once per boot - ShadowMountPlus - PS3 firmware: your own PS3UPDAT.PUP (not included) INSTALL OR UPDATE ----------------- 1. Either open the PS5 Upload app on your PC and connect it to the PS5, or turn on etaHEN's FTP server (port 1337). The installer uses PS5 Upload when it is running, and FTP otherwise. 2. Find the PS5's IP address: Settings > Network > Connection Status > View Connection Status (IPv4 Address, e.g. 192.168.1.50). 3. In PowerShell, in this folder: .\Install-RPCS3-5.ps1 It asks for the IP address, checks the PS5 answers, and remembers it (ps5-ip.txt) for next time and for the tools. Or give everything at once, firmware included: .\Install-RPCS3-5.ps1 -Ps5 192.168.1.50 -Firmware C:\path\to\PS3UPDAT.PUP Force FTP (or another FTP port): .\Install-RPCS3-5.ps1 -Ftp [-FtpPort 1337] (If PowerShell refuses to run the script: powershell -ExecutionPolicy Bypass -File .\Install-RPCS3-5.ps1) 4. Follow the steps the installer prints. Updating from 0.1.0: close RPCS3-5 on the PS5 and run the installer the same way. Nothing on the console is deleted. When RPCS3-5 next starts, it replaces the older disc helper by itself. INSTALL BY HAND (any FTP client) -------------------------------- 1. Connect to the PS5's FTP server (etaHEN: port 1337). 2. Copy the PPSA99303 folder to /data/homebrew/PPSA99303/ 3. Copy the .key files from the keys zip to /data/homebrew/PPSA99303/rpcs3/data/redump/ 4. Copy your PS3UPDAT.PUP to /data/homebrew/PPSA99303/rpcs3/ FIRST RUN --------- 1. Wait for ShadowMountPlus to register it: RPCS3-5 appears on the home screen (restart the console if not, then load kstuff lite again). 2. RPCS3-5 > Install > PS3 firmware. 3. Settings: Clocks scale 100, Frame limit Auto (needed for normal speed). GAMES ----- - PS3 discs: put the disc in the PS5's drive; it shows in the library (a few seconds after a swap). Swap discs from the RPCS3-5 home screen only, never while a game is running. - Disc images: .iso files or game folders in /data/homebrew/PPSA99303/rpcs3/games/ - PSN: .pkg files in packages/, .rap files in exdata/, then Install > Packages. TROUBLESHOOTING --------------- The tools find the PS5 by, in order: -Ps5 on the command line, the PS5_IP environment variable, or ps5-ip.txt (written by the installer). With none of these they stop and say so. Payloads go to the ELF loader (port 9021) and print their report back here. Health check (helper version, save-then-disc, disc speed, saved per-game settings): .\tools\send-elf.ps1 -Elf .\tools\kb-beta-test.elf Disc shows "no disc" / isn't detected: .\tools\send-elf.ps1 -Elf .\tools\kb-helper-probe.elf ":9078 write service: version 15" and ":9080 disc service: info -> bytes (disc OK)" is healthy. Version 14 or lower: an older helper is still running. Retire it, then reopen RPCS3-5: .\tools\send-elf.ps1 -Elf .\tools\kb-helper-quit.elf Can the console read the disc at all (read-only drive test): .\tools\send-elf.ps1 -Elf .\tools\kb-disc-probe.elf Upload single files or folders: .\tools\ps5-put.ps1 -Src -Dest /data/homebrew/PPSA99303/ (PS5 Upload) .\tools\ps5-put-dir.ps1 -Src -Dest /data/homebrew/PPSA99303/ (PS5 Upload) .\tools\ps5-ftp-put-dir.ps1 -Src -Dest /data/homebrew/PPSA99303/<...> (FTP) Another PS5, or the IP changed: rerun the installer, or add -Ps5 to any tool command. KNOWN ISSUES ------------ - Swapping a disc while a game is running isn't supported: quit to the RPCS3-5 home screen first. - RADV wait/spin figures in the speed/timing log always read 0 (the public RADV has no counters). - "main_thread.eh_frame: Invalid function" at each game boot is an RPCS3 analyser warning, harmless. CREDITS ------- kamb205 - KB-RPCS3 (https://github.com/kamb205/KB-RPCS3) RPCS3 team - the emulator (https://github.com/RPCS3/rpcs3) Mihawk (mihawk-99) - PS5 Vulkan driver, Mesa, payload SDK, LLVM License texts: PPSA99303\LEGAL.txt, PPSA99303\licenses\ and PPSA99303\assets\LICENSES\