Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downgrade STLport to 5.0.2 #368

Merged
merged 26 commits into from
Oct 8, 2024
Merged

Conversation

TheNathannator
Copy link
Contributor

Much more closely matches symbol names and target asm throughout the code. Many hacks which weren't immediately obviously necessary have been left behind and can be re-applied as necessary.

The size template parameter for vector is now an option within the STLport configuration, to reflect the Xbox 360 version of the game using stock STLport vectors. To accomodate this, and future-proof our vector usage, some macros have been introduced for specifying the size type to be used:

#define VECTOR_SIZE_SMALL , unsigned short
#define VECTOR_SIZE_LARGE , unsigned int

#define VECTOR_SIZE_PARAM , class VecSize
#define VECTOR_SIZE_ARG , VecSize
#define VECTOR_SIZE_DFLT_PARAM , class VecSize = unsigned short
#define VECTOR_SIZE_DFLT_ARG , unsigned short

template <class T VECTOR_SIZE_DFLT_PARAM>
class ObjVector : public std::vector<T VECTOR_SIZE_ARG> { ... };

template <class T VECTOR_SIZE_PARAM>
BinStream& operator>>(BinStream& stream, ObjVector<T VECTOR_SIZE_ARG>& vec) { ... }

As usual, there are some miscellaneous fixes in the mix. Additionally, I added VS Code tasks for generating the report.json file (note: the existing all_source task will build all source files, you do not need to use the report task for that.)

Replacement is done as-is currently, no configuration has been ported yet.
Separate file this time; filename based on bank 5/6
Hack indexer is gone, and const_cast added to STR_TO_SYM
(note that the `all_source` task also works for checking compilation of all files; you only need to use this one if you need the report.json)
@DarkRTA DarkRTA merged commit 35ba270 into DarkRTA:master Oct 8, 2024
3 checks passed
@TheNathannator TheNathannator deleted the stlport-downgrade branch October 8, 2024 01:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants