Cxbx-Reloaded

From Emulation General Wiki
Jump to navigation Jump to search
Cxbx-Reloaded
Cxbx-Reloaded.png
Developer(s) PatrickvL, LukeUsher
Latest version 0.1
Active Yes
Platform(s) Windows 7 and later
Architecture(s) x86_64
Emulates Xbox, Sega Chihiro (Arcade, WIP)
Compatibility 12+ % playable
Accuracy High-level;
Direct-code execution (System kernel)
Website cxbx-reloaded.co.uk
Support ($) Patreon
License GNU GPLv2
Source code GitHub

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

Download[edit]

Windows Latest Dev build
Compiled by appveyor

Overview[edit]

Cxbx-Reloaded began its life as a fork of Cxbx, with added 64-bit support. Work was soon currently underway to back-port some of the improvements made from Dxbx. Cxbx-Reloaded in its current form was begun on April 1, 2016. It was actually lead developer Luke Usher's second attempt at reviving the original Cxbx emulator. He had an initial stab at it a few years prior, but didn't have the requisite skills to do so at the time. However, back when he was known as 'SoulSentinel', he was able to get Futurama and Turok: Evolution running at the time, on 64bit Windows Vista / Windows 7 back in late April 2013.[1]

The project reported 100 games as playable since their progress report from 06/2020, covering 10% of the entire Xbox library.

Historically, it patched Xbox executables (xbe's) to get them to run on the client (a high-level approach); however, LLE-GPU support was introduced on April 1, 2018.[2] As a result, many more titles can boot in-game now, albeit with many issues still. The team is gradually porting this emulator's render code from its old Direct3D 8 graphics over to Direct3D 9 including porting the pixel and vertex shaders to the Shader Model 2.X language or later. This allows the use of more instruction slots and registers, allowing Xbox pixel and vertex shaders to be more accurately converted to the host. This has the potential to solve a massive amount of rendering issues, from broken polygons, missing animations, t-pose models to crashes.


Changelog: v0.1. Milestone: v0.2 planning.

Kernel[edit]

Cxbx-Reloaded is able to run in high-level emulation without the need for a BIOS file as the machine's kernel software, which consists of perhaps around 330 API (Application Programming Interface) calls, that get called by game or software running in the emulator, to the host kernel APIs on modern Windows host operating systems. A self-contained re-implementation of this without the host API calls on Windows is needed to broaden compatibility with non-Windows operating systems, though.

The Xbox kernel itself 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 the current kernel is for the biggest 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.[3]

Notes[edit]

  1. The official website was once designed as a compatibility list with additional categories in digits, letters, and xdk-derived symbol class numbers. It opened sometime around mid-2016 but then closed in early 2017 when xbes from pirated games were anonymously classified as playable despite that not being the case even on legitimate copies. Until a redesign is ready for the public, the link redirects to the GitHub repository.
  2. Please wait as it loads in all active issues. It covers games, demos, disc content, homebrew like emulators, XDK samples, and etc.

References[edit]

External links[edit]