Settings Reference
Graphics, performance, audio, input, and configuration options.
In-App Settings
XeniOS includes a native iOS settings UI organized into four sections. These control the most common options. For advanced tuning, edit the config file directly.
Graphics
present_letterbox— Maintain aspect ratio with letterboxing. Default:true.present_safe_area_x/present_safe_area_y— Safe area percentage (0–100). Default:100.anisotropic_override— Override anisotropic filter level. -1=auto, 0=off, 1=1x, 2=2x, 3=4x, 4=8x, 5=16x. Default:-1.internal_display_resolution— Resolution index (0–17). Default:8(1280x720). Common values: 0=640x480, 8=1280x720, 16=1920x1080, 17=custom.
Performance
framerate_limit— Host FPS cap.0= unlimited. Default:0.guest_display_refresh_cap— Vblank timing control for guest display refresh. Default:true.async_shader_compilation— Compile shaders asynchronously to reduce stutter. Default:true.
Compatibility
half_pixel_offset— Half pixel offset correction. Some games need this toggled. Default:true.occlusion_query_enable— Enable GPU occlusion queries. Default:false.gpu_allow_invalid_fetch_constants— Allow invalid fetch constants. Fixes some game crashes. Default:true.
Audio
XMA audio is decoded via FFmpeg and output through SDL2 (CoreAudio on iOS).
mute— Disable all audio output. Default:false.apu_max_queued_frames— Audio buffer queue size (4–64). Lower = less latency. Default:8.xma_decoder— XMA decoder implementation:old,new,master, orfake. Current builds may migrate defaults tooldeven though the code-defined base default isnew.
Input
XeniOS uses SDL2 for input, bridging to Apple's GameController framework. Up to 4 controllers are supported simultaneously. Controllers are auto-detected — no configuration needed.
vibration— Enable controller haptic feedback. Default:true.left_stick_deadzone_percentage/right_stick_deadzone_percentage— Stick deadzone (0.0–1.0). Default:0.0.
Supported controllers: Xbox Wireless, PlayStation DualSense and DualShock 4, Nintendo Switch Pro, and MFi-certified gamepads. There are currently no touchscreen gameplay controls. Touch screen input is used for UI navigation only, and there is no touch-to-gamepad mapping.
Config Files
All settings are stored in xenios.config.toml in the app's Documents directory. Per-game overrides are created as <TITLEID>.config.toml files in the config/ subdirectory.
Documents/
├── xenios.config.toml (global config)
└── config/
└── 4D5307E6.config.toml (per-game override for Halo 3)