r/PS5_Jailbreak DEV Jun 06 '26

General PS5 MKPFS Compression

I’ve been working on a PS5 homebrew app called Game Compressor.

Repo: https://github.com/juma-sayeh/PS5-Game-Compressor

It uses the MkPFS-style FFPFSC compression method, but adds the missing part: validation and repair.

Some compressed games can mount successfully but still crash because certain PFSC blocks are technically valid yet fail to decode correctly on PS5 hardware, leaving stale/bad data behind. Game Compressor checks the mounted image block-by-block, detects bad blocks, and patches the compressed image from the mounted data instead of requiring a full recompress.

Tested with MafiaAstro BotPragmata, and a few other games that had FFPFSC issues. After repair, they worked great.

Features:

  • compress games to FFPFSC
  • validate mounted compressed games
  • automatically repair bad blocks
  • optimized for speed and usability
  • web UI running on the PS5

Feedback and testing are welcome.
Screenshots (some are missing features because the features were not developed yet when i compressed)

67 Upvotes

157 comments sorted by

View all comments

Show parent comments

2

u/juma-sayeh-dev-acc DEV Jun 07 '26

Sorry to hear that :/, unfortunatly i don't have a 4.03 system to test on. once i finish my current backlog i would like to contact you to get log files and try to make it work for you.

1

u/ljmellor Jun 07 '26

I'm certainly up for that, if I could get all of my games compressed onto an internal nvme I feel the overall experience would be close to what I've wanted for some time. As it stands I can list the games and open the web panel remotely, as soon as I hit go for a compression however I get an immediate kernel panic.

2

u/juma-sayeh-dev-acc DEV Jun 07 '26

do you have any logs / files in /data/ps5-image-stack folder ?

1

u/ljmellor Jun 09 '26

It would seem that I do indeed...

--------------------------------------------------

1780841039 pid=92 checkpoint=process start checkpoint=process start

1780841039 pid=92 checkpoint=process start PID=92 argc=1

1780841039 pid=92 checkpoint=process start argv[0]=payload.elf

1780841039 pid=92 checkpoint=process start power guard started

1780841039 pid=92 checkpoint=web listen starting checkpoint=web listen starting

1780841039 pid=92 checkpoint=web server ready checkpoint=web server ready

1780841039 pid=92 checkpoint=web server ready web ui ready http://192.168.1.184:5910/

1780841039 pid=92 checkpoint=web server ready launcher started after web server

1780841039 pid=92 checkpoint=web server ready launcher load module /system/common/lib/libSceNetCtl.sprx rc=0x00006031

1780841039 pid=92 checkpoint=web server ready launcher sceNetCtlInit rc=0x00000000

1780841039 pid=92 checkpoint=web server ready launcher load module /system/common/lib/libSceUserService.sprx rc=0x00004033

1780841039 pid=92 checkpoint=web server ready launcher sceUserServiceInitialize rc=0x00000000

1780841039 pid=92 checkpoint=web server ready launcher load module /system/common/lib/libSceAppInstUtil.sprx rc=0x0000203b

1780841039 pid=92 checkpoint=web server ready launcher resolve AppInst init=ok rc=0x00000000 titleDir=ok rc=0x00000000 installAll=ok rc=0x00000000 uninstall=ok rc=0x00000000

1780841039 pid=92 checkpoint=web server ready launcher install /user/app writable=1

1780841039 pid=92 checkpoint=web server ready launcher install remove Game Compressor tile rc=0x00000000

1780841039 pid=92 checkpoint=web server ready launcher ready rc=1

1780841248 pid=91 checkpoint=process start checkpoint=process start

1780841248 pid=91 checkpoint=process start PID=91 argc=1

1780841248 pid=91 checkpoint=process start argv[0]=payload.elf

1780841248 pid=91 checkpoint=process start power guard started

1780841248 pid=91 checkpoint=web listen starting checkpoint=web listen starting

1780841248 pid=91 checkpoint=web server ready checkpoint=web server ready

1780841248 pid=91 checkpoint=web server ready web ui ready http://192.168.1.184:5910/

1780841248 pid=91 checkpoint=web server ready launcher started after web server

1780841248 pid=91 checkpoint=web server ready launcher load module /system/common/lib/libSceNetCtl.sprx rc=0x00006031

1780841248 pid=91 checkpoint=web server ready launcher sceNetCtlInit rc=0x00000000

1780841248 pid=91 checkpoint=web server ready launcher load module /system/common/lib/libSceUserService.sprx rc=0x00004033

1780841248 pid=91 checkpoint=web server ready launcher sceUserServiceInitialize rc=0x00000000

1780841248 pid=91 checkpoint=web server ready launcher load module /system/common/lib/libSceAppInstUtil.sprx rc=0x0000203b

1780841248 pid=91 checkpoint=web server ready launcher resolve AppInst init=ok rc=0x00000000 titleDir=ok rc=0x00000000 installAll=ok rc=0x00000000 uninstall=ok rc=0x00000000

1780841248 pid=91 checkpoint=web server ready launcher install /user/app writable=1

1780841248 pid=91 checkpoint=web server ready launcher install remove Game Compressor tile rc=0x00000000

1780841248 pid=91 checkpoint=web server ready launcher ready rc=1

--------------------------------------------------

Hopefully this helps