> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/dolphin-emu/dolphin/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuration via Command Line

> Using the --config flag to override Dolphin settings from the command line

The `--config` flag allows you to override Dolphin configuration settings directly from the command line without modifying configuration files.

## Syntax

```bash theme={null}
--config=<System>.<Section>.<Key>=<Value>
```

or shorthand:

```bash theme={null}
-C <System>.<Section>.<Key>=<Value>
```

## Format

Configuration options follow a three-level hierarchy:

1. **System** - The configuration system (e.g., `Dolphin`, `Core`, `DSP`, `GFX`)
2. **Section** - The section within the system (e.g., `General`, `Interface`)
3. **Key** - The specific setting name
4. **Value** - The value to set

## Multiple Configuration Options

You can specify multiple `--config` flags:

```bash theme={null}
dolphin-emu \
  --config=Core.CPUCore=1 \
  --config=Core.Overclock=1.5 \
  --config=Core.Framelimit=0 \
  --exec=game.iso
```

## Common Configuration Options

### Core Settings

#### CPU Core Type

```bash theme={null}
# Interpreter (most compatible, slowest)
--config=Core.CPUCore=0

# JIT Recompiler (default, fastest)
--config=Core.CPUCore=1

# JITIL Recompiler
--config=Core.CPUCore=2

# Cached Interpreter
--config=Core.CPUCore=4
```

#### CPU Emulation Speed

```bash theme={null}
# Default speed
--config=Core.Overclock=1.0

# 150% speed
--config=Core.Overclock=1.5

# 50% speed (half speed)
--config=Core.Overclock=0.5
```

#### Frame Limit

```bash theme={null}
# No limit (run as fast as possible)
--config=Core.Framelimit=0

# Auto (match game's native framerate)
--config=Core.Framelimit=100

# 60 FPS limit
--config=Core.Framelimit=60
```

#### Sync GPU

```bash theme={null}
# Enable (more accurate, slower)
--config=Core.SyncGPU=True

# Disable (faster)
--config=Core.SyncGPU=False
```

#### Idle Skipping

```bash theme={null}
# Enable (better performance)
--config=Core.SyncOnSkipIdle=True

# Disable (more accurate timing)
--config=Core.SyncOnSkipIdle=False
```

### Dolphin General Settings

#### ISO Paths

```bash theme={null}
# Set game search paths
--config=Dolphin.General.ISOPath0=/games/gamecube
--config=Dolphin.General.ISOPath1=/games/wii
```

#### Confirm on Stop

```bash theme={null}
--config=Dolphin.Interface.ConfirmStop=True
```

#### Show FPS

```bash theme={null}
--config=Dolphin.General.ShowFPS=True
```

### Graphics Settings

#### Enable Widescreen Hack

```bash theme={null}
--config=GFX.Settings.wideScreenHack=True
```

#### Internal Resolution

```bash theme={null}
# Native resolution (1x)
--config=GFX.Settings.InternalResolution=1

# 2x resolution
--config=GFX.Settings.InternalResolution=2

# 4x resolution
--config=GFX.Settings.InternalResolution=4
```

#### Aspect Ratio

```bash theme={null}
# Auto
--config=GFX.Settings.AspectRatio=0

# Force 16:9
--config=GFX.Settings.AspectRatio=1

# Force 4:3
--config=GFX.Settings.AspectRatio=2
```

#### VSync

```bash theme={null}
--config=GFX.Settings.VSync=True
```

#### Anti-Aliasing

```bash theme={null}
# None
--config=GFX.Settings.MSAA=0

# 2x MSAA
--config=GFX.Settings.MSAA=2

# 4x MSAA
--config=GFX.Settings.MSAA=4
```

### DSP Settings

#### Audio Backend

```bash theme={null}
# Cubeb (recommended)
--config=DSP.Settings.Backend=Cubeb

# No audio output
--config=DSP.Settings.Backend=No audio output

# OpenAL
--config=DSP.Settings.Backend=OpenAL
```

#### DSP Emulation Engine

Note: The audio emulation engine can also be set via `--audio_emulation`:

```bash theme={null}
# HLE (High Level Emulation - faster)
--audio_emulation=HLE

# LLE (Low Level Emulation - more accurate)
--audio_emulation=LLE
```

## Finding Configuration Keys

Configuration files are located in the user directory:

* **Windows**: `%USERPROFILE%/Documents/Dolphin Emulator/Config/`
* **Linux**: `~/.local/share/dolphin-emu/Config/` or `~/.dolphin-emu/Config/`
* **macOS**: `~/Library/Application Support/Dolphin/Config/`

### Main Configuration Files

* `Dolphin.ini` - General Dolphin settings
* `GFX.ini` - Graphics settings
* `DSP.ini` - Audio settings
* `GameSettings.ini` - Per-game settings

Examine these files to find available keys and their current values.

## Example Configurations

### Performance Testing

Maximum speed, no rendering:

```bash theme={null}
dolphin-emu \
  --batch \
  --exec=game.iso \
  --video_backend=Null \
  --config=Core.CPUCore=1 \
  --config=Core.Framelimit=0 \
  --config=Core.SyncOnSkipIdle=True \
  --config=DSP.Settings.Backend="No audio output"
```

### Accuracy Testing

Most accurate settings:

```bash theme={null}
dolphin-emu \
  --exec=game.iso \
  --audio_emulation=LLE \
  --config=Core.CPUCore=0 \
  --config=Core.SyncGPU=True \
  --config=Core.SyncOnSkipIdle=False
```

### High Quality Rendering

```bash theme={null}
dolphin-emu \
  --exec=game.iso \
  --video_backend=Vulkan \
  --config=GFX.Settings.InternalResolution=8 \
  --config=GFX.Settings.MSAA=8 \
  --config=GFX.Settings.wideScreenHack=True \
  --config=GFX.Settings.AspectRatio=1
```

### Speedrun Practice

```bash theme={null}
dolphin-emu \
  --exec=game.iso \
  --config=Dolphin.General.ShowFPS=True \
  --config=Core.Overclock=1.0 \
  --config=Dolphin.Interface.ConfirmStop=False
```

### TAS Recording

Deterministic settings for tool-assisted speedruns:

```bash theme={null}
dolphin-emu \
  --exec=game.iso \
  --config=Core.CPUCore=0 \
  --config=Core.SyncGPU=True \
  --config=Core.GPUDeterminismMode=fake-completion \
  --audio_emulation=LLE
```

## Value Types

### Boolean Values

```bash theme={null}
--config=Setting=True
--config=Setting=False
```

### Numeric Values

```bash theme={null}
# Integer
--config=Setting=4

# Float
--config=Setting=1.5
```

### String Values

```bash theme={null}
# Simple string
--config=Setting=value

# String with spaces (use quotes)
--config=Setting="value with spaces"
```

## Persistence

Command-line configuration options:

* Override the current configuration
* **Do not** permanently modify configuration files
* Only apply for the current session

To make changes permanent, modify the configuration files directly or change settings through the GUI.

## Precedence

Configuration sources in order of priority (highest to lowest):

1. Command-line `--config` flags
2. Game-specific settings (`GameSettings.ini`)
3. User configuration files (`Dolphin.ini`, `GFX.ini`, etc.)
4. Default values

## Debugging Configuration

View effective configuration:

```bash theme={null}
# Enable logger to see loaded configuration
dolphin-emu \
  --logger \
  --config=Core.CPUCore=1 \
  --exec=game.iso
```

Configuration loading is logged at startup, allowing you to verify which settings are active.

## See Also

* [Dolphin Options](/cli/dolphin-options) - All command-line flags
* [Batch Mode](/cli/batch-mode) - Headless execution with configuration
