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

Remove redundant and unused microcodes + their supporting code (S2DEX2 and HVQM) #789

Closed
wants to merge 68 commits into from

Conversation

mountainflaw
Copy link
Contributor

@mountainflaw mountainflaw commented Apr 23, 2024

Removes every grucode except F3DEX and F3DZEX 2.

  • F3DZEX 2 (currently selectable as f3dzex already includes the point lighting functionality present in the PosLight microcodes, and is the current default of HackerSM64, making them redundant.
  • F3D and F3D_OLD served no benefit to keep around as they are obsoleted in every way by F3DEX, which will be kept around for its slightly more precise Z-buffer.
  • Super3D was experimental and serves no purpose.
  • n_aspMain is unusable with the current state of the audio library.
  • HVQM is unusable.

This also removes the S2DEX2 and HVQM engines as they aren't really used by anyone and take up a lot of space.

XBUS microcode variants are also removed due to no practical benefit towards maintaining them.

mpharoah and others added 21 commits March 6, 2024 09:10
…tories (HackerN64#784)

rnc1 has noticeably slower load times in vanilla than yay0 does. gzip and mio0 are pretty useless and can be yeeted from the repo, but that's not part of this PR's scope.
This allows hack collaborators to toggle debug features such as TEST_LEVEL without the need of pushing it up and negatively impacting other hack contributors. This is also useful for general HackerSM54 development, since it may be desirable to have PUPPYPRINT_DEBUG enabled by default or to not have to worry about pushing config defines up to a development branch that risk getting merged later on.

To use, simply create a new config_local.h file and place it in the config folder. Add #pragma once to the top of the file and add all the defines you wish! If you wish for something to be undefined when it's enabled by default, simply use #undef as opposed to a commented out #define. Use a combination of #undef and #define if you wish to change an existing value of a define. This local configuration will be completely ignored if DISABLE_ALL is being used in config_debug.h.

Regarding HackerSM64 Development: All feature developers are still responsible for making sure their features work in all scenarios regardless of whatever they have toggled in this file by default. This config file may be convenient but it is not an excuse to not properly test your changes!
@Reonu
Copy link
Contributor

Reonu commented Apr 23, 2024

Based

@mountainflaw mountainflaw changed the title [WIP] Remove redundant and unused microcodes. [WIP] Remove redundant and unused microcodes + their supporting code (S2DEX2 and HVQM) Apr 23, 2024
@mountainflaw mountainflaw marked this pull request as ready for review April 23, 2024 18:44
@mountainflaw mountainflaw requested a review from gheskett as a code owner April 23, 2024 18:44
mountainflaw and others added 26 commits June 2, 2024 18:35
…tories (HackerN64#784)

rnc1 has noticeably slower load times in vanilla than yay0 does. gzip and mio0 are pretty useless and can be yeeted from the repo, but that's not part of this PR's scope.
This allows hack collaborators to toggle debug features such as TEST_LEVEL without the need of pushing it up and negatively impacting other hack contributors. This is also useful for general HackerSM54 development, since it may be desirable to have PUPPYPRINT_DEBUG enabled by default or to not have to worry about pushing config defines up to a development branch that risk getting merged later on.

To use, simply create a new config_local.h file and place it in the config folder. Add #pragma once to the top of the file and add all the defines you wish! If you wish for something to be undefined when it's enabled by default, simply use #undef as opposed to a commented out #define. Use a combination of #undef and #define if you wish to change an existing value of a define. This local configuration will be completely ignored if DISABLE_ALL is being used in config_debug.h.

Regarding HackerSM64 Development: All feature developers are still responsible for making sure their features work in all scenarios regardless of whatever they have toggled in this file by default. This config file may be convenient but it is not an excuse to not properly test your changes!
@mountainflaw
Copy link
Contributor Author

Succeeded by #816 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Removal of useless or bloat code/features
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants