Difference between revisions of "Cxbx-Reloaded"

From Emulation General Wiki
Jump to navigation Jump to search
m
(rewrite)
(11 intermediate revisions by 9 users not shown)
Line 2: Line 2:
 
|logo = Cxbx-Reloaded.png
 
|logo = Cxbx-Reloaded.png
 
|active = Yes
 
|active = Yes
|platform = Windows 7 and later
+
|platform = [[Emulators on Windows|Windows]] (7 and later)
 
|architecture = x86_64
 
|architecture = x86_64
|developer = PatrickvL, LukeUsher
+
|developer = PatrickvL, Luke Usher
 
|target = [[Xbox_emulators|Xbox]], Sega Chihiro <small>(Arcade, WIP)</small>
 
|target = [[Xbox_emulators|Xbox]], Sega Chihiro <small>(Arcade, WIP)</small>
|version       = 0.1
+
|version = 0.1
 +
|compatibility = 15% playable <small>(06/2021)</small>
 
|website = [http://cxbx-reloaded.co.uk cxbx-reloaded.co.uk]
 
|website = [http://cxbx-reloaded.co.uk cxbx-reloaded.co.uk]
 +
|support = [https://www.patreon.com/LukeUsher Patreon]
 
|source = [https://github.com/Cxbx-Reloaded/Cxbx-Reloaded GitHub]
 
|source = [https://github.com/Cxbx-Reloaded/Cxbx-Reloaded GitHub]
|support = [https://www.patreon.com/LukeUsher Patreon]
 
 
|license = GNU GPLv2
 
|license = GNU GPLv2
 
}}
 
}}
 
'''Cxbx-Reloaded''' is an open-source [[Xbox emulators|Xbox]] and Sega Chihiro <small>(WIP)</small> emulator for Windows.
 
'''Cxbx-Reloaded''' is an open-source [[Xbox emulators|Xbox]] and Sega Chihiro <small>(WIP)</small> emulator for Windows.
  
==Downloads==
+
Only 15% of the Xbox's library is supported as of June 2021.<ref>https://www.patreon.com/posts/progress-report-53482583</ref>
* [https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Release.zip?branch=develop&job=Configuration:%20Release&pr=false Latest automated dev build via GitHub]
+
 
 +
==Download==
 +
{| cellpadding="4"
 +
|-
 +
|align=center|{{Icon|Win-big}}
 +
|'''[https://cxbx-reloaded.co.uk/download Latest Dev build]'''
 +
|}
  
 
==Overview==
 
==Overview==
"Cxbx-Reloaded began its life as a fork of [[Cxbx]], with added 64-bit support. Work is currently underway to back-port some of the improvements made from Dxbx."
+
<blockquote>
 
+
''"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."''<br/>-PatrickvL<ref>{{cite web|url=https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/pull/2116#discussion_r554439083 |title=Pull Request: Add Pull Request Labeler Support |publisher=GitHub |author=PatrickvL |accessdate=2021-01-22 |date=Jan 10, 2021}}</ref>
Cxbx-Reloaded can boot into a handful of games, but don't expect much to run yet.
+
</blockquote>
 
+
Cxbx-Reloaded reimplements each of the Xbox's components so that the <abbr title="Xbox Executable">XBE</abbr> 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.
Historically, it patched Xbox executables (xbe's) to get them to run on the client (a [[High/Low_level_emulation|high-level]] approach); however, LLE-GPU support was introduced on April 1, 2018.<ref>https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/pull/1018</ref> As a result, many more titles can boot in-game now, albeit with many issues still. The team is gradually [https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/projects/2 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.
 
 
 
* [https://github.com/Cxbx-Reloaded/game-compatibility/issues Official compatibility page]<ref group=N name=version>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.</ref>
 
* [https://github.com/Cxbx-Reloaded/game-compatibility/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc GitHub's game issues repository]
 
*[https://obk.ee/cxbx/ Daily compatibility chart]<ref group=N>Chart is updated daily and easier to read. Percentage is out of 700+ games (Retail, demos, unlockables) and software (Dashboards, XDK samples, updates, emulators, etc) tested.</ref>
 
  
 +
* [https://cxbx-reloaded.co.uk/compatibility Official compatibility page]
 +
* [https://github.com/Cxbx-Reloaded/game-compatibility/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc game-compatibility GitHub repository] for tracking game bugs
 +
* [https://guivanrv.github.io/cxbx-reloaded-compatibility-list/ Web-based compatibility list] based on the game-compatibility repository. Covers games, demos, disc content, homebrew like emulators, XDK samples, etc. You'll want to allow some time to load all the entries.
  
'''Changelog:''' [https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/issues/1195#issuecomment-405622789 v0.1]. '''Milestone:''' [https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/issues/1318 v0.2 planning].
+
===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.<ref name="ngemu_1">{{cite web|url=https://www.ngemu.com/threads/fixing-0xc000007b-error-on-64-bit-windows.156180/post-2101410 |title=Thread: Fixing 0xC000007b error on 64-bit Windows (64-bit Cxbx-Reloaded fork) |publisher=ngemu.com |author=SoulSentinel |accessdate=2021-01-22 |date=Apr 28, 2013}}</ref>
  
==Notes==
+
On the two year anniversary of the project, a lower-level implementation of the GPU called "LLE-GPU" was introduced.<ref>https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/pull/1018</ref> 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".<ref>https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/pull/1761</ref> Work then began to wrap the Direct3D 8 API around Direct3D 9,<ref>https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/projects/2</ref> and later Direct3D 11 in a separate branch.<ref>https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/tree/dx11</ref>
<references group=N />
 
  
 
==References==
 
==References==
Line 38: Line 43:
  
 
==External links==
 
==External links==
*[https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki Wiki for developers]
+
*[https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki GitHub Wiki]
*[https://github.com/Cxbx-Reloaded/game-compatibility/wiki Wiki for miscellaneous compatibility information]
+
*[https://discordapp.com/invite/26Xjx23 Official Discord server]
*[https://github.com/donwayo/xbox-db An Xbox Classic game database] ([https://xbox-db.herokuapp.com/ Link])
+
*[https://www.youtube.com/playlist?list=PL5JgcabuM9iN8zuKp8Y1o21N6Qn8yjnkR&pbjreload=10 YouTube playlist] maintained by Luke Usher
*[https://gitter.im/Cxbx-Reloaded/Lobby Official Gitter chat channel]
+
<!--
*[https://discordapp.com/invite/26Xjx23 Official Discord chat channel] (For general and development discussions on OG Xbox emulation, especially for Cxbx-R, but also XQEMU and OpenXBOX)
+
*[https://github.com/Cxbx-Reloaded/game-compatibility/projects/3 Xbox Dashboards] GitHub project
*[https://www.youtube.com/playlist?list=PL5JgcabuM9iN8zuKp8Y1o21N6Qn8yjnkR&pbjreload=10 YouTube channel] (From lead programmer Luke U.)
+
*[https://xbox-db.herokuapp.com/ An Xbox Classic game database] ([https://github.com/donwayo/xbox-db Source])
*[https://youtu.be/JsZwnCvnef0 Cxbx-R Showcase. (Pre-Stable 0.1).] (Esppiral V. June 10, 2018.)
+
-->
*[https://www.youtube.com/watch?v=QFshB_nQ_qM&t=0s&list=PLEtk6GvDeuAVR_jluiqY0PtMTUqiof-i5&index=2 Cxbx-R v0.1 - Multi Test (Gameplay) Huge Progress #1] (Emulators for PC. Published on Jul 8, 2018. 4 games.)
 
 
 
 
 
 
[[Category:Emulators]]
 
[[Category:Emulators]]
 +
[[Category:Console emulators]]
 +
[[Category:Home console emulators]]
 +
[[Category:Arcade emulators]]
 +
[[Category:Xbox emulators]]
 
[[Category:Windows emulation software]]
 
[[Category:Windows emulation software]]
[[Category:Xbox emulators]]
 

Revision as of 10:41, 15 October 2021

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 15% playable (06/2021)
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.

Only 15% of the Xbox's library is supported as of June 2021.[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