What is Xenia?
Xenia is an experimental emulator for the Xbox 360 console. It is a research and education project focused on understanding and recreating the Xbox 360’s hardware and software architecture on modern systems.This documentation covers the original Xenia fork. For more actively maintained versions, see xenia-canary or the mousehook fork.
Key Features
Xenia brings several advanced emulation technologies together to enable Xbox 360 game execution:PowerPC JIT Compiler
Translates Xbox 360’s PowerPC instructions to native x64 code through a sophisticated intermediate representation (HIR)
Xenos GPU Emulation
Emulates the custom AMD Xenos graphics chip using modern Vulkan or D3D12 backends
Kernel Emulation
Full implementation of Xbox 360 kernel functions and system calls for authentic execution
Memory System
Accurate virtual and physical memory mapping that mirrors the Xbox 360’s memory architecture
VFS Support
Virtual file system with support for STFS containers, ISO images, and host path mounting
Developer Tools
GPU trace viewer, shader playground, and comprehensive debugging tools
Architecture Overview
Xenia’s architecture consists of several key components:CPU Emulation
The Xbox 360 uses a 64-bit PowerPC processor running in 32-bit mode. Xenia translates PowerPC instructions through a three-phase process:- Translation to HIR - PowerPC instructions are converted to Xenia’s intermediate representation
- HIR Optimization - Compiler passes optimize and prepare the IR for code generation
- x64 Code Generation - The backend emits native x64 instructions for execution
GPU Emulation
The Xenos graphics chip is based on AMD’s R5xx architecture with custom features for the Xbox 360. Xenia emulates:- Command buffer processing from DirectX driver ringbuffers
- Shader translation from AMD microcode to SPIR-V (Vulkan) or DXIL (D3D12)
- EDRAM (embedded DRAM) for high-speed framebuffer operations
- Render target and texture management
Memory Management
Xenia maps Xbox 360 memory ranges to host system memory:Virtual File System
The VFS layer provides access to game data through multiple device types:- Disc Image Device - ISO and XEX file support
- STFS Container Device - Xbox 360 Secure Transient File System packages
- Host Path Device - Direct file system mounting
- Null Device - Special system devices
Platform Support
Windows
Windows is the primary development platform with full support:- Windows 10 or Windows 11
- Visual Studio 2022 with C++ development tools
- Direct3D 12 and Vulkan graphics backends
- Full debugging and profiling support
Linux
Linux builds require:- Recent Ubuntu/Debian-based distribution
- Clang 19 or newer
- Vulkan graphics backend only
- GTK3 for windowing
System Requirements
To run Xenia, you need:- 64-bit processor - Required for both building and running
- Modern GPU - Vulkan 1.1+ or Direct3D 12 support
- Updated drivers - Always use the latest GPU drivers
- Memory - At least 4GB RAM, 8GB+ recommended
- Storage - Varies by game, typically 5-15GB per game
Legal & Ethical Considerations
Using Xenia Legally
To use Xenia legally:- Own your games - Only use games you have legally purchased
- Dump your own discs - Create ISO files from your own Xbox 360 discs
- No piracy - Never download or distribute copyrighted game files
- No XDK content - Do not use files from development kits
Game Compatibility
Xenia’s compatibility varies widely by game. Some games run perfectly, while others may have issues or not work at all.Check the game compatibility list to see which games are playable and what issues they may have.
- Graphics artifacts - Shader translation or render target issues
- Audio problems - Sound effects or music may be missing or distorted
- Performance - Some games may run slower than native hardware
- Crashes - Unimplemented kernel functions or CPU instructions
Community & Support
Discord Community
Join the Xenia community on Discord for:- Emulator-related discussions
- Help with setup and configuration
- Game compatibility reports
- Development chat in
#devchannel
Please check the FAQ before asking questions. Discussing illegal activities will result in a ban.
Contributing
Xenia is open source and welcomes contributions! Areas where help is needed:- Fixing compatibility issues in games
- Optimizing performance
- Linux platform improvements
- Documentation and testing
Next Steps
Ready to get started with Xenia?Quickstart
Get Xenia running in minutes
Installation
Detailed installation instructions
Building from Source
Build Xenia yourself
Architecture Deep Dive
Learn how Xenia works internally
