Another PPSSPP core from Retroarch
========
Builds the libretro core for the Nintendo Switch from this tree, so the buildbot's Switch core can stop coming from a fork.
Today it is built from
libretro/ppsspp-libnx, branch
switch, whose upstream base is
6f04f52f5c —
March 2022. That is what Switch users have been running.
@m4xw has kept rebasing the port privately (his
rebase_2026 branch sits on December 2025), and this is that work carried onto current master, with the parts that were never scoped to the Switch put back.
The first three commits are his, rebased. The rest is mine.
What was in the way
Most of it was the port assuming a toolchain and a tree from four years ago:
- libnx dropped
virtmemReserve for virtmemFindAslr, and now defines BIT and BreakReason, which collide with Arm64Emitter and with the rename block CommonTypes.h already keeps around switch.h.
- newlib gaps: no
<sys/mman.h>, no <sys/syscall.h>, ENETDOWN sharing a value with ESHUTDOWN, <climits> not arriving transitively.
T3DCreateGLContext grew a parameter; Common/GL/GLInterfaceBase.h stopped existing (the port carried an #include of it next to a member its own comment marked // unknown leftover??); proAdhoc.cpp had 38 lines of resurrected DNS code calling g_Config.proAdhocServer, renamed to sProAdhocServer long ago.
https://github.com/WizzardSK/ppsspp-ci/releases/tag/0.2