Batocera Linux

A while ago I heard about a free Linux distribution called Batocera via a Youtube video ( – video in German). I piqued my interest, because I had grown up with the C64 and Atari ST, and always had an affinity with playing games. This particular Linux distribution, you see, allowed emulation of just about any retro computer/console within an easily configurable, visually attractive user interface. All you needed to do was install it on a sufficiently sized USB or SSD drive and Bob’s your uncle. Oh, and populate it with the appropriate ROMs and game files.

By the time I had discovered Batocera (named after a beetle, incidentally) it was at distribution 37. It was indeed very easy to install, although I was disconcerted for a bit when I saw most of the external SSD somehow losing its storage space after installation. This turned out to be the result of there being a big Linux-format partition that is invisible to us Windows n00bs. After installing I reset my system. Luckily, I didn’t even have to go into the BIOS because my system has a ‘boot from’ hotkey allowing the selection of which device to boot from – including the external SSD.

Please allow for me, at this point, to write a bit about the magic of mass storage evolution, told from the perspective of someone whose first hard disk (the Atari SH204) was 20 Mb (no typo), with sturdy metal housing, having the size of a shoe box, weighing about 3 kilos (according to current internet sources, though I don’t remember it weighing that much), and setting me back the 1988 equivalent of about € 440 (1000 Dutch guilders, which may even have been the second-hand price as I got it from a friend). Back then I threw every application that I owned on it, and I still had many megabytes to spare. It was lighting fast (compared to a floppy disk, obviously) and incredibly, well, spacious. Inside of it was a 3.5 inch (Tandon TM262) or 5.25 inch (Seagate ST225) drive with ST506 interface (though I never opened it, as I was too shit-scared I would lose data). I also remember I sometimes needed to defragment it in order to speed it up, which would take one or more hours and was one of the scariest things I had ever done to, literally, all my data and apps. Ever since, adhering to what is known as Kryder’s Law, mass storage has become denser, more compact yet allowing for bigger storage, and let’s not forget oodles cheaper. I now have 512 Gb USB drives barely bigger than twice the width of a USB-A socket, costing a bit over € 40 (roughly 25600 times the storage at 1/10th of the price). I guess it’s a sure sign of belonging to the 40+ (or even 50+) demographic when this still truly boggles one’s mind. At any rate, I put Batocera on a 2 Tb Samsung SSD that is available for a bit over € 130 (roughly 102400 times the storage at less than 1/3rd of the price). It is the size of a credit card and 0,8 cm thick. Belonging to the age bracket I mentioned before, colour me impressed.
Enough now of this stuff that makes me sound positively geriatric. Well….maybe. Hopefully.

So I booted into Batocera and was, rather quickly, met by the splash screen and a menu where I could select literally any system I had ever heard of…as well as plenty I never knew existed. All of this was presented, like mentioned before, in a visually rather pleasing user interface. Most systems, obviously, had no games to play. Some of them did – freeware ports of some popular titles, as well as the odd other free game. Batocera will make use of your computer’s hardware but none of its internal storage, which means you can make use of the controller, mouse, keyboard and network card, but need an external USB drive to copy files to/from it. You have no access to the Windows file system, and can’t even access it using your network because Windows is simply not active the moment Batocera runs on your system. Thankfully, it has a file organiser available for the task of copying files from an external USB drive.
My first step involved discovering just which systems it supported. There were Atari ST and C64, of course, but also other systems from before, during and after that era. I spotted the Vectrex (a very cool vector-based system that had a built-in monitor, that I used to drool at when I gazed into the window of a local toy store in the early 80s), the Philips Videopac (from that same era, on which I played hours of “Pick Axe Pete” at a friend’s place), obviously the various Atari game consoles of the past (2600, 5200, and 7800), ancient Nintendo “Game & Watch” titles, the Atari Lynx, and the various incarnations of the Game Boy, Apple, Commodore Amiga and Sinclair computers (though I sort of missed the QL). Most impressively, I also found literally all the gaming consoles I remember having heard from, but not having been able to afford due to monetary or location constraints – Panasonic 3DO, Philips CD-i, ColecoVision, Dreamcast, Game Gear, Master System, Mega Drive, Nintendo 64, SNES, PC Engine, Playstation (including Vita, PSP, PS2 and PS3), Sega Saturn, Wii, Wii U, Xbox and Xbox 360. That, as well as some pretty damn obscure systems such as the RISC-architecture Acorn Archimedes and the failed Atari Jaguar, and many others even more obscure. Then there’s emulation of genuine arcade cabinets such as the ones you’d find in gaming halls of the 70s and later, including some really awesome platform, shoot-em-up and beat-em-up games. In total there are nearly 200 systems that can be selected.
My second step of discovery was experimenting with the various elements that make Batocera truly unique, make it better than just having a bunch of individual emulators, each with their own configuration, run on your system. There’s the Themes, for starters, which are ways of presenting all this information in variety a ways. They can all be loaded, installed, selected and configured from within the system. My current fave is Ckau-Book, which combines a spinning-wheel selector with extended info about the current system and reminders of which controller buttons to use for which menu functions. Next there’s the Scraper, which allows the system to download box art, description, screenshots and often even gameplay videos belonging to just about every game on every system you’d care to download. I think that’s a really awesome and atmospheric feature. Then there’s Retroachievements, which allow for certain achievements to be unlocked for retro games that never used to have them. To be honest, I have not played any games that support this yet, but it seems very cool. In the same category (not used myself, but sounds cool) is the Netplay feature, where you can play certain multi-player games across the internet. These things are the icing on the cake, really.

Before the fun really starts, you need to find and download games and Operating System ROM files. When you hunt for these, you will find out they are in a legal grey area. Theoretically these files are not legally available, but copyright is not upheld much (although I’ve heard of Nintendo shutting down ROM download sites, even for systems they no longer produce or sell). In principle, if you own a physical copy of the game you may use ‘ripped’ cartridge files on emulators. I think it’s safe to say most people just download complete ROM packs with all games for these systems from Torrent sites. Some of these collections are incredibly compact – all Gameboy games are 400 Mb, Nintendo Entertainment System 143 Mb, C64 less than 700 Mb, Atari ST less than 1.5 Gb, Sega Megadrive 1.7 Gb, Vectrex 300 Kb(!), Atari Lynx 34 Mb, etc. Countless years of software development available in an incredibly small form factor. It isn’t until the advent of more advanced systems featured games on CD or DVD that individual titles get (much) bigger.

Getting the games isn’t the problem. Getting the proper Operating System ROM files is. A few systems need no OS ROM files, but many do. I’ve fumbled around with Batocera for about 2 months now, and I am still not very comfortable knowing which ROMs are needed and what for. This is not helped by the legal grey area mentioned above. If only Batocera came with all this stuff built in! But that will never happen. I got most of the classic systems to work, but I am as yet grappling in the dark when it comes to determining which TOS version for Atari ST to run for which games, and how to permanently configure certain games to run with a certain version. And MAME (the arcade games emulator) seems, to me, an unpredictable mess. Some games work like I charm (love “R-Type II” and “Metal Slug”) but many other classics (“Bubble Bobble”, for example) simply refuse to run. The Future Pinball pinball machine emulator also freezes after loading a table. I cannot get the Jaguar to work (either that, or it’s super duper slow to load – I never had the patience to wait for minutes on end). The VIC 20 always results in errors after loading – even though I think there’s a workaround for that, I am too lax to do that. None of the “Game & Watch” titles work (they are not a high priority for me, but it would be cool to be able to play them anyway). The fact that the whole thing is Linux-based also makes me a bit reticent to experiment with configuration files and the like.
So it looks like I will be experimenting for some time to come until all of this works like it should. Once that has happened, I will merely be a reboot away from playing some of the best games around, not just when I am in a mood of nostalgic reverie.

My experiences in this column are totally PC-centric (GTX 1080 graphics card, Intel Core i7-8700K at 4,7 Ghz – pretty high-end for a laptop bought at the tail end of 2017), but there are Batocera versions for Mac, Steamdeck, Odroid, Raspberry, and a whole lot of other systems. There’s even a category of “very old PCs (20+ year-old)”. Apparently, most systems up to Playstation 2 can run on pretty much any old device.

Here’s some links that will help you find your way if you decide to give Batocera a go…

A general video about what Batocera is
The official Batocera site, for an overview of the features, the download page, and support
A site where you can find lots of game ROM files for most systems

This page was last updated 4 November 2023