System overview
GameLord currently supports 11 gaming systems spanning 8-bit to 128-bit generations, plus arcade:- Nintendo: NES, SNES, Game Boy/Color, Game Boy Advance, Nintendo 64, Nintendo DS
- Sega: Genesis/Mega Drive, Saturn
- Sony: PlayStation, PlayStation Portable
- Arcade: MAME-compatible
All cores are downloaded automatically from the libretro buildbot when you first launch a game for a system.
Nintendo systems
Nintendo Entertainment System (NES)
nesCRT (4:3 aspect ratio, NTSC/PAL)
.nes, .fds, .unf, .unif
Available cores:
- fceumm (recommended) - Fast, accurate, broad compatibility
- nestopia - High accuracy, cycle-perfect
- mesen - Advanced features, debugging tools (note: currently has loading issues in native mode)
- Famicom Disk System support (
.fds) - NSF music playback
- Zapper light gun support (future)
Super Nintendo Entertainment System (SNES)
snesCRT (4:3 aspect ratio, NTSC/PAL)
.sfc, .smc, .swc, .fig
Available cores:
- snes9x (recommended) - Fast, highly compatible
- bsnes - Cycle-accurate, highest compatibility
- bsnes-mercury - Balanced accuracy and speed
- Super FX chip support (Star Fox, Yoshi’s Island)
- SA-1 enhancement support
- DSP coprocessor games
Game Boy / Game Boy Color
gbLCD (GB: monochrome green, GBC: color TFT)
.gb, .gbc, .sgb
Available cores:
- gambatte (recommended) - Accurate, low overhead
- sameboy - Excellent accuracy, debugging features
- mgba - Also handles GBC (via unified core)
- Super Game Boy border support (
.sgb) - Game Boy Color enhancements
- Link cable emulation (future)
Game Boy Advance
gbaLCD (reflective TFT, 3:2 aspect ratio)
.gba, .agb
Available cores:
- mgba (recommended) - Fast, accurate, active development
- vba-m - Older, broader compatibility
- GBA BIOS not required (HLE)
- Native resolution: 240×160
- Recommended shader: LCD GBA or LCD GBA + Motion Blur
Nintendo 64
n64CRT (4:3 aspect ratio)
.n64, .z64, .v64
Available cores:
- mupen64plus-next (recommended) - Modern, active development
- parallel-n64 - Vulkan-based, high accuracy
- Expansion Pak support
- Controller Pak saves
- High-resolution rendering (future)
Nintendo DS
ndsLCD (dual screens, 4:3 per screen)
.nds, .dsi, .ids
Available cores:
- desmume (recommended) - Mature, compatible
- melonDS - Active development, improving accuracy
- Dual-screen rendering
- Touchscreen support (future)
- Wi-Fi emulation (future)
Sega systems
Sega Genesis / Mega Drive
genesisCRT (4:3 aspect ratio, NTSC/PAL)
.md, .smd, .gen, .bin
Available cores:
- genesis-plus-gx (recommended) - Highly accurate, fast
- picodrive - Lightweight, ARM-optimized
- Sega CD support (future)
- 32X support
- Region switching (NTSC/PAL)
Sega Saturn
saturnCRT (4:3 aspect ratio)
.cue, .chd, .ccd, .mdf
Available cores:
- mednafen_saturn (Beetle Saturn, recommended) - High accuracy
- yabause - Broader compatibility, less accurate
- CHD (compressed) disc support
- Multi-disc games
- High-resolution 3D rendering
Saturn emulation is CPU-intensive due to the system’s complex dual-CPU architecture. Expect higher resource usage than other 32-bit systems.
Sony systems
PlayStation (PS1)
psxCRT (4:3 aspect ratio)
.cue, .bin, .iso, .chd, .pbp
Available cores:
- pcsx_rearmed (recommended) - Fast, ARM-optimized
- beetle-psx - High accuracy, enhanced rendering
- CHD compressed disc format
- Multi-disc games
- Memory card management
- Enhanced resolution rendering (future)
PlayStation Portable (PSP)
pspLCD (16:9 widescreen, 480×272)
.iso, .cso, .pbp
Available cores:
- ppsspp (recommended) - Active development, excellent compatibility
- CSO compressed ISO format
- High-resolution rendering (internal upscaling)
- Save state support
- Recommended shader: LCD PSP
PSP emulation is GPU-intensive. Enable the FPS counter to verify performance on your hardware.
Arcade
MAME / FinalBurn Neo
arcadeCRT (various aspect ratios, game-dependent)
.zip, .7z
Available cores:
- mame (recommended) - Comprehensive MAME romset support
- fbalpha / fbneo - FinalBurn Neo, focused on accuracy
- MAME romsets are version-specific
- Ensure your ROMs match the core’s MAME version
- Use a romset manager (ClrMamePro) to verify/fix romsets
Core management
Automatic core downloads
GameLord downloads cores on-demand:Download prompt
If no core exists, GameLord automatically downloads the recommended core from the libretro buildbot.
Core storage
Cores are stored in:- macOS:
~/Library/Application Support/GameLord/cores/ - Windows:
%APPDATA%/GameLord/cores/ - Linux:
~/.config/GameLord/cores/
Multiple cores per system
Some systems have multiple core options:- NES: fceumm, nestopia, mesen
- SNES: snes9x, bsnes, bsnes-mercury
- GB/GBC: gambatte, sameboy, mgba
- GBA: mgba, vba-m
- N64: mupen64plus-next, parallel-n64
- Genesis: genesis-plus-gx, picodrive
- Saturn: mednafen_saturn, yabause
- PS1: pcsx_rearmed, beetle-psx
Core selection per-game is planned for a future release. Currently, GameLord uses the first available core for each system.
System-specific tips
NES: Best settings
NES: Best settings
- Shader: CRT Aperture or CRT Geom
- Core: fceumm (fast, accurate)
- Aspect ratio: 4:3 (native is 256×240, displayed as 4:3 on CRT)
SNES: Performance vs. accuracy
SNES: Performance vs. accuracy
- Fast: snes9x (recommended for most users)
- Accurate: bsnes (cycle-perfect, higher CPU usage)
- Balanced: bsnes-mercury
GBA: Color correction
GBA: Color correction
- Original GBA screen has washed-out colors
- Use LCD GBA shader to apply color correction matrix
- Without the shader, games look too dark/desaturated
Saturn: BIOS setup
Saturn: BIOS setup
- Locate Saturn BIOS files (
sega_101.bin,mpr-17933.bin) - Copy to
<userData>/BIOS/ - GameLord creates this folder automatically on first launch
- Without BIOS, Saturn games will not load
PS1: CHD format
PS1: CHD format
- CHD is a lossless compressed disc format
- Converts multi-file
.cue+.bininto a single.chd - Use
chdmantool to convert:chdman createcd -i game.cue -o game.chd - Saves ~40-60% disk space
Arcade: Romset versions
Arcade: Romset versions
- MAME cores expect specific romset versions
- Check the core’s MAME version (e.g., MAME 0.229)
- Use matching romset (e.g., “MAME 0.229 Non-Merged Set”)
- Mismatched romsets cause “missing files” errors
Future system support
GameLord’s architecture is system-agnostic. Adding new systems is straightforward (system definition + core mapping). Planned additions include:- PS2 (PCSX2 core)
- GameCube / Wii (Dolphin core)
- Dreamcast (Flycast core)
- 3DO (Opera core)
- TurboGrafx-16 (Beetle PCE core)
- Neo Geo (FBNeo core)
- Atari 2600 (Stella core)
- Atari 7800 (ProSystem core)
- Atari Lynx (Handy core)
- WonderSwan (Beetle WonderSwan core)
- Virtual Boy (Beetle VB core)
System additions depend on libretro core availability for ARM64 macOS. See #116 for progress.
Troubleshooting
Game won't load
Game won't load
- Verify ROM file format is supported for the system
- Check that the required core is downloaded (
<userData>/cores/) - For Saturn, ensure BIOS files are in
<userData>/BIOS/ - Check console logs for core loading errors (Help > Toggle Developer Tools)
Core download failed
Core download failed
- Check internet connection
- Verify libretro buildbot is accessible (https://buildbot.libretro.com)
- Try manually downloading the core and placing it in
<userData>/cores/ - Check firewall settings (may block downloads)
Wrong system detected
Wrong system detected
- Some file extensions overlap (e.g.,
.binfor Genesis and PS1) - Use folder-based detection: place ROMs in system-named folders
- Alternatively, specify the system when scanning