Page:
HLE v2 Database Method
Pages
Child Process Debugging
Cxbx Reloaded overview
Developer notes
Developing Homebrew and test programs
Frequently Asked Questions (FAQ)
HLE v2 Database Method
Home
Maintaining OOVPAs for HLE function detection
OOVPA sorting
Overview of the project & Glossary of terms
Rebase Line Ending Fix
Shortcut Keys
Updating a sub moduled Git repository
Xbox D3D drawing via NV2A Kelvin
dgVoodoo Upscale Method
4
HLE v2 Database Method
Margen67 edited this page 2021-06-11 13:19:38 -10:00
Table of Contents
Creating an OOVPA
See here.
The OOVPA method itself has not changed.
Maintenance
Once an OOVPA has been added, replaced, or removed, the HLE v2 database needs to be updated.
This is a requirement in order to compile properly.
- Any time an OOVPA has been lowered, the OOVPA itself must be moved into a specific revision database file.
- If a new OOVPA is replaced with a better OOVPA, please comment the whole obsolete OOVPA section for preservation purposes with a comment stating "replaced with _version_".
- Whenever you find a specific OOVPA is causing 100% false detection please comment it out, and create a correct OOVPA signature for it.
- There are high chances of ability to make generic OOVPAs. When you discover a preexisting OOVPA or OOVPA you made is indeed generic and does match correctly the highest XDK version which is 5849, please add a comment stating "Generic OOVPA as of _XDK_version_ and newer". Also check with lower XDK titles to be sure if it's possible to add at starting point of the XDK version.
Method for HLE Database v2
REGISTER_OOVPAS(/*Name of OOVPA*/, /*documentation flag*/, /*XDK versions*/, ...),
Documentation flag
should only be used for either XREF, PATCH, or UNPATCHED.
XREF
defined as XREF purpose with no patch necessary.PATCH
define as using with a patch. (It's okay if a patch has an xref included.)UNPATCHED
should only be used when a patch is no longer necessary. (Usually a result of Hybrid LLE, or certain low level APIs are patched and is able to be emulated properly.)
Register new OOVPA
Once you are done with creating an OOVPA, manually add or update it's existing register in respective v2 database.
For example:
REGISTER_OOVPAS(XAudioCalculatePitch, XREF, 3911, 4039),
If you don't understand how REGISTER_OOVPAS
work, please use the search bar then choose the "code" tab to understand how it works.
Recommendation
- Keep notes on what hasn't been verified in the HLE v2 database file.
- Use specific version title if you are able to discover almost to full compiled library. (Doing this way does speed up add all missing OOVPAs detection.)
- Please do add library version and title's name to the note to keep track of known title might or does contain almost to full library compiled.
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: