Developer environment
Cxbx-Reloaded is developed in C++ using Microsoft Visual Studio 2019 Community.
Debugging during emulation
Since Cxbx-Reloaded launches another process instance of itself for emulation, debugging in Visual Studio doesn't work out of the box.
Follow the developer debugging guide to get started.
How to properly send your code contributions (git)
This is a step-by-step guide to keep your forked copy of Cxbx-Reloaded updated, to create a branch for your work and to send a PR.
If you want more information about git commands, you can read this free book.
First time setup (aka adding the upstream remote)
You have to follow these steps only the first time you fork Cxbx-Reloaded:
- Fork mainline Cxbx-Reloaded repository on GitHub by clicking the "Fork" button (upper-right) and clone it to a local folder.
- Open a git shell in the root folder of your cloned repository and run this command:
git remote add upstream https://github.com/Cxbx-Reloaded/Cxbx-Reloaded.git
- Run
git remote -v
. If you see two "origin
" and two "upstream
"; Congratulations, you have completed the first-time setup!
Keep your fork updated
You have to follow these steps anytime you want to update your forked Cxbx-Reloaded repository:
- Open a git shell in the root folder of your cloned repository and run these commands:
git fetch upstream
git checkout master
- Then run
git rebase -i upstream/master
and check if every commit looks good. - You may need to run
git push origin master --force
to update your repository on GitHub.
Create a branch for your new contribution
You must keep the master branch of your forked repository clean, and instead create a new branch for every contribution you want to send.
Before creating a branch, MAKE SURE YOUR FORK IS UP-TO-DATE!
Change "name_of_new_branch" to something meaningful like "fixing-issue-X".
- Create a branch using this command:
git checkout -b name_of_new_branch
- Switch to your new branch with:
git checkout name_of_new_branch
- Push your new branch on GitHub running:
git push origin name_of_new_branch
- Now do your work. Once done send a Pull Request directly from GitHub (go to your branch and click "Pull Request")
- When your work is merged in mainline, you can safely remove your branch by typing:
git checkout master
git branch -d name_of_new_branch
git push origin :name_of_new_branch
Home
Usage:
Development:
- Cxbx Reloaded overview
- Developer notes
- Child Process Debugging
- Developing Homebrew and test programs
- HLE v2 Database Method
- Maintaining OOVPAs for HLE function detection
- OOVPA sorting
- Updating a sub moduled Git repository
- Rebase Line Ending Fix
- Xbox D3D drawing via NV2A Kelvin
Other links: