Skip to content

RetroStoneOS 0.1.4

Latest

Choose a tag to compare

@github-actions github-actions released this 23 Oct 17:07
· 11 commits to main since this release
Immutable release. Only release title and notes can be modified.

RetroStoneOS 0.1.4: a fast-booting firmware for the RetroStone2 handheld (8BCraft), plus community ports
to other boards. One SD card image per board.

38 built-in RetroStone games: Bomber Mole, Beaver Rush, Biscuit Bandit, Blueberry Tumble, Caterpillar Crawl,
Cosmo Corgi, Crab Coconut, Duck Parade, Fishy Feast, Frog Reach, Gecko Golf, Goat Gorge, Gopher Dig, Hamster Havoc,
Hedgehog Hills, Jelly Jam, Kitty Kibble, Ladybug Laps, Leady Squid, Lemur Leap, Llama Drama, Mole Marbles,
Moth Around, Mouse Espresso, Nutty Branch, Otter Rapids, Pancake Tower, Penguin Slalom, Pogo Mamie, Prickle Patch,
Puffin Plunge, Raccoon Recycler, Radish Rascals, Seal Shove, Snail Switch, Snowball Siege, Spider Swing and
Unicorn Hop. Bomber Mole, Goat Gorge, Lemur Leap, Prickle Patch and Puffin Plunge are one-player games; the 33 others
support up to four players.

New in RetroStoneOS 0.1.4: Import from USB and the network upload page recognise every system's folder: the
WonderSwan, Neo Geo Pocket, Atari 7800, Lynx, ColecoVision, MSX, PC Engine CD and Neo Geo CD folders were reported
as "not supported", and imported PC Engine CD games went to the HuCard list where they never showed. The Batocera
folder names wswan and wswanc work on the card too. Settings > Game lists > Refresh game lists now rescans
every folder whatever the caches say. Raspberry Pi: the HDMI I2C driver the display waits for is built in,
so HDMI should work with the normal config.txt (a Pi 3 needed vc4-fkms-v3d; the Pi 2, 4 and 5 had the same
bug), and the Adafruit PiGRRL 2 is supported, untested, through a block at the end of config.txt. On a
keyboard, Esc in a game opens the in-game menu and Tab+Space leaves the game. New systems: Atari 800 and
Atari 5200
(the Atari800 core; folders atari800 and atari5200, no BIOS needed, untested on the device yet).
R2 opens the core's on-screen keyboard (the Atari keys, or the 5200 keypad). Buttons that seemed held down
(RetroStone2 and RetroStone1): the buttons' internal pull-ups are on again, closing the in-game menu with A, B or
Start no longer sends that button to the game, a RetroStone2 without the analog stick no longer takes floating
inputs for a held stick, and a lost button release is corrected (and logged) within a second.

RetroStone2 Pro storage (contributed by KurdtNervanna): Settings > Storage turns on the Pro's 16 GB internal
eMMC and an M.2 SATA SSD (both stay off by default, so every RetroStone2 starts as fast as before), copies
RetroStoneOS to the eMMC (the microSD then stays in the slot as a small "starter card": the A20 cannot start this
eMMC by itself), prepares a drive for games and moves games between drives; the games of every drive show in the
lists. It needs a card freshly flashed with 0.1.4: an update over the air keeps the old boot loader, which
cannot start the eMMC. Settings > Storage and System information show the model (RetroStone2 or RetroStone2 Pro).
Also new: Settings > Game lists > Download game covers (box art from the libretro thumbnail server, WiFi needed)
and Group multi-disc games (one entry per multi-disc game, for the systems whose emulator takes .m3u
playlists); Rename this game in a game's options; Settings > Power > Memory speed (RetroStone2,
experimental): a faster memory clock (+12 % or +25 %), tried at the next start and kept only after a memory
test passes; a start that fails goes back to the normal speed by itself.

Game source: RetroStone VC c900b9839c15.

Downloads

Board Image Download size Status Bundled games
RetroStone2 retrostoneos-0.1.4-retrostone2.img.xz 74 MiB tested on hardware yes
Orange Pi One / Lite retrostoneos-0.1.4-orangepi-h3-one.img.xz 72 MiB community-tested yes
Orange Pi PC / PC Plus retrostoneos-0.1.4-orangepi-h3-pc.img.xz 72 MiB community-tested yes
Raspberry Pi 2 retrostoneos-0.1.4-rpi2.img.xz 91 MiB community-tested yes
Raspberry Pi 3 retrostoneos-0.1.4-rpi3-64.img.xz 100 MiB community-tested yes
Raspberry Pi 4 retrostoneos-0.1.4-rpi4-64.img.xz 99 MiB community-tested yes
Raspberry Pi 5 retrostoneos-0.1.4-rpi5-64.img.xz 99 MiB community-tested yes
RetroStone1 retrostoneos-0.1.4-retrostone1.img.xz 72 MiB tested on hardware (menu on the built-in screen and on HDMI); games on the built-in screen not checked yet yes
  • tested on hardware: the RetroStoneOS developers ran this image on the device.
  • community-tested: the image builds, but the developers have not run it on that hardware. Reports and fixes are
    welcome in the issues (porting guide).

Check a download against SHA256SUMS:

  • Linux/macOS: sha256sum -c SHA256SUMS --ignore-missing
  • Windows (PowerShell): Get-FileHash .\retrostoneos-0.1.4-retrostone2.img.xz and compare with the line in
    SHA256SUMS

Flashing the SD card

Flashing erases the whole card. The card must be 2 GB or more (4 GB or more for the Orange Pi 5): the images
are about 1.2 GB (2.2 GB for the Orange Pi 5) once written. 8 GB or more leaves room for games.

  • balenaEtcher (Windows, macOS, Linux): "Flash from file", pick the .img.xz as it is (no need to extract it),
    select the card, "Flash". It verifies the card afterwards.
  • Rufus (Windows): select the card under "Device", then the .img.xz with "SELECT" (pick "All files" in the
    dialog if it is not listed; or extract the .img with 7-Zip first), keep "DD image" mode if asked, "START".
  • Raspberry Pi Imager: "Choose OS" > "Use custom" > the .img.xz.
  • Linux: xz -dc retrostoneos-0.1.4-<board>.img.xz | sudo dd of=/dev/sdX bs=4M conv=fsync status=progress

First boot

  • The first boot prepares the card: the data partition is grown to fill the card and formatted as exFAT (the
    screen says "Preparing the SD card..."). It takes a few seconds; do not remove the power meanwhile (an
    interrupted first boot resumes at the next one).
  • Afterwards the card shows up on a PC as the drive RETROSTONE: put your games in roms/<system>/ (the folders
    are already there), BIOS files in bios/. README.txt on the card explains the layout. Games copied from a PC
    show up at the next start (or with Settings > Game lists > Refresh game lists).
  • Two free games come with the images, copied to roms/ at the first boot: µCity (Game Boy Color) and Freedoom (Doom).
  • RetroStone, first in the menu: the built-in 8BCraft games listed above.
  • WiFi, Bluetooth and Ethernet are off until you turn them on in the settings.

Updating without reflashing

The boards with A/B system slots (the RetroStone2, the RetroStone1 and the Orange Pi boards: those with a .rsu
file below) update themselves: Settings > System update > Check for updates (network on), or copy the .rsu
file of your board to a USB drive (at its root or in a RetroStoneOS folder) or to the update folder of the
RETROSTONE drive, then plug it in. Games, saves and settings are kept; if the new version does not start, the
console goes back to the previous one by itself. The packages are signed; the console checks the signature before
writing anything. Other boards (Raspberry Pi): flash the new image.

  • Orange Pi One / Lite: retrostoneos-0.1.4-orangepi-h3-one.rsu (88 MiB)
  • Orange Pi PC / PC Plus: retrostoneos-0.1.4-orangepi-h3-pc.rsu (88 MiB)
  • RetroStone1: retrostoneos-0.1.4-retrostone1.rsu (88 MiB)
  • RetroStone2: retrostoneos-0.1.4-retrostone2.rsu (91 MiB)

Licences

Free, non-commercial distribution only. RetroStoneOS is a free download; it is not sold, and it does not come
with the hardware. The images contain emulator cores and theme art whose licences forbid commercial use: Snes9x
(snes9x2005, snes9x2010), PicoDrive, MAME 2003-Plus and FBNeo, and the gbz35 themes, the Carbon system art and the
RetroStone games' art, music and levels (CC BY-NC-SA). So these images must not be sold, and must not be preloaded on hardware that is sold (a console, an
SD card or a kit). Sharing them for free, unchanged, is fine.

  • The RetroStoneOS code (frontend, build tree, scripts) is under the MIT licence
    (LICENSE).
  • The Linux kernel, U-Boot, BusyBox and the other system packages keep their own licences (GPL-2.0 and others).
  • The other emulator cores keep their own licences (GPL, zlib, BSD and others).
  • The pre-installed games: µCity (GPL-3.0+ code, BSD-2-Clause GBT Player, CC BY-SA 4.0 graphics and music) and
    Freedoom (BSD-3-Clause); their source is in the legal-info archives.
  • The RetroStone system (38 games, RetroStone VC):
    code under MIT, art, music, sound and levels under CC BY-NC-SA 4.0. The names and logos are not licensed.
  • Per-package licences: legal-info/manifest.csv in the archives below.

Source code (GPL)

The complete corresponding source of the GPL and LGPL software in these images, with the licence texts, the
Buildroot configuration and the patches, is attached to this release (make legal-info, one archive per board;
the NXEngine source there leaves out the Cave Story game data of the upstream tarball, which is not GPL software
and not in the images):

  • legal-info-orangepi-h3-one-0.1.4.tar.xz (1064 MiB)
  • legal-info-orangepi-h3-pc-0.1.4.tar.xz (1064 MiB)
  • legal-info-retrostone1-0.1.4.tar.xz (1064 MiB)
  • legal-info-retrostone2-0.1.4.tar.xz (1643 MiB)
  • legal-info-rpi2-0.1.4.tar.xz (1245 MiB)
  • legal-info-rpi3-64-0.1.4.tar.xz (1253 MiB)
  • legal-info-rpi4-64-0.1.4.tar.xz (1253 MiB)
  • legal-info-rpi5-64-0.1.4.tar.xz (1253 MiB)

The RetroStoneOS sources of this release: https://github.com/PaddleStroke/RetroStoneOS/tree/v0.1.4 (commit f9d05fb).
Parts in several files: cat <name>.part* > <name> before extracting.

Changes

Changes since v0.1.3:

  • Release notes 0.1.4: the held-button fixes (issue #10) (f9d05fb)
  • rsos-storage: shellcheck clean at warning level (1d60267)
  • atari800: the Atari 400/800/XL/XE and 5200 core (issue #9) (1777142)
  • docs: Pro storage after the review; release notes 0.1.4; README docs table (58e7f92)
  • i18n: rsos.pot regenerated (make pot); French for the new strings (29149b3)
  • Move games: nothing deleted after a failure, a kept file or a cancel (81f402c)
  • Settings > Storage: no refresh at start, slow polling, confirmed starter card (317ba63)
  • rsos-storage: no work at boot with the disks off; safe starter and full card (b1c85a5)
  • boot: the model probe saves rsos_model only, with the new bootcmd only (569e658)
  • host: per-system core option defaults, core-chosen port devices, force_extract (8b96871)
  • Release notes 0.1.4: Raspberry Pi HDMI fix, PiGRRL 2, keyboard Esc (issue #6) (3e1c3d1)
  • input: a keyboard can leave a game; keyboard controls documented (issue #6) (3abba83)
  • rpi: Adafruit PiGRRL 2 support on the Pi 2/3 images (issue #6) (ec1de57)
  • rpi: HDMI DDC I2C driver built in, the black screen of issue #6 (596b371)
  • input: no button left held by a lost release, a menu or a floating stick (issue #10) (d9150dd)
  • board: internal pull-ups on the RetroStone1/2 buttons (issue #10) (cd0346f)
  • Release notes 0.1.4: system folders on import, Refresh game lists; Atari 800 and Amiga assessed (11649fa)
  • transfer: USB import and network upload know every system (WonderSwan, NGP, ...) (1a0a4f0)
  • frontend: Refresh game lists rescans every folder, trusting no cache (70deb69)
  • System update: the update repository and key as build options (f848797)
  • RetroStone2 or RetroStone2 Pro: found at the first start (194c4b6)
  • Advance development version after the v0.1.3 release tag (491d07e)
  • Rename this game (f09d847)
  • Move games between drives (6b6abc9)
  • Game covers: download in the background (83efe24)
  • Credits: regenerate (scripts/support/update-credits.sh) (3e75140)
  • RetroStone2 Pro storage, game covers, multi-disc games, memory speed, credits (3cd3d85)

Built by GitHub Actions from commit f9d05fb with Buildroot 2026.02.3 on 2026-10-23.