Skip to content

Conversation

@humbertodias
Copy link
Collaborator

@humbertodias humbertodias commented Feb 15, 2024

Todo

  • Create a docker file for cross compiling
  • Create script easy-compile-ps3 for building paintown.ps3
  • Create release-ps3 for building pkg locally
  • GitHub action with CI/CD for building releases
  • Compile sdl2 and dependencies inside ps3toochain container
  • Create meson cross file specific for PS3
  • Implement ghc::filesystem for PS3
  • Implement ps3/system.cpp
  • Create a docker image with ps3toochain,pthread,sdl2,SDL2_image,SDL2_mixer,SDL2_ttf,SDL2_gfx
  • Add pthread POSIX to PS3
  • Adapt paintown code to use pthread for PS3
  • Adapt the code to run on PS3 emulator

How to test

End Used

  1. Download the latest paintown pkg from releases
  2. Download and open RPCS3 emulator specific for your current processor [x86,arm]
  3. Download and install the PS3 firmware from Sony
  4. Install on RPCS3 the pkg and play the game

image

Dev

./easy-compile-docker-ps3 && ./release/release-ps3

A paintown-ps3-$version.pkg will be generated

Open RPCS3 and drag and drop the .pkg inside

image

Note

Tested on Mac OS - ARM. But should work on any platform supported by RPCS3

@kazzmir
Copy link
Owner

kazzmir commented Feb 15, 2024

all the scons stuff should be removed eventually, but its ok to leave the code as a reference until it can be replaced.

@kazzmir
Copy link
Owner

kazzmir commented Feb 20, 2024

this compiles the entire ps3 toolchain every time? maybe we can create a docker image out of it and put it on dockerhub?

…rent data directory i.e. ./release-ps3 other-data.
@humbertodias humbertodias changed the title Build ps3 Build PS3 Feb 20, 2024
@humbertodias
Copy link
Collaborator Author

this compiles the entire ps3 toolchain every time? maybe we can create a docker image out of it and put it on dockerhub?

Yes. The idea is push the image into a docker registry and just call the container to cross compile.
I still didn't. Because, I'm facing problems to compile all dependencies with meson.
Meanwhile, I put a simple sdl example that just draw a red rectangle to verify the flow ci/cd.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants