Difference between revisions of "Xbox Port"

From ReactOS Wiki
Jump to: navigation, search
(Status: CORE-16704 ticket created)
(Gallery: add some new entries)
 
(6 intermediate revisions by 2 users not shown)
Line 13: Line 13:
 
* 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)
 
* 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)
 
* 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 (basically a chipset with IGP configuration like many PCs compatibles around the 2000s)
+
* 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, between a GeForce 3 and a GeForce 4)
+
* 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
 
* 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
 
* Network: NVIDIA nForce 10/100BASE-TX w/ ICS ICS1893AF PHY
Line 29: Line 29:
 
** BRFR/FATX boot works, but partitioning scheme not supported by disk driver, see {{JIRA|16329}}.
 
** BRFR/FATX boot works, but partitioning scheme not supported by disk driver, see {{JIRA|16329}}.
 
* Xbox port blockers: {{JIRA|16329}}, {{JIRA|16352}}
 
* Xbox port blockers: {{JIRA|16329}}, {{JIRA|16352}}
* Real hardware blockers: {{JIRA|16319}}, {{JIRA|16692}}, {{JIRA|16704}} (including the line above)
+
* Real hardware blockers: {{JIRA|16319}}, {{JIRA|16692}}, {{JIRA|16726}} (including the line above)
  
 
'''See this [https://jira.reactos.org/issues/?filter=15901 JIRA ticket list] for known unresolved problems.'''
 
'''See this [https://jira.reactos.org/issues/?filter=15901 JIRA ticket list] for known unresolved problems.'''
Line 52: Line 52:
 
=== Existing work ===
 
=== Existing work ===
 
* Xbox [[HAL]] exists. See [https://github.com/reactos/reactos/tree/master/hal/halx86/xbox halxbox] module.
 
* Xbox [[HAL]] exists. See [https://github.com/reactos/reactos/tree/master/hal/halx86/xbox halxbox] module.
* Freeloader automatically distinguish between normal PC and Xbox.
+
* FreeLoader supports Original Xbox sub-architecture. See [https://github.com/reactos/reactos/tree/master/boot/freeldr/freeldr/arch/i386/xbox freeldr/arch/i386/xbox ].
 
* Support for FATX file system exists in freeloader, fastfat driver, and ufatx module. See [[File Systems#FAQ]] and [https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=FATX ReactOS Git grep].
 
* Support for FATX file system exists in freeloader, fastfat driver, and ufatx module. See [[File Systems#FAQ]] and [https://git.reactos.org/?p=reactos.git&a=search&h=HEAD&st=grep&s=FATX ReactOS Git grep].
 
* Basic video miniport driver for nVidia NV2A GPU (<code>PCI\VEN_10DE&DEV_02A0</code>) exists. See [https://github.com/reactos/reactos/blob/master/media/inf/xboxdisp.inf xboxdisp.inf] and [https://github.com/reactos/reactos/tree/master/win32ss/drivers/miniport/xboxvmp xboxvmp] module.
 
* Basic video miniport driver for nVidia NV2A GPU (<code>PCI\VEN_10DE&DEV_02A0</code>) exists. See [https://github.com/reactos/reactos/blob/master/media/inf/xboxdisp.inf xboxdisp.inf] and [https://github.com/reactos/reactos/tree/master/win32ss/drivers/miniport/xboxvmp xboxvmp] module.
Line 63: Line 63:
 
It's possible to install or just run ReactOS either on real Xbox or in XQEMU emulator.
 
It's possible to install or just run ReactOS either on real Xbox or in XQEMU emulator.
  
* See [[Install ReactOS on Xbox]].
+
You need the following steps:
 +
* Check out [[ReactOS FAQ#Testing ReactOS on real hardware|this article]] to learn more about the testing process.
 +
* You should be able to [[Building ReactOS|compile ReactOS]].
 +
* Run the following command <code>configure -DSARCH=xbox</code> before 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).
  
 
== Gallery ==
 
== Gallery ==
Line 69: Line 74:
 
File:ReactOS on Xbox.jpg|[http://web.archive.org/web/20060702184407if_/http://www.reactos.nl:80/xbox/reactosonxbox.jpg ReactOS running on Xbox] (circa 2006)
 
File:ReactOS on Xbox.jpg|[http://web.archive.org/web/20060702184407if_/http://www.reactos.nl:80/xbox/reactosonxbox.jpg ReactOS running on Xbox] (circa 2006)
 
File:ReactOS on Xbox (video thumbnail).jpg|[https://youtu.be/XOF0WBD3hLU Video on YouTube] (circa 2007)
 
File:ReactOS on Xbox (video thumbnail).jpg|[https://youtu.be/XOF0WBD3hLU Video on YouTube] (circa 2007)
File:ReactOS 0.4.13-dev-1025 in XQEMU.png|ReactOS 0.4.13-dev Setup in XQEMU, see [https://twitter.com/x86corez/status/1167589261169823746 Twitter post] (Aug 2019)
+
File:ReactOS 0.4.13-dev-1025 in XQEMU.png|[https://twitter.com/x86corez/status/1167589261169823746 ReactOS 0.4.13-dev Setup in XQEMU] (Aug 2019)
 
File:ReactOS 0.4.14-dev-945 LiveCD in XQEMU.png|ReactOS 0.4.14-dev LiveCD in XQEMU (Feb 2020)
 
File:ReactOS 0.4.14-dev-945 LiveCD in XQEMU.png|ReactOS 0.4.14-dev LiveCD in XQEMU (Feb 2020)
 +
File:ReactOS 0.4.14-dev on Xbox.jpg|[https://twitter.com/x86corez/status/1230244089632829440 ReactOS 0.4.14-dev LiveCD with hacks booted on Xbox] (Feb 2020)
 +
File:ReactOS 0.4.15-dev on Xbox 128M.png|[https://twitter.com/justanyonee_/status/1306673938563555328 ReactOS 0.4.15-dev-741-gbca0762 booted on Xbox with 128 MB RAM] (Sep 2020)
 +
File:ReactOS 0.4.15-dev on Xbox (video thumbnail).png|[https://youtu.be/wPjkjUn2Ro8 ReactOS 0.4.15-dev-1184-g23e04ae boot process on Xbox - YouTube] (Oct 2020)
 
</gallery>
 
</gallery>
  

Latest revision as of 19:42, 24 October 2020

Imbox notice.png

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 emulator developers who need an open-source Xbox kernel implementation
  • For the project itself, because it allows better flexibility of porting to other platforms

Hardware

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

Status

Note: See Xbox Port Roadmap and Xbox Port Tests for more details.

  • Boot CD works in XQEMU, but shows black screen.
  • Live CD boots in XQEMU, having problem with USB input, see CORE-16352.
  • Boot CD / Live CD doesn't boot on real hardware, see CORE-16692.
  • Can be booted from HDD using pre-installed files:
    • MBR/FAT32 boot works, having problem with USB input, see CORE-16352.
    • BRFR/FATX boot works, but partitioning scheme not supported by disk driver, see CORE-16329.
  • Xbox port blockers: CORE-16329, CORE-16352
  • Real hardware blockers: CORE-16319, CORE-16692, CORE-16726 (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» :-)

Fireball (talk) 19:55, 1 September 2005 (UTC)

Known facts

Development problems

  • 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.

Existing work

Installing

It's possible to install or just run ReactOS either on real Xbox or in XQEMU 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=xbox before 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).

Gallery

People who have an original Xbox

See Also

ReactOS ports‎
In active development Intel IA-32 (x86) | AMD64 (x64)
In slow development NEC PC-98 (x86) | Xbox (x86)
Unmaintained ARM32 (armv7) | PowerPC (ppc) | OLPC (x86)
Missing ports that Windows has ARM64 (aarch64) | Intel IA-64 (Itanium) | SGI 320/540 (x86) | DEC Alpha (axp) | MIPS