SEGA SATURN EMULATOR
Ymir
Ymir is a work-in-progress, open-source Sega Saturn emulator that runs native disc images and aims for high compatibility and performance across Windows, macOS, Linux and FreeBSD (x86_64 and ARM64). It requires the Saturn IPL (BIOS) ROM and supports common image formats including MAME CHD, BIN+CUE, IMG+CCD, MDF+MDS and ISO.

WHY IT MATTERS
Why Ymir matters
Sega Saturn emulation has historically been difficult due to the console’s dual-CPU architecture and complex video hardware. Ymir is a modern, actively-developed attempt to provide a practical, user-friendly Saturn emulator with features such as automatic IPL detection, multiple image format support (including CHD), optional low-level CD block emulation, save-state compatibility, rewinding, and a growing compatibility list—making it one of the most promising Saturn projects in active development.
BEST FOR
What Ymir does well today
– Native multi-platform releases and builds (Windows, macOS, Linux, FreeBSD; x86_64 and ARM64). – Automatic IPL (BIOS) detection and region switching. – Support for a range of disc image formats including MAME CHD. – Modern usability features: configurable controllers, save management, rewind, frame stepping, and optional LLE for CD emulation. – Active development with frequent releases and public changelog/troubleshooting documentation.
The people behind Ymir
Project history and status
Ymir is an actively-developed project hosted on GitHub and maintained under an open-source license. The repository contains an evolving changelog, troubleshooting documentation, compiling instructions, and a releases page with stable and nightly builds. The project explicitly documents its requirement for the Saturn IPL (BIOS) ROM and for CD block emulation (when using low-level CD block emulation), and provides platform-specific notes (Windows Visual C++ redistributable, macOS signing guidance, Flatpak permissions for Linux). Community discussion and release announcements appear across GitHub issues, Reddit and other community outlets. The maintainers continue to add compatibility improvements, performance fixes and new features; the project remains work-in-progress rather than a completed, fully-accurate Saturn emulation suite.
What Ymir supports
- Windows 10 or later (x86_64, ARM64)
- macOS 15 (Sequoia) or later (x86_64, ARM64)
- Most modern Linux distributions (x86_64, ARM64) — official .tar.xz on Ubuntu supported
- FreeBSD (x86_64, ARM64)
Download and availability
OFFICIAL DOWNLOADS
Get Ymir
Official binaries and nightly builds are published on the project's GitHub Releases page. The repository also includes source code and compiling instructions for building from source.
Get Ymir ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗Ymir setup guide
Setup note: Practical setup notes and a step-by-step run-through to get Ymir working with a Saturn disc image. These steps follow the project’s README and TROUBLESHOOTING guidance; consult the official releases or build from source if you need a different platform or custom build options.
- 1) Get the right build: Download the latest stable or nightly build from the project's GitHub Releases page. Choose the package matching your OS and CPU architecture (x86_64 or ARM64). Nightlies may have experimental changes; stable releases are recommended for regular use.
- 2) Install prerequisites (Windows / macOS / Linux): Windows: install the latest Microsoft Visual C++ Redistributable package appropriate to your architecture before running the emulator to avoid startup crashes. macOS: follow the platform guidance in the README to allow running an unsigned or ad-hoc signed binary (the project notes Ymir is ad-hoc signed). Linux: if you use the Flatpak package, grant filesystem access so disc images are readable; otherwise use the distribution-native package or the provided .tar.xz for Ubuntu.
- 3) Provide the Saturn IPL (BIOS) ROM: Ymir requires a Saturn IPL (BIOS) ROM to run. On first run the emulator creates a roms/ipl directory alongside the executable — place valid IPL ROM files there. The emulator will automatically select a matching IPL for the loaded disc or use a preferred region IPL when no disc is supplied. Do not expect any BIOS or commercial game content to be included with Ymir; obtain IPL files only from legal sources you own.
- 4) (Optional) Provide CD Block ROMs for LLE: If you plan to use low-level CD block emulation (LLE), place the CD block ROMs in roms/cdb alongside the executable. LLE requires these files to accurately emulate some Saturn discs; the README and troubleshooting docs explain behavior when they are missing.
- 5) Prepare disc images: Ymir accepts MAME CHD, BIN+CUE, IMG+CCD, MDF+MDS, and ISO disc images. Confirm your image is valid and, for multi-track games, that your CUE references correct BIN or that a CHD is a proper MAME conversion. The emulator cannot inject .elf executables directly (no raw ELF injection support at present).
- 6) Launching and command-line usage: Run the executable (named ymir-sdl3 on many builds). You can launch the emulator with a disc image path or use the -d/–disc option. Common command-line options include -p/–profile to set the profile directory, -f for fullscreen, -F for fast-forward, -D to enable debug tracing and -E to capture unhandled exceptions. On Windows the binary does not output to console by default; use redirection (ymir-sdl3 > out.txt) to capture logs.
- 7) Configure controllers, input and video: Use the Settings UI to map controllers (Ymir leverages SDL controller mappings). The emulator supports two players and configurable keybindings. Update GPU drivers and choose the preferred renderer (Direct3D, Vulkan, etc.) via settings for best performance. If you use a gamepad, ensure SDL3 mapping exists or provide a mapping file.
- 8) Save management, states and troubleshooting: Ymir supports backup RAM (save RAM), cartridge RAM, forwards-compatible save states, and an integrated save manager to import/export saves. If crashes or unexpected behavior occur consult TROUBLESHOOTING.md in the repository and check common causes: missing IPL, missing CDB files for LLE, incorrect Flatpak permissions, or missing Visual C++ redistributable. Use the Discord/community links on the project page for help.
Software reminder: Ymir does not include BIOS, commercial games, firmware or CD block ROMs. You must supply legally-obtained IPL (BIOS) and any required CD block ROMs yourself. Nightly builds may break save-state compatibility; keep backups of important saves before testing nightlies.
Sources and further reading
Release log
Selected releases and changes. The weekly emulation roundup covers the wider build log.
- September 28, 2026 — September 28 nightly (Development build): Adjusts SH-2 pipeline address alignment and continues Direct3D 12 renderer maintenance. Official release and source ↗ · Weekly roundup →
Detailed guides and tutorials
Explore step-by-step guides for Ymir as they are published.
Use Ymir on Android
An Android ARM64 Libretro build exists for Ymir. Run the core through RetroArch for Android; the standalone desktop download and Android core may have different menus and features.
Emulates: Sega Saturn.
Verified Android core build ↗ · Browse all Android emulators →
Retro Replay Retro Replay gaming reviews, news, emulation, geek stuff and more!