9 Commits

Author SHA1 Message Date
Abdessamad Derraz
58f3006d20 docs: add core_version, display_name to all 260 emulator profiles
Every profile now has:
- profiled_date: date of source code analysis
- core_version: version from libretro-core-info .info files
- display_name: human-readable name from .info files

260/260 profiles complete. 294/294 libretro cores covered.
Standalone emulators (cemu, rpcs3, xemu, vita3k) versioned manually.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
d929424988 feat: add profiled_date to all YAMLs, create 56 alias profiles
- Added profiled_date field to all 204 existing profiles for update tracking
- Created 56 alias profiles for cores that share BIOS with a parent
  (e.g., mednafen_psx -> beetle_psx, fbalpha2012 -> fbneo)

260 total profiles covering all 294 libretro cores (204 unique + 56 alias).
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
62262db6ac feat: complete 294/294 libretro core profiling
Final batch: stonesoup, vitaquake3+vitavoyager, uw8, uxn, wasm4,
tempgba, retro8, moonlight, ffmpeg, imageviewer, mpv, remotejoy,
puzzlescript, lutro, mojozork, simcp (SAM Coupe, ROM built-in),
romcleaner, redbook, onsyuri, mcsoftserve, x64sdl (VICE alias)

204 total emulator/core profiles covering ALL 294 libretro cores.
Every core analyzed from source code. Complete museum documentation.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
b43d71e113 feat: add emulator profiles (119-series batch 6 partial)
dolphin_launcher (stub launcher), oberon (RISC, bootloader embedded),
17 test cores (00_example through vidtest), 17 game/utility cores
(2048 through vaporspec), bennugd, boytacean, emux_chip8, fake08,
jaxe, lowresnx, opentyrian, openlara, squirreljme, vitaquake2, xrick

182 total profiles. 6 agents failed (API 500), will retry.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
a5553def94 feat: add 10 emulator profiles (119-series batch 5)
boytacean (GB Rust, 6 boot ROMs embedded), emux_chip8 (no BIOS),
fake08 (PICO-8, Lua runtime compiled in), jaxe (CHIP-8, fonts hardcoded),
lowresnx (fantasy console), opentyrian (Tyrian freeware data),
openlara (Tomb Raider engine, game data), squirreljme (J2ME, 8 JARs),
vitaquake2 (Quake 2, 4 variants), xrick (data.zip sound pack)

145 total profiles.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
31501211de feat: add 10 emulator profiles (119-series batch 4)
bennugd (game engine, no BIOS), cruzes (puzzle game, no BIOS),
dice (discrete arcade, no BIOS), ishiiruka (Dolphin fork, same BIOS),
mkxp_z (RPG Maker, 3 RTP dirs), onscripter (VN engine, no BIOS),
qemu (55 firmware files! SeaBIOS/VGA/iPXE/OpenBIOS/OpenSBI),
rustation (PS1 Rust, 22 BIOS by SHA-256), rvvm (RISC-V, OpenSBI),
reminiscence (Flashback engine, game data only)

135 total profiles.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
6a778a09a3 feat: add 10 emulator profiles (119-series batch 3)
arduous (Arduboy AVR sim, no BIOS), boom3 (Doom 3, game data only),
directxbox (Xbox, mcpx + cromwell), doukutsu_rs (Cave Story, no BIOS),
meteor (GBA, full HLE), nxengine (Cave Story, Doukutsu.exe + data/),
tgbdual (Game Boy link, HLE), tic80 (fantasy console),
virtualxt (IBM XT, open BIOS embedded), sdlpal (Sword & Fairy, 13 .mkf)

125 total profiles.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
ebc8e4413f feat: add 10 emulator profiles (119-series batch 2)
freeintv_ts_overlay (same BIOS as FreeIntv), bnes (NES, no BIOS),
clownmdemu (Mega Drive, open-source MCD boot ROM embedded),
m2000 (Philips P2000T, all embedded), mesen (NES, FDS + StudyBox BIOS),
race (NGP, HLE with disabled BIOS loader), vemulator (VMU, HLE only),
gw (Game & Watch, Lua simulator), pd777 (Cassette Vision, no BIOS),
play (PS2, full HLE, LoadBIOS commented out)

115 total profiles.
2026-03-18 05:20:05 +01:00
Abdessamad Derraz
a77477cbe8 feat: add 10 emulator profiles (119-series batch 1)
81 (ZX81, embedded), DoubleCherryGB (GB dual, no BIOS),
amiarcadia (Arcadia 2001, no BIOS), applewin (Apple II, 26 embedded),
ardens (Arduboy, 6 bootloaders embedded), daphne (LaserDisc, no BIOS),
pcem (IBM PC, 75+ machine/video/sound ROMs), panda3ds (3DS, optional keys),
easyrpg (RPG Maker, soundfont + RTP), frodo (C64, 4 ROMs embedded)

105 total profiles.
2026-03-18 05:20:05 +01:00
260 changed files with 7044 additions and 30 deletions

18
emulators/00_example.yml Normal file
View File

@@ -0,0 +1,18 @@
emulator: "00_example"
type: test
source: "https://github.com/libretro/libretro-samples"
profiled_date: "2026-03-18"
core_version: "1.0"
display_name: "Example Core"
cores:
- 00_example
systems: []
notes: |
Test/example core from libretro-samples. Minimal "hello world" libretro
implementation demonstrating the core API contract (retro_init, retro_run,
retro_load_game, etc.). Renders a simple color pattern to the framebuffer.
No system files, BIOS, or firmware required. Not an emulator.
files: []

13
emulators/2048.yml Normal file
View File

@@ -0,0 +1,13 @@
emulator: "2048"
type: game
source: "https://github.com/libretro/libretro-2048"
profiled_date: "2026-03-18"
core_version: "1.0"
display_name: "2048"
cores: [2048]
systems: []
files: []
notes: >
Libretro port of the 2048 sliding puzzle game by Gabriele Cirulli.
Self-contained core with all assets compiled into the binary.
No content file, BIOS, or system directory files required.

14
emulators/3dengine.yml Normal file
View File

@@ -0,0 +1,14 @@
emulator: 3DEngine
type: utility
source: "https://github.com/libretro/libretro-3dengine"
profiled_date: "2026-03-18"
core_version: "v1"
display_name: "Test Core - 3D Engine"
cores: [3dengine]
systems: []
files: []
notes: >
Tech demo rendering a 3D scene using software rasterization.
Demonstrates libretro hardware-accelerated rendering capabilities.
Self-contained core with all geometry and textures built in.
No content file, BIOS, or system directory files required.

52
emulators/81.yml Normal file
View File

@@ -0,0 +1,52 @@
emulator: EightyOne
type: libretro
source: "https://github.com/libretro/81-libretro"
profiled_date: "2026-03-18"
core_version: "1.0a"
display_name: "Sinclair - ZX 81 (EightyOne)"
cores:
- 81
systems:
- sinclair-zx81
notes: |
EightyOne is a Sinclair ZX81 emulator ported to libretro. Also supports
ZX80, Jupiter ACE, TS1500, Lambda, R470, TK85, and ZX97LE machines, but
the libretro port hardcodes MACHINEZX81 in retro_load_game (libretro.cpp:393).
ROM loading is in snap.c:487-512. The memory_load() function matches the
requested ROM filename against a compiled-in table and copies from embedded
byte arrays generated by xxd -i at build time (Makefile.libretro:519-522).
Only two ROMs are embedded: zx81.rom (the ZX81 8K BASIC ROM) and dkchr.rom
(dK'tronics character ROM). Any other ROM name logs an error and returns 0.
The core never calls RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY, never opens
files from the filesystem for ROM data, and need_fullpath is set to false
(libretro.cpp:308). All ROM data is baked into the compiled .so/.dll.
No external BIOS or firmware files are needed.
files: []
analysis:
embedded_roms:
zx81_rom:
variable: bin_ROM_zx81_rom
source_file: "bin/ROM/zx81.rom"
build_step: "xxd -i -> C array"
source_ref: "snap.c:489-498"
dkchr_rom:
variable: bin_ROM_dkchr_rom
source_file: "bin/ROM/dkchr.rom"
build_step: "xxd -i -> C array"
source_ref: "snap.c:499-508"
machine_roms:
notes: |
eo.c sets CurRom based on machine type. The libretro port forces
MACHINEZX81 (eo.c:39-41), so CurRom is always zx81.ROM81 which
defaults to "zx81.rom". Other machine ROMs (zx80, ace, ts1500,
lambda, zx97le, ringo470, tk85) are referenced but only zx81.rom
and dkchr.rom are embedded. Selecting other machines would log
"ROM not found" and load nothing.
filesystem_access: false
system_directory_used: false

View File

@@ -1,6 +1,9 @@
emulator: a5200
type: libretro
source: "https://github.com/libretro/a5200"
profiled_date: "2026-03-18"
core_version: "2.0.2"
display_name: "Atari - 5200 (a5200)"
cores:
- a5200
systems:

View File

@@ -0,0 +1,19 @@
emulator: advanced_tests
type: test
source: "https://github.com/libretro/libretro-samples"
profiled_date: "2026-03-18"
core_version: "v1"
display_name: "Test Core - Advanced Test"
cores:
- advanced_tests
systems: []
notes: |
Advanced test core from libretro-samples. Exercises extended libretro API
features: subsystems, memory descriptors, serialization, multi-disk control,
and other optional environment callbacks. Used by frontend developers to
validate their implementations.
No system files, BIOS, or firmware required. Not an emulator.
files: []

38
emulators/amiarcadia.yml Normal file
View File

@@ -0,0 +1,38 @@
emulator: amiarcadia
type: libretro
source: "https://amigan.yatho.com/"
profiled_date: "2026-03-18"
core_version: "4.42"
display_name: "Arcadia 2001 / Interton VC 4000 (AmiArcadia)"
cores:
- amiarcadia
systems:
- emerson-arcadia-2001
- interton-vc4000
- elektor-tv-games-computer
# AmiArcadia is a libretro port of James Jacobs' emulator for Signetics
# 2636 PVI / 2637 UVI + 2650 CPU-based systems: Emerson Arcadia 2001 and
# clones (Bandai, Grandstand, Schmid, Hanimex, Leisurevision, etc.),
# Interton VC 4000 family (Voltmace, Rowtron, Fountain, etc.), Elektor
# TV Games Computer, and Zaccaria/Malzak coin-op arcade machines.
#
# The core does NOT require any BIOS or system ROM files.
# firmware_count = 0 in amiarcadia_libretro.info confirms this.
#
# ROM identification:
# The core auto-identifies known game ROMs by CRC32 and configures the
# correct machine type, memory map, and game-specific settings. For
# unknown ROMs, the user selects machine type via the "Machine" core
# option (Arcadia / Interton).
#
# Supported extensions: .bin, .tvc
#
# Source ref: libretro-core-info/amiarcadia_libretro.info (firmware_count = 0)
# Docs: https://docs.libretro.com/library/amiarcadia/
notes: |
No BIOS files required. The emulator has no external firmware dependencies.
Game ROMs are identified by CRC32 for automatic machine configuration.
bios_files: []

14
emulators/anarch.yml Normal file
View File

@@ -0,0 +1,14 @@
emulator: Anarch
type: game
source: "https://github.com/libretro/anern"
profiled_date: "2026-03-18"
core_version: "1.1d"
display_name: "Anarch"
cores: [anarch]
systems: []
files: []
notes: >
Libretro port of Anarch, a public domain suckless FPS game by Miloslav Ciz.
Entirely self-contained with all levels, textures, and sounds compiled
into the binary using procedural generation and hardcoded data tables.
No content file, BIOS, or system directory files required.

223
emulators/applewin.yml Normal file
View File

@@ -0,0 +1,223 @@
emulator: AppleWin
type: libretro
source: "https://github.com/audetto/AppleWin"
profiled_date: "2026-03-18"
core_version: "1.30.21.0"
display_name: "Apple II (AppleWin)"
cores:
- applewin
systems:
- apple-ii
notes: |
AppleWin is an Apple II/IIe/II+ emulator. The libretro port embeds all
ROM images directly into the compiled binary via a CMake resource system
(resource/CMakeLists.txt -> apple2roms static library -> apple2roms_data.h).
The GNUFrame::GetResourceData() function serves ROMs from this compiled-in
map. No external BIOS/firmware files are needed.
The core never calls RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY and the official
applewin_libretro.info has zero firmware entries.
Supported machine types (via core option applewin_machine):
Enhanced Apple //e, Apple ][ (Original), Apple ][+, Apple ][ J-Plus,
Apple //e, Pravets 82, Pravets 8M, Pravets 8A, Base64A, TK3000 //e
Supported extensions: bin, do, dsk, nib, po, gz, woz, zip, 2mg, 2img,
iie, apl, hdv, yaml, m3u
supports_no_game: true (can boot without content)
files: []
analysis:
embedded_roms:
build_system: "CMake add_resources() in resource/CMakeLists.txt"
storage: "apple2roms static library linked into core binary"
accessor: "GNUFrame::GetResourceData() -> apple2roms::data map"
source_ref: "source/frontends/common2/gnuframe.cpp:83"
system_roms:
- id: IDR_APPLE2_ROM
filename: Apple2.rom
size: 12288
md5: 3c406514b9806a7c57ee65fb0b0c39b4
sha1: 09288be705464b608ff190519ab008d3dfcd1b05
note: "Apple ][ original ROM (12 KB)"
- id: IDR_APPLE2_PLUS_ROM
filename: Apple2_Plus.rom
size: 12288
md5: 572b3005a4fa49bc54917b069b82c1ab
sha1: 33a24f5489ba9195b44be77d9afb2252594cb5c7
note: "Apple ][+ ROM (12 KB)"
- id: IDR_APPLE2_JPLUS_ROM
filename: Apple2_JPlus.rom
size: 12288
md5: f3e8237eca3809bec2a42b984a1332a8
sha1: ad200b3263d08e7235d0871c8595963a07adc905
note: "Apple ][ J-Plus ROM (12 KB)"
- id: IDR_APPLE2E_ROM
filename: Apple2e.rom
size: 16384
md5: 346bc782c6a08a531c460e33bc03daf4
sha1: 61fa9254628e5bb7236fb474006116d67684d747
note: "Apple //e ROM (16 KB)"
- id: IDR_APPLE2E_ENHANCED_ROM
filename: Apple2e_Enhanced.rom
size: 16384
md5: 38063e08c778503fc03ecebb979769e9
sha1: b8ea90abe135a0031065e01697c4a3a20d51198b
note: "Enhanced Apple //e ROM (16 KB, default machine type)"
- id: IDR_PRAVETS_82_ROM
filename: PRAVETS82.ROM
size: 12288
md5: c619b7edfcf021f3b8fd20d9386676ba
sha1: 8bd7ced83e209a15e9b19a05a5ef4b8e996dc1a5
note: "Pravets 82 ROM (12 KB)"
- id: IDR_PRAVETS_8M_ROM
filename: PRAVETS8M.ROM
size: 12288
md5: 76c79535f7cf77973e2c711aa977a124
sha1: f1b4ff018acf95f3355f0d575b66a188d728b687
note: "Pravets 8M ROM (12 KB)"
- id: IDR_PRAVETS_8C_ROM
filename: PRAVETS8C.ROM
size: 16384
md5: 1896d7b98dd940c89f7c8ea899b71006
sha1: c976fe56e57706c161f513a82ba3e0d8cda83904
note: "Pravets 8A/8C ROM (16 KB)"
- id: IDR_TK3000_2E_ROM
filename: TK3000e.rom
size: 16384
md5: 8d84b614b545d4eec8799d3f325332cb
sha1: f163e5753c18ff0e812a448e8da406f102600edf
note: "TK3000 //e ROM (16 KB)"
- id: IDR_BASE_64A_ROM
filename: Base64A.rom
size: 49152
md5: 352fdbcae14c6a8c0398822c7a273309
sha1: f1c779af480b5bda2bdd03950c1201a5c5143bea
note: "Base64A ROM (48 KB)"
- id: IDR_FREEZES_F8_ROM
filename: Freezes_Non-autostart_F8_Rom.rom
size: 2048
md5: d0a61e95ed1e1dc37c8e4801326aa79e
sha1: 3180be6b555ee9ef1f59c4fc3f25c5aab8c39c81
note: "Freezes non-autostart F8 ROM (2 KB)"
video_roms:
- id: IDR_APPLE2_VIDEO_ROM
filename: Apple2_Video.rom
size: 2048
md5: 9ac0dc8c4d0002eb45b0b84be0bde5ec
sha1: f9d312f128c9557d9d6ac03bfad6c3ddf83e5659
note: "Apple II character generator ROM (2 KB)"
- id: IDR_APPLE2_JPLUS_VIDEO_ROM
filename: Apple2_JPlus_Video.rom
size: 2048
md5: 271e2c9bf928b95e7baeff391db45495
sha1: 0a382be58db5215c4a3de53b19a72fab660d5da2
note: "Apple ][ J-Plus character generator ROM (2 KB)"
- id: IDR_APPLE2E_ENHANCED_VIDEO_ROM
filename: Apple2e_Enhanced_Video.rom
size: 4096
md5: 9123fff3442c0e688cc6816be88dd4ab
sha1: b2b5d87f52693817fc747df087a4aa1ddcdb1f10
note: "Enhanced Apple //e character generator ROM (4 KB)"
- id: IDR_BASE64A_VIDEO_ROM
filename: Base64A_German_Video.rom
size: 4096
md5: 4b45852b369e2afd864a02d0d91f70dc
sha1: 87ca8135f7526ddf829f9c2c4f7dbe4d568818fc
note: "Base64A German character generator ROM (4 KB)"
peripheral_firmware:
- id: IDR_DISK2_13SECTOR_FW
filename: DISK2-13sector.rom
size: 256
md5: 4f80448507cf43ab40c17ac08d89e278
sha1: afd060e6f35faf3bb0146fa889fc787adf56330a
note: "Disk II 13-sector controller ROM (256 B)"
- id: IDR_DISK2_16SECTOR_FW
filename: DISK2.rom
size: 256
md5: 2020aa1413ff77fe29353f3ee72dc295
sha1: d4181c9f046aafc3fb326b381baac809d9e38d16
note: "Disk II 16-sector controller ROM (256 B)"
- id: IDR_SSC_FW
filename: SSC.rom
size: 2048
md5: 67c0d61ab0911183faf05270f881a97e
sha1: 6dab633470c6bc4cb3e81d09fda46597caf8ee57
note: "Super Serial Card firmware (2 KB)"
- id: IDR_HDDRVR_FW
filename: Hddrvr.bin
size: 256
md5: e0a40e9166af27b16f60beb83c9233f0
sha1: 69667800c54da1d4466e7b2168c0e418a4cf586c
note: "Hard disk controller firmware v1 (256 B)"
- id: IDR_HDDRVR_V2_FW
filename: Hddrvr-v2.bin
size: 256
md5: a49e45e7a6d4de23e0845a59c7e31e0c
sha1: 06115eebb4d58221b5c062a42bf3e41e137447ed
note: "Hard disk controller firmware v2 (256 B)"
- id: IDR_HDC_SMARTPORT_FW
filename: HDC-SmartPort.bin
size: 256
md5: 2592efa1d34ade55d490a1b39911c9b2
sha1: fd557998fd5823ad69a42ad1282e4fe47db02dca
note: "SmartPort hard disk controller firmware (256 B)"
- id: IDR_PRINTDRVR_FW
filename: Parallel.rom
size: 256
md5: 5902996f16dc78fc013f6e1db14805b3
sha1: c75c751589cbcc1ad4ab4f63676af7abadd86f5b
note: "Parallel printer card firmware (256 B)"
- id: IDR_MOCKINGBOARD_D_FW
filename: Mockingboard-D.rom
size: 2048
md5: ab53170c5ec66b63e6356f637f4388ed
sha1: e8d20f4b59fe867ff76434d35a14d2cbdc8533e3
note: "Mockingboard-D sound card firmware (2 KB)"
- id: IDR_MOUSEINTERFACE_FW
filename: MouseInterface.rom
size: 2048
md5: 22563ab338024dac7b03510371d49c57
sha1: 3a9d881a8a8d30f55b9719aceebbcf717f829d6f
note: "Mouse interface card firmware (2 KB)"
- id: IDR_THUNDERCLOCKPLUS_FW
filename: ThunderClockPlus.rom
size: 2048
md5: 138b1f7e30953fcaa58fcbf562c15001
sha1: 60f434f5325899d7ea257a6e56e6f53eae65146a
note: "ThunderClock Plus firmware (2 KB)"
- id: IDR_TKCLOCK_FW
filename: TKClock.rom
size: 2304
md5: 7076083b9d748b7637b020636543971b
sha1: 3740516cc9050465f8b884dbeb0ecdd2c1354620
note: "TK Clock firmware (2.25 KB)"

87
emulators/ardens.yml Normal file
View File

@@ -0,0 +1,87 @@
emulator: Ardens
type: libretro
source: "https://github.com/tiberiusbrown/ardens"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Arduboy (Ardens)"
cores:
- ardens
systems:
- arduboy
notes: |
Ardens is an Arduboy FX simulator designed for profiling and debugging,
ported to libretro. It emulates the ATmega32U4 MCU, SSD1306 OLED display,
and W25Q128 external flash used by the Arduboy hardware.
No BIOS or bootloader files are required. The core has all boot code
compiled directly into the binary:
- Caterina/Arduboy3K bootloaders for multiple hardware revisions (D1, D2,
E2) are embedded as C arrays generated from .hex files via bin2c.py.
Located in src/boot/boot_game_*.c and src/boot/boot_menu_*.c.
The appropriate variant is selected at reset based on the configured
device type (absim_arduboy.cpp:115-161).
- Flashcart header (1536 bytes) is embedded in src/boot/boot_flashcart.c
and written to the start of the W25Q128 flash image at init
(absim_w25q128.hpp:14).
- EEPROM (1024 bytes) and external flash (W25Q128, 16 MB) state are
handled as save RAM through the libretro RETRO_MEMORY_SAVE_RAM
interface, not as system files.
The libretro port does not call RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
and never attempts to load any file from the system directory.
The .info file declares firmware_count = 0.
Supported ROM formats: Intel HEX (.hex) and Arduboy package (.arduboy).
block_extract is set to true (the core reads archives directly).
files: []
platform_details:
embedded_bootloaders:
source_ref: "src/boot/_make.bat, src/absim_arduboy.cpp:115-161"
variants:
- name: "arduboy3k-bootloader-game-sda"
array: "ARDENS_BOOT_GAME_D1"
size: 8422
device: "Arduboy FX (SDA)"
- name: "arduboy3k-bootloader-menu-sda"
array: "ARDENS_BOOT_MENU_D1"
size: 8422
device: "Arduboy FX (SDA)"
- name: "arduboy3k-bootloader-game-devkit"
array: "ARDENS_BOOT_GAME_D2"
size: 8446
device: "Arduboy FX DevKit"
- name: "arduboy3k-bootloader-menu-devkit"
array: "ARDENS_BOOT_MENU_D2"
size: 8446
device: "Arduboy FX DevKit"
- name: "arduboymini-bootloader-game"
array: "ARDENS_BOOT_GAME_E2"
size: 8548
device: "Arduboy Mini"
- name: "arduboymini-bootloader-menu"
array: "ARDENS_BOOT_MENU_E2"
size: 8548
device: "Arduboy Mini"
notes: |
All bootloaders are compiled from Intel HEX into C arrays at build
time. The core selects the game or menu variant at reset depending
on whether a flashcart image was loaded and the boot_to_menu config
flag (absim_arduboy.cpp:142-158). The bootloader is written to the
top of the ATmega32U4 program memory at the address defined by the
BOOTSZ fuse bits (absim.hpp:811).
embedded_flashcart_header:
source_ref: "src/boot/boot_flashcart.c, src/absim_w25q128.hpp:14"
array: "ARDENS_BOOT_FLASHCART"
size: 1536
notes: |
Empty flashcart header written to the first 1536 bytes of the
W25Q128 flash image during initialization. This is not a BIOS
file -- it is the default flash content the Arduboy FX expects
at the start of external storage.

46
emulators/arduous.yml Normal file
View File

@@ -0,0 +1,46 @@
emulator: Arduous
type: libretro
source: "https://github.com/libretro/arduous"
profiled_date: "2026-03-18"
core_version: "0.1.0"
display_name: "Arduboy (Arduous)"
cores:
- arduous
systems:
- arduboy
notes: |
Arduous is an Arduboy emulator built on simavr (ATmega32U4 AVR simulator)
with SSD1306 OLED display emulation, ported to libretro. It is distinct
from the Ardens core, which is a separate Arduboy emulator.
No BIOS, bootloader, or system files are required. The core operates as a
pure AVR simulator:
- The game content (.hex Intel HEX format) is parsed at load time via an
in-tree ihex reader (arduous.cpp:60-166) and written directly into the
simavr flash memory at the address specified in the hex file
(arduous.cpp:189). No separate bootloader is loaded.
- The MCU is hardcoded to atmega32u4 at 16 MHz (arduous.h:70-71).
simavr handles CPU initialization internally via avr_make_mcu_by_name().
- A commented-out loadFirmware() function (arduous.cpp:22-29) suggests
ELF firmware loading was considered but never implemented.
- EEPROM (1024 bytes), system RAM, and VRAM are exposed via the libretro
memory interface (RETRO_MEMORY_SAVE_RAM, RETRO_MEMORY_SYSTEM_RAM,
RETRO_MEMORY_VIDEO_RAM) but are not loaded from external files.
- The core never calls RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY. The
retro_load_game() function only reads the content data buffer passed
by the frontend (libretro.cpp:108-110).
- RETRO_ENVIRONMENT_SET_SUPPORT_NO_GAME is set to false (libretro.cpp:123),
meaning a game ROM is always required.
Supported ROM format: Intel HEX (.hex) only. The valid_extensions field
lists "hex". A TODO comment mentions .arduboy ZIP support but it is not
implemented.
files: []

View File

@@ -1,6 +1,9 @@
emulator: Atari800
type: libretro
source: "https://github.com/libretro/libretro-atari800"
profiled_date: "2026-03-18"
core_version: "3.1.0"
display_name: "Atari - 400/800/600XL/800XL/130XE/5200 (Atari800)"
systems: [atari-400, atari-800, atari-800xl, atari-130xe, atari-5200, atari-xegs]
# Atari800 emulates the Atari 8-bit family (400/800/XL/XE) and the 5200 console.

8
emulators/azahar.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "azahar"
type: alias
alias_of: "citra"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Azahar)"
note: "This core uses the same BIOS/firmware as citra. See emulators/citra.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: b2
type: standalone
source: "https://github.com/tom-seddon/b2"
profiled_date: "2026-03-18"
core_version: "v0.1"
display_name: "Acorn - BBC Micro (b2)"
cores: []
systems:
- bbc-micro-b

View File

@@ -1,6 +1,9 @@
emulator: Beetle Lynx (Mednafen Lynx)
type: libretro
source: "https://github.com/libretro/beetle-lynx-libretro"
profiled_date: "2026-03-18"
core_version: "v1.24.0"
display_name: "Atari - Lynx (Beetle Lynx)"
cores: [mednafen_lynx]
systems: [atari-lynx]
verification: existence

View File

@@ -1,6 +1,9 @@
emulator: Beetle NGP (Mednafen Neo Geo Pocket)
type: libretro
source: "https://github.com/libretro/beetle-ngp-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.36.1"
display_name: "SNK - Neo Geo Pocket / Color (Beetle NeoPop)"
systems: [snk-ngp, snk-ngpc]
notes: |

View File

@@ -1,6 +1,9 @@
emulator: Beetle PCE (Mednafen PCE)
type: libretro
source: "https://github.com/libretro/beetle-pce-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.38.7"
display_name: "NEC - PC Engine / SuperGrafx / CD (Beetle PCE)"
cores: [mednafen_pce, mednafen_pce_fast, mednafen_supergrafx]
systems: [nec-pc-engine]
verification: existence

View File

@@ -2,6 +2,9 @@ emulator: Beetle PC-FX (Mednafen)
type: libretro
cores: [mednafen_pcfx]
source: "https://github.com/libretro/beetle-pcfx-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.33.3"
display_name: "NEC - PC-FX (Beetle PC-FX)"
systems:
- nec-pcfx

View File

@@ -1,6 +1,9 @@
emulator: Beetle PSX (Mednafen PSX)
type: libretro
source: "https://github.com/libretro/beetle-psx-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.44.1"
display_name: "Sony - PlayStation (Beetle PSX)"
cores: [mednafen_psx, mednafen_psx_hw]
systems: [sony-playstation]
bios_size: 524288 # 512 KB for all accepted BIOS images

View File

@@ -2,6 +2,9 @@ emulator: Beetle Saturn (Mednafen)
type: libretro
core: mednafen_saturn_libretro
source: "https://github.com/libretro/beetle-saturn-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.45.1"
display_name: "Sega - Saturn (Beetle Saturn)"
systems:
- sega-saturn

View File

@@ -1,6 +1,9 @@
emulator: Beetle VB (Mednafen Virtual Boy)
type: libretro
source: "https://github.com/libretro/beetle-vb-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.36.1"
display_name: "Nintendo - Virtual Boy (Beetle VB)"
systems: [nintendo-virtualboy]
notes: |

View File

@@ -1,6 +1,9 @@
emulator: Beetle WonderSwan (Mednafen WonderSwan)
type: libretro
source: "https://github.com/libretro/beetle-wswan-libretro"
profiled_date: "2026-03-18"
core_version: "v0.9.35.1"
display_name: "Bandai - WonderSwan/Color (Beetle Wonderswan)"
systems: [bandai-wswan, bandai-wswanc]
notes: |

34
emulators/bennugd.yml Normal file
View File

@@ -0,0 +1,34 @@
emulator: BennuGD
type: libretro
source: "https://github.com/diekleinekuh/BennuGD_libretro"
profiled_date: "2026-03-18"
core_version: "git"
display_name: "Bennu Game Development"
cores:
- bennugd
systems:
- bennugd
# BennuGD is an open-source interpreter for BennuGD (.dcb/.dat) game files,
# running as a libretro core. It is a successor to DIV Games Studio / Fenix.
# Notable game: Streets of Rage Remake.
#
# The official libretro .info file (bennugd_libretro.info) declares zero
# firmware entries. The core loads content directly via bgdi_main() and does
# not reference any files from the system directory.
#
# retro_load_game() in libretro.c:888-911 only reads the content path and
# the save directory. RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY is called once
# (libretro.c:899) solely as a fallback for the save directory, never to
# load BIOS or firmware.
#
# Supported extensions: dcb, dat, exe (Windows BennuGD executables)
# Valid extensions in libretro.c: dat, dcb
# Valid extensions in .info: dcb, dat, exe
notes: |
No BIOS or firmware required. BennuGD is a self-contained game interpreter.
Games are loaded as .dcb or .dat bytecode files compiled by the BennuGD
toolchain. All game assets are bundled with the content.
files: []

View File

@@ -1,6 +1,9 @@
emulator: bk-emulator
type: libretro
source: "https://github.com/libretro/bk-emulator"
profiled_date: "2026-03-18"
core_version: "1.00"
display_name: "Elektronika - BK-0010/BK-0011(M)"
cores:
- bk
systems:

View File

@@ -1,6 +1,9 @@
emulator: BlastEm
type: libretro
source: "https://github.com/libretro/blastem"
profiled_date: "2026-03-18"
core_version: "v0.6.3-pre"
display_name: "Sega - Mega Drive - Genesis (BlastEm)"
cores:
- blastem
systems:

View File

@@ -1,6 +1,9 @@
emulator: blueMSX
type: libretro
source: "https://github.com/libretro/blueMSX-libretro"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "MSX/SVI/ColecoVision/SG-1000 (blueMSX)"
cores:
- bluemsx
systems:

62
emulators/bnes.yml Normal file
View File

@@ -0,0 +1,62 @@
emulator: bnes
type: libretro
source: "https://github.com/libretro/bnes-libretro"
profiled_date: "2026-03-18"
core_version: "v083"
display_name: "Nintendo - NES / Famicom (bnes)"
cores:
- bnes
systems:
- nes
notes: |
bnes is a NES emulator based on byuu's bNES/higan v083 NES module, ported
to libretro by Ryphecha. It is a lightweight, accuracy-focused NES core.
The core loads cartridge data entirely through retro_load_game with
need_fullpath=false (libretro.cpp:129). ROM data is passed as a memory
buffer and parsed by Cartridge::load (cartridge.cpp:18-31), which detects
iNES headers (16-byte offset) and delegates to Board::load for mapper setup.
The PPU generates its palette from a hardcoded color table in libretro.cpp
(lines 20-37) with emphasis factor tables. No external palette file is loaded.
System::init (system.cpp:62-66) only sets up the interface pointer and
default input devices. No system ROM, BIOS, or firmware is loaded at any
stage of initialization or cartridge loading.
The core does not call RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY and has no
file I/O for BIOS or firmware. FDS (Famicom Disk System) is not supported,
so disksys.rom is not needed.
No external BIOS or firmware files are needed.
files: []
analysis:
bios_search:
retro_load_game: "libretro.cpp:181-211 - loads cartridge data only, no BIOS"
cartridge_load: "cartridge.cpp:18-31 - parses iNES header + ROM data"
system_init: "system.cpp:62-66 - sets interface pointer, no ROM loading"
system_power: "system.cpp:43-50 - powers subsystems, no file I/O"
interface_init: "interface.cpp:17-20 - stores derived pointer, calls system.init"
supported_mappers:
- NROM
- SxROM (MMC1)
- UxROM
- CNROM
- TxROM (MMC3)
- ExROM (MMC5)
- AxROM
- BnROM
- GxROM
- PxROM (MMC4)
- FxROM (MMC4)
- Bandai FCG
- Konami VRC4
- Konami VRC6
- Konami VRC7
- Sunsoft 5B
fds_support: false
filesystem_access: false
system_directory_used: false

27
emulators/boom3.yml Normal file
View File

@@ -0,0 +1,27 @@
emulator: boom3
type: libretro
source: "https://github.com/libretro/boom3"
profiled_date: "2026-03-18"
core_version: "git"
display_name: "Doom 3 (boom3)"
cores: [boom3, boom3_xp]
systems: [doom3]
verification: existence
notes: >
Doom 3 source port based on dhewm3 (GPL Doom 3 engine). The core accepts
.pk4 extensions (retro_get_system_info sets valid_extensions = "pk4").
Content is loaded directly from the .pk4 file path - the engine extracts
the grandparent directory as fs_basepath (libretro.cpp:1097,1135-1136
via extract_directory called twice on info->path) and expects the standard
Doom 3 directory layout with base/ containing pak000.pk4 through pak008.pk4.
BASE_GAMEDIR is hardcoded to "base" (Licensee.h:58). The boom3_xp variant
compiles with _D3XP defined, which passes "+set fs_game d3xp" at startup
(libretro.cpp:538-544) to load the Resurrection of Evil expansion from a
d3xp/ subdirectory alongside base/. The filesystem code (FileSystem.cpp:2125)
scans for .pk4 files in the game directory and loads them in order, with
higher-numbered paks overriding lower ones. The core requires OpenGL
(RETRO_ENVIRONMENT_SET_HW_RENDER) and XRGB8888 pixel format. All required
files are commercial Doom 3 game data, not engine firmware. No BIOS or
system files are needed in the RetroArch system directory.
files: []

75
emulators/boytacean.yml Normal file
View File

@@ -0,0 +1,75 @@
emulator: Boytacean
type: libretro
source: "https://github.com/joamag/boytacean"
profiled_date: "2026-03-18"
core_version: "0.10.13"
display_name: "Nintendo - Game Boy / Color (Boytacean)"
cores:
- boytacean
systems:
- nintendo-gb
- nintendo-gbc
notes: |
Boytacean is a Game Boy / Game Boy Color emulator written in Rust by Joao Magalhaes.
No external BIOS or boot ROM files are needed.
The core ships with multiple boot ROMs compiled directly into the binary as static
byte arrays in src/data.rs. For DMG mode the default is "DMG Bootix" (an open-source
boot ROM forked from SameBoy's Bootix project, 256 bytes). For CGB mode the default
is "CGB Boytacean" (a custom open-source CGB boot ROM, 2304 bytes). The original
Nintendo DMG, SGB, and CGB boot ROMs are also embedded as static arrays (DMG_BOOT,
SGB_BOOT, CGB_BOOT) but the defaults use the open-source replacements.
The libretro frontend (frontends/libretro/src/core.rs) calls instance.load(true) in
retro_load_game(), which routes through load_dmg() or load_cgb() depending on the
cartridge header. These call load_boot_static() which copies one of the embedded byte
arrays into MMU memory. There is no RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY call, no
filesystem access for boot ROMs, and no core option to load external boot ROM files.
The .info file (boytacean_libretro.info) lists no firmware entries.
Boot ROM selection defaults:
- DMG: BootRom::DmgBootix (gb.rs:1389) - open-source, 256 bytes
- CGB: BootRom::CgbBoytacean (gb.rs:1398) - open-source, 2304 bytes
All boot ROM source code lives in src/boot/, forked from SameBoy and assembled
with rgbds. The compiled binaries are then converted to Rust const arrays in data.rs.
files: []
analysis:
embedded_boot_roms:
dmg_boot:
constant: DMG_BOOT
size: 256
description: "Original Nintendo DMG boot ROM (embedded, not default)"
source_ref: "data.rs:14-27"
sgb_boot:
constant: SGB_BOOT
size: 256
description: "Super Game Boy boot ROM (embedded, not default)"
source_ref: "data.rs:29-42"
dmg_bootix:
constant: DMG_BOOTIX
size: 256
description: "Open-source DMG boot ROM from Bootix project (default for DMG)"
source_ref: "data.rs:44-57"
mgb_bootix:
constant: MGB_BOOTIX
size: 256
description: "Open-source MGB (Game Boy Pocket) boot ROM from Bootix project"
source_ref: "data.rs:59-72"
cgb_boot:
constant: CGB_BOOT
size: 2304
description: "Original Nintendo CGB boot ROM (embedded, not default)"
source_ref: "data.rs:74-175"
cgb_boytacean:
constant: CGB_BOYTACEAN
size: 2304
description: "Custom open-source CGB boot ROM (default for CGB)"
source_ref: "data.rs:177-275"
filesystem_access: false
system_directory_used: false
boot_rom_source: "src/boot/ (assembly, forked from SameBoy)"

View File

@@ -1,6 +1,9 @@
emulator: bsnes
type: libretro
source: "https://github.com/libretro/bsnes-libretro"
profiled_date: "2026-03-18"
core_version: "115"
display_name: "Nintendo - SNES / SFC (bsnes)"
systems: [nintendo-snes, nintendo-super-game-boy, nintendo-satellaview]
# bsnes supports HLE for DSP1/DSP1B/DSP2/DSP4, ST010, and Cx4.

View File

@@ -1,6 +1,9 @@
emulator: Cannonball
type: libretro
source: "https://github.com/libretro/cannonball"
profiled_date: "2026-03-18"
core_version: "1.0"
display_name: "Cannonball"
systems:
- sega-outrun

View File

@@ -1,6 +1,9 @@
emulator: Caprice32
type: libretro
source: "https://github.com/libretro/libretro-cap32"
profiled_date: "2026-03-18"
core_version: "v4.2.0"
display_name: "Amstrad - CPC/GX4000 (Caprice32)"
cores:
- cap32
systems:

8
emulators/cdi2015.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "cdi2015"
type: alias
alias_of: "same_cdi"
profiled_date: "2026-03-18"
core_version: "0.160"
display_name: "Philips CDi (CDi 2015)"
note: "This core uses the same BIOS/firmware as same_cdi. See emulators/same_cdi.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Cemu
type: standalone
source: "https://github.com/cemu-project/Cemu"
profiled_date: "2026-03-18"
core_version: "2.6"
display_name: "Cemu (Wii U)"
systems: [nintendo-wiiu]
analysis_date: "2026-03-17"
analysis_commit: "HEAD (depth=1)"

14
emulators/chailove.yml Normal file
View File

@@ -0,0 +1,14 @@
emulator: ChaiLove
type: game
source: "https://github.com/libretro/libretro-chailove"
profiled_date: "2026-03-18"
core_version: "2.0.0"
display_name: "ChaiLove"
cores: [chailove]
systems: []
files: []
notes: >
2D game framework for libretro inspired by LOVE2D, using ChaiScript.
Loads .chai or .chailove game files as content. The core itself is a
game engine runtime with no system directory dependencies.
No BIOS, firmware, or system directory files required.

View File

@@ -0,0 +1,9 @@
emulator: "chimerasnes"
type: alias
alias_of: "snes9x"
core_version: ""
display_name: "Nintendo - SNES / SFC (ChimeraSNES)"
profiled_date: "2026-03-18"
display_name: "Nintendo - SNES / SFC (ChimeraSNES)"
note: "This core uses the same BIOS/firmware as snes9x. See emulators/snes9x.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Citra / Lime3DS / Azahar
type: standalone + libretro
source: "https://github.com/azahar-emu/azahar"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - 3DS (Citra)"
systems: [nintendo-3ds]
notes: |

64
emulators/clownmdemu.yml Normal file
View File

@@ -0,0 +1,64 @@
emulator: ClownMDEmu
type: libretro
source: "https://github.com/libretro/clownmdemu-libretro"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Sega - MD/CD (ClownMDEmu)"
cores:
- clownmdemu
systems:
- sega-megadrive
- sega-megacd
notes: |
ClownMDEmu is a Sega Mega Drive/Genesis and Mega CD emulator by Clownacy.
Supports cartridge (bin/md/gen) and CD (cue/iso/chd) formats, plus a
subsystem for cartridge+CD combo (Mega CD Mode 1).
The core has NO external BIOS file requirements. firmware_count = 0 in the
libretro .info file confirms this.
Mega CD boot ROM: a custom open-source replacement boot ROM is compiled
directly into the binary as a 16384-entry uint16 array
(mega-cd-boot-rom.c included into bus-main-m68k.c:19-21). Source at
https://github.com/Clownacy/clownmdemu-mcd-boot. No external CD BIOS
files (bios_CD_E.bin, bios_CD_U.bin, bios_CD_J.bin) are needed or loaded.
TMSS (Trademark Security System): not implemented at all. No TMSS ROM is
loaded or checked. The core boots games directly without the "Produced by
or under license from Sega" screen.
The system directory (RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY) is only used
as a fallback path for Backup RAM (BuRAM) save files, not for BIOS loading.
CD add-on can be enabled for cartridge games via the "clownmdemu_cd_addon"
core option to allow CD music features, but this uses the built-in boot
ROM, not an external BIOS.
The core implements its own Mega CD BIOS call handler (MegaCDBIOSCall in
bus-sub-m68k.c) via HLE (high-level emulation) of Sub-CPU BIOS functions
including CDBIOS, CDCTRN, FDRSET, FDRCHG, DRVINIT, CDCSTOP, CDCSTAT,
CDCREAD, and others.
files: []
analysis:
tmss:
supported: false
notes: |
TMSS is not implemented. No ROM loaded, no "Produced by Sega" check.
No references to TMSS exist anywhere in the codebase.
megacd_bios:
external_required: false
builtin_boot_rom: true
boot_rom_source: "https://github.com/Clownacy/clownmdemu-mcd-boot"
boot_rom_location: "source/mega-cd-boot-rom.c (16384 uint16 entries = 32 KB)"
bus_mapping: "0x400000-0x41FFFF (address & 0x20000 == 0)"
source_ref: "bus-main-m68k.c:19-21, bus-main-m68k.c:484-494"
bios_hle: true
hle_source_ref: "bus-sub-m68k.c:64 (MegaCDBIOSCall)"
notes: |
The Mega CD boot ROM is an open-source replacement compiled into the
binary. Sub-CPU BIOS calls are handled via HLE. No external Sega CD
BIOS files (bios_CD_E/U/J.bin) are needed.

14
emulators/craft.yml Normal file
View File

@@ -0,0 +1,14 @@
emulator: Craft
type: game
source: "https://github.com/libretro/Craft"
profiled_date: "2026-03-18"
core_version: "v1"
display_name: "Minecraft (Craft)"
cores: [craft]
systems: []
files: []
notes: >
Libretro port of Craft, a simple Minecraft clone by Michael Fogleman.
Procedurally generates a voxel world with basic block placement and removal.
All textures and shaders are compiled into the binary.
No content file, BIOS, or system directory files required.

View File

@@ -1,6 +1,9 @@
emulator: CrocoDS
type: libretro
source: "https://github.com/libretro/libretro-crocods"
profiled_date: "2026-03-18"
core_version: "v1"
display_name: "Amstrad - CPC (CrocoDS)"
cores:
- crocods
systems:

39
emulators/cruzes.yml Normal file
View File

@@ -0,0 +1,39 @@
emulator: Cruzes
type: libretro
source: "https://github.com/libretro/libretro-samples/tree/master/tests/cruzes"
profiled_date: "2026-03-18"
core_version: "v1.0"
display_name: "Cruzes"
cores:
- cruzes
systems:
- game
notes: |
Cruzes is an unfinished Picross puzzle game implemented as a libretro core,
part of the libretro-samples repository. It is not an emulator -- it is a
standalone game that runs directly within RetroArch.
The core sets supports_no_game to true (cruzes.c:772) and valid_extensions
to an empty string (cruzes.c:749). The puzzle grid is hardcoded in
retro_init (cruzes.c:706-717) via a string literal passed to load_challenge.
retro_load_game (cruzes.c:728-732) only sets the pixel format to RGB565
and returns true. It never reads from the game_info pointer, never calls
RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY, and never opens any file from disk.
The font data (Carlito-Regular.ttf) is converted to C header files at build
time by the ttf2c tool (font10.h, font16.h, font24.h) and compiled in.
No external BIOS, firmware, or system files are needed.
files: []
analysis:
file_loading: none
system_directory_used: false
supports_no_game: true
need_fullpath: false
is_experimental: true
license: 2-clause BSD
author: Higor Euripedes

59
emulators/daphne.yml Normal file
View File

@@ -0,0 +1,59 @@
emulator: Daphne
type: libretro
source: "https://github.com/libretro/daphne"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Arcade (Daphne)"
systems:
- arcade-laserdisc
notes: |
Daphne is a LaserDisc arcade game emulator ported to libretro. It emulates
classic full-motion video arcade games like Dragon's Lair, Space Ace,
Cliff Hanger, and others that used LaserDisc players for video output.
The core does NOT require any shared system BIOS or firmware files.
The libretro-core-info file (daphne_libretro.info) declares no firmware.
Each game loads its own arcade ROM set from a ZIP file named after the game
short name (e.g. lair.zip, cliff.zip, bega.zip). ROM files are individual
arcade chip dumps loaded via the rom_def struct in each game class
(daphne-1.0-src/game/*.cpp). CRC32 verification is performed at load time
(game.cpp:769-778).
Content loading path (libretro.cpp:546-637):
1. User points RetroArch to a .zip file (e.g. /Daphne/roms/lair.zip)
2. The core strips the path to derive:
- rom_name: game short name (e.g. "lair"), lowercased
- rom_path: parent directory
3. A home_dir is set to rom_path/.. (one level up from roms/)
4. Additional data is expected relative to home_dir:
- roms/ -> game ROM ZIPs
- framefile/ -> frame description files (.txt)
- sound/ -> sound samples
- ram/ -> SRAM saves
- pics/ -> overlay graphics
Expected directory layout:
Daphne/
roms/lair.zip
roms/cliff.zip
framefile/lair.txt
framefile/cliff.txt
sound/lair/ (optional, game-specific samples)
Supported games include (from README.md and libretro.cpp):
lair (Dragon's Lair), ace (Space Ace), cliff (Cliff Hanger),
bega (Bega's Battle), badlands (Badlands), esh (Esh's Aurunmilla),
interstellar, mach3, sdq (Super Don Quix-ote), tq (Thayer's Quest),
astron, galaxy, cobra, roadblaster, gpworld, lair2 (Dragon's Lair II),
and many ROM revision variants.
The core is marked experimental. Savestates, cheats, and disk control are
not supported. Requires full file path (retro_load_game uses path, not
data buffer).
files: []
# No shared BIOS or firmware files. All ROMs are per-game arcade chip
# dumps distributed inside game-named ZIP archives. These are game content,
# not system files managed by retroarch_system.

View File

@@ -1,6 +1,9 @@
emulator: DeSmuME
type: libretro
source: "https://github.com/libretro/desmume"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "Nintendo - DS (DeSmuME)"
cores: [desmume, desmume2015]
systems: [nintendo-ds]

70
emulators/dice.yml Normal file
View File

@@ -0,0 +1,70 @@
emulator: DICE
type: libretro
source: "https://github.com/mittonk/dice-libretro"
profiled_date: "2026-03-18"
core_version: "v0.4.2"
display_name: "Arcade (DICE)"
cores:
- dice
systems:
- discrete-arcade
notes: |
DICE (Discrete Integrated Circuit Emulator) emulates early arcade hardware
built entirely from discrete logic components, with no CPU. dice-libretro is
a libretro port by Ken Mitton, based on upstream DICE by Adam B.
No BIOS or firmware files required. The .info file declares firmware_count = 0.
Games fall into two categories:
- ROM-based: shipped as MAME-style ZIP archives (filename matters).
The core loads the ZIP passed by the frontend and matches individual ROM
chips by CRC32 (chips/rom.cpp:41-218, RomDesc::get_data). If a chip's
CRC does not match, the core walks all entries in the archive looking for
a CRC match or alt_crc match.
- ROM-less: games like Pong, Breakout, Rebound whose original PCBs had no
ROM at all. These use .dmy dummy launcher files (empty placeholders) to
tell RetroArch which game to start.
retro_get_system_info (libretro.cpp:122-137) sets need_fullpath = true,
block_extract = true, valid_extensions = "zip|dmy|k1|a1|6c|c6|d2|s1|f4|a4|
1da|da1|C4|4c|4d|d7|d4". The unusual extensions are raw ROM chip dumps for
individual games (e.g. .k1 for antiaircraft, .a1 for attack).
dice.cpp:42-66 strips any "#inner.rom" suffix from the path (for ROM
managers that expose zip contents) and passes the zip path to
RomDesc::set_zip_filename.
retro_init (libretro.cpp:50-63) retrieves RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
but uses it only for the retro_base_directory variable, not for loading any
system files.
Games with ROMs (10 titles):
antiaircraft.zip - 1 ROM chip (k1)
attack.zip - 6 ROM chips (a1, b1, c1, d1, j6, k6), each with alt_crc
cleansweep.zip - 3 ROM chips (6c, d7, k3)
crashnscore.zip - 6 ROM chips (d2, e2, f6, f7, p6, p7)
indy4.zip - 4 ROM chips (s1, s2, c1, c2)
jetfighter.zip - 6 ROM chips (a4, j1, j5, k5, m1, r5)
sharkjaws.zip - 2 ROM chips (1da/da1, 1db/db1)
steeplechase.zip - 2 ROM chips (C4, D4); bugle ROM c8 dump missing
stuntcycle.zip - 2 ROM chips (4d, 1fh)
wipeout.zip - 2 ROM chips (d4, g7)
ROM-less games (11 titles, use .dmy dummy files):
breakout, crossfire, gotcha, hiway, pinpong, pong, pongdoubles,
quadrapong, rebound, spacerace, tvbasketball
files: []
analysis:
rom_loading:
method: "MAME-style ZIP, matched by CRC32 per RomDesc"
source_ref: "chips/rom.cpp:41-218"
zip_handling: "unzip library (unzip/), opened via libretro_zip_filename"
game_count: 21
rom_games: 10
romless_games: 11
filesystem_access: false
system_directory_used: false
bios_required: false

14
emulators/dinothawr.yml Normal file
View File

@@ -0,0 +1,14 @@
emulator: Dinothawr
type: game
source: "https://github.com/libretro/Dinothawr"
profiled_date: "2026-03-18"
core_version: "v1.0"
display_name: "Dinothawr"
cores: [dinothawr]
systems: []
files: []
notes: >
Puzzle game developed by the libretro team as a reference libretro core.
Push blocks on ice to solve puzzles. Game data (maps, sprites, music)
ships in the libretro repo and is loaded as content.
No BIOS, firmware, or system directory files required.

76
emulators/directxbox.yml Normal file
View File

@@ -0,0 +1,76 @@
emulator: DirectXBox
type: libretro
source: "https://github.com/libretro/libretro-directxbox"
profiled_date: "2026-03-18"
core_version: "alpha"
display_name: "Microsoft - Xbox (DirectXbox)"
cores:
- directxbox
systems:
- xbox
# DirectXBox is an experimental original Xbox emulator written from scratch for
# libretro. Status: alpha. Cromwell BIOS boots but cannot run games. Microsoft
# BIOS does not boot yet (ATA/OHCI unimplemented). No audio, no HW acceleration.
#
# BIOS loading (libretro.cpp:199-210):
# Paths are hardcoded relative to the system directory:
# mcpx_rom_str = <system_dir>/mcpx_1.0.bin
# bios_rom_str = <system_dir>/cromwell_1024.bin
# Both are passed to Xbox::LoadBootRoms(flash, mcpx).
# A commented-out alternative exists: xbox-3944.bin (Microsoft retail BIOS).
#
# LoadBootRoms (xbox.cpp:143-210):
# 1. Opens flash ROM, validates size is a multiple of 0x10000
# 2. Maps flash ROM to 0xFF000000-0xFFFFFFFF (mirrored to fill 16 MB)
# 3. Opens MCPX ROM, validates size is exactly 512 bytes
# 4. Overlays MCPX at the last 512 bytes of flash region
# If MCPX path is empty, step 3-4 are skipped (Debug/Chihiro machines).
# retro_load_game returns false if either file fails to load.
#
# Machine type (libretro_core_options.h:67-81):
# Core option "libretro-xbox_machine-type" selects hardware revision.
# Default "auto" detects from BIOS. Retail v1.0 uses McpxRomVersion::Mcpx1_0,
# all other retail revisions use Mcpx1_1. Debug and Chihiro use McpxRomVersion::None
# (no MCPX ROM needed).
#
# The .info file declares no firmware_count. Both files are mandatory for retail
# machine types. The core has no fallback or built-in replacement.
files:
- name: "mcpx_1.0.bin"
path: "mcpx_1.0.bin"
size: 512
required: true
note: >
Xbox MCPX ROM (secret boot ROM on the southbridge). Contains the initial
boot vector that loads the flash BIOS. Overlaid at the last 512 bytes of
the 16 MB flash region (0xFFFFFE00-0xFFFFFFFF). Only needed for retail
machine types; Debug and Chihiro skip this file.
source_ref: "src/xbox.cpp:186-206, src/libretro/libretro.cpp:202"
- name: "cromwell_1024.bin"
path: "cromwell_1024.bin"
required: true
note: >
Cromwell open-source Xbox BIOS (1024 KB variant). Loaded as the flash ROM
and mirrored across the 16 MB flash region at 0xFF000000. Size must be a
multiple of 0x10000. This is the only BIOS that currently boots in the
emulator. The Microsoft retail BIOS (xbox-3944.bin) is referenced in
commented-out code but does not work yet.
source_ref: "src/xbox.cpp:143-178, src/libretro/libretro.cpp:203-204"
notes:
status: >
Alpha stage. Only Cromwell BIOS boots. No commercial game compatibility.
Missing ATA (hard drive), OHCI (USB/controllers), audio, and GPU HW
acceleration. The core requires libvirt86 for x86 virtualization.
microsoft_bios: >
The source references xbox-3944.bin as an alternative flash ROM (Microsoft
retail BIOS, typically 256 KB). It is commented out in libretro.cpp:204
because ATA and OHCI hardware are not yet implemented, preventing the
Microsoft BIOS from completing boot.
machine_types: >
xbox_database.cpp defines retail v1.0 through v1.6, debug, and chihiro
variants. Each has different TV encoder (Conexant/Focus/XCalibur) and MCPX
revision (X2/X3) settings. The core option auto-detects from the loaded BIOS.

8
emulators/dirksimple.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "dirksimple"
type: alias
alias_of: "daphne"
profiled_date: "2026-03-18"
core_version: "0.2"
display_name: "Laserdisc arcade game (DirkSimple)"
note: "This core uses the same BIOS/firmware as daphne. See emulators/daphne.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Dolphin
type: standalone + libretro
source: "https://github.com/dolphin-emu/dolphin"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - GameCube / Wii (Dolphin)"
systems: [nintendo-gamecube, nintendo-wii]
# Dolphin has HLE for most system functions, so real BIOS/firmware files

View File

@@ -0,0 +1,23 @@
emulator: "Dolphin Launcher"
type: launcher
source: "https://github.com/RobLoach/libretro-dolphin-launcher"
profiled_date: "2026-03-18"
core_version: "1.2.0"
display_name: "Nintendo - GameCube / Wii (Dolphin Launcher)"
cores:
- dolphin_launcher
systems: [nintendo-gamecube, nintendo-wii]
notes: |
Launcher stub that passes games to standalone Dolphin (dolphin-emu-nogui,
dolphin-emu, or Flatpak org.DolphinEmu.dolphin-emu). The core itself does
no emulation - it calls system() with the game path, waits for Dolphin to
exit, then signals RETRO_ENVIRONMENT_SHUTDOWN.
Requires Dolphin installed separately on the host. All BIOS/firmware files
(IPL.bin, DSP ROMs, fonts, Wii NAND) are managed by the standalone Dolphin
install, not by RetroArch system/. See dolphin.yml for those files.
No system files, BIOS, or firmware required by this core.
files: []

View File

@@ -1,6 +1,9 @@
emulator: DOSBox-core
type: libretro
source: "https://github.com/libretro/dosbox-core"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "DOS (DOSBox-core)"
cores: [dosbox_core]
systems: [dos]
verification: sha1

View File

@@ -1,6 +1,9 @@
emulator: DOSBox Pure
type: libretro
source: "https://github.com/libretro/dosbox-pure"
profiled_date: "2026-03-18"
core_version: "0.9.9"
display_name: "DOS (DOSBox-Pure)"
cores: [dosbox_pure]
systems: [dos]
verification: sha1

8
emulators/dosbox_svn.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "dosbox_svn"
type: alias
alias_of: "dosbox_core"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "DOS (DOSBox-SVN)"
note: "This core uses the same BIOS/firmware as dosbox_core. See emulators/dosbox_core.yml for details."
files: []

View File

@@ -0,0 +1,8 @@
emulator: "dosbox_svn_ce"
type: alias
alias_of: "dosbox_core"
profiled_date: "2026-03-18"
core_version: "SVN CE"
display_name: "DOS (DOSBox-SVN CE)"
note: "This core uses the same BIOS/firmware as dosbox_core. See emulators/dosbox_core.yml for details."
files: []

View File

@@ -0,0 +1,33 @@
emulator: DoubleCherryGB
type: libretro
source: "https://github.com/TimOelrichs/doublecherryGB-libretro"
profiled_date: "2026-03-18"
core_version: "v0.17.0"
display_name: "Nintendo - Game Boy / Color (DoubleCherryGB)"
cores:
- DoubleCherryGB
systems:
- nintendo-gb
- nintendo-gbc
notes: |
DoubleCherryGB is a Game Boy / Game Boy Color emulator forked from TGB Dual
by GIGO and Hii. It adds multi-Game Boy emulation with virtual link cable
support for up to 16 players, DMG-07 4-Player Adapter emulation, and
built-in Pokemon distribution events.
No BIOS or boot ROM files are required or supported. The core does not
call RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY for firmware loading and does
not attempt to open any files from the system directory.
In cpu.cpp:82, the program counter is initialized to 0x100 (post-boot ROM
entry point), and cpu::reset() sets all registers to their post-boot
values directly (AF=0x01B0 for DMG, 0x11B0 for CGB). This means the
core completely bypasses the boot ROM sequence via HLE register setup.
The .info file at libretro-core-info confirms no firmware entries.
Supported extensions: gb, dmg, gbc, cgb, sgb.
Library version: v0.18.0.
files: []

57
emulators/doukutsu_rs.yml Normal file
View File

@@ -0,0 +1,57 @@
emulator: "doukutsu-rs"
type: libretro
source: "https://github.com/DrGlaucous/doukutsu-rs-libretro"
profiled_date: "2026-03-18"
core_version: "1.2.0 - 0.101.0"
display_name: "Cave Story (drs)"
cores:
- doukutsu_rs
systems:
- cavestory
# doukutsu-rs (d-rs) is an open-source reimplementation of the Cave Story
# (Doukutsu Monogatari) engine in Rust, ported to libretro by Dr. Glaucous.
# It plays the original freeware Cave Story and Cave Story+ (Steam/Switch).
#
# The core does NOT use RetroArch's system directory for any BIOS or firmware.
# get_system_directory() is defined in libretro.rs:1255 but never called by
# the core (the import is commented out in core.rs:28).
#
# Instead, the core loads game data relative to the content path provided by
# the frontend. The target is either a Doukutsu.exe (freeware) or a directory
# containing a data/ subfolder (core.rs:226-233):
#
# content_path = "/path/to/Doukutsu.exe" (or directory for CS Switch)
# resource_dir = parent_of(content_path) + "/data/"
#
# The data/ directory must contain the freeware Cave Story game assets:
# npc.tbl, mrmap.bin, *.png, Stage/, Npc/, org/ (music), *.tsc (scripts)
#
# These are the original Pixel game files from Doukutsu.exe, extracted by
# the doukutsu-rs/game-data repo (CSE2E-converted freeware data). They are
# copyrighted by Daisuke "Pixel" Amaya but freely redistributable for
# non-commercial use.
#
# Internal engine data (fonts, organya wavetables, gamecontrollerdb.txt,
# touch overlay, lightmap) is compiled into the core binary via
# include_bytes! in builtin_fs.rs, so nothing extra is needed in system/.
#
# The .info file (doukutsu_rs_libretro.info) declares:
# supported_extensions = "exe|dll|so"
# needs_fullpath = true
# supports_no_game = true
# notes = "(!) drs requires data ROM 'Cave Story (en).zip'."
# "|(!) Load Content 'Doukutsu.exe', Also works with all other ports of CS"
#
# No firmware entries are declared in the .info file.
# Valid extensions: exe, dll, so (loads the original game binary as content path)
notes: |
No BIOS or firmware files required in the system directory.
The core reads game data from a data/ subfolder next to the loaded content.
Users must provide the Cave Story freeware game files (Doukutsu.exe and its
data/ directory) or a Cave Story+ installation as the content to load.
All engine-internal resources (fonts, wavetables, controller mappings) are
built into the core binary.
files: []

View File

@@ -1,6 +1,9 @@
emulator: DuckStation
type: standalone
source: "https://github.com/stenzek/duckstation"
profiled_date: "2026-03-18"
core_version: "v0.1"
display_name: "Sony - PlayStation (DuckStation)"
systems: [sony-playstation]
bios_size: 524288 # 0x80000 (512 KB), also accepts PS2 (4 MB) and PS3 BIOS
verification: md5

122
emulators/easyrpg.yml Normal file
View File

@@ -0,0 +1,122 @@
emulator: EasyRPG Player
type: libretro
source: "https://github.com/libretro/easyrpg-libretro"
profiled_date: "2026-03-18"
core_version: "0.8.1.0"
display_name: "RPG Maker 2000/2003 (EasyRPG)"
cores:
- easyrpg
systems:
- rpgmaker
# EasyRPG Player is an open-source interpreter for RPG Maker 2000 and 2003
# games. It does not require any BIOS or firmware files. All system data
# files are optional and improve the experience (MIDI music, RTP assets).
#
# The official libretro .info file declares zero firmware entries.
#
# Directory layout under <system_dir>:
# rtp/2000/ - RPG Maker 2000 Run-Time Package assets
# rtp/2003/ - RPG Maker 2003 Run-Time Package assets
# easyrpg-player/ - global config dir (auto-created)
# easyrpg-player/Soundfont/ - user-provided .sf2 files
# easyrpg-player/Font/ - user-provided font files
#
# RTP path resolution (filefinder_rtp.cpp:68-75, libretro build):
# 1. <core_assets_dir>/rtp/<version>
# 2. <system_dir>/rtp/<version>
# where <version> is "2000" or "2003" depending on the game
#
# MIDI playback uses FluidSynth (fluidlite) with this soundfont search
# order (decoder_fluidsynth.cpp:118-163):
# 1. User-configured soundfont from settings
# 2. "easyrpg.soundfont" (looked up via VFS, placed in game dir or system dir)
# 3. FluidSynth default soundfont setting
# 4. SDL_SOUNDFONTS environment variable
# 5. /usr/share/soundfonts/FluidR3_GM.sf2 (Linux desktop)
# 6. /usr/share/sounds/sf2/FluidR3_GM.sf2 (Linux desktop)
#
# WildMidi alternative MIDI (decoder_wildmidi.cpp:99-114, libretro build):
# 1. <system_dir>/wildmidi.cfg
# 2. <core_assets_dir>/wildmidi/wildmidi.cfg
#
# Games that include all their assets (FullPackageFlag) need nothing extra.
# Games relying on RPG Maker RTP need the matching RTP installed.
notes: |
No BIOS or firmware required. All files listed below are optional runtime
data that improve compatibility and audio quality.
RTP (Run-Time Package) contains default assets (sprites, music, sound effects)
shared by many RPG Maker games. Games that ship all their own assets do not
need it. The RPG Maker 2000 and 2003 RTPs are separate packages. EasyRPG
also supports translated/third-party RTP variants (Don Miguel, Kadokawa,
Enterbrain, RPG Advocate, etc.) and auto-detects which one a game uses.
For MIDI music, a General MIDI soundfont in SF2 format is needed. Place it
as easyrpg.soundfont in the system directory, or put any .sf2 file in
easyrpg-player/Soundfont/ and select it from the core settings menu.
files:
# ================================================================
# Soundfont for MIDI playback (optional)
# decoder_fluidsynth.cpp:125 - first custom path checked
# ================================================================
- name: "easyrpg.soundfont"
path: "easyrpg.soundfont"
required: false
source_ref: "decoder_fluidsynth.cpp:125, scene_logo.cpp:261"
note: >
General MIDI soundfont (SF2 format) for MIDI music playback. Many RPG
Maker games use MIDI for background music. Without a soundfont, MIDI
tracks are silent. Any GM-compatible .sf2 works. Can also be placed in
easyrpg-player/Soundfont/ with any filename.
# ================================================================
# WildMidi configuration (optional, alternative MIDI backend)
# decoder_wildmidi.cpp:99-114
# ================================================================
- name: "wildmidi.cfg"
path: "wildmidi.cfg"
required: false
source_ref: "decoder_wildmidi.cpp:103-104"
note: >
WildMidi configuration file pointing to GUS patch sets for MIDI
playback. Alternative to FluidSynth/SF2. Only used if WildMidi
support is compiled in and FluidSynth is not available or disabled.
# ================================================================
# RPG Maker 2000 RTP (optional, game-dependent)
# filefinder_rtp.cpp:73-74 - <system_dir>/rtp/2000
# ================================================================
- name: "RPG Maker 2000 RTP"
path: "rtp/2000/"
required: false
type: directory
source_ref: "filefinder_rtp.cpp:73-74"
note: >
Run-Time Package for RPG Maker 2000 games. Contains default tilesets,
character sprites, battle animations, music, and sound effects. Only
needed by games that reference RTP assets instead of bundling them.
Multiple RTP variants exist (Japanese official, English official,
Don Miguel English translation). EasyRPG auto-detects which variant
a game expects.
# ================================================================
# RPG Maker 2003 RTP (optional, game-dependent)
# filefinder_rtp.cpp:73-74 - <system_dir>/rtp/2003
# ================================================================
- name: "RPG Maker 2003 RTP"
path: "rtp/2003/"
required: false
type: directory
source_ref: "filefinder_rtp.cpp:73-74"
note: >
Run-Time Package for RPG Maker 2003 games. Same concept as the 2000
RTP but with additional battle system assets for the side-view ATB
combat. Multiple variants exist (Japanese official, English official,
RPG Advocate English, Vlad Russian, Korean, Traditional Chinese).

View File

@@ -1,6 +1,10 @@
emulator: ECWolf
type: libretro
source: "https://github.com/libretro/ecwolf"
profiled_date: "2026-03-18"
core_version: ""
display_name: "Wolfenstein 3D (ECWolf)"
display_name: "Wolfenstein 3D (ECWolf)"
cores: [ecwolf]
systems: [wolfenstein3d]
verification: md5

View File

@@ -1,6 +1,10 @@
emulator: EmuSCV
type: libretro
source: "https://github.com/wzcwzc/emuscv"
profiled_date: "2026-03-18"
core_version: ""
display_name: "EPOCH/YENO Super Cassette Vision"
display_name: "EPOCH/YENO Super Cassette Vision"
cores:
- emuscv
systems:

46
emulators/emux_chip8.yml Normal file
View File

@@ -0,0 +1,46 @@
emulator: "emux (CHIP-8)"
type: libretro
source: "https://github.com/libretro/emux"
profiled_date: "2026-03-18"
core_version: "0.1"
display_name: "CHIP-8 (Emux CHIP-8)"
cores:
- emux_chip8
systems:
- chip8
notes: |
emux is a multi-system emulator supporting CHIP-8, Game Boy, NES, and
Sega Master System as separate libretro cores. The CHIP-8 core
(emux_chip8) does not require any external BIOS or firmware files.
The CHIP-8 architecture has no real BIOS. The standard font/character
set (hex digits 0-F, 5 bytes each = 80 bytes) is hardcoded in
mach/chip8.c:40-57 as the char_mem[] array. On reset, this font data
is copied into the beginning of the 4 KB RAM (address 0x000-0x04F)
via memcpy in chip8_reset() at mach/chip8.c:105.
ROM loading: the game ROM is loaded via file_open(PATH_DATA, ...) in
chip8_init() at mach/chip8.c:68-74. On reset, ROM contents are copied
into RAM starting at address 0x200 (mach/chip8.c:113). The core
accepts .ch8, .bin, and .rom extensions (libretro/Makefile.rules:20).
Memory map from mach/chip8.c:17-20:
0x000-0x04F font/character data (hardcoded)
0x050-0x1FF unused
0x200-0xFFF program ROM + working RAM
The libretro frontend retrieves the system directory via
RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY (libretro/libretro.c:34) but
only uses it as a general config path, not for BIOS loading.
files: []
platform_details:
bios_mapping:
target: "none"
source_ref: "mach/chip8.c:40-57, mach/chip8.c:98-115"
notes: |
No external BIOS. The 80-byte character font is compiled into the
binary as char_mem[] and memcpy'd into RAM[0x000] on every reset.
This is standard CHIP-8 behavior -- all interpreters embed the font.

8
emulators/emux_gb.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "emux_gb"
type: alias
alias_of: "gambatte"
profiled_date: "2026-03-18"
core_version: "0.1"
display_name: "Nintendo - Game Boy / Color (Emux GB)"
note: "This core uses the same BIOS/firmware as gambatte. See emulators/gambatte.yml for details."
files: []

8
emulators/emux_nes.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "emux_nes"
type: alias
alias_of: "fceumm"
profiled_date: "2026-03-18"
core_version: "0.1"
display_name: "Nintendo - NES / Famicom (Emux NES)"
note: "This core uses the same BIOS/firmware as fceumm. See emulators/fceumm.yml for details."
files: []

8
emulators/emux_sms.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "emux_sms"
type: alias
alias_of: "gearsystem"
profiled_date: "2026-03-18"
core_version: "0.1"
display_name: "Sega - Master System (Emux SMS)"
note: "This core uses the same BIOS/firmware as gearsystem. See emulators/gearsystem.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: ep128emu-core
type: libretro
source: "https://github.com/libretro/ep128emu-core"
profiled_date: "2026-03-18"
core_version: "v1.2.10"
display_name: "Enterprise - 64/128 (ep128emu)"
cores:
- ep128emu_core
systems:

48
emulators/fake08.yml Normal file
View File

@@ -0,0 +1,48 @@
emulator: FAKE-08
type: libretro
source: "https://github.com/jtothebell/fake-08"
profiled_date: "2026-03-18"
core_version: "v0.0.2.19"
display_name: "PICO-8 (FAKE-08)"
cores:
- fake08
systems:
- pico8
notes: |
FAKE-08 is an open-source PICO-8 compatible runtime for running .p8 and
.p8.png cartridges on platforms where the official PICO-8 binary is not
available (3DS, Vita, Switch, Wii U, various handhelds).
The core retrieves RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY in
retro_set_environment() (libretro.cpp:162-163) but never uses the value.
No file is loaded from the system directory. The PICO-8 boot sequence,
global Lua functions, and default cart menu are compiled directly into the
binary as string constants (p8GlobalLuaFunctions.h, DefaultCart.h).
When no ROM is passed (supports_no_game = true), the core queues its
built-in BIOS cart "__FAKE08-BIOS.p8" (libretro.cpp:751). This is not
an external file -- it is generated internally by the VM.
The core accepts .p8 (text) and .png (cartridge-as-image) formats
(libretro.cpp:258). Content is loaded either via the libretro data buffer
or full path depending on the _NEED_FULL_PATH_ compile flag.
files: []
platform_details:
cartridge_format:
extensions: "p8, png"
source_ref: "platform/libretro/libretro.cpp:258"
notes: |
.p8 is the PICO-8 text cartridge format containing Lua code, gfx,
gff, map, sfx, and music sections. .png is the cartridge-as-image
format where cart data is steganographically encoded in the image.
runtime:
source_ref: "source/vm.h, source/p8GlobalLuaFunctions.h"
notes: |
The FAKE-08 VM reimplements the PICO-8 API (128x128 screen, 16 colors,
4-channel audio, Lua scripting) entirely in C++. The built-in BIOS
provides a cart browser and error display. Audio runs at 22050 Hz
with save state support via custom serialization (libretro.cpp:517-736).

View File

@@ -0,0 +1,8 @@
emulator: "fbalpha2012"
type: alias
alias_of: "fbneo"
profiled_date: "2026-03-18"
core_version: "v0.2.97.29"
display_name: "Arcade (FB Alpha 2012)"
note: "This core uses the same BIOS/firmware as fbneo. See emulators/fbneo.yml for details."
files: []

View File

@@ -0,0 +1,8 @@
emulator: "fbalpha2012_cps1"
type: alias
alias_of: "fbneo"
profiled_date: "2026-03-18"
core_version: "v0.2.97.28"
display_name: "Arcade (FB Alpha 2012 CPS-1)"
note: "This core uses the same BIOS/firmware as fbneo. See emulators/fbneo.yml for details."
files: []

View File

@@ -0,0 +1,8 @@
emulator: "fbalpha2012_cps2"
type: alias
alias_of: "fbneo"
profiled_date: "2026-03-18"
core_version: "v0.2.97.28"
display_name: "Arcade (FB Alpha 2012 CPS-2)"
note: "This core uses the same BIOS/firmware as fbneo. See emulators/fbneo.yml for details."
files: []

View File

@@ -0,0 +1,8 @@
emulator: "fbalpha2012_cps3"
type: alias
alias_of: "fbneo"
profiled_date: "2026-03-18"
core_version: "v0.2.97.29"
display_name: "Arcade (FB Alpha 2012 CPS-3)"
note: "This core uses the same BIOS/firmware as fbneo. See emulators/fbneo.yml for details."
files: []

View File

@@ -0,0 +1,8 @@
emulator: "fbalpha2012_neogeo"
type: alias
alias_of: "fbneo"
profiled_date: "2026-03-18"
core_version: "v0.2.97.29"
display_name: "Arcade (FB Alpha 2012 Neo Geo)"
note: "This core uses the same BIOS/firmware as fbneo. See emulators/fbneo.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: FinalBurn Neo
type: libretro
source: "https://github.com/libretro/FBNeo"
profiled_date: "2026-03-18"
core_version: "v1.0.0.03"
display_name: "Arcade (FinalBurn Neo)"
systems:
- snk-neogeo-mvs
- snk-neogeo-aes

View File

@@ -1,6 +1,9 @@
emulator: FCEUmm
type: libretro
source: "https://github.com/libretro/libretro-fceumm"
profiled_date: "2026-03-18"
core_version: "SVN"
display_name: "Nintendo - NES / Famicom (FCEUmm)"
systems: [nintendo-nes, nintendo-fds]
notes: |

19
emulators/ffmpeg.yml Normal file
View File

@@ -0,0 +1,19 @@
emulator: FFmpeg
type: utility
source: "https://github.com/libretro/RetroArch"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "FFmpeg"
cores:
- ffmpeg
systems: []
notes: |
FFmpeg core is a media player built into RetroArch using libavcodec,
libavformat, and libswscale. Plays video and audio files directly
within the RetroArch interface.
No BIOS or system files required. Codec support depends on the
FFmpeg libraries linked at build time.
files: []

View File

@@ -1,6 +1,9 @@
emulator: fixGB
type: libretro
source: "https://github.com/libretro/fixGB"
profiled_date: "2026-03-18"
core_version: "Alpha v0.8.2"
display_name: "Nintendo - Game Boy / Color (fixGB)"
cores:
- fixgb
systems:

8
emulators/fixnes.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "fixnes"
type: alias
alias_of: "fceumm"
profiled_date: "2026-03-18"
core_version: "Alpha v1.3.1"
display_name: "Nintendo - NES / Famicom (fixNES)"
note: "This core uses the same BIOS/firmware as fceumm. See emulators/fceumm.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Flycast
type: standalone + libretro
source: "https://github.com/flyinghead/flycast"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Sega - Dreamcast/Naomi (Flycast)"
systems:
- sega-dreamcast
- sega-naomi

View File

@@ -1,6 +1,9 @@
emulator: fMSX
type: libretro
source: "https://github.com/libretro/fmsx-libretro"
profiled_date: "2026-03-18"
core_version: "6.0"
display_name: "Microsoft - MSX (fMSX)"
cores:
- fmsx
systems:

View File

@@ -1,6 +1,9 @@
emulator: FreeChaF
type: libretro
source: "https://github.com/libretro/FreeChaF"
profiled_date: "2026-03-18"
core_version: "GIT"
display_name: "Fairchild - ChannelF (FreeChaF)"
cores:
- freechaf
systems:

View File

@@ -1,6 +1,9 @@
emulator: FreeIntv
type: libretro
source: "https://github.com/libretro/FreeIntv"
profiled_date: "2026-03-18"
core_version: "2018.1.5"
display_name: "Mattel - Intellivision (FreeIntv)"
cores:
- freeintv
systems:

View File

@@ -0,0 +1,52 @@
emulator: "FreeIntv (Touchscreen Overlay)"
type: libretro
source: "https://github.com/libretro/FreeIntv"
profiled_date: "2026-03-18"
core_version: "v2025.11.1"
display_name: "Mattel Intellivision (FreeIntvTSOverlay)"
cores:
- freeintv
systems:
- intellivision
notes: |
Same repo and core as FreeIntv. The touchscreen overlay feature is a
compile-time option within the same codebase, not a separate core. The
library_name is "freeintv" (src/libretro.c:1413), identical to the
non-overlay build.
The overlay system adds an onscreen interactive keypad for touchscreen
and mouse input. It is toggled via core option freeintv_multiscreen_overlay
(src/libretro_core_options.h:82-85). When enabled, the display splits into
game + keypad side-by-side (multi-screen mode).
Visual assets (controller base frame, banner, default keypad image) are
compiled into the binary from C headers: banner.h, keypad_frame_graphic.h,
default_keypad_image.h. These are NOT files the user needs to provide.
ROM-specific overlays are optional 370x600 PNG files placed by the user in
system/freeintv_overlays/<rom_name>.png. These are cosmetic per-game keypad
images and are not BIOS files.
BIOS loading is unchanged from the base FreeIntv core. retro_load_game()
(src/libretro.c:1169-1174) loads exec.bin and grom.bin from the system
directory with no variation based on overlay mode.
bios_identical_to: freeintv
files:
- name: "exec.bin"
system: intellivision
required: true
size: 8192
md5: 62e761035cb657903761800f4437b8af
note: "Executive ROM. Same file as base FreeIntv."
source_ref: "src/intv.c:47-71, src/libretro.c:1169"
- name: "grom.bin"
system: intellivision
required: true
size: 2048
md5: 0cd5946c6473e42e8e4c2137785e427f
note: "Graphics ROM. Same file as base FreeIntv."
source_ref: "src/intv.c:73-98, src/libretro.c:1173"

View File

@@ -1,6 +1,9 @@
emulator: FreeJ2ME
type: libretro
source: "https://github.com/hex007/freej2me"
profiled_date: "2026-03-18"
core_version: "GIT"
display_name: "Mobile - J2ME (FreeJ2ME)"
cores:
- freej2me
systems:

90
emulators/frodo.yml Normal file
View File

@@ -0,0 +1,90 @@
emulator: Frodo
type: libretro
cores: [frodo]
source: "https://github.com/libretro/frodo-libretro"
profiled_date: "2026-03-18"
core_version: "v4.2"
display_name: "Commodore - C64 (Frodo)"
systems: [commodore-c64]
notes: |
Frodo is a Commodore 64 emulator by Christian Bauer (Frodo V4.2), ported
to libretro. It emulates the C64 (MOS 6510, VIC-II, SID, CIA x2) and an
optional 1541 floppy drive.
All four ROMs are embedded directly in the core binary as compiled-in
byte arrays (Basic_ROM.h, Kernal_ROM.h, Char_ROM.h, 1541_ROM.h). No
external BIOS files are required for normal operation.
The core attempts to load external ROM files from the current working
directory (DATADIR is empty in the libretro build) at startup via
load_rom_files() in main.cpp. If any file fails to open or has the wrong
size, the embedded ROM is used as fallback via memcpy(). The filenames
are hardcoded with spaces, no subdirectory prefix.
ROM loading order in load_rom_files():
1. "Basic ROM" (8192 bytes, BASIC_ROM_SIZE 0x2000) -> TheC64->Basic
2. "Kernal ROM" (8192 bytes, KERNAL_ROM_SIZE 0x2000) -> TheC64->Kernal
3. "Char ROM" (4096 bytes, CHAR_ROM_SIZE 0x1000) -> TheC64->Char
4. "1541 ROM" (16384 bytes, DRIVE_ROM_SIZE 0x4000) -> TheC64->ROM1541
The core does NOT construct paths relative to retro_system_directory for
ROM loading. The system directory variable is fetched in retro_init() but
only used for the save directory fallback, not for ROM path construction.
DATADIR defaults to "" (empty string) when not defined by the build
system, so the filenames resolve to bare names in the cwd. In practice,
the external ROM loading path is effectively unused in the libretro build
since the cwd is unpredictable and the filenames contain spaces.
The Kernal ROM is patched at runtime by PatchKernal() in C64.cpp for
fast reset (addresses 0x1D84-0x1D85) and IEC bus replacement when 1541
processor emulation is enabled (multiple addresses in the 0x0D00-0x0E00
range are patched with 0xF2 trap opcodes).
The 1541 drive ROM is also patched at Reset() in C64.cpp: ROM checksum
verification is disabled (0x2AE4-0x2AE9 NOPed), DOS idle loop is
trapped (0x2C9B), and write sector / format track operations are
intercepted (0x3594-0x3598, 0x3B0C-0x3B0D).
Source: Src/main.cpp:67-115 (ROM defines, load_rom, load_rom_files),
Src/C64.h:33-37 (ROM size constants), Src/C64.cpp:221-284 (PatchKernal),
Src/C64.cpp:738-746 (Reset ROM patching),
Src/Basic_ROM.h, Src/Kernal_ROM.h, Src/Char_ROM.h, Src/1541_ROM.h
(embedded ROM arrays)
files:
- name: "Basic ROM"
system: commodore-c64
description: "C64 BASIC V2 ROM"
required: false
embedded: true
size: 8192
note: "Embedded as builtin_basic_rom[] in Basic_ROM.h. External file never loaded in practice (DATADIR is empty, path is bare filename in cwd)."
source_ref: "Src/main.cpp:71,77,100-102"
- name: "Kernal ROM"
system: commodore-c64
description: "C64 Kernal ROM"
required: false
embedded: true
size: 8192
note: "Embedded as builtin_kernal_rom[] in Kernal_ROM.h. Patched at runtime for fast reset and 1541 IEC traps."
source_ref: "Src/main.cpp:72,78,104-106"
- name: "Char ROM"
system: commodore-c64
description: "C64 Character Generator ROM"
required: false
embedded: true
size: 4096
note: "Embedded as builtin_char_rom[] in Char_ROM.h. Used by VIC-II for text/bitmap rendering."
source_ref: "Src/main.cpp:73,79,108-110"
- name: "1541 ROM"
system: commodore-c64
description: "Commodore 1541 floppy drive ROM"
required: false
embedded: true
size: 16384
note: "Embedded as builtin_drive_rom[] in 1541_ROM.h. Patched at runtime to disable checksum and trap disk I/O."
source_ref: "Src/main.cpp:74,80,112-114"

8
emulators/fsuae.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "fsuae"
type: alias
alias_of: "puae"
profiled_date: "2026-03-18"
core_version: "v2.7.15"
display_name: "Commodore - Amiga (FS-UAE)"
note: "This core uses the same BIOS/firmware as puae. See emulators/puae.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Fuse
type: libretro
source: "https://github.com/libretro/fuse-libretro"
profiled_date: "2026-03-18"
core_version: "1.6.0"
display_name: "Sinclair - ZX Spectrum (Fuse)"
cores:
- fuse
systems:

View File

@@ -1,6 +1,9 @@
emulator: galaksija
type: libretro
source: "https://github.com/libretro/galaxy-libretro"
profiled_date: "2026-03-18"
core_version: "v0.1"
display_name: "Elektronika Inženjering - Galaksija (Galaksija)"
cores:
- galaksija
systems:

81
emulators/gam4980.yml Normal file
View File

@@ -0,0 +1,81 @@
emulator: GAM4980
type: libretro
source: "https://github.com/ThisBoringWorld/gam4980"
profiled_date: "2026-03-18"
core_version: "0.2"
display_name: "GAM4980"
cores:
- gam4980
systems:
- bbk-longman-4980
# GAM4980 is a BBK Longman 4980 electronic dictionary game emulator for
# libretro. Original code from https://codeberg.org/iyzsong/gam4980, based
# on the BA4988 BBK simulator by Wuyun.
#
# The device uses a 6502-based CPU with banked ROM access.
#
# ROM loading (src/libretro.c:1171-1177, retro_init):
# The core gets the RetroArch system directory via RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY,
# appends "/gam4980" to build the ROM directory path, then calls sys_init(romdir).
#
# sys_init (src/libretro.c:693-723):
# Opens romdir/8.BIN and reads 0x200000 bytes (2 MB) into sys.rom_8 (font ROM).
# Opens romdir/E.BIN and reads 0x200000 bytes (2 MB) into sys.rom_e (OS ROM).
# Both files are mandatory -- no fallback, no error handling. The core will
# crash if either file is missing.
#
# Memory map (src/libretro.c:109-110, 300-305):
# 0x800000-0x9FFFFF rom_8 (font ROM, 8.BIN)
# 0xE00000-0xFFFFFF rom_e (OS ROM, E.BIN)
# These ROMs must be dumped from a physical BBK Longman 4980 dictionary.
#
# The .info file does not declare firmware entries. The core is marked
# is_experimental = true.
notes: |
Place 8.BIN and E.BIN in the RetroArch system/gam4980/ subdirectory.
Both files must be 2 MB dumps from a BBK Longman 4980 dictionary:
8.BIN - font ROM, dumped from address range 0x800000-0x9FFFFF
E.BIN - OS ROM, dumped from address range 0xE00000-0xFFFFFF
The core will crash without these files (no error handling in sys_init).
Game files use the .gam extension.
files:
- name: "gam4980/8.BIN"
size: 2097152
md5: ddfc001a6859d63ed46368ea7fe9f20c
sha1: 062067e6d661c3d3e10d910435be4a59db1bee9f
required: true
system: bbk-longman-4980
bundled: false
note: "Font ROM (2 MB). Loaded at 0x800000. Dumped from physical device (src/libretro.c:716-718)."
source_ref: "src/libretro.c:716"
- name: "gam4980/E.BIN"
size: 2097152
md5: 72a16fd0d2453108321edc65cd347c77
sha1: b486b6eda5cd7e79bb5605d1fbe36eb88bfc6724
required: true
system: bbk-longman-4980
bundled: false
note: "OS ROM (2 MB). Loaded at 0xE00000. Dumped from physical device (src/libretro.c:720-722)."
source_ref: "src/libretro.c:720"
platform_details:
bios_mapping:
target: "0x800000-0x9FFFFF (font), 0xE00000-0xFFFFFF (OS) in banked address space"
source_ref: "src/libretro.c:109-110, 300-305"
notes: |
sys.rom_8 and sys.rom_e are flat 2 MB arrays. The CPU accesses them
through bank-switched memory (PA() macro resolves virtual to physical
address). rom_8_vread and rom_e_vread handle indirect reads via
the banking system.
load_path:
source_ref: "src/libretro.c:1173-1177"
notes: |
retro_init() builds the path as {system_directory}/gam4980/ and
passes it to sys_init(). Files must be named exactly 8.BIN and
E.BIN (case sensitive on Linux). No .info firmware declarations
exist, so RetroArch won't warn about missing files at scan time.

View File

@@ -1,6 +1,9 @@
emulator: Gambatte
type: libretro
source: "https://github.com/libretro/gambatte-libretro"
profiled_date: "2026-03-18"
core_version: "v0.5.0"
display_name: "Nintendo - Game Boy / Color (Gambatte)"
systems: [nintendo-gb, nintendo-gbc]
notes: |

8
emulators/gearboy.yml Normal file
View File

@@ -0,0 +1,8 @@
emulator: "gearboy"
type: alias
alias_of: "gambatte"
profiled_date: "2026-03-18"
core_version: "3.4.1"
display_name: "Nintendo - Game Boy / Color (Gearboy)"
note: "This core uses the same BIOS/firmware as gambatte. See emulators/gambatte.yml for details."
files: []

View File

@@ -1,6 +1,9 @@
emulator: Gearcoleco
type: libretro
source: "https://github.com/drhelius/Gearcoleco"
profiled_date: "2026-03-18"
core_version: "1.0.0"
display_name: "Coleco - ColecoVision (Gearcoleco)"
cores:
- gearcoleco
systems:

View File

@@ -1,6 +1,9 @@
emulator: Geargrafx
type: libretro
source: "https://github.com/drhelius/Geargrafx"
profiled_date: "2026-03-18"
core_version: "1.6.0"
display_name: "NEC - PC Engine / SuperGrafx / CD (Geargrafx)"
cores:
- geargrafx
systems:

View File

@@ -1,6 +1,9 @@
emulator: Gearlynx
type: libretro
source: "https://github.com/drhelius/Gearlynx"
profiled_date: "2026-03-18"
core_version: "1.0.0"
display_name: "Atari - Lynx (GearLynx)"
cores: [gearlynx]
systems: [atari-lynx]
verification: existence

View File

@@ -1,6 +1,9 @@
emulator: Gearsystem
type: libretro
source: "https://github.com/drhelius/Gearsystem"
profiled_date: "2026-03-18"
core_version: "3.2.0"
display_name: "Sega - MS/GG/SG-1000 (Gearsystem)"
cores:
- gearsystem
systems:

View File

@@ -1,6 +1,9 @@
emulator: Genesis Plus GX
type: libretro
source: "https://github.com/libretro/Genesis-Plus-GX"
profiled_date: "2026-03-18"
core_version: "v1.7.4"
display_name: "Sega - MS/GG/MD/CD (Genesis Plus GX)"
cores:
- genesis_plus_gx
- genesis_plus_gx_wide

View File

@@ -1,6 +1,9 @@
emulator: Geolith
type: libretro
source: "https://github.com/libretro/geolith-libretro"
profiled_date: "2026-03-18"
core_version: "0.3.0"
display_name: "SNK - Neo Geo AES/MVS (Geolith)"
systems:
- snk-neogeo-mvs
- snk-neogeo-aes

15
emulators/gme.yml Normal file
View File

@@ -0,0 +1,15 @@
emulator: Game Music Emu
type: utility
source: "https://github.com/libretro/libretro-gme"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Game Music Emu"
cores: [gme]
systems: []
files: []
notes: >
Libretro wrapper around Blargg's Game Music Emu library.
Plays chiptune music files from various consoles: NSF (NES), SPC (SNES),
GBS (Game Boy), VGM/VGZ (Sega), HES (PC Engine), AY (ZX Spectrum),
SAP (Atari), KSS (MSX). Loads music files as content.
No BIOS, firmware, or system directory files required.

13
emulators/gong.yml Normal file
View File

@@ -0,0 +1,13 @@
emulator: Gong
type: game
source: "https://github.com/libretro/gong"
profiled_date: "2026-03-18"
core_version: "1.0"
display_name: "Gong"
cores: [gong]
systems: []
files: []
notes: >
Simple Pong clone written as a minimal libretro core example.
Self-contained with all rendering done programmatically.
No content file, BIOS, or system directory files required.

View File

@@ -1,6 +1,9 @@
emulator: gpSP
type: libretro
source: "https://github.com/libretro/gpsp"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Nintendo - Game Boy Advance (gpSP)"
cores:
- gpsp
systems:

46
emulators/gw.yml Normal file
View File

@@ -0,0 +1,46 @@
emulator: "Game & Watch"
type: libretro
source: "https://github.com/libretro/gw-libretro"
profiled_date: "2026-03-18"
core_version: "Git"
display_name: "Handheld Electronic (GW)"
cores:
- gw
systems:
- handheld-electronic
notes: |
gw-libretro runs Game & Watch simulators converted from MADrigal's Pascal
source code via pas2lua. Each game is a self-contained .mgw archive (bzip2
compressed tar v7) containing Lua scripts, sprites, and sound data.
retro_get_system_info (libretro.c:187-194) sets valid_extensions to "mgw",
need_fullpath to false, and block_extract to false. The core reads content
entirely from the retro_game_info buffer passed by the frontend.
retro_load_game (libretro.c:256-310) passes the content buffer to
gwrom_init() which decompresses and parses the tar archive in memory.
gwlua_create() then initializes the Lua VM from the archive entries.
The core never calls RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY, never opens
files from the filesystem, and has no firmware or BIOS dependencies.
All game data is bundled in the .mgw content files available from
libretro's buildbot (bot.libretro.com/assets/cores/HandheldElectronicGame/).
No external BIOS or firmware files are needed.
files: []
analysis:
content_format:
extension: ".mgw"
archive_type: "tar v7 + bzip2"
decompression: "gwrom.c using bundled bzip2 library"
source_ref: "gwrom/gwrom.h:21-27"
game_engine:
language: "Lua (bundled lua 5.3)"
runtime: "gwlua (gwlua/)"
rendering: "retroluxury (retroluxury/)"
resolution: "128x128 base, variable via gwlua_set_fb/gwlua_zoom"
filesystem_access: false
system_directory_used: false

View File

@@ -1,6 +1,9 @@
emulator: Handy
type: libretro
source: "https://github.com/libretro/libretro-handy"
profiled_date: "2026-03-18"
core_version: "0.95"
display_name: "Atari - Lynx (Handy)"
systems: [atari-lynx]
notes: |

View File

@@ -1,6 +1,9 @@
emulator: Hatari
type: libretro
source: "https://github.com/libretro/hatari"
profiled_date: "2026-03-18"
core_version: "1.8"
display_name: "Atari - ST/STE/TT/Falcon (Hatari)"
systems: [atari-st, atari-ste, atari-tt, atari-falcon]
# Hatari requires a TOS ROM image to boot. The default filename is tos.img,

Some files were not shown because too many files have changed in this diff Show More