The dolphin-libretro core brings Nintendo GameCube and Wii emulation to RetroArch. This guide summarizes the official libretro documentation, covering the system file setup required for the core to run reliably, optional BIOS configuration, supported game formats, core options and controller mapping.

Overview

Dolphin is a Nintendo GameCube and Wii emulator written in C++, targeting Android, Windows, Mac and Linux. The libretro core supports OpenGL, Vulkan and Direct3D 11 rendering.

Renderer requirements

Each renderer has its own hardware and driver requirement. Confirm your system meets the relevant requirement before selecting a video driver in RetroArch.

Setting up the Dolphin Sys folder

To function properly, the core requires the Dolphin Sys folder in the correct location. This folder contains Dolphin's database of per-game compatibility settings and hacks. Without it, the documentation states that many games experience bugs of varying severity. After downloading the core within RetroArch, choose one of the two methods below.

Method A: Core System Files Downloader (easy)

If your frontend version includes Main Menu > Online Updater > Core System Files Downloader, this is the easiest option. Download Dolphin.zip from that menu, and the files are placed where they are needed.

Method B: Manual install from the repository

  • 1. Obtain a copy of the Dolphin Sys folder from the source code. With Git, clone the most recent version with: git clone --depth=1 https://github.com/libretro/dolphin.git. Without Git, download the zip archive from https://github.com/libretro/dolphin/archive/master.zip and extract it.
  • 2. Navigate into the resulting source tree folder. The Sys folder you need is located in Data/Sys; move or copy that folder.
  • 3. Locate RetroArch's system folder path. By default the system folder sits at the top level of your RetroArch installation folder. You can confirm the location under Settings > Directory, or by finding the system_directory line in the RetroArch configuration file (usually retroarch.cfg).
  • 4. Inside the RetroArch system folder, create a new folder named dolphin-emu and move or copy the Sys folder into it.

Expected folder path

When everything is set up properly, the Sys folder path should resolve to RETROARCH_SYSTEM_FOLDER/dolphin-emu/Sys. According to the documentation, the core will then work much more reliably.

Optional GameCube BIOS

The BIOS file is optional and belongs in RETROARCH_SAVES_FOLDER/dolphin-emu/User/GC/<USA or EUR or JAP>, using the file name IPL.bin for all regions. A BIOS is not necessary for most games, but certain titles that make heavy use of system fonts, such as Star Fox Assault, can be unplayable without it.

To play the GameCube BIOS animation at game launch, place and name the BIOS file as described above, then open Dolphin.ini in RETROARCH_SAVES_FOLDER/dolphin-emu/User/GameSettings/Config/ with a text editor and change the line SkipIPL = True to SkipIPL = False.

Supported content formats

The core can load content with the following extensions: .elf, .iso, .gcm, .dol, .tgc, .wbfs, .ciso, .gcz, .wad, .rvz and .m3u.

Frontend features

The core respects several RetroArch frontend features, including saves, save states, rewind, core options, memory monitoring for achievements, native cheats, controls and remapping. Features listed as unsupported in the documentation include netplay, RetroArch cheats, multi-mouse, rumble, sensors, camera, location, subsystem, softpatching, disk control, username, crop overscan and LEDs.

Renderer options

Set RetroArch's video driver to gl to use Dolphin's OpenGL renderer. This is the common option across all operating systems and requires hardware supporting OpenGL/Open GL ES 3.0 or higher.

Set RetroArch's video driver to vulkan to use Dolphin's Vulkan renderer. Doing so requires a Vulkan-capable system, per the documentation's renderer requirements.

Set RetroArch's video driver to d3d11 to use Dolphin's Direct3D 11 renderer, which the documentation lists as requiring Direct3D 11 support.

Reference table · Scroll horizontally to see all columns.

Core optionDefaultAvailable values
RendererHardwareHardware | Software
Internal Resolutionx1 (640 x 528)x1 through x6
Widescreen (Wii)ONON | OFF
WideScreen HackOFFOFF | ON
Shader Compilation Modesyncsync | a-sync Skip Rendering | sync UberShaders | a-sync UberShaders
Wait for Shaders before StartingOFFOFF | ON
Progressive ScanONON | OFF
PAL60ONON | OFF
Max Anisotropy1x1x | 2x | 4x | 8x | 16x
Skip Presenting Duplicate FramesONON | OFF
Scaled EFB CopyONON | OFF
Force Texture FilteringOFFOFF | ON
Store EFB Copies on GPUONON | OFF
Texture Cache AccuracyFastFast | Middle | Safe
GPU Texture DecodingOFFOFF | ON
Fast Depth CalculationONON | OFF
Bounding Box EmulationOFFOFF | ON
Disable EFB to VRAMOFFOFF | ON
Load Custom TexturesOFFOFF | ON
CPU CoreJIT64/JITARM64JIT64/JITARM64 | Interpreter | Cached Interpreter
CPU Clock Rate100%5% to 300%
FastmemONON | OFF
Wiimote IR ModeRight Stick controls pointer (relative)Three pointer-control modes
Wiimote IR Vertical Offset10-50 to 50
Wiimote IR Total Yaw150 to 100
Wiimote IR Total Pitch150 to 100
RumbleONON | OFF
Sensor Bar PositionBottomBottom | Top
Wiimote Continuous ScanningOFFOFF | ON
Use ports 5-8 for GameCube controllers in Wii modeOFFOFF | ON
Audio Mixer Rate3200032000 | 48000
DSP HLEONON | OFF
DSP Enable JITONON | OFF
LanguageEnglishEnglish | Japanese | German | French | Spanish | Italian | Dutch | Simplified Chinese | Traditional Chinese | Korean
Internal Cheats EnabledOFFOFF | ON
OSD EnabledONON | OFF
Log LevelInfoInfo | Notice | Error | Warning
SHELL
git clone --depth=1 https://github.com/libretro/dolphin.git
Evidence and publication details

Sources & references

Content responsibility: FrameTinker editorial desk. Source authors and software maintainers are credited separately below; this is not a claim of hands-on testing.

Published .

RetroArch: dolphin — official gaming software documentation https://raw.githubusercontent.com/libretro/docs/master/docs/library/dolphin.mdRetrieved Oct 12, 2026

Something doesn’t match your setup?

Suggest a correction