
Update to my native Halo CE port for H700 handhelds: online play + coop with PCs, a server browser, and a PortMaster zip
Update (Oct 7, v2026.10.07): muOS support and a round of fixes.
- muOS works (with the PortMaster zip). Earlier releases crashed there in menus, at respawn and in the pause menu: muOS's SDL takes over the crash signals the port uses to track the game's writes to its textures. Tested on muOS 2601 Jacaranda on an RG35XX H, offline and online.
- Marines no longer turn into stick figures after a level change. In a level loaded after another one (Silent Cartographer after Pillar of Autumn, say), marines' legs could show up as thin black lines, whole bodies could vanish with just their guns floating, and some parts stretched into long spikes. The GPU driver could overwrite part of the new level's model data with the previous level's. This had been there since at least v2026.10.02. The beach in Silent Cartographer sometimes losing its sand and water after another level was very likely the same bug; it hasn't happened since.
- Music no longer cuts out for good after a load. If a load or a long hitch let the music run out, the mixer never picked it back up.
- Server browser at 60 fps (it was 18–26). Text was drawn one character at a time; now runs of characters are drawn together.
- Smoother firefights on muOS. Unloading into shielded enemies could drop muOS to 9–23 fps; the sound mixer was the bottleneck. The Silent Cartographer beach battle now holds 33–46 there, and 45–58 on Knulli.
- Less memory over long sessions. Each level's shaders used to stay loaded for the whole session; now they're unloaded once unused. After six levels, about 50 MB more is free.
- A fresh install compiles shaders faster (two compiler threads), so a level's first frames are smoother.
Speed on an RG35XX H, muOS and Knulli alike: Pillar of Autumn 55–57 fps, the Silent Cartographer beach battle 38–45.
Updating: unzip the new Knulli zip over the old files, or install the new PortMaster zip. Your maps/, save/ and config.toml are kept, and so are checkpoints from v2026.10.06.1.
Download: https://github.com/kirklandsig/halo-ce-anbernic-rg35xx/releases/latest
=============
TL;DR: Five days ago I posted Halo: Combat Evolved running natively on the Anbernic RG35XX H. It now plays online. I opened the server browser on the handheld, joined a public 23-player Slayer game on Blood Gulch, and it ran at 50–60 fps (mostly 58–60). No emulation, open source, bring your own Xbox disc.
What's new
- Online play, from the OpenCE decompilation project (formerly halo-ce-universal), which this port is built on:
- a server browser of public internet games;
- hosting and joining, over the internet or the local network (system link);
- campaign co-op over the network;
- the PC version's menus.
- You play with anyone running the same OpenCE build, on PC or another handheld. Internet play only connects while you're hosting, joining or browsing.
- A PortMaster zip alongside the Knulli one. The game is now built against an older glibc, so it should load on other H700 firmware too. It's tested on Knulli; muOS should work, but I haven't tested it on a handheld yet, so reports are welcome.
- Faster than the first post: the Halo (a30) level opening is about 56–58 fps (it was ~55), and the Silent Cartographer beach battle is about 44 (it was ~40). Dynamic resolution keeps heavy scenes smooth, and frame pacing is much better.
- Reported working on the RG34XX SP too.
What I've tested and what I haven't
I joined a public internet game and played on Blood Gulch with 22 other players: it connected first time and held 50–60 fps. Hosting from the handheld and online campaign co-op are in this build, but I haven't tried them on the handheld myself yet. If you do, tell me how it goes.
Installing or updating
Download the zip for Knulli or PortMaster from the latest release. The first launch extracts the maps from your own Xbox disc image on the handheld. If you're updating, your maps, saves and settings carry over. Two things to know:
- Checkpoints from older versions can't be loaded (upstream changed the save format). Your profiles and unlocked levels are kept.
- The first launch takes a little longer while shaders rebuild.
Legal
You need your own original Xbox copy of Halo. The repository and releases contain no game files, ISOs, maps or XBEs. It's an unofficial fan project, not affiliated with Microsoft, Bungie or Halo Studios.
Credits
- OpenCE, whose online play, menus and decompilation this all rests on, and the Halo CE decompilation community (punpckhdq/halo and its forks).
- The Knulli and PortMaster teams.
Links
- Repo: https://github.com/kirklandsig/halo-ce-anbernic-rg35xx
- Install guide: https://github.com/kirklandsig/halo-ce-anbernic-rg35xx/blob/main/docs/INSTALL.md
- Playing online: https://github.com/kirklandsig/halo-ce-anbernic-rg35xx/blob/main/docs/INSTALL.md#playing-online
- The first post: [link to your Oct 1 post]
Bug reports from other H700 devices (RG35XX Plus/SP/2024, RG40XX, RG CubeXX, RG34XX) are very welcome.
Much of the porting and optimisation was done with Claude Code (an AI coding agent) doing the heavy lifting under my direction; the commits say so too.