PSP SCUMMVM port for PSPonPS4

@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
No problem and good luck, i added another link to the previous post a few seconds ago that will help you see just the PSP changes too (helps filter out the non-psp changes) so try each commit maybe and see if any work, also dont forget if you only need Monkey island compiling with Scummvm you can speed up the compile time by disabling other engines so they are not compiled.
 
@Devildwarf I'd like to thank you for sorting out the commits for me, I've finally found the culprit of the black screen now!
There is a new render method that was introduced here during pre-release of 1.2.0 in which could be toggled by commenting out line 38: "USE_DISPLAY_CALLBACK" in backends/platform/psp/display_manager.cpp, I'm now trying to get latest and greatest scummvm-2.8.0 working by disabling this too.

I'll keep you updated :)
 
Last edited:
@Devildwarf I'd like to thank you for sorting out the commits for me, I've finally found the culprit of the black screen now!
There is a new render method that was introduced here during pre-release of 1.2.0 in which could be toggled by commenting out line 38: "USE_DISPLAY_CALLBACK" in backends/platform/psp/display_manager.cpp, I'm now trying to get latest and greatest scummvm-2.8.0 working by disabling this too.

I'll keep you updated :)
Nice work, im glad you managed to figure it out, and i hope the latest scummvm will work on it too, does it also improve performance ? or too early to tell ?
And good work Vika23 on getting other games working too, hopefully if jacobsson gets the latest version you will have even more games you can play this way :)
 
Nice work, im glad you managed to figure it out, and i hope the latest scummvm will work on it too, does it also improve performance ? or too early to tell ?
And good work Vika23 on getting other games working too, hopefully if jacobsson gets the latest version you will have even more games you can play this way :)
Yes i tested Scumm v 2.8.0 for ps3 and alot lovely games works there now! Can't wait test it on PS4!
 
Nice work, im glad you managed to figure it out, and i hope the latest scummvm will work on it too, does it also improve performance ? or too early to tell ?
And good work Vika23 on getting other games working too, hopefully if jacobsson gets the latest version you will have even more games you can play this way :)

Good and bad news, I can now get 2.8.0 to displaying on the PS4, but it wont let me browse around the filesystem for some reason.
It's like everything is protected and can't be selected (grayed out) during browsing.
 
Good and bad news, I can now get 2.8.0 to displaying on the PS4, but it wont let me browse around the filesystem for some reason.
It's like everything is protected and can't be selected (grayed out) during browsing.
strange, i guess compile each version of scummvm (major versions) and see where this issue started then go through the commits again, unless there is some other method you could use to find the games, if you made a .ini with the paths already in it would it launch the games from the main menu ?
 
strange, i guess compile each version of scummvm (major versions) and see where this issue started then go through the commits again, unless there is some other method you could use to find the games, if you made a .ini with the paths already in it would it launch the games from the main menu ?
My autoboot config made the emu crash so I had to investigate why and realized I don't have proper rights to the file system.
So yeah, no it's time to backtrack major versions :)
 
jacobsson - I know you make a working version of scummvm for psp. I also seem to have done for ps2. I also built the ps2 version and 1.4.1 and 1.7.0 - it all works, and works very well, but on the emulator ps2. on PS4 when I transfer - crashes with an error. any tips for building on ps4????
 
jacobsson - I know you make a working version of scummvm for psp. I also seem to have done for ps2. I also built the ps2 version and 1.4.1 and 1.7.0 - it all works, and works very well, but on the emulator ps2. on PS4 when I transfer - crashes with an error. any tips for building on ps4????
use psp emu on ps4!
 
Hi guys and gals.
First of all, I do appreciate that there is more persons interested in this very niche kind work that we're doing here (much thanks to @Devildwarf as always!) :)
Today I have a little time over to look into why we're locked out of reading files (aka disc0) in builds later than 1.2.

There seem to multiple obstacles in versions later than 1.9+ that even makes folders un-browsable, so first step would be figuring out why 1.3 lock up when accessing the scummvm.ini.

I'll let you know when I have a working build newer than 1.2. Have a great day everyone!
 
Some progress:
* Scummvm-1.3.0: good
* Scummvm-1.9.0: good
* Scummvm-2.0.0: good

* Scumvvm2.2.0: build problems
* Scumvvm2.5.0: build problems

* Scummvm-2.6.0: bad (file system locked when browsing files)
* Scummvm-2.7.0: bad (file system locked when browsing files)
* Scummvm-2.8.0: bad (file system locked when browsing files)

I'm trying to build 2.2.0 but it gives me different errors on the old gcc-4.6 pspdev and some others on the latest gcc-13+ pspdev.

@Devildwarf any ideas what to try here? I assume downgrading the newer pspdev toolchain is the way to go? Since I'm on mac silicone I'm running the latter in a docker.
 
Last edited:
Some progress:
* Scummvm-1.3.0: good
* Scummvm-1.9.0: good
* Scummvm-2.0.0: good

* Scumvvm2.2.0: build problems
* Scumvvm2.5.0: build problems

* Scummvm-2.6.0: bad (file system locked when browsing files)
* Scummvm-2.7.0: bad (file system locked when browsing files)
* Scummvm-2.8.0: bad (file system locked when browsing files)

I'm trying to build 2.2.0 but it gives me different errors on the old gcc-4.6 pspdev and some others on the latest gcc-13+ pspdev.

@Devildwarf any ideas what to try here? I assume downgrading the newer pspdev toolchain is the way to go? Since I'm on mac silicone I'm running the latter in a docker.

Wow great progress, even just upto 2.0.0 support is a huge improvement.
when you say "build problems" what exactly do you mean ? errors on configuration or errors on libraries ? or just gcc errors ?
well there are GCC 8+9 builds out there for windows, they could possibly be compiled on Mac but i have no idea about that sorry, i only use windows or linux so i cant really help on the mac side of things, if you want to try on windows (or maybe you could use a VM or WINE) i would try the prebuilt GCC 8 build, i just tested compiling scummvm 2.2.0 with it and it compiles although i get 1 error in Titanic engine (i always get some weird error about "engines/titanic/sound/season_no: No such file or directory" so i had to disable Titanic engine to get it to compile,
This is the prebuild version i used that worked for compiling 2.2.0. (windows only)
https://github.com/darksectordds/darksectordds.github.io/releases/tag/MinimalistPSPSDK

But if you really must do it on Mac try this
https://github.com/pspdev/psptoolchain/tree/toolchain-only
or
https://github.com/pspdev/psptoolchain/tree/development
these tree's use older versions of GCC and might work.
 
Wow great progress, even just upto 2.0.0 support is a huge improvement.
when you say "build problems" what exactly do you mean ? errors on configuration or errors on libraries ? or just gcc errors ?
well there are GCC 8+9 builds out there for windows, they could possibly be compiled on Mac but i have no idea about that sorry, i only use windows or linux so i cant really help on the mac side of things, if you want to try on windows (or maybe you could use a VM or WINE) i would try the prebuilt GCC 8 build, i just tested compiling scummvm 2.2.0 with it and it compiles although i get 1 error in Titanic engine (i always get some weird error about "engines/titanic/sound/season_no: No such file or directory" so i had to disable Titanic engine to get it to compile,
This is the prebuild version i used that worked for compiling 2.2.0. (windows only)
https://github.com/darksectordds/darksectordds.github.io/releases/tag/MinimalistPSPSDK

But if you really must do it on Mac try this
https://github.com/pspdev/psptoolchain/tree/toolchain-only
or
https://github.com/pspdev/psptoolchain/tree/development
these tree's use older versions of GCC and might work.
Good stuff as always man :cheerful:! On the mac I've actually setup a VMware for win11-arm64 that I use for the oldest mingw env that you pointed me towards for building 1.2.0. For newer builds I run an Ubunut x86_64 Docker image straight from macos. I'll test your link above for 2.2.0, thank you so much!

Regarding the errors, I have get:
Code:
usr/local/pspdev/psp/sdk/include/pspthreadman.h:1483:47: note: in expansion of macro 'clock'
 1483 | int sceKernelSysClock2USec(SceKernelSysClock *clock, unsigned int *low, unsigned int *high);
      |                                               ^~~~~
../../common/forbidden.h:57:89: error: expected ',' or '...' before 'SYMBOL'
   57 | #define FORBIDDEN_SYMBOL_REPLACEMENT FORBIDDEN_look_at_common_forbidden_h_for_more_info SYMBOL !%*
      |                                                                                         ^~~~~~
../../common/forbidden.h:61:15: note: in expansion of macro 'FORBIDDEN_SYMBOL_REPLACEMENT'
   61 | #define clock FORBIDDEN_SYMBOL_REPLACEMENT

For the older 4.6 env I see this:
Code:
../../backends/platform/psp/png_loader.cpp: In member function 'bool PngLoader::loadImageIntoBuffer()':
../../backends/platform/psp/png_loader.cpp:180: error: 'png_set_expand_gray_1_2_4_to_8' was not declared in this scope
make: *** [backends/platform/psp/png_loader.o] Error 1
 
Back
Top