Play! PS2 browser core, upstream 505dac7 (full commit in source git provenance). BSD-2-Clause; notices for dependencies are retained in corresponding-source.tar.gz. Built with Emscripten 4.0.20, Release, BUILD_PLAY=ON, BUILD_PSFPLAYER=OFF, BUILD_TESTS=OFF, BUILD_LIBRETRO_CORE=OFF, USE_QT=OFF, USE_GLES=ON. cmake -S play-source -B play-build -DCMAKE_TOOLCHAIN_FILE="$EMSDK/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake" -DCMAKE_BUILD_TYPE=Release -DBUILD_PSFPLAYER=OFF -DBUILD_TESTS=OFF -DUSE_QT=OFF -DUSE_GLES=ON cmake --build play-build --target Play -j2 The source includes bounded async disc I/O, WebGL alpha-index emulation, 64-bit shader capability comparisons, JS input/state/pause exports and preserved drawing buffers for screenshots. HLE firmware; no external BIOS. Disc images are streamed by the integration in 1 MiB ranges with a 64 MiB cache. No game or firmware data is part of this distribution. 23 October: register SCC TLB read/write callbacks through the native Wasm function table, set system language to English and match /vfs/mc0 and /vfs/mc1 to the card persistence paths. Native Gradius gameplay, pause, save/load and screenshot regression passed; Commandos 2 and Splinter Cell Chaos Theory no longer fail Wasm validation.