# Data directory sources for libretro cores. # Platforms reference entries by key via data_directories: [{ref: key, destination: path}]. # Pack generator auto-refreshes from source. Use --offline to skip. # # Source rules: # - RetroArch/Lakka/RetroPie: use buildbot.libretro.com (official RetroArch channel) # ref: RetroArch/config.def.h DEFAULT_BUILDBOT_ASSETS_SERVER_URL # - Other platforms (Batocera, Recalbox, RetroBat): use their own upstream sources # - for_platforms: restricts which platforms use this entry # if absent, entry is available to all platforms # # A platform pack carries the trees its own systems declare and those of the # libretro cores it runs (a profile's data_directories). A platform whose # image installs the tree where its core reads it is left out of # for_platforms: the profile records it (installed_on), and the comment above # the entry cites the install step at the revision the platform YAML pins. # A platform that never opens the tree is recorded with unread_on. # tests/test_core_data_trees.py fails on a reader with neither. # # Each entry cites the original emulator source code that requires the directory. data_directories: # ========================================================================= # RetroArch buildbot sources (retroarch, lakka, retropie only) # https://buildbot.libretro.com/assets/system/ # ========================================================================= # ref: DolphinLibretro/Boot.cpp:72-73 (system/dolphin-emu/Sys/) # Installed (emulators/dolphin.yml installed_on, the other readers follow): # batocera batocera.linux@batocera-43.1 package/batocera/emulators/retroarch/libretro/libretro-dolphin/libretro-dolphin.mk:43-44 # knulli batocera.linux@487014d9 libretro-dolphin.mk:36-37, knulli-linux@20260511 board/scripts/post-build-script.sh:262 # lakka Lakka-LibreELEC@v6.1 packages/lakka/libretro_cores/dolphin/package.mk:35-36 # retrobat retrobat-bios@158add8d dolphin-emu/Sys/, retrobat@8.3.1 build.ini get_bios # retrodeck components@fcd0d729 retroarch/component_prepare.sh:61 # Never opened: recalbox (libretroRetroarch.py:452-453 hands the core bios/gamecube, # package/libretro-dolphin/0003-recalbox-bios-paths.patch drops dolphin-emu/Sys), # romm (EmulatorJS 4.2.3 ships no Dolphin core and RomM hands a core one file). dolphin-sys: source_url: "https://buildbot.libretro.com/assets/system/Dolphin.zip" source_type: zip for_platforms: [emudeck, retroarch, retropie, rocknix] local_cache: data/dolphin-sys strip_components: 2 exclude: [Themes] description: "Dolphin system data (GameSettings, DSP, fonts, shaders)" # ref: ppsspp/ext/native/ui/ui_screen.cpp (system/PPSSPP/) # Installed (emulators/ppsspp.yml installed_on): # amberelec AmberELEC@a21975bf packages/amberelec/sources/autostart.sh:152-154, core patched # to read /roms/gamedata/ppsspp (packages/games/libretro/ppsspp/patches/001-fix_savedir.patch) # batocera libretro-ppsspp.mk:109-110, core patched to /usr/share/ppsspp/PPSSPP (000-batocera-path.patch:10) # emudeck EmuDeck@dddb3022 functions/EmuScripts/emuDeckRetroArch.sh:27, 343 # lakka packages/lakka/libretro_cores/ppsspp/package.mk:72-73 # recalbox recalbox@10.1.1 package/libretro-ppsspp/libretro-ppsspp.mk:86, ppsspp-0000-fix-recalbox-path.patch # retrobat retrobat-bios@158add8d PPSSPP/ # retrodeck retroarch/component_prepare.sh:64 # retropie RetroPie-Setup@46128cd2 scriptmodules/libretrocores/lr-ppsspp.sh:55-56 # romm EmulatorJS@v4.2.3 emulator.js:922-923, GameManager.js:346-368 # knulli stays: the A133 and A527 boards overlay a prebuilt core that reads # bios/PPSSPP (board/allwinner/a133/fsoverlay/usr/lib/libretro/ppsspp_libretro.so). ppsspp-assets: source_url: "https://buildbot.libretro.com/assets/system/PPSSPP.zip" source_type: zip for_platforms: [knulli, retroarch, rocknix] local_cache: data/ppsspp-assets strip_components: 1 description: "PPSSPP fonts, backgrounds, shaders, lang files" # ref: bluemsx-libretro/system/ (system/Databases/ + system/Machines/) # Installed (emulators/bluemsx.yml installed_on): # batocera libretro-bluemsx/libretro-bluemsx.mk:38-39 # knulli batocera.linux@487014d9 libretro-bluemsx.mk:37-38, post-build-script.sh:262 # recalbox package/libretro-bluemsx/libretro-bluemsx.mk:27 # retrobat retrobat-bios@158add8d Databases/, Machines/ # retrodeck retroarch/component_prepare.sh:122, 124 # retropie scriptmodules/libretrocores/lr-bluemsx.sh:33-34, 59 bluemsx: source_url: "https://buildbot.libretro.com/assets/system/blueMSX.zip" source_type: zip for_platforms: [amberelec, emudeck, emuelec, lakka, nextui, retroarch, rocknix] local_cache: data/bluemsx description: "blueMSX Databases + Machines configs" # ref: pcsx2/libretro/main.cpp (system/pcsx2/) # Installed (emulators/lrps2.yml installed_on): # batocera libretro-ps2/libretro-ps2.mk:37-39 # lakka packages/lakka/libretro_cores/lrps2/package.mk:33-34 # recalbox package/libretro-ps2/libretro-ps2.mk:35-37 (bios/ps2/resources, where its patch reads) # retrobat retrobat-bios@158add8d pcsx2/resources/GameIndex.yaml # retrodeck retroarch/component_prepare.sh:95 # Never opened: romm (EmulatorJS 4.2.3 ships no PS2 core). lrps2: source_url: "https://buildbot.libretro.com/assets/system/LRPS2.zip" source_type: zip for_platforms: [emudeck, knulli, retroarch, retropie, rocknix] local_cache: data/lrps2 description: "LRPS2 GameIndex.yaml + resources" # ref: pcee2-libretro/Libretro.cpp:426 - system/pcsx2/resources/ # PCSX2 bin/resources at the upstream revision the pcee2 core is merged up to # (pcee2-libretro/upstream.version). patches.zip is a separate release asset # of PCSX2/pcsx2_patches and is carried as a file entry of the profile. pcsx2-resources: source_url: "https://github.com/PCSX2/pcsx2/archive/{version}.tar.gz" source_type: tarball source_path: "pcsx2-{version}/bin/resources" version: 6db638dc0373769b4c5d5b5dd7ed6da641b9a18e local_cache: data/pcsx2-resources description: "PCSX2 resources (GameIndex.yaml, RedumpDatabase.yaml, fonts, shaders, icons, sounds)" # ref: pcsx2-libretro/Main.cpp:157-158 (yaps2) - system/pcsx2/resources/ # yaps2's own bin/resources at the revision its profile is pinned to. yaps2-resources: source_url: "https://github.com/yaps2/yaps2/archive/{version}.tar.gz" source_type: tarball source_path: "yaps2-{version}/bin/resources" version: 57ea93c0ce8306063b31fe6658dab6b492bbedfe local_cache: data/yaps2-resources description: "yaps2 resources (GameIndex.yaml, RedumpDatabase.yaml, fonts, shaders, icons, sounds)" # ref: src/Cafe/GameProfile/GameProfile.cpp:181-195 (Cemu/gameProfiles/default/) cemu-gameprofiles: source_url: "https://github.com/cemu-project/Cemu/archive/{version}.tar.gz" source_type: tarball source_path: "Cemu-{version}/bin/gameProfiles/default" version: 3310f3b8b184d64a62b89fd59088c799432badf5 local_cache: data/cemu-gameprofiles description: "Cemu default game profiles (one .ini per title id)" # ref: src/Cafe/GraphicPack/GraphicPack2.cpp:96-111 (Cemu/graphicPacks/downloadedGraphicPacks/) cemu-graphic-packs: source_url: "https://github.com/cemu-project/cemu_graphic_packs/releases/download/Github981/graphicPacks981.zip" source_type: zip local_cache: data/cemu-graphic-packs description: "Cemu community graphic packs, release Github981" # ref: scummvm/backends/platform/libretro (system/scummvm/) scummvm: source_url: "https://buildbot.libretro.com/assets/system/ScummVM.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/scummvm description: "ScummVM extra data files (themes, translations, shaders)" # ref: nxengine-libretro (system/) nxengine: source_url: "https://buildbot.libretro.com/assets/system/NXEngine%20%28Cave%20Story%29.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/nxengine description: "NXEngine Cave Story game data" # ref: ecwolf/src/wl_main.cpp (system/ecwolf.pk3) ecwolf: source_url: "https://buildbot.libretro.com/assets/system/ECWolf.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/ecwolf description: "ECWolf game engine data" # ref: prboom/src/d_main.c (system/prboom.wad) prboom: source_url: "https://buildbot.libretro.com/assets/system/PrBoom.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/prboom description: "PrBoom Doom engine data" # ref: xrick/src/data.c (system/xrick/data.zip) xrick: source_url: "https://buildbot.libretro.com/assets/system/XRick%20%28Rick%20Dangerous%29.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/xrick description: "XRick Rick Dangerous game data" # ref: dinothawr/libretro.cpp (system/dinothawr/) # Installed (emulators/dinothawr.yml installed_on): # lakka packages/lakka/libretro_cores/dinothawr/package.mk:17-18 # recalbox package/libretro-dinothawr/libretro-dinothawr.mk:32-33 (as content, roms/ports) # retrobat retrobat-bios@158add8d dinothawr/ # retrodeck retroarch/component_prepare.sh:59 # retropie scriptmodules/libretrocores/lr-dinothawr.sh:50 (as content, roms/ports) dinothawr: source_url: "https://buildbot.libretro.com/assets/system/Dinothawr.zip" source_type: zip # Batocera and KNULLI download the core with their RetroArch # (installable_cores) and install no tree beside it. for_platforms: [batocera, emudeck, emuelec, knulli, retroarch, rocknix] local_cache: data/dinothawr description: "Dinothawr game data" # ref: qemu (system firmware) qemu: source_url: "https://buildbot.libretro.com/assets/system/QEMU.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/qemu description: "QEMU firmware (SeaBIOS, VGA BIOS, OpenSBI, etc.)" # ref: cannonball/src/main.cpp (system/) cannonball: source_url: "https://buildbot.libretro.com/assets/system/Cannonball%20%28ROMs%20Required%29.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/cannonball description: "Cannonball OutRun engine config" # ref: fbneo hiscore.dat (system/fbneo/) fbneo-hiscore: source_url: "https://buildbot.libretro.com/assets/system/FinalBurn%20Neo%20%28hiscore%29.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/fbneo-hiscore description: "FinalBurn Neo hiscore database" # ref: mame2003/src (system/mame2003/) mame2003: source_url: "https://buildbot.libretro.com/assets/system/MAME%202003.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/mame2003 description: "MAME 2003 samples + cheat" # ref: mame2003-plus (system/mame2003-plus/) mame2003-plus: source_url: "https://buildbot.libretro.com/assets/system/MAME%202003-Plus.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/mame2003-plus description: "MAME 2003-Plus samples + cheat + history" # ref: sdlpal/main.c (system/sdlpal/, Chinese Paladin / 仙剑奇侠传) # Not on buildbot, sourced from large-files release asset sdlpal: source_url: "https://github.com/Abdess/retrobios/releases/download/large-files/sdlpal-data.zip" source_type: zip local_cache: data/sdlpal description: "SDLPAL Chinese Paladin game data (.mkf archives)" # ref: OpenTyrian2000 (system/opentyrian/tyrian/) # Tyrian 2.1 freeware data (buildbot URLs removed, sourced from release asset) opentyrian: source_url: "https://github.com/Abdess/retrobios/releases/download/large-files/opentyrian-data.zip" source_type: zip for_platforms: [retroarch, lakka, retropie] local_cache: data/opentyrian description: "OpenTyrian Tyrian 2.1 freeware game data" # ref: syobonaction (system/syobonaction/) # Freeware game data from OpenSyobonAction (BGM, res, SE directories) syobonaction: source_url: "https://github.com/akemin-dayo/OpenSyobonAction/archive/refs/heads/{version}.tar.gz" source_type: tarball source_path: "OpenSyobonAction-master" version: master local_cache: data/syobonaction exclude: [DxLib.cpp, DxLib.h, icon.ico, joyconfig.h, loadg.cpp, main.cpp, main.h, Makefile, README_ja.md, README.md] description: "Syobon Action (Cat Mario) game data (sprites, BGM, SE)" # ========================================================================= # Upstream repo sources (not on buildbot, available to all platforms) # ========================================================================= # ref: FreeIntv/src/libretro.c:273 (system/freeintv_overlays/.png) # 90 per-game controller overlay PNGs, loaded via stbi_load() # optional: core falls back to embedded default keypad image # freeintv overlays: Assets/Overlays.zip in repo (not a directory) # Already archived in bios/Mattel/Intellivision/freeintv_overlays/ # No buildbot source, sourced manually from core repo # Never opened: batocera, knulli and recalbox build FreeIntv 85bf25a3, which # predates the overlays (libretro-freeintv.mk), and romm hands a core one file. freeintv-overlays: source_url: "https://github.com/libretro/FreeIntv/raw/{version}/Assets/Overlays.zip" source_type: zip version: master local_cache: data/freeintv-overlays strip_components: 1 description: "FreeIntv per-game controller overlay PNGs" # ref: crawl-ref/source/files.cc:375-458 (datafile_path() dat/ tree) # Not on buildbot, sourced from libretro repo # 532 files (tiles, fonts, databases, lua scripts, level descriptions) stonesoup: source_url: "https://github.com/libretro/crawl-ref/archive/refs/heads/{version}.tar.gz" source_type: tarball source_path: "crawl-ref-master/crawl-ref/source/dat" version: master local_cache: data/stonesoup description: "DCSS game data (tiles, fonts, databases, lua, level descriptions)" # ref: FBNeo src/burner/libretro/libretro.cpp (system/fbneo/cheats/) # No platform installs it. Never opened: romm (one file per core). fbneo-cheats: source_url: "https://github.com/finalburnneo/FBNeo-cheats/archive/refs/heads/{version}.zip" source_type: zip version: master local_cache: data/fbneo-cheats strip_components: 1 description: "FinalBurn Neo per-game cheat definitions" # ref: FBNeo src/burn/snd/samples.cpp (system/fbneo/samples/) # No platform installs it (batocera, knulli, recalbox, retrobat, retrodeck and # retropie create an empty fbneo/samples). Never opened: romm (RomM hands # EmulatorJS one file, views/Player/EmulatorJS/Player.vue:368-370). fbneo-samples: source_url: "https://github.com/Abdess/retrobios/releases/download/large-files/fbneo-samples.zip" source_type: zip for_platforms: [amberelec, batocera, emudeck, emuelec, knulli, lakka, myminui, nextui, recalbox, retroarch, retrobat, retrodeck, retropie, rocknix] local_cache: data/fbneo-samples description: "FinalBurn Neo per-game audio samples (49 arcade games)" # ref: dirksimple (system/) # Installed (emulators/dirksimple.yml installed_on): # recalbox package/libretro-dirksimple/libretro-dirksimple.mk:21 (bios/daphne/DirkSimple, where its patch reads) # retrodeck retroarch/component_prepare.sh:60 # retropie scriptmodules/libretrocores/lr-dirksimple.sh:49 # lakka stays: packages/lakka/libretro_cores/dirksimple/package.mk:17-18 copies # data/games to DirkSimple/games, one level above DirkSimple/data/games. dirksimple: source_url: "https://buildbot.libretro.com/assets/system/DirkSimple.zip" source_type: zip # Batocera downloads the core with its RetroArch (installable_cores) # and installs no tree beside it. for_platforms: [batocera, emudeck, lakka, retroarch, rocknix] local_cache: data/dirksimple description: "DirkSimple Dragon's Lair engine data"