How to Set Up Xenia — Complete Xbox 360 Emulator Guide 2026
I want to set up Xenia to play Xbox 360 games on my PC. I downloaded it but I'm not sure which version to use (Xenia or Xenia Canary), how to load ISO or XBLA games, or why some games run at half speed.
Solutions
Solution 1
Requirements before downloading: Xenia requires DirectX 12 (Windows 10 version 1803 or later, 64-bit). There is no workaround — DX12 is architecturally mandatory. Check your GPU: pre-DX12 cards (older than GTX 900 / R9 200 series) cannot run Xenia. Verify via DXDiag (Win+R → dxdiag → Display tab → Feature Level 12_0 or higher).
Xenia vs Xenia Canary — which to use:
- Xenia Canary (recommended): community-maintained fork, more frequent updates, meaningfully better game compatibility. Start here. Also has a
patches/folder with per-game fixes that enable titles that wouldn't boot in standard Xenia. - Xenia master: the stable release, updated less frequently. Occasionally a game runs better here than Canary due to different rendering paths — if Canary doesn't work, try master.
Download:
- Xenia Canary:
github.com/xenia-canary/xenia-canary→ Releases → latest .zip - Xenia master:
github.com/xenia-project/xenia→ Releases
Both are single .zip files containing the executable and DLLs — no installer. Extract to a permanent folder (e.g. C:\Emulators\Xenia\) and run xenia_canary.exe.
Install Visual C++ Redistributable first: if Xenia fails to launch with a missing DLL error (vcruntime140.dll or msvcp140.dll), install the Visual C++ 2019 Redistributable (x64) from Microsoft's official download page. This is the most common first-run failure on fresh Windows installs.
Verify DirectX 12 on launch: Xenia's console window prints the detected GPU on startup:
[INFO] AMD Radeon RX 580 — Direct3D 12
If you see a D3D12 or feature level error, your GPU doesn't support DX12 — no workaround exists.
Game formats supported:
- ISO/GDF: physical disc rips (Xbox 360 uses GDFX filesystem; most dumping tools export as .iso). Dumped with Velocity + Xbox Backup Creator from an original disc on a flashed Xbox 360. Best compatibility.
- XEX: the game executable inside an ISO (
\default.xex). Some users extract the disc folder and run the XEX directly. Works for most titles; a few games require the full ISO disc structure for media assets. - XBLA/STFS: Xbox Live Arcade titles (often no extension or .xbla). Load the same way as ISOs via File → Open. Note: many XBLA titles have license checks — use the matching patch from the
game-patchesrepo if they won't boot. - GOD (Games on Demand): full retail games downloaded digitally. Same STFS container as XBLA; similar compatibility to disc ISOs.
Load a game: File → Open (or drag-and-drop the file onto the Xenia window). Select your ISO, XEX, or STFS file. On first launch, Xenia compiles shaders — this may take 30–60 seconds and appear as a blank or slow screen. Subsequent launches use the cached shaders and start faster.
Always check compatibility first: github.com/xenia-project/game-compatibility — games are rated Playable, Ingame, Intro, or Nothing. Filter by Playable. Notable playable titles include Halo 3, Halo Reach, Red Dead Redemption, Gears of War, and a large portion of the XBLA back catalog.
Solution 2
Graphics (via config.toml in the Xenia root folder):
Xenia uses DirectX 12 exclusively — there is no configurable GPU backend. Old documentation mentioning a Vulkan backend refers to a discontinued experimental branch.
Resolution scaling:
Find d3d12_resolution_scale = 1 in config.toml and set it to:
- 1 (default): native Xbox 360 resolution (most games ran at 1280×720 / 720p)
- 2: 2× internal resolution (1080p effective from a 720p game) — recommended. Most mid-range cards handle this comfortably.
- 3: 3× — for higher-end hardware. Diminishing returns on the Xbox 360's low-poly assets.
The Xbox 360 was predominantly a 720p console. 2× resolution scaling looks meaningfully cleaner than native output on modern monitors and is the most common recommendation.
VSync (config.toml — vsync = true): keep true unless you experience frame-pacing issues or want uncapped frame rates. Some games have logic tied to the frame rate and behave oddly when uncapped — if a game runs too fast, enable VSync.
Patches (Xenia Canary only): Xenia Canary ships a patches/ folder with per-title .toml files that fix or enable specific games. Keep the patches folder updated from github.com/xenia-canary/game-patches — some "Intro" or "Nothing" rated games become Playable after a patch update.
Fix for games running at half speed: some titles relied on specific Xbox 360 timing assumptions. In config.toml:
clock_no_scaling = true
This disables Xenia's internal clock scaling and fixes slow gameplay in timing-sensitive titles (most noticeable in racing and rhythm games). If a game then runs too fast, revert to false.
Solution 3
Controller setup:
Xenia maps Xbox 360 controllers directly via XInput. Xbox One, Xbox Series, or Xbox 360 wired controllers work automatically — no configuration required. Hot-plugging after the emulator starts is supported.
DualShock 4 / DualSense (PlayStation controllers):
- Install DS4Windows (open-source, GitHub) to expose the controller as XInput.
- Launch DS4Windows before Xenia.
- Enable "Hide DS4 Controller" in DS4Windows to prevent double-input.
- Connect your controller — Xenia sees it as an Xbox pad.
Generic DirectInput controllers (older gamepads without XInput): use x360ce to wrap DirectInput as XInput. Create the XInput DLL (xinput1_3.dll or xinput1_4.dll) in the same folder as xenia.exe and configure button mapping.
Keyboard: Xenia has a basic keyboard mapping for testing but it is not configurable via the GUI.
Save files: Xenia emulates the Xbox 360 memory unit automatically. Saves are stored at %AppData%\Xenia\content\<title_id>\ and persist between sessions — no manual memory card management is needed. To back up: copy the content\ folder. To transfer saves from a real Xbox 360, use Horizon (a save editor/transfer tool) to extract STFS-packaged saves from an Xbox 360 USB drive or JTAG, then copy to the matching content\ path.
Solution 4
Performance tips:
- Xbox 360 emulation is CPU-intensive. The original console had three specialized PowerPC cores at 3.2 GHz. Translating that architecture in software means your host CPU works hard. Games that ran at 30 fps on real hardware may struggle on a mid-range CPU — CPU clock speed matters more than core count for single-game performance.
- Close background applications — leave Xenia as the only demanding process.
- Shader cache warm-up: Xenia pre-compiles shaders per title, storing them in
%AppData%\Xenia\shaders\. Expect stutter during initial traversal of new areas. Subsequent sessions run from cache and stutter significantly less. - GPU queue depth (config.toml —
d3d12_queue_depth = 2): increase to 3 or 4 if GPU utilization appears low and performance is below expectation. Decrease to 1 for lower input latency on fast hardware. - For general slowdown: Emulator slow on powerful PC
Common issues:
- "DirectX 12 is not supported on this system" — verify GPU via DXDiag; update Windows; if GPU is pre-DX12, Xenia cannot run.
- Missing
vcruntime140.dllormsvcp140.dll— install Visual C++ 2019 x64 Redistributable from Microsoft. - Black screen after game loads — shader compilation in progress. Wait 30–60 seconds. If persistent, check the compatibility list; the game may be "Intro"-only.
- "The file could not be opened" on an XBLA title — license lock from another console/account. Download the matching title patch from the game-patches repo and place in
patches/. - Game runs at half speed (audio and visuals both slow) — clock scaling conflict. Set
clock_no_scaling = truein config.toml. - Controller not detected — DirectInput controller not wrapped as XInput. Use DS4Windows (PlayStation) or x360ce (generic).
- Crash on launch: "Assertion failed" — known per-game bug. Check Xenia Canary releases for a newer build; search the GitHub issue tracker.
- Saves not persisting — saves live in
%AppData%\Xenia\content\; confirm this path is accessible and not redirected by OneDrive/cloud sync. - Very slow shader compilation on first launch — normal. Cache builds once; subsequent sessions start in seconds.
- 30 fps game runs at 20 fps — lower
d3d12_resolution_scaleto 1; close background apps; CPU clock speed is the primary factor. For GPU driver issues: GPU driver clean-install guide
Microsoft platform reference:
- Xbox Original → xemu
- Xbox 360 → Xenia / Xenia Canary
Xenia is impressive for an emulator tackling the Xbox 360's exotic PowerPC architecture, but it is not a finished product. Start with the compatibility list, use Xenia Canary, and check the patches directory before declaring a game unplayable. For active updates and per-title workarounds, the Xenia Discord is the fastest source (linked from the GitHub README).
Comments (0)
Sign in to_leave_comment