TITLE=TTG RetroArch Store ROUTE=/stores/ttg-retroarch-store LOCALE=en MODIFIED=1792417593 URL=https://wiki.teletypegames.org/stores/ttg-retroarch-store L=1 https://teletypegames.org L=2 #47 L=3 https://git.teletypegames.org/stores/ttg-retroarch-store L=4 #43 L=5 #57 L=6 #63 L=7 #64 q│ cttg-retroarch-storeq puts the 1https://teletypegames.org catalog into q│ RetroArch's library: two playlists with box art — iTeletype Games - Commodore q│ i64q and iTeletype Games - TIC-80q — on desktop Linux, Windows, macOS, Android, q│ Steam Deck or a handheld. This repository is only cconfig.jsonq and two q│ wrapper scripts; the logic is in the shared 2RetroArch store engine. bRepository:0 3https://git.teletypegames.org/stores/ttg-retroarch-store bEngine: 2WarpEngine RetroArch Store bBatocera equivalent:0 4TTG Batocera Store 1Install 1═══════ p curl -fsSL https://git.teletypegames.org/stores/ttg-retroarch-store/raw/bran» p ch/master/install.sh | sh The installer fetches the engine, puts it and this config in c~/.local/share/warp-engine-store/ttg-retroarch/0, writes the cttg-retroarch-store0 launcher into c~/.local/bin0, prints the directories it resolved from your cretroarch.cfg0, and runs the first sync. Our cinstall.sh0 only wraps the engine's: it downloads it (with retries) into a temporary directory of its own and runs it from there, so no stray cretroarch_store.py0 or cwarpstore.py0 in c/tmp0 can be installed instead of the forge's. bRestart bRetroArch0 to see the playlists — it builds its menu at startup. Without the two cores the playlists still work, and RetroArch asks which core to use the first time. To lose the prompt: iOnline Updater ▸ Core Downloader ▸ iVICE x64 and TIC-800, then sync again. 1Use 1═══ p S=~/.local/bin/ttg-retroarch-store p p $S paths # where things go, and whether the cores are there p $S list # compatible catalog entries; * installed, ^ update » p available p $S sync # download everything new, refresh the playlists p $S sync blessingofra # just one title (never prunes) p $S -n sync # dry run p $S remove c64demo # uninstall Close RetroArch before syncing: it writes its playlists back on exit, so a sync underneath a running instance can be undone. The store refuses rather than lose the work. Keep it current from ccrontab0: p 0 * * * * ~/.local/bin/ttg-retroarch-store sync >>~/.local/share/warp-engine» p -store/ttg-retroarch/store.log 2>&1 1Uninstall 1═════════ p curl -fsSL https://git.teletypegames.org/stores/ttg-retroarch-store/raw/bran» p ch/master/uninstall.sh | sh It removes the six games, the two playlists and their thumbnails, then the launcher and the store home. Close RetroArch first, for the same reason as a sync. cDRY_RUN=10 shows what would go; cKEEP_HOME=10 keeps cstate.json0 and the log for a reinstall. Nothing of yours goes with it: content you put in the cteletypegames/0 folder keeps its directory, a playlist that still holds an entry of yours is rewritten rather than deleted, and any c*.lpl.ttg-backup0 is listed and left alone. 1What this store installs 1════════════════════════ t┌──────────────────┬──────────────────────┬──────────────────────┬───────────┐ t│h Catalog platform t│h Playlist t│h Core t│h Extension t│ t├──────────────────┼──────────────────────┼──────────────────────┼───────────┤ t│0 5cc640 t│0 Teletype Games - t│0 cvice_x64_libretro0 t│0 c.prg0 t│ t│0 t│0 Commodore 64 t│0 (VICE x64) t│0 t│ t├──────────────────┼──────────────────────┼──────────────────────┼───────────┤ t│0 6cplus40 t│0 Teletype Games - t│0 cvice_xplus4_libretro0 t│0 c.prg0 t│ t│0 t│0 Commodore Plus/4 t│0 (VICE xplus4) t│0 t│ t├──────────────────┼──────────────────────┼──────────────────────┼───────────┤ t│0 7ctic800 t│0 Teletype Games - t│0 ctic80_libretro0 t│0 c.tic0 t│ t│0 t│0 TIC-80 t│0 (TIC-80) t│0 t│ t└──────────────────┴──────────────────────┴──────────────────────┴───────────┘ Statuses creleased0 and carchived0, whole catalog, no owner filter — bsix titles, b233 KB in total0 as measured on 2026-08-17: t┌──────────────┬─────────────────────────────────────────────────────────────┐ t│h Playlist t│h Titles t│ t├──────────────┼─────────────────────────────────────────────────────────────┤ t│0 Commodore 64 t│0 Blessing of Ra, Rabbit Scooter, C64 Demo for Arok Party t│ t│0 t│0 2026 t│ t├──────────────┼─────────────────────────────────────────────────────────────┤ t│0 TIC-80 t│0 Definitely not an Impostor, BombExpert, Mr Anderson's t│ t│0 t│0 Adventure t│ t└──────────────┴─────────────────────────────────────────────────────────────┘ That is the cartridge half of the catalog. Our other games are native and web builds, which no libretro core runs; on a Batocera box they install as Ports through the 4TTG Batocera Store. Everything lands under the cteletypegames/0 subfolder of RetroArch's content directory, so a prune can never reach your own content. To change any of it, edit c~/.local/share/warp-engine-store/ttg-retroarch/config.json0 — the full key reference is on the 2engine's page. 1Onto an Android phone or a handheld 1═══════════════════════════════════ RetroArch on Android reads the same playlists, but Android cannot run Python, so the tree is rendered on a computer and copied over: p $S export /tmp/ra-ttg \ p --target-prefix /storage/emulated/0/RetroArch \ p --target-libretro-dir /data/data/com.retroarch.aarch64/cores \ p --core-suffix _android.so p adb push /tmp/ra-ttg/. /storage/emulated/0/RetroArch/ Both cores are published for Android arm64-v8a and armeabi-v7a, so the games do run there — but bthis path has not been tried on a device.0 If the playlists do not show up, check the phone's own paths: p adb shell cat /storage/emulated/0/RetroArch/retroarch.cfg | grep _directory 1Where things land 1═════════════════ p ~/.local/share/warp-engine-store/ p ├── ttg-retroarch/ p │ ├── retroarch_store.py, warpstore.py, config.json p │ └── state.json, catalog.json p └── (launcher: ~/.local/bin/ttg-retroarch-store) p p /teletypegames/c64/ blessingofra-2.0.0.prg, rabbit-1.0.0.p» p rg, … p /teletypegames/tic80/ impostor-1.0.tic, … p /Teletype Games - Commodore 64.lpl p /Teletype Games - TIC-80.lpl p /Teletype Games - Commodore 64/Named_Boxarts/Blessing of Ra.» p png cplaylists_dir0, cthumbnails_dir0 and the cores folder come from your cretroarch.cfg0. They are not always where you would guess, so cpaths0 prints what was resolved and where each answer came from. 1Not yet verified on real hardware 1═════════════════════════════════ • bDoes the VICE core auto-start a raw c.prg0, or load and wait for cRUN0? If it waits, the fix is a core option or shipping c.d640. • bThe Android push0, including whether scoped storage lets RetroArch read what cadb push0 wrote. Report back what happens — the design notes are in cdevarea/RETROARCH_STORE.md0.