Beetle PC-FX c1650bad5fbdcc3c3ccd45e29e3983e1ccf16cff, https://github.com/libretro/beetle-pcfx-libretro . GPLv2 and individual file notices preserved. No firmware or game discs included. Modified Makefile.common includes libretro-common objects in the static web build.
Use Emscripten SDK 4.0.20. In pcfx-source: emmake make platform=emscripten CC=emcc CXX=em++ AR=emar -j2; cp mednafen_pcfx_libretro_emscripten.bc pcfx.a. Then set EMSDK_DIR and run bash link.sh from this package. The bridge advertises GET_INPUT_BITMASKS so the core uses its native button mapping. The worker reads CHD or CUE/BIN files using bounded HTTP Range cache; the frontend passes canonical URLs for case-sensitive CUE dependencies. External owner firmware is supplied at runtime.
