GitPedia

Knulli and RGXX Notes

How to install and set up Knulli on the Anbernic RG35XX or RG40XX.

From LennartHennigs·Updated May 26, 2026·View on GitHub·

This is a living document that describes what I learned about setting up and running [Knulli](https://knulli.org/) on the [Anbernic RG35XX-H](https://anbernic.com/products/rg35xx-h) and [Anbernic RG40XX-H](https://anbernic.com/products/rg40xx-h). The project is written primarily in Shell, distributed under the Other license, first published in 2024. Key topics include: anbernic, anbernic-rg35xx-h, batocera, knulli, retrogaming.

Knulli on Anbernic RG-XX Devices

This is a living document that describes what I learned about setting up and running Knulli on the Anbernic RG35XX-H and Anbernic RG40XX-H.

This file will most likely contain errors and vague information.
You might not like how I describe things. I am sorry.
Also, I can't be held responsible if you break stuff by following this.
Nor will I share ROMS, BIOS, or any other files with you. Ask Google instead.

If you find this information helpful, please consider giving it a ⭐️ at GitHub.
And maybe consider buying me a ☕️.

Look at the CHANGELOG for recent changes to this document.

Note: This guide is standing on the shoulders of giants. Many of the tips here come from beanioz on Reddit and others on Reddit.

Table of Contents

Introduction

  • Knulli is a Linux-based custom firmware (CFW) for retro gaming for multiple devices/platforms.
  • It is a fork of the Batocera firmware.
  • There is now a port for the Anbernic.
  • It provides a better experience than the stock firmware.

Some Basics

The SD Card

  • The SD card has two partitions: root and share. We will only concern ourselves with the share partition.
  • On share partitiion are the folders for adding content to the device.
  • The share/bios/ folder is the place where to add BIOS files (see below).
  • The share/roms/ folder contains folders for the different emulators for your games. Most of the folder names are self-explanatory.

BIOS Files

  • Some Emulators need BIOS files to run.
  • Check for missing/needed BIOS files via:
    Main Menu > Game Settings > Missing Bios Check.
  • Or select All to see all possibly needed ROM files.
  • (Or see all needed ROMS here.)
  • Find them online...
  • ...and copy them into your SD card's bios/ folder.
  • To check if they are correct:
    Main Menu > Game Settings > Missing Bios Check

ROM Files

  • Find them online...
  • Copy your files in the different share/roms/ folders.
  • Put your game's files in the correct emulator folders.
  • Check the _ìnfo.txt files in each roms/ subfolder for information on file format and folder structure to set things up.
  • I've included a list of specific game port folders below.

Controls

General Navigation

ButtonFunction
POWERLong press to turn on. When turned on, click for standby.
STARTMenu
F + VOLUMEChange brightness
BOK / Select
ACancel / Back
F + POWERQuick Shutdown (not saving metadata)
R3 / L3Next / Previous Song (Frontend Music)
  • A+ B button assignment can be switched:
    Main Menu > System Settings > Frontend Developer Options > Switch Confirm & Cancel Buttons in EmulationStation. I recommend doing so.

  • Shutdown the device: Main Menu > Quit > Shutdown System > Yes or press F + POWER.

  • See Batocera > Controls Overview.

ButtonFunction
STARTQuick Access
L1 / L2Previous emulator
R1 / R2Next emulator
YQuick Search
BSide Menu

Game List

ButtonFunction
SELECTView Options
L1 / R1Page list up / down
L2 / R2Previous / next emulator
X (long press)Add / remove to Favorites
A (long press)Edit meta data / Edit keyboard config

In-game (GB, GBA, GB Color, NES, SNES, Sega, PSX)

  • In games A and B are often switched.
ButtonFunction
F + STARTExit Game
F + RIGHTFast Forward
F + L1Take Screenshot
F + UP / DOWNSelect Quick Save Slot
F + YQuick Save Game
F + XQuick Load Game
F + AReset Game
F + R2 / L2Select Shader
F + BEmulator Menu

Note: To see the screenshots you took in the menu, run Main Menu > Games Settings > Update Game List. Then, you will have a "Screenshots" section in your main menu.

Quick Load / Save

  • In most emulators, pressing F + Y or F + X will save or load a game's state.
  • There is a list of slots where you can save games, too. You select the slot via F + UP / DOWN.
  • But you can also load a saved state when you are in the game list.
  • In the game list, press X to show the saved state list.
  • Press A to load a state, Yto delete one, and B to cancel.

Setting Up The Device

Follow these steps to set up Knulli on your device. I arranged the steps in a helpful order, so it is best to follow them along.

  • I recommend using two SD cards – one for Knulli and one for the ROMs and your Knulli settings. This has the advantage of updating Knulli without messing up your settings or games.
  • The left slot will contain the Knulli card, and the right will contain the game ROMs.
  • Use at least a 32GB card for Knulli.

Installing Knulli on your device

  • Download Knulli for your device from the releases page.
  • Flash the firmware to a (new!) SD card (e.g., use BalenaEtcher).
  • Put the SD card in the device (left slot).
  • Turn on the device (Long-press on Power Button).
  • The device will now update the file structure on the SD card.

Preparing the ROM SD card

  • You need to format your second SD card (for the game ROMS) with the Linux ext4 file format to be able to run certain ports.

  • Put the SD card in the right slot.

  • Select the new card: System Settings > Storage Device.

  • Consider setting up WiFi (see below).

  • Reboot the device (Menu > Quit > Restart System).

Setting up WiFi

Note: The device can only connect to 2.4GHz WiFis with WPA2. If you habe the same WiFi name for also a 5GHz it will habe problems connecting. Consider disabling the 5GHz Wifi. Or set up a guest WiFi.

  • Main Menu > Network Settings.
  • Main Menu > System Settings > Frontend Developer Options > Enable web API access.
  • Now, you can find your device in your network.
  • IP Address: Main Menu > Network Settings.
  • Note: You can also define multiple known WiFis.

WiFi Good!

  • Now, you can download themes and enable scraping and other tools that need an Internet connection.
  • In addition, you can now find your device on your network.
  • You can mount the device to copy data, connect via SSH or the Emulation Station Web Service:
    http://[ip address]:1234.
  • Username and password are: root/linux.

Download Themes

  • A recommended theme is Art-Book-Next-ES:
    Main Menu > Updates & Downloads > Themes > Art-Book-Next-ES
  • Enable your theme:
    Main Menu > User Interface Settings > Theme Set

Enable Scraping

  • A scraper can download game information to your device.
  • You do need an active internet connection for this.
  • Register an account at screenscraper.fr.
  • Enter your credentials at Main Menu > Scraper.

Enable Retro Achievements

  • Get a login at retroachievements.org.
  • Enter your credentials: Main Menu > Game Settings > RetroArchievements Settings.

Update the ROM List on Each Boot

  • Main Menu > Games Settings > Netplay Settings > Index New Games

Additional Settings & Tipps

Hide UI Help

  • Menu > User Interface Settings > On-Screen Help: OFF

Overclock

  • Main Menu > System Settings > Overclock
  • Pick what works for you.

Audio Settings

  • You can disable the in-menu music in Main Menu > Sound Settings > Frontend Music.

  • Consider disabling Enable Navigation Sounds and Enable Video Preview Audiothere, too.

  • If you get no sound after you connect the console via HDMI, you need to reset the audio output:

    • Go to: Main Menu > System Settings > Audio Output.
    • Select AudioCodec and confirm. And then go back to Auto.

Enable / Disable Analog Stick LEDs

  • To enable/disable the LED lights: System Settings > Services > analog_stick_LED
  • Under Tools you can configure the LEDs.

Setup multiple WiFis

  • Open and edit the file share/system/batocera.conf.
  • Search for:
sh
# ------------ B - Network ------------ #
  • There you can define multiple wifis, like this:
sh
## Wi-Fi SSID (string) wifi.ssid=[some id] ## Wi-Fi KEY (string) ## Escape your special chars (# ; $) with a backslash. eg. $ becomes \$ wifi.key=[the password] ## Secondary Wi-Fi (not configurable via the user interface) wifi2.ssid=[some other wifi] wifi2.key=[the password]
  • These WifFs are then automatically recognized and connected to.

Bluetooth

To connect a bluetooth device, follow these steps:

  • Go to Main Menu > Controller & Bluetooth settings > Pain Bluetooth Pads Automatically.
  • Alternatively, run a manual detection and select your device.
  • Enable pairing mode on your device.
  • You will get a notification when the device is paired to the console.

Connecting a Bluetooth Controller

  • Follow the steps above.
  • Turn on Bluetooth mode on your controller (e.g., Y + START on an 8bitdo Controller).
  • Enable pairing mode on your controller.
  • Run the Controller Mapping.
  • Adjust the Player Assignments to use the controller, e.g.:
    • P1 > Controller
    • P2 > #0 Deeplay-Keys

Using Bluetooth Audio

  • Connect the audio device as described above.
  • Select the Bluetooth audio device as audio output:
    Main Menu > System Settings > Hardware > Audio Output > [Device]

Connecting other Bluetooth Devices

You can also pair keyboards and mice as described above.

Mapping Pad to Keys For a Single Game

  • In general, you can define global key settings for a system go to (here Amstrad):
    Game Setting > Per System Advanced Configuration > Amstrad CPC > Edit PadToKey Profile
  • But you can define keys per game as well.
  • To see the current configuration, SELECT > View Pad to Keyboard Information.
  • To edit it: A (long press) > Edit PadToKey Profile.
  • This will create a configuration file in your roms/ folder, either a .p2k.cfgor a .keys file.

Key File Format

  • In general, it's easier to use the UI to define keys, as described below,
  • .p2k.cfg files have a config style format.
cfg
0:select = j ;; Joystick
json
{ "actions_player1": [ { "trigger": "select", "type": "key", "target": "KEY_J", "description": "Joystick" } ] }
  • The .keys file precedes the .k2p.cfg one.
  • You can also manually create a key config file in the folder. Use the name of the ROM/port and append the suffix.
  • You can then add descriptions to the key definitions. For both examples above, add "Joystick" as a description.
  • In the .k2p.cfg files, the buttons are EAST, WEST. In the .keys, they are called A, Y.
  • In the .key files, L1 and R1 are called page up and page down.
  • The comments you enter in the key definition files will be displayed in the Key Definition UI.

Workflow for Adding Content

  • Copy files on the SD card (either from your computer or via WiFi).
  • Remove Apple's dotfiles if needed (see below).
  • Eject all mounted partitions.
  • Put the card in RG35XX-H.
  • Power on the device.
  • Run the Scraper
    Main Menu > Scraper > Scrape Now
  • Update the Game List
    Main Menu > Games Settings > Update Game List
  • Play!!

Note: Alternatively, you can connect to your device via your network and mount the share/ folder if it is connected via WiFi. Copy your filed, update the game list, scrape, and update again.

Removing Apple's Dot Files

  • On a Mac, you can run dot_clean /Volumes/SHARE.
  • I also suggest to create a dotclean script in your ports folder.

Setup and Optimizing Emulators

This section explains the "non-trivial" emulators (, how DOS or Daphne are being set up).

Playstation Portable (WiP) - PPSSPP

Loading Cheats

  • Cheats will not only allow you to "cheat" in the game (duh).
  • There are also patches that allow you to increase the game's performance (fixed FPS cheats).
  • Download the PPSSPP cheats pack
    Menu > Updates & Downloads > Content Downloader > Playstation Portable > Cheats for PPSSPP emulator
  • Enable Cheats per default
    Game Settings > Per System Configuration > PlayStation Portable > Game Cheats: ON

Use Cheats in Game

TBD

Increasing Performance (WiP)

  • The RGXX devices can be a little overwhelmed by high-end Playstation and PSP games. Here are settings that will get the games running more smoothly.

  • Use the PPSSPPPemulator, as it offers all performance options and allows you to enable cheats.

  • Press F to open the internal settings

  • Quick Menu > Core Options > Hacks

    • (Skip Buffer Effects = ON)
    • Skip GPU Readback = ON
    • Lazy Texture Caching = ON
    • Spline Bezier Quality = LOW
    • Lower resolution for effects: Balanced (may cause bugs) OR Safe (less likely to cause bugs)
  • Quick Menu > Core Options > Video

    • Rendering Resolution = 1x
    • Frameskip = 1
    • Frameskip Type = Number of Frames
    • Auto Frameskip = ON
    • Hardware Transform = ON
    • (Software Skinning = ON)
    • Texture Upscale Type = xBRZ
    • Texture Deposterize = ON
    • Anisometric Filtering OFF
    • Texture Filtering Auto
  • Skip Buffer Effects could result in the game is not being rendered.

Amstrad

  • The emulator used is Caprice32.
  • Fire and movement will automatically recognized as joystick input.
  • Therefore, don't map keyboard navigation to the joysticks or the D-PAD keys.
  • Bind the virtual keyboard (F9 for Caprice32) to the right analog stick click for all of Amstrad, in case you need other keys.
    Game Setting > Per System Advanced Configuration > Amstrad CPC > Edit PadToKey Profile > Right Stick Press = F9
  • For a game only assign the keys to select and start it (e.g., joystick or single-player mode).
    When a game is selected: A (long press) > Create/Edit PadToKey Profile
  • Note: Amstrad's return key does not equal the Enter key. I have not found a way to map this to it.

Nintendo DS

ButtonFunction
R2Toggle Display View Mode
L2 + R2Toggle Single Double View Msode

Nintendo 64

  • You need to change the default emulator to make games run smoothly.
  • Go to Game Settings > Per System Advanced Configuration > Nintendo 64.
    • Set Emulator: Mupen64Plus:RICE.
    • Set Power Mode: High Performance.
    • Set Game Aspect Ration: 4:3.
  • I have not yet found a way to access the hotkey menu or to Quick Load or Quick Save.
ButtonFunction
F + STARTExit Game
F + RIGHTFast Forward
F + AReset Game
F + L1Take Screenshot
  • To switch the A and B buttons, edit the system\configs\mupen64\input.xml file:
xml
<input name="b" value="C Button R" /> <input name="a" value="A Button" />

MS-DOS

  • There are different DOS emulators that you can choose. Per default, DOSBox Pure is used.
  • Copy a game folder to roms/dos/.
  • Add .DOS to the end of the folder name.
  • If there is a dosbox.conf file in the game folder, its settings will be applied.
  • If there is a dosbox.bat file in the game folder, it will be executed.
  • If you start the game without a dosbox.bat file, you will get the start menu where you can select a file as the default executable. Use the right joystick and the Ykey to select a file. You can also select a timeout, where the first X frames after starting a game are not shown.
  • After selecting an executable, it will be run, and a file called AUTOBOOT.DBP will be created.
  • A keyboard overlay will be shown if you press R3.
  • Press the left and right shoulder keys to toggle between the keyboard layout and other settings. Use the start menu to define the default executable.
    On the top left of the overlay keyboard, there is an option to map keys manually. However, it is preferable to use the Batocera key mapping.
ButtonFunction
R3Show Keyboard (and Keyboard Mapper button)
LEFT JOYSTICKMouse
F + UP /DOWNLoad / Save
F + RIGHTFast Forward
YOK

Configuring Cycles

You can also adjust the cycle speed in the dosbox.bat file, e.g.:

dos
CONFIG -cycles 5000

Typical values for cycles are:

  • 486 (66-100 MHz): cycles=3000 to 6000
  • Pentium (90-133 MHz): cycles=5000 to 10000
  • Pentium II (233-450 MHz): ` cycles=10000 to 20000

Disabling EMS

You can also disable the EMS in a similar war in the dosbox.bat file, in case a game gives you an error:

dos
CONFIG -set ems false

"Package File is Corrupt" error

With Dosbox-Pure some games show the above error, e.g. with PpwerMonger.
Add the LOADFIXcommand to the dosbox.bat to fix.
LOADFIX is an internal command that allocates 64k for the program to run.

Playstation Portable (PPSSPP)

MAME

ButtonFunction
LEFTInsert coin (not sure if this a pre-set)
AOK / Select
BCancel / Back
L3Emulator Menu
F + YQuick save game
F + XQuick load game
F + AReset game
F + R2Take screenshot
F + L2 / F + R2Select Shader

TBD

Setting up and Running Ports

Port Folders

This is a list of existing port folders/emulators available on the Knulli CFW by default.

Port FolderGame
cannonballOut Run - Sega Arcade
devilutionxDiablo & Diablo Hellfire
eduke32Duke Nukem 3D
fallout1-ceFallout 1
fallout2-ceFallout 2
mrboomBomberman
portsLinux games
prboomDoom 1 & Doom 2
quake3Quake 3
scummvmScumm Engine for Games like Monkey Island
sdlpopPrince of Persia
tyrquakeQuake 1
vitaquake2Quake 2
xash3d_fwgsHalf-Life Engine

Configuring Ports & Portmaster

  • In addition to the pre-installed ports there is Portmaster nstalled on Knulli.

  • Portmaster is a program that allows you to install and manage “game ports”—that is, Linux-native versions or open-source re-implementations of classic and modern games.

  • Often, you need to copy the original game files into the installed ports folder.

  • Note: If your ROM SD card is not ext4 formatted, some ports might not run.

  • Note: Always start by reading the _info.txt file in the emulator's folder.

Here are some popular ports that run on the RGXX device (see how-tos below):

Stardew Valley

Prerequisites

  • You bought Stardew Valley on Steam.
  • You installed the Stardew Valley port via Portmaster on your handheld.

Select the right game sources from Steam

  • To download the game, you need its app ID (here 413150) and the depot ID (= OS, here Linux and 413513), and then select the correct manifest (= version). On the manifest page, filter by compatibility.
  • If you want a specific version, compare the manifest date with the version history. If not, use the most recent one (the one on the top).

Download the game sources

  • The easiest way to download the game is to use DepotDownloader.
  • Download the latest version for your OS.
  • In the SteamDB manifest list, click the copy button next to "your" release. You will get something like this in your clipboard:
    -app 413150 -depot 413153 -manifest 8332166493523218127 -beta compatibility
    (8332166493523218127 refers to version 1.6.15.)
  • Use these parameters and include the -user parameter:
    DepotDownloader -app 413150 -depot 413153 -manifest 8332166493523218127 -beta compatibility -user
  • You will have to enter your Steam password to download the files. DepotDownload will download your files in a folder structure like this:
    depots/413153/16826373

Copy files to your handheld / SD card

  • Copy the content of the bottom-most directory to your SD card to this folder:
    share/roms/ports/stardewvalley/gamedata/
  • Done! Now, Stardew Valley should run fine.

(And yes, it takes about 30 seconds for it to start. Don't worry.)

Note: If you want to update your Stardew Valley to a new version, follow all steps and re-install Stardew Valley via Portmaster on your device.
Note: You can also copy savegames from your computer onto your handheld and vice versa.
Note: I recommend scaling the UI and the Zoom level a bit – I use 110% (set it in the Stardew Valley Options).

Balatro

Works as described here. Install via Portmaster and copy a single file.

Diablo 1 & Diablo Hellfire - Devilutionx

  • Copy DIABDAT.MPQ from the CD or Diablo installation to roms/devilutionx/ folder.
  • To run the Diablo: Hellfire expansion, you will need also to copy hellfire.mpq, hfmonk.mpq, hfmusic.mpq, hfvoice.mpq.
ButtonFunction
BOK / Select, Use Skill
ACancel / Back, Use Weapon
XPick up item
YUse Spell
Left D-PadMovement
Right D-PadMouse
START (pressed)In-Game Menu
START (pressed)Spells
START + FShow items
L1Use Health Potion
R1Use Mana Potion
L2Character
R2Inventory
R2Toggle Map
  • You cannot edit the Advanced System Options key definitions.
  • You can edit the key definitions in the Game: Settings > Pad mapping. There, A and B, and X and Y are reversed.
  • There is also a Playstation version of Diablo. The controls are nicer, but the graphics are more "blocky." It runs a bit less smoothly.

Duke Nukem 3D - eDuke32

  • Create a folder called duke in roms/eduke32/ and copy DUKE3D.GRP into it.
  • Create file Duke_Nukem_3D.eduke32 in roms/eduke32/.
  • Add line FILE = /duke/DUKE3D.GRP to it.
ButtonFunction
BOK / Select
ACancel / Back
R2Fire
XKick
L1Duck
L2Jump
R1Permanent ducking
Left D-PadMovement
Right D-PadLook
SELECTMap
STARTMain Menu
F + XLoad
F + YSave
F + STARTExit Emulator
  • You can edit the key definitions in the game: Options > Control Setup > Controller Setup > Button Assignment. In there, A and B and X and Y are reversed.

Fallout 1 - fallout1-ce

  • Copy the following files from your Fallout game into the rom/dallout1-ce folder:

    • master.dat
    • critter.dat
    • data/ folder
  • Create an empty file called Fallout.f1ce.

  • Initially, only the right joystick works in the game.

  • Therefore, you need to define your keys:
    Go to the Fallout entry in the Ports section A (long press) > Edit PadToKey Profile

  • Suggested key definition:

    ButtonFunction
    D-PAD-UPCursor Up
    D-PAD-DOWNCursor Down
    D-PAD-LEFTCursor Left
    D-PAD-RIGHTCursor Right
    STARTENTER
    SELECTESC
    EASTMouse Left
    SOUTHMouse Right
    NORTHS
    WESTI
    LEFT SHOULDERTAB
    Left Stick PressMouse Left
    Right Stick PressMouse Left
    Emulate Mouse CursorLeft Analog Stick

Fallout 2 - fallout2-ce

TBD

Doom 1 & Doom 2 - PRBOOM

  • Place the .WAD files of Doom 1 and/or in the roms/prboom/ folder.
  • Supported wads (non-exhaustive list) are from Doom 1, Doom 2, The Ultimate Doom, The Plutonia Experiment, TNT: Evilution.
ButtonFunction
AOK / Select
BCancel / Back
XFire
Left D-PADMovement
L1 / R1Strave
L2 / R2Change weapon
R3Turn around
STARTMain Menu
SELECTMap
F + YQuick save game
F + XQuick load game
F + AReset game
F + BEmulator menu (in here B is OK)
F + R2Take screenshot
F + L2 / F + R2Select Shader
  • You can edit the key in the game: F + B, Controls > Port 1 Controls

ScummVM

  • ScummVM is an emulator for point-and-click adventures.
  • Store games in the roms/scummvm/ folder.
  • Each game has a unique ID. You can find all games and their ID in the compatibility list, e.g., use tentacle for Day of the Tentacle.
  • Create a folder for each game and copy files into it.
  • Inside the folder, create a file called [id].scummvm for each game you want to add. To be sure, also write and put the ID into the file.
  • Note: Indiana Jones and the Fate of Atlantis uses the id indy4 and not atlantis.
    The supported games list shows the required files for a game.

ScummVM Resolution Settings

  • Per default, the games are not scaling to the Anbernic screen. Here are my settings to fix this. Go to Game Settings > Per System Advanced Settings > ScummVM

    Scale Factor: 3x
    Scaler Mode: ADVMAME
    Stretch Mode: Fit Resolution Scale
    
  • For more details, see ScummVM: Understanding the Graphics Settings

Better defaults

  • Edit the share/system/scummvm/scummvm.ini file.
    kbdmouse_speed=3
    subtitles=true
    gui_scale=150
    
ButtonFunction
LEFT D-PADMouse
STARTKeyboard
SELECTMain Menu
AOK / Select
XSkip
L2Settings, e.g. Save

Quake 1 - tyrquake

TBD

Quake 2 - tyrquake

TBD

Baldur's Gate, Icewind Dale, Planescape: Torment - GemRB

  • Install GebRB via Portmaster.

  • Create folders for your games: ports/gemrb/games/[ID].

    GameID
    Baldurs GateBG1
    Baldurs Gate 2BG2
    Icewind DaleIWD1
    Icewind Dale 2IWD2
    Plancescape: TornmentPST
  • Note: Portmaster will install a GemRB.sh file, but it will not work properly. It will always wait (silently) for a keypress and then launch Baldur's Gate.

  • Instead, copy these scripts into your ports folder. Use them to run your game,

Half-Life - xash3d_fwgs

  • Create a folder Half-Life.
  • Copy the contents of Half-Life/valve in there.
  • Create a folder called Half-Life.game. Keep in empty.
  • For Opposing Force copy Half-Life/gearbox, for Blue Shift the Half-Life/blueshiftfolder.
ButtonFunction
BOK / Select
ACancel / Back
  • You can view and change the controls in the game: Configuration > Controls. In there, A and B, and Xand Yare reversed.

Tools

OD Commander

It is pre-installed on the device and can be found in the Port section.

ButtonFunction
ACancel / Back
BOK / Select
SELECTToggle selection of files
STARTOpen the folder in the other tab
LEFT / RIGHTToggle active tab
XFile actions, e.g. Delete
YGeneral actions, e.g. Quit
L1 / R1Page up / down

dotclean

  • Let's add a simple script that deletes all Mac dot_files.
  • Create a file called dotclean.sh in roms/tools/ with the following content:
sh
#!/bin/bash # remove all ._* files from the system find /userdata/ -name "._*" -exec rm {} \;
  • Next, update the Game List:
    Main Menu > Games Settings > Update Game List

Setting up SyncThing

If you have a NAS or some permanent running computer, I recommend installing and running Syncthing on your device. This service will automatically sync and back up folders.
Follow these steps:

  • Enable the syncthing service on your device System Settings > Services and reboot.
  • Install and run the service it on your NAS
  • Open the webfrontend on either service, e.g http://192.168.178.60:8384/
  • Delete the default folder
  • Create a backup folder for your device
  • Set up credentials TODO
  • Add your device and give it a name
  • Select the folder and define the folders to be saved.
    • userdata/saves/
    • /userdata/bios/
    • /userdata/roms/

Some Terms / What is...

  • Batocera Linux is an open-source operating system designed specifically for retro gaming. It transforms any computer or single-board device into a gaming console and includes a variety of pre-configured emulators and tools, making it easy to set up and use.

  • CFW (Custom Firmware) is modified firmware that enhances a device's capabilities and features beyond those the original manufacturer provides. In the context of retro gaming, CFW allows for custom emulation setups and additional functionalities.

  • EmulationStation is a graphical frontend for organizing and launching games on various emulators. It provides a user-friendly interface for retro gaming systems and works with Batocera Linux to offer a streamlined gaming experience.

  • Libretro: A lightweight, modular API that enables the creation of multi-system emulators. It is the backbone for many emulation projects and integrates with EmulationStation, allowing it to run various emulators through a standardized interface.

These components work together to create a cohesive retro gaming system, where Batocera Linux provides the foundation, EmulationStation offers the interface, and Libretro supports the underlying emulation functionality.

Contributors

Showing top 1 contributor by commit count.

View all contributors on GitHub →

This article is auto-generated from LennartHennigs/Knulli-and-RGXX-Notes via the GitHub API.Last fetched: 6/25/2026