BaseOS is a minimal but feature-complete operating system for Anbernic RG XX handhelds.
If you're tired of slow boot times, high battery consumption, or less than ideal support for hardware features on other custom firmwares, BaseOS is for you.
It is designed as a drop-in replacement for the stock OS. However, BaseOS does not have a user interface of its own. It will boot up as fast as possible, then hand off to your frontend of choice.
BaseOS can auto-detect and start NextUI, Slot and spruceOS.
BaseOS currently boots in 2.25 seconds as of v1.2.0, down from 2.99 seconds in v1.1.0. We have a hard limit of 3.0 sec, and every change is regression tested against this.
Your frontend adds its own startup time. For example, NextUI adds about 4.5 seconds, bringing the total to approximately 6.75 seconds.
BaseOS timing is measured from kernel start to frontend handoff, excluding bootloader time.
- The fastest possible boot time for Anbernic RG XX devices.
- Lowest possible resource and battery usage.
- Takes 5 sec to install.
- Full support for the handheld's display, sound, controls, networking, HDMI, LEDs, deep sleep and other features. No compromise on that front.
- First-boot expansion of the data partition to fill the SD card.
- Easy updates: copy one file onto the card and reboot. No reflashing, and your ROMs, saves and settings are untouched.
- SSH/SFTP over Wi-Fi and adb over USB active by default.
- USB storage mode (hold MENU when powering on).
Follow installation guide for flashing, first boot, and NextUI setup on one-card or two-card configurations.
To boot Slot, extract its H700 release on your computer and copy the contents of
the extracted slot-<version> folder to the card root. Use either BaseOS's
visible data partition on TF1 or a FAT32/exFAT card in TF2; a usable TF2 card
takes priority. The card must contain System/slot, System/mgba_libretro.so
and System/gpsp_libretro.so, alongside the release's other folders. Put GBA
games in Games/ and the optional BIOS in BIOS/. BaseOS boots Slot directly;
it does not install a Slot zip or require a launch.sh.
NextUI takes priority when both frontends are installed. Its pending MinUI.zip
and *.pakz installers also run before frontend selection. For a Slot-only
setup, use a card without NextUI's launcher or installer files. Update Slot by
replacing its System folder with the one from a new release.
Edit baseos.conf at the root of TF1's visible partition, then restart normally
to apply changes. TF1 supplies these settings even when your frontend is on TF2.
hostname=my-handheld
mdns=truehostname: the device's network name. Defaults to its model ID, such asrg34xxsp. Use 1–63 letters, digits or hyphens, with no hyphen at either end.mdns: enables<hostname>.localaccess over Wi-Fi (for example,my-handheld.local). Defaults totrue; setfalseto disable it.
Omitted settings use their defaults. Lines starting with # are comments.
- Anbernic RG28XX
- Anbernic RG34XX
- Anbernic RG34XX SP
- Anbernic RG35XX Plus and RG35XX 2024
- Anbernic RG35XX H
- Anbernic RG35XX Pro
- Anbernic RG35XX SP
- Anbernic RG40XX H
- Anbernic RG40XX V
- Anbernic RG CubeXX
- Anbernic RG SP
Development setup, build instructions, testing, and technical documentation are in CONTRIBUTING.md.
For reliable adb, connect a data-capable USB-C cable before powering on. If it is disconnected, restart with the cable connected.
For USB mass storage, press and hold the MENU key while plugging in the USB cable. If your computer provides power, your handheld will start in mass storage mode. If it doesn't start, press and hold power for 3-4 sec. Let go when it start, but keep pressing the MENU button till you finally see "USB STORAGE: EJECT BEFORE RESTART" on the screen. Then you can let go.
NOTE: Eject the drive on the computer before restarting the handheld. Restart without holding MENU to return to normal.
BaseOS uses the stock Anbernic bootloader, kernel and hardware drivers for H700-based handhelds, with a minimal BusyBox-based system in place of the stock Ubuntu userland. It provides the hardware support and services your frontend needs with minimal background activity.
The current version is generally based on the latest stock/stockmod OS release.