Cxbx-Reloaded

From Emulation General Wiki
Jump to navigation Jump to search
Cxbx-Reloaded
Cxbx-Reloaded.png
Developer(s) PatrickvL, Luke Usher
Latest version 0.1 [+]
Active Yes
Platform(s) Windows (7 and later)
Architecture(s) x86_64
Emulates Xbox, Sega Chihiro (Arcade, WIP)
Compatibility 16% playable (02/2024)
Website cxbx-reloaded.co.uk
Support ($) Patreon
Programmed in C++, C
License GPLv2
Source code GitHub

Cxbx-Reloaded is an open-source Xbox and Sega Chihiro (WIP) emulator for Windows.

Only 16% of the Xbox's library is listed as playable as of February 2024.[1]

Download

Windows Latest Dev build

Overview

"The Xbox kernel doesn't address many hardware devices. It interacts with a clock, listens to a few hardware interrupts, but otherwise mainly implements hundreds of API's that user code can call for various tasks. There's not much hardware involved with that, and thus [our] current kernel is for the most part just another, replacement implementation of those Xbox kernel API's. That's why the kernel is best not described as "HLE" or "LLE", but simply as "kernel", because it's not patching Xbox software, nor emulating Xbox hardware devices, it's merely an alternative implementation."
-PatrickvL[2]

Cxbx-Reloaded reimplements each of the Xbox's components so that the XBE files can run directly on Windows. This process is akin to Wine or TeknoParrot, only the complexity has expanded greatly since the developers have to account for the Xbox's memory map, a very purpose-built graphics card, and the other custom hardware components.

History

Development of Cxbx-Reloaded in its current form began on April 1, 2016 when Luke Usher tried to revive Cxbx for a second time. His first attempt stalled as he lacked the requisite skills at the time, but his efforts were promising. In late April 2013, he was able to get Futurama and Turok: Evolution running on 64-bit versions of Windows Vista and 7.[3]

On the two year anniversary of the project, a lower-level implementation of the GPU called "LLE-GPU" was introduced.[4] However, the option to enable it was removed from the GUI a year later because it was deemed "too slow to play games at acceptable speeds".[5] Work then began to wrap the Direct3D 8 API around Direct3D 9,[6] and later Direct3D 11 in a separate branch.[7]

References

External links