diff --git a/build.md b/build.md index 9f6a0e2..2c44f2c 100644 --- a/build.md +++ b/build.md @@ -74,6 +74,7 @@ SDKs and [Mist++](https://github.grady.link/mistpp) installed. toolchain. It includes every SDL2 thing you might need. - **For the PSP**, all you need is the [PSPSDK](https://pspdev.github.io) toolchain. It includes every SDL2 thing you might need. +- **For the PS2**, you will need [ps2sdk](https://ps2dev.github.io/) and [ps2sdk-ports](https://github.com/ps2dev/ps2sdk-ports). It includes every SDL3 thing you might need. - **For webOS**, all you need is the webosbrew Native SDK installed to your home directory and ares-cli. @@ -121,6 +122,8 @@ done with `cmake`, though the exact commands differ between platforms: `cmake -DCMAKE_TOOLCHAIN_FILE=$VITASDK/share/vita.toolchain.cmake -B build/vita && cmake --build build/vita`. - **For the PSP**, you need to run `psp-cmake -B build/psp -S . -DSE_SYSTEM=ON -DSE_CLOUDVARS=OFF && make -C build/psp`. +- **For the PS2**, you need to run + `cmake -B build-ps2 -S . -DCMAKE_TOOLCHAIN_FILE=$PS2SDK/ps2dev.cmake -DCMAKE_BUILD_TYPE=Release -DPS2=ON && make -C build-ps2 -j 2`. - **For webOS**, you need to run `cmake -B build/webos -S . -DCMAKE_TOOLCHAIN_FILE="~/arm-webos-linux-gnueabi_sdk-buildroot/share/buildroot/toolchainfile.cmake" -DSE_CLOUDVARS=OFF -DWEBOS=ON -DSE_RENDERER=sdl2 && make -C build/webos all package`. > [!NOTE] @@ -190,6 +193,7 @@ The audio backend to be used. Can be one of `sdl2`, `sdl1`, `sdl3`, `nds`, or | Vita | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | | PSP | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | | PS4 | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | +| PS2 | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | | webOS | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | | Libretro | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | @@ -267,6 +271,7 @@ The allowed modes depend on the platform you are building for: | Vita | ❌ | ✅ | ✅ | | PSP | ❌ | ✅ | ✅ | | PS4 | ❌ | ✅ | ✅ | +| PS2 | ❌ | ✅ | ✅ | | webOS | ❌ | ❌ | ✅ | | Libretro | ✅ | ✅ | ✅ | @@ -326,10 +331,11 @@ The renderer backend to be used. Can be one of `sdl1`, `sdl2`, `sdl3`, `opengl`, | Vita | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | | PSP | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | PS4 | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | +| PS2 | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | | webOS | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | Libretro | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | -Defaults to `citro2d` on 3DS, `gl2d` on NDS, `libretro` on Libretro, and `sdl2` +Defaults to `citro2d` on 3DS, `gl2d` on NDS, `libretro` on Libretro, `sdl3` on PS2, and `sdl2` on everything else. ### `SE_SVG` diff --git a/docker.md b/docker.md index 7b676a3..aa4ac54 100644 --- a/docker.md +++ b/docker.md @@ -209,6 +209,7 @@ After a successful build, your exported files will appear directly in the | **PS4** | `.pkg` | | **Switch** | `.nro` | | **PSP** | `.zip` | +| **PS2** | `.elf` | | **DS** | `.nds` | | **GameCube/Wii** | `.dol` | | **webOS** | `.ipk` | diff --git a/index.md b/index.md index acd0140..263574c 100644 --- a/index.md +++ b/index.md @@ -36,6 +36,7 @@ features: Vita Nightly Build PSP Nightly Build PS4 Nightly Build +PS2 Nightly Build PC Nightly Build webOS Nightly Build Libretro Nightly Build diff --git a/install.md b/install.md index fbdafae..9caf810 100644 --- a/install.md +++ b/install.md @@ -206,6 +206,16 @@ create it. Then it should be as simple as opening the app on your PS4 from the XMB! +## PS2 + +Download the `scratch-ps2.elf` file from the releases tab or +[nightly build](https://nightly.link/ScratchEverywhere/ScratchEverywhere/workflows/nightly-ps2/main/Scratch%20Everywhere!%20PS4%20Nightly.zip), + +Place your Scratch projects in `scratch-ps2` on your storage device (you may need to create the folder yourself), + +Then it should be as simple as opening the app on your PS2! + + ### webOS Get your TV into [dev mode](https://www.webosbrew.org/devmode/) or diff --git a/intro.md b/intro.md index b27eb20..ac41510 100644 --- a/intro.md +++ b/intro.md @@ -4,5 +4,5 @@ Scratch Everywhere! **(note the exclamation mark)** is a cross-platform implementation of the Scratch runtime. In simpler words, it's a way to run Scratch projects on old homebrew consoles. -The project supports 3DS, DS, DSi, Wii U, Wii, GameCube, Switch, Vita, PSP, PS4, +The project supports 3DS, DS, DSi, Wii U, Wii, GameCube, Switch, Vita, PSP, PS4, PS2, webOS (for LG TVs), Windows, Linux, and macOS! diff --git a/limitations.md b/limitations.md index afd7ba5..748be69 100644 --- a/limitations.md +++ b/limitations.md @@ -9,7 +9,7 @@ crashes, and things that will just not work. you know of a block that's causing problems). - Performance is poor when running complex projects, specifically those with many clones or lots of blocks running at once. - - Some older platforms (NDS, GameCube, PSP) especially struggle due to memory + - Some older platforms (NDS, GameCube, PSP, PS2) especially struggle due to memory constraints. Try to keep projects small on these platforms. - Sounds may take time to load when playing them for the first time. @@ -53,25 +53,27 @@ features support specific features. | Vita | ❌ | ❌ | ✅ | | PSP | ❌ | ❌ | ❌ | | PS4 | ❌ | ❌ | ❌ | +| PS2 | ❌ | ❌ | ❌ | | Libretro | ✅ | ❌ | ❌ | ### Extensions | Platform | Pen | Text to Speech | Makey Makey | Translate | | -------- | --- | -------------- | ----------- | --------- | -| Windows | ✅ | ✅ | ✅ | ✅ | -| macOS | ✅ | ✅ | ✅ | ✅ | -| Linux | ✅ | ✅ | ✅ | ✅ | -| 3DS | ✅ | ✅ | ✅ | ✅ | -| DS | ❌ | ❌ | ✅ | ❌ | -| Wii U | ✅ | ✅ | ✅ | ✅ | -| Wii | ✅ | 🟡 | ✅ | ❌ | -| GameCube | ✅ | 🟡 | ✅ | ❌ | -| Switch | ✅ | 🟡 | ✅ | ❌ | -| Vita | ✅ | 🟡 | ✅ | ❌ | -| PSP | ✅ | 🟡 | ✅ | ❌ | -| PS4 | ✅ | 🟡 | ✅ | ❌ | -| Libretro | ✅ | ✅ | ✅ | ✅ | +| Windows | ✅ | ✅ | ✅ | ✅ | +| macOS | ✅ | ✅ | ✅ | ✅ | +| Linux | ✅ | ✅ | ✅ | ✅ | +| 3DS | ✅ | ✅ | ✅ | ✅ | +| DS | ❌ | ❌ | ✅ | ❌ | +| Wii U | ✅ | ✅ | ✅ | ✅ | +| Wii | ✅ | 🟡 | ✅ | ❌ | +| GameCube | ✅ | 🟡 | ✅ | ❌ | +| Switch | ✅ | 🟡 | ✅ | ❌ | +| Vita | ✅ | 🟡 | ✅ | ❌ | +| PSP | ✅ | 🟡 | ✅ | ❌ | +| PS4 | ✅ | 🟡 | ✅ | ❌ | +| PS2 | ✅ | 🟡 | ✅ | ❌ | +| Libretro | ✅ | ✅ | ✅ | ✅ | Text-to-Speech can use either the official Scratch servers (if the platform supports it), or DECtalk, which runs locally but is not 100% accurate. Platforms @@ -79,7 +81,7 @@ marked with a 🟡 support DECtalk only, while those with a ✅ support both. ### Misc Notes -- **[Wii, Wii U, GameCube, Switch]** The first controller connected will be the +- **[Wii, Wii U, GameCube, PS2, Switch]** The first controller connected will be the only one that will work. - **[Wii]** If you're using a PAL Wii, you must use 50Hz. - **[PSP]** Images cannot be over 512x512. diff --git a/settings.md b/settings.md index 4bf5fb7..9d183d6 100644 --- a/settings.md +++ b/settings.md @@ -55,7 +55,7 @@ Whether or not to display FPS info when running a project. Disabled by default. Whether or not to store the project in RAM. This can boost performance when loading a new costume or sound, but may cause problems on lower-end platforms. -Enabled by default on all platforms except for DS, GameCube, and PSP. +Enabled by default on all platforms except for DS, GameCube, PS2, and PSP. ### Warp Timer