2020-03-20 10:16:26 +00:00
# Cxbx-Reloaded - Original Xbox Emulator
2021-08-22 02:40:07 +00:00
[](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/blob/master/COPYING)
2020-08-25 07:12:22 +00:00
[](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/actions?query=event%3Apush+workflow%3A%22GitHub+CI%22)
2018-07-24 18:33:04 +00:00
[](https://discord.gg/26Xjx23)
2016-08-24 19:55:47 +00:00
2020-05-07 20:52:51 +00:00
Cxbx-Reloaded is an emulator for running Microsoft Xbox (and eventually, Chihiro) games on Microsoft Windows and Wine.
2016-08-24 19:55:47 +00:00
2016-09-09 20:44:08 +00:00
## System Requirements
2017-07-30 09:13:10 +00:00
### Minimum
2022-03-31 22:29:27 +00:00
* OS: Windows 7+ x64, or x86-64 Linux with Wine. 32-bit is not supported.
* MacOS with Wine is known not to work, and BSD-based systems are untested.
* Also note that Wine is relatively unstable, and it might break compatibility with Cxbx-Reloaded at any time without warning.
2020-03-20 10:16:26 +00:00
* GPU: Direct3D 9.0c with Pixel Shader Model 2.x, and Vertex Shader Model 3.0.
2018-09-02 06:22:48 +00:00
2021-02-02 11:14:48 +00:00
## Prerequisites
### Windows
2022-03-22 17:32:38 +00:00
* [32-bit (x86) Visual C++ 2022 Redistributable ](https://aka.ms/vs/17/release/vc_redist.x86.exe )
2020-03-20 10:16:26 +00:00
* [Npcap *(used for network emulation)* ](https://nmap.org/npcap/#download )
2022-03-04 08:26:57 +00:00
* Make sure to enable winpcap compatibility mode.
2022-10-05 21:59:17 +00:00
* [WinUSB compliant driver ](https://github.com/libusb/libusb/wiki/Windows#Driver_Installation )
2022-03-04 08:26:57 +00:00
* *Optional, only needed for USB pass-through of original Xbox and Steel Battalion controllers.*
2019-05-13 22:06:13 +00:00
2022-03-31 22:29:27 +00:00
### Wine
2022-03-31 22:36:19 +00:00
**Please use the latest stable release version of Wine. If it does not work for you, then roll back to Wine 7.0 which is the last known working version.**< br / >
2022-03-22 17:32:38 +00:00
**There also exists this known [issue ](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/issues/2314 ) which currently prevents savings in some games with the most recent Wine 6.8 and later versions.**
2021-02-02 10:59:05 +00:00
* Winetricks
2022-03-04 08:26:57 +00:00
* `vcrun2019`
* Requires the latest winetricks script.
2021-02-02 10:59:05 +00:00
* `d3dcompiler_47`
2022-03-04 08:26:57 +00:00
* This may be subject to change.
2021-02-02 12:31:42 +00:00
* Winpcap is built-in, no installation is required.
2021-02-02 10:59:05 +00:00
2017-03-22 09:11:25 +00:00
## Automated Builds
2022-03-31 22:27:47 +00:00
Cxbx-Reloaded doesn't currently have stable builds, but you can obtain pre-release builds from our official website's download page, or the links below:
2018-06-18 07:24:45 +00:00
2022-03-31 22:27:47 +00:00
* **[Release Builds](https://cxbx-reloaded.co.uk/download)**
2020-04-09 07:52:12 +00:00
* *[Full build history](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/actions?query=workflow%3A%22GitHub+CI%22)*
2017-03-22 09:11:25 +00:00
2017-07-28 05:18:12 +00:00
## Compatibility
2021-01-12 15:39:45 +00:00
Cxbx-Reloaded has a [compatibility list ](https://cxbx-reloaded.co.uk/compatibility ).
2018-04-28 02:03:19 +00:00
2021-01-12 15:39:45 +00:00
If you would like to submit compatibility reports, please request permission in our Discord server.
2017-07-28 05:18:12 +00:00
2016-09-30 07:33:33 +00:00
## Bug Reports
2021-01-12 15:39:45 +00:00
Game or software specific issues can be reported in the [compatibility website ](https://cxbx-reloaded.co.uk/compatibility ).
2017-08-15 12:23:28 +00:00
2018-05-16 09:12:03 +00:00
For emulation issues that are not specific to any single piece of software, a bug report can be submitted at [the Cxbx-Reloaded issue tracker ](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/issues ).
2022-03-04 08:26:57 +00:00
<!-- Make sure to follow the issue template and that it contains:
2020-03-20 10:16:26 +00:00
* The build tested with, error message displayed (if any)
2022-03-04 08:26:57 +00:00
* **You can copy and paste any popup messages. However, please keep it clean by pasting and trimming down to only the message itself.**
2020-08-26 22:37:04 +00:00
* Screenshots
2022-03-04 08:26:57 +00:00
* Optional unless there are graphic bugs for reference.
2020-08-26 22:37:04 +00:00
2022-03-04 08:26:57 +00:00
**Failure to follow the template will auto close your ticket.**-->
2016-09-30 07:33:33 +00:00
2017-08-02 13:07:37 +00:00
## Additional information
2018-04-28 02:03:19 +00:00
Cxbx-Reloaded has a [wiki ](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki ) containing various subjects and background information.
2020-03-20 10:16:26 +00:00
2019-07-23 07:44:10 +00:00
Chat on [Discord ](https://discord.gg/26Xjx23 ).
2016-09-09 20:44:08 +00:00
2017-08-25 14:55:38 +00:00
## Contributing
2018-04-28 02:03:19 +00:00
We welcome contributions, large and small.
If you want to do some coding, be sure to read the [Developer notes ](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki/Developer-notes ).
2020-08-27 21:31:12 +00:00
**IMPORTANT: Pull-Requests containing code derived from XQEMU will _not_ be approved until an agreement is reached to make work mutually beneficial. This includes updates to existing XQEMU derived code. We should not/will not become a hostile fork.**
2019-02-05 20:59:39 +00:00
2018-04-28 02:03:19 +00:00
Please contact us before you start working on something, so we can make sure your work is going to be accepted once finished.
2017-08-25 14:55:38 +00:00
2019-05-13 22:06:13 +00:00
### Main Prerequisites
2020-03-20 10:16:26 +00:00
1. [Git for Windows ](https://git-scm.com )
2. [CMake ](https://cmake.org )
2020-08-27 21:31:12 +00:00
* Some IDEs already have CMake support, this is optional.
2017-12-02 10:42:06 +00:00
### Fetching the code
2020-03-20 10:16:26 +00:00
1. Run the following command in the command line:
2022-03-04 08:26:57 +00:00
< br > `git clone --recurse-submodules https://github.com/Cxbx-Reloaded/Cxbx-Reloaded.git`
2020-03-20 10:16:26 +00:00
* Please note the `--recurse-submodules` parameter. This is required to fetch submodules.
* If Cxbx-Reloaded was checked out without submodules, they can be updated/fetched with the following command:
2018-04-28 02:03:19 +00:00
2020-03-20 10:16:26 +00:00
`git submodule update --init --recursive`
2017-12-02 10:42:06 +00:00
### Compiling
2019-05-13 22:06:13 +00:00
2020-03-20 10:16:26 +00:00
#### Windows
2022-03-04 08:26:57 +00:00
Don't open `CMakeLists.txt` from Visual Studio, as it won't generate files in the `build` directory.
2020-03-20 10:16:26 +00:00
##### Prerequisites
2022-03-22 17:32:38 +00:00
1. [Visual Studio ](https://visualstudio.microsoft.com/downloads/ ) 2022
2020-03-20 10:16:26 +00:00
* C++ and C# desktop development
* Windows Universal CRT SDK
* C++ CMake tools for Windows
* *Optional if CMake is installed*
* [Microsoft Child Process Debugging Power Tool ](https://marketplace.visualstudio.com/items?itemName=vsdbgplat.MicrosoftChildProcessDebuggingPowerTool )
##### Generate Visual Studio files
1. If you don't have CMake installed, open `___ Native Tools Command Prompt for VS 20##` .
2. `cd` to the Cxbx-Reloaded directory.
3. Run these commands.
1. `mkdir build & cd build`
2022-03-22 17:32:38 +00:00
2. `cmake .. -G "Visual Studio 17 2022" -A Win32`
* VS2022 17.0 or later is required.
2020-03-20 10:16:26 +00:00
4. Open `Cxbx-Reloaded.sln` from the `build` directory.
5. Select the Release configuration, then click Build.
* Debug builds are **significantly slower, and only for developers** .
#### Linux / macOS
Currently not supported.
2017-12-02 10:42:06 +00:00
2017-06-24 16:46:33 +00:00
## Support
2018-04-28 02:03:19 +00:00
You can support [Luke Usher ](https://github.com/LukeUsher ), initiator of Cxbx-Reloaded, on [Patreon ](https://www.patreon.com/LukeUsher ).
2017-06-24 16:46:33 +00:00
2016-09-09 20:44:08 +00:00
## Special Thanks
2019-05-25 17:25:20 +00:00
* All contributors to the original Cxbx and [Dxbx ](https://github.com/PatrickvL/Dxbx ) projects. Without them Cxbx-Reloaded would not exist at all.
2020-03-20 10:16:26 +00:00
* [XQEMU ](https://github.com/xqemu/xqemu ) - While the majority of Cxbx-R is our own work (Kernel, HLE, etc), the NV2A LLE and NVNet implementation are primarily the work of the XQEMU developers.
* [XboxDev ](https://github.com/xboxdev ) - Providing Xbox hardware research & useful tooling.
2022-03-31 22:49:24 +00:00
* [XbSymbolDatabase ](https://github.com/Cxbx-Reloaded/XbSymbolDatabase ) - Providing support to detect symbols across XDK builds from reverse engineered retail titles.
* [Xbox Kernel Test Suite ](https://github.com/Cxbx-Reloaded/xbox_kernel_test_suite ) - Making accurate tests on hardware to compare against cxbxr's kernel implementation.