A true native port of Counter-Strike: Source for the R36S — no emulator involved. The game's ARM64 engine modules run directly on the CPU and render on the Mali GPU through a custom GLES pipeline, with dozens of handheld-specific optimizations, gamepad controls, an on-screen keyboard and working online play.
This port does NOT include any game data. You must provide your own copy of the Counter-Strike: Source game files (the Android CS:S APK), renamed to cstrike.apk.
INSTALLATION
CONTROLS
Tip: hold L1 and press X for Autobuy, or Y for Rebuy.
ONLINE PLAY
Retail Steam servers and old "v34" servers use a different protocol and cannot be joined. Stick to the servers shown in the built-in browser, or host your own.
Join the nillerusr community Discord to host your own server and discover servers you can join.
GOOD TO KNOW
- The very first launch performs a cold shader-cache build, so the first minutes can stutter as new effects are compiled. This is normal and fades as the cache fills — later sessions are smooth.
- On this passively-cooled handheld the chip can get warm under load and thermally throttle. A small heatsink or fan mod noticeably improves sustained FPS.
-
Performance and control settings can be changed by editing
config.txt -
If something goes wrong, the log file helps diagnose it:
/roms/ports/css/css.log - The port is under active development — performance and stability keep improving with each build. Check this page for updated packages.
SOURCE CODE
The port's loader source is open under the MIT license — the ELF loader, the bionic to glibc shims, the GLES/KMSDRM layer, the on-screen keyboard and the gamepad code. It contains no game data and no engine modules, so you still need your own copy of the game.
CREDITS & THANKS
This port is built on nillerusr's Source Engine — the ARM64/Android revival of Valve's Source engine that makes native Counter-Strike: Source possible on handhelds. It was adapted from NaGaa95's css_nx, the Nintendo Switch port of the game.