Notice: This page is about the full port of the ReactOS desktop operating system for the original Xbox. For the Xbox gaming kernel see Run Xbox Games on ReactOS.
ReactOS Xbox port targets the original Microsoft's Xbox gaming console, which is based on Intel Pentium III (Coppermine) processor that ReactOS could support.
It might be useful in different ways:
- For people who don't have a computer, but have an Xbox which can be used as a computer with ReactOS
- For gamers who want to run retro console emulators which are available only as Windows applications
- For XQEMU and xemu emulator developers who need an open-source Xbox kernel implementation
- For the project itself, because it allows better flexibility of porting to other platforms
Known hardware specifications on the Xbox are:
- CPU: Pentium III Coppermine based 733 MHz custom CPU, 128 KB L2 and 133 MHz FSB (i686 class, could be upgraded up to 1.4 GHz with mods)
- RAM: 64 MB DDR 400 in a 128-bit bus (6.4 GB/s, expandable to 128 MB with mods)
- Motherboard/Chipset: Custom motherboard design using the nVidia nForce chipset (close to nForce 420) which acts as both the system chipset and the graphics adapter, Southbridge is the nVidia MCPX which is identical to the MCP-D southbridge used in the nForce 220/415/420 (basically a chipset with IGP configuration like many PCs compatibles around the 2000s)
- Graphics: nVidia NV2A GeForce 3/4 class Hybrid GPU (OpenGL 1.3, DirectX 8.1 HW support (Pixel Shader 1.3/Vertex Shader 1.1?), between a GeForce 3 and a GeForce 4)
- Storage: 8 or 10 GB 5400 RPM (IDE), HDD formatted in FATX; 2-5x DVD-ROM drive; 32 MB USB memory card
- Network: NVIDIA nForce 10/100BASE-TX w/ ICS ICS1893AF PHY
- Audio Controller: NVIDIA nForce APU w/ Wolfson Microelectronics XWM9709 AC97 2.1 Codec
- Boot CD works in XQEMU, but shows black screen.
- Live CD boots in XQEMU, having problem with USB input, see CORE-16352.
- Can be booted from HDD using pre-installed files:
- Both MBR/FAT32 and BRFR/FATX boot works, having problem with USB input, see CORE-16352.
- Booting from BRFR/FATX works only once, after reboot SYSTEM hive gets corrupted (no ticket yet).
- Xbox port blockers: CORE-16352
- Real hardware blockers: CORE-16726, CORE-17643 (including the line above)
See this JIRA ticket list for known unresolved problems.
«It's just fun for now, nothing else. You can browse your Xbox's HDD in explorer as if it's just a PC computer, you can even do some very simple things, but not very much really. But with time – when we finish nVidia network card driver, it's gonna become more interesting since possibilities are endless – there are so plenty of software for Win32 that there is definitely something cool you may want to try to run on your Xbox» :-)
- The port was started by Gé van Geldorp at r11926 and firstly got into ReactOS 0.2.5, but has since regressed and is unmaintained.
- In ReactOS 0.3.0 Xbox's I2C support was moved to a separate file, and support of LEDs switching was added by Aleksey Bragin.
- In ReactOS 0.3.4 boot regression was fixed by Hervé Poussineau, but still no support for USB keyboard/mouse.
- Xbox port revival was suggested at Google Summer of Code 2010 ideas.
- Xbox executable support was suggested as Google Summer of Code 2019 idea.
- Stas'M is currently working on Xbox port revival, so XBOX Boot milestone has been added.
- Many hardware components that need drivers.
- Lack of people with low-level programming and reverse engineering skills.
- Microsoft has discontinued original Xbox since 2006, so few people with a working console left, and their number is decreasing.
- Xbox HAL exists. See halxbox module.
- FreeLoader supports Original Xbox sub-architecture. See freeldr/arch/i386/xbox .
- Support for FATX file system exists in freeloader, fastfat driver, and ufatx module. See File Systems#FAQ and ReactOS Git grep.
- Basic video miniport driver for nVidia NV2A GPU (
PCI\VEN_10DE&DEV_02A0) exists. See xboxdisp.inf and xboxvmp module.
- XboxDev Cromwell BIOS is currently used: https://github.com/XboxDev/cromwell/releases
- Custom Cromwell BIOS previously existed in the repository. See boot/xbox/cromwell.
- Other commits related to Xbox port development.
- https://svn.reactos.org/downloads/xbox/ - ReactOS Xbox port prebuilt binaries (very old).
It's possible to install or just run ReactOS either on real Xbox or in XQEMU/xemu emulator.
You need the following steps:
- Check out this article to learn more about the testing process.
- You should be able to compile ReactOS.
- Run the following command
configure -DSARCH=xboxbefore compilation to set target platform as Original Xbox.
- Build and burn a LiveCD/BootCD ISO image.
- Insert the medium and boot ReactOS (see Install ReactOS on Xbox for details).
ReactOS running on Xbox (circa 2006)
Video on YouTube (circa 2007)
ReactOS 0.4.13-dev Setup in XQEMU (Aug 2019)
People who have an original Xbox
- Andreas Bjerkeholt aka Harteex
- Daniel Reimer aka EmuandCo (rev 1.3)
- Andrew Cook aka ariscop
- Ben Nottelling
- Robert Naumann aka gonzoMD
- Joann Mõndresku aka Cernodile (rev 1.0)
- Matias#5019 in community Discord (rev 1.4)
- Known unresolved Xbox port problems
- ReactOS on Xbox notes by Matt Borgerson
- Run Xbox Games on ReactOS
- ReactOS Forum topic
- An article on Slashdot
- The Xbox Operating System explained by Garry Trinder
- Porting an Operating System to the Xbox HOWTO
- Xbox nForce Chipset
|In active development||Intel IA-32 (x86) | AMD64 (x64)|
|In slow development||ARM64 (aarch64) | ARM32 (armv7) | NEC PC-98 (x86) | Xbox (x86)|
|Missing ports that Windows has||Intel IA-64 (Itanium) | IBM PS/2 MCA (x86) | SGI 320/540 (x86) | DEC Alpha (axp) | MIPS | PowerPC (ppc)|
|Ideas for new ports||FM Towns (x86) | PlayStation 4 (x64) | Intel SFI (x86)|