PSP SCUMMVM port for PSPonPS4

The .ini location is decided for the psp build in the "osys_psp.cpp" inside the "backends/platform/psp" folder
if you scroll down you will see this line
#define PSP_CONFIG_FILE "ms0:/scummvm.ini"
change this to set the location of the .ini, im not sure where you could save it too that would be better but there is a list of PSP locations on
https://en.wikibooks.org/wiki/PSP_Development/Filesystem
OR if it uses PS4 paths maybe change it for that (but that seems unlikely), you might even be able to set it to just read from a SET .ini so from the same folder for example and just provide a .ini with all game locations already in your ISO and that way you should never need to change the .ini and can just let it load everytime from the same location as the EBOOT.
anyway thats just some ideas and im glad it helped out, its a shame 2.0.0 didn't work, i am curious why but i guess that will remain a mystery.
Oh, that makes sense that it would be somewhere protected from what the PS4 can let scummvm browse. It's looking at the root of disc0 when browsing, but never picks up the .ini like the PS2 does.

My plan was to do the latter, just present the user with the game already in the list (and with a proper aspect ratio).

Regarding why it won't boot later versions, if I remember there were talk about never homebrew using x modules or something like that.
 
Oh, that makes sense that it would be somewhere protected from what the PS4 can let scummvm browse. It's looking at the root of disc0 when browsing, but never picks up the .ini like the PS2 does.

My plan was to do the latter, just present the user with the game already in the list (and with a proper aspect ratio).

Regarding why it won't boot later versions, if I remember there were talk about never homebrew using x modules or something like that.
That should be easy to change it to just look at disk0 instead by changing the line i mentioned before, i can compile it with that change if you haven't got the environment set up yet. it should work fine if thats where its looking already if you just change the ini to load from there.
 
@Devildwarf Just wanted to say merry Christmas my friend!
Merry Christmas to you too, i hope you have a great time.
On a negative note i tried just changing the .ini path to disk0 or umd0 and both fail to read the .ini so it doesnt seem to like reading from there for some reason :\ i will have to look into that more,
Also 1 more small question, why are you trying to use the psp version of scummvm and not just use the native PS4 build in RetroArch or using the PS2 version and use the PS4's PS2 emu ?
 
Merry Christmas to you too, i hope you have a great time.
On a negative note i tried just changing the .ini path to disk0 or umd0 and both fail to read the .ini so it doesnt seem to like reading from there for some reason :\ i will have to look into that more,
Also 1 more small question, why are you trying to use the psp version of scummvm and not just use the native PS4 build in RetroArch or using the PS2 version and use the PS4's PS2 emu ?
Valid questions :)
I chose the PSP version due to that the emulator starts directly from the xmb (and hopefully with some tweaks also have the game presented in the list for easy of use). I've yet to find a Retroarch rom launcher for the PS4 that could start the game directly.

Regarding the PS2 version, the only version I could boot (1.4 if I remember correctly) froze right after the helix spiral animation.

Oh, just to make sure, you did try disc0 and not disk0?
The default path for browsing in scumm on the ps4 gives me: disc0:/PSP_GAME/SYSDIR.

EDIT: on a side note, I'm looking into to setting up an environment, is this all I need https://sourceforge.net/projects/minpspw/?
 
Valid questions :)
I chose the PSP version due to that the emulator starts directly from the xmb (and hopefully with some tweaks also have the game presented in the list for easy of use). I've yet to find a Retroarch rom launcher for the PS4 that could start the game directly.

Regarding the PS2 version, the only version I could boot (1.4 if I remember correctly) froze right after the helix spiral animation.

Oh, just to make sure, you did try disc0 and not disk0?
The default path for browsing in scumm on the ps4 gives me: disc0:/PSP_GAME/SYSDIR.

EDIT: on a side note, I'm looking into to setting up an environment, is this all I need https://sourceforge.net/projects/minpspw/?
Ah yeah i probably screwed up the disk/disc word.... i will check that in a moment and try again, thanks
Odd the PS2 version crashes like that but i guess the emulation isn't perfect and this is also homebrew.

And yes if you are building 1.1.1 you need the pspsdk 0.9.5 (its on that page under files) the later ones gave me PNG errors (probably newer libpng in newer builds) but feel free to experiment, i also used mingw+msys1.0 as a shell so that it found the correct paths but thats just me, you can probably just use it as is without those if you know what you are doing (which you appear too)

EDIT:- OK that fixed it, yep it was totally my screw up of disk instead of disc, now it works, here is a test that worked.
OK here is a version with the .ini path as
disc0:/PSP_GAME/SCUMMVM.INI
it appears to work fine :) and you can set everything else in the .ini file for each game (just do it in ppsspp and then use that ini for the disc0 version)
https://drive.google.com/file/d/15BVOXmB8uL5NG7JZk5C_Ee4tzMuj80ui/view?usp=sharing
EDIT2:- This build was also run with extra flags when compiling to try and optimize it more (chatGPT's sugestions of -funroll-loops -fomit-frame-pointer -finline-functions)
 
Last edited:
Ah yeah i probably screwed up the disk/disc word.... i will check that in a moment and try again, thanks
Odd the PS2 version crashes like that but i guess the emulation isn't perfect and this is also homebrew.

And yes if you are building 1.1.1 you need the pspsdk 0.9.5 (its on that page under files) the later ones gave me PNG errors (probably newer libpng in newer builds) but feel free to experiment, i also used mingw+msys1.0 as a shell so that it found the correct paths but thats just me, you can probably just use it as is without those if you know what you are doing (which you appear too)

EDIT:- OK that fixed it, yep it was totally my screw up of disk instead of disc, now it works, here is a test that worked.
OK here is a version with the .ini path as
disc0:/PSP_GAME/SCUMMVM.INI
it appears to work fine :) and you can set everything else in the .ini file for each game (just do it in ppsspp and then use that ini for the disc0 version)
https://drive.google.com/file/d/15BVOXmB8uL5NG7JZk5C_Ee4tzMuj80ui/view?usp=sharing
EDIT2:- This build was also run with extra flags when compiling to try and optimize it more (chatGPT's sugestions of -funroll-loops -fomit-frame-pointer -finline-functions)

Your help has been amazing :)
This was my last piece of the puzzle, thank you so much!

I'll make some kind of recording of it all working on a PS4 later
 
@Devildwarf hi there.
I have a question about the build tools. I've been trying to setup something on my own again, but this using cygwin64 + pspsdk 0.9.5.

EDIT2: My bad, Saw that you are using mingw + msys 1, works no problem, thank you! :)
 
Last edited:
@Devildwarf hi there.
I have a question about the build tools. I've been trying to setup something on my own again, but this using cygwin64 + pspsdk 0.9.5.

EDIT2: My bad, Saw that you are using mingw + msys 1, thank you! :)
Hey, yeah i use the old 32bit version of mingw (v3.0) and the very old msys 1, they are much easier to work with then the new ones, but i can try doing it with cygwin if you need a hand with that,
I tested using mingw32 3.0, its really old and lightweight, and if you want to make a really small installation you can then copy the pspsdk files into the same folders as mingw and overwrite them all then install msys1 and direct it to your mingw folder and you are done, just launch msys and it will auto find mingw which you overwrote with the psp sdk and it can compile psp stuff easily.
You can download the old mingw and msys from
https://sourceforge.net/projects/mingw/files/OldFiles/
 
@Devildwarf I've now made changes to the scummvm that gives the game autoboot as well, many thanks for your help!
Here's a video by @Vika23 of the result https://www.psx-place.com/threads/p...mitted-test-results.37952/page-11#post-378253

Next I'm interested to compare 1.1.1 and 1.2 to see what could be causing the incompatibility for the PS4
wow nice work guys, and congrats on getting it working how you want, yeah its odd it broke support aafter 1.1.1, hopefully a DIFF of the source for the PSP parts will be able to tell you what changed and hopefully allow you to fix it. If there is anything else i can do to help let me know, i do wonder if the PS3 has the same problem, i gotta try and set my ps3 up again (i put it away for christmas for space) and test that sometime.
Good work Vika23 and jacobsson.
 
wow nice work guys, and congrats on getting it working how you want, yeah its odd it broke support aafter 1.1.1, hopefully a DIFF of the source for the PSP parts will be able to tell you what changed and hopefully allow you to fix it. If there is anything else i can do to help let me know, i do wonder if the PS3 has the same problem, i gotta try and set my ps3 up again (i put it away for christmas for space) and test that sometime.
Good work Vika23 and jacobsson.
Lol i was just tester but thanks! On ps3 Scumm have native pkg and you can download it from scummvm.org!
For ps4 we use psp emu for boot Scumm aplication there lol, thats why all troubles!
 
Lol i was just tester but thanks! On ps3 Scumm have native pkg and you can download it from scummvm.org!
For ps4 we use psp emu for boot Scumm aplication there lol, thats why all troubles!
yeah i ment purely for testing this problem since i don't have a ps4 modded PS4 (its stock with latest firmware), if i really wanted to run scummvm i would just run the native version,
It kinda surprises me there isn't a native PS4 release of scummvm, the only version i could see was the Retroarch release for it but that wouldn't let you boot straight into the game like jacobsson wanted, the PS4 has a open source SDK right ? is it not good enough for scummvm ?
 
wow nice work guys, and congrats on getting it working how you want, yeah its odd it broke support aafter 1.1.1, hopefully a DIFF of the source for the PSP parts will be able to tell you what changed and hopefully allow you to fix it. If there is anything else i can do to help let me know, i do wonder if the PS3 has the same problem, i gotta try and set my ps3 up again (i put it away for christmas for space) and test that sometime.
Good work Vika23 and jacobsson.

Btw, what minpsp did you use for scummvm-1.2? It seem to have issues building with 0.9.5 and 0.11.2 for me

EDIT: nvm, it seems like I accidentally changed something in the psp_main, it's building now :)
 
Last edited:
@Devildwarf I hope you had some really good relaxing new years holidays!
I still have the urge to find out why 1.2.0 black screens on the PSPonPS4 emu and 1.1.1 does not.

When reading the the release notes for 1.2.0 (also by checking the diff) it says:

PSP port:
  • New backend design: fixed minor graphical issues and enabled 16-bit support.
  • Enabled playback of MP3 files using the Media Engine. This means that the port is optimized for MP3 files (as opposed to OGG).
  • Many optimizations. Everything should run faster.
I'm thinking it could be some difference in how the video is initialized somewhere in the code in which the PSPonPS4 emu no longer understand.

The reason I'm thinking this is because I successfully made the autoboot mod to 1.2.0 for testing and I can actually hear sound from the games (which in theory would mean the emu is working but doesn't output the correct video mode?).

If you have any idea I'm all ears :)
 
Last edited:
@Devildwarf I hope you had some really good relaxing new years holidays!
I still have the urge to find out why 1.2.0 black screens on the PSPonPS4 emu and 1.1.1 does not.

When reading the the release notes for 1.2.0 (also by checking the diff) it says:

PSP port:
  • New backend design: fixed minor graphical issues and enabled 16-bit support.
  • Enabled playback of MP3 files using the Media Engine. This means that the port is optimized for MP3 files (as opposed to OGG).
  • Many optimizations. Everything should run faster.
I'm thinking it could be some difference in how the video is initialized somewhere in the code in which the PSPonPS4 emu no longer understand.

The reason I'm thinking this is because I successfully made the autoboot mod to 1.2.0 for testing and I can actually hear sound from the games (which in theory would mean the emu is working but doesn't output the correct video mode?).

If you have any idea I'm all ears :)
Interesting, then yeah it does sound like a output problem, i would first do a DIFF on the files and look for the output related parts (in the backends psp folder) and maybe try reverting a few bits and seeing what happens (hopefully without fully breaking it), or you could try and find the github revisions for between 1.1.1 and 1.2.0 and see if they made the changes gradually or all in 1 go, because there might be a build in there somewhere that could be useful,
I would recommend looking at the commits log for 1.2 and seeing where the changes happened and try compiling it at different stages
https://github.com/scummvm/scummvm/commits/v1.2.0?after=6a4e6d1c79296abe365f600b6183118e00c6ed91+69
and keep going back earlier (by a few pages and only ones that are PSP related) and compiling each until you find a working one then narrow it down more and more.

I also tried running both on the PS3 and they fail to run, i guess the PS3 PSPEMU is worse then the PS4 so i wont be able to help test builds :(

EDIT1:- The github page for 1.2.0 has just a psp changelog at
https://github.com/scummvm/scummvm/...65f600b6183118e00c6ed91/backends/platform/psp
which will help narrow it down more.
 
Last edited:
@Devildwarf Awesome input as usual!
Thank you for the link, I didn't even think about that (I've only been looking into the diff which is quite substanstial).

Yes I remember the PS3 emu having really low compatibility so that doesn't surprise me. Anyway, I'll report back with my findings
 
Back
Top