diff --git a/build.md b/build.md
index 141b978..0908b11 100644
--- a/build.md
+++ b/build.md
@@ -74,6 +74,7 @@ SDKs and [Mist++](https://github.grady.link/mistpp) installed.
`/opt/ps4-homebrew-sdk/target/include/orbis`.
- **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.
- **For Original Xbox**, you'll need [nxdk](https://github.com/xboxDev/nxdk) and
@@ -125,6 +126,8 @@ done with `cmake`, though the exact commands differ between platforms:
`/opt/ps4-homebrew-sdk/bin/orbis-cmake -B build-ps4 && cmake --build build-ps4`.
- **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 && 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]
@@ -206,6 +209,7 @@ The audio backend to be used. Can be one of `sdl2`, `sdl1`, `sdl3`, `libpulse`,
| Switch | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Vita | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| PSP | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
+| PS2 | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| PS4 | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| webOS | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Libretro | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
@@ -296,6 +300,7 @@ The allowed modes depend on the platform you are building for:
| Switch | ❌ | ✅ | ✅ |
| Vita | ❌ | ✅ | ✅ |
| PSP | ❌ | ✅ | ✅ |
+| PS2 | ❌ | ❌ | ✅ |
| PS4 | ❌ | ✅ | ✅ |
| webOS | ❌ | ❌ | ✅ |
| Libretro | ✅ | ✅ | ✅ |
@@ -360,6 +365,7 @@ The renderer backend to be used. Can be one of `sdl1`, `sdl2`, `sdl3`, `opengl`,
| Switch | ❌ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Vita | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ |
| PSP | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
+| PS2 | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| PS4 | ❌ | ✅ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| webOS | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Libretro | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
diff --git a/docker.md b/docker.md
index 2f88b16..00a32ee 100644
--- a/docker.md
+++ b/docker.md
@@ -218,6 +218,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 6715ecc..865b723 100644
--- a/index.md
+++ b/index.md
@@ -36,6 +36,7 @@ features:
+
diff --git a/install.md b/install.md
index b038c15..0d31554 100644
--- a/install.md
+++ b/install.md
@@ -212,6 +212,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!%20PS2%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 95c6390..a1db649 100644
--- a/intro.md
+++ b/intro.md
@@ -4,6 +4,6 @@ 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), Libretro (RetroArch), Original Xbox, Windows, Linux, and
macOS!
diff --git a/limitations.md b/limitations.md
index 632b1f3..222ad62 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, Original Xbox) especially struggle
+ - Some older platforms (NDS, GameCube, PSP, Original Xbox, 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.
@@ -55,6 +55,7 @@ features support specific features.
| Switch | ❌ | ❌ | ✅ |
| Vita | ❌ | ❌ | ✅ |
| PSP | ❌ | ❌ | ❌ |
+| PS2 | ❌ | ❌ | ❌ |
| PS4 | ✅ | ❌ | ❌ |
| Libretro | ✅ | ❌ | ❌ |
| Original Xbox | ❌ | ❌ | ✅ |
@@ -74,6 +75,7 @@ features support specific features.
| Switch | ✅ | 🟡 | ✅ | ❌ |
| Vita | ✅ | 🟡 | ✅ | ❌ |
| PSP | ✅ | 🟡 | ✅ | ❌ |
+| PS2 | ❌ | ❌ | ✅ | ❌ |
| PS4 | ✅ | ✅ | ✅ | ✅ |
| Libretro | ✅ | ✅ | ✅ | ✅ |
| Original Xbox | ✅ | ✅ | ✅ | ✅ |
@@ -85,7 +87,7 @@ features support specific features.
### Misc Notes
-- **[Wii, Wii U, GameCube, Switch, PS4, Original Xbox]** The first controller
+- **[Wii, Wii U, GameCube, Switch, PS4, PS2, Original Xbox]** 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 32050bf..729171f 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