This adds a lot of the debug_mode.h options as an option you can modify at runtime.
I also moved both the text debug screen and the regular debug info screen in there.
And I added an option to start song playback.
This commit implements a vertical menu widget, which should be quite a bit more flexible than
what we currently have.
It defines interfaces in order to respond to selection changes, show and hide. And has a i_item_widget
interface class to allow you to use custom item widgets.
This is done in preparation for adding a debug menu, in which I kinda want to add toggle options
while using the same vertical_menu widget.
Right now, vertical_menu is only used in Select_Menu. Needless to say that Select_Menu was reworked quite a bit.
Still, in terms of visuals or functionality, the changes should be invisible for now. I mean, I didn't do anything *new* with it yet.
This commit integrates the MaxMod sound engine into PTGB.
Some test code already existed, but now it's done for real.
I added a thin API wrapper in sound.c/sound.h to abstract the sound engine.
One of AquaticAlloy's test songs was added to the main menu as a proof of concept.
We may want to disable it before the actual merge though.
Instead of each macro being a ternary (which can't be constant folded),
the values are now stored sequentially.
Additionally, I use byte instead of int and made the tables static
-1300 bytes.
The problem was that our custom_malloc was not marking these functions as extern "C".
Therefore libc's malloc function and everything linked to it was still getting pulled into our
rom.
Fix: mark these functions as extern "C". This ensures that these functions aren't getting pulled in
from libc. This reduces our rom size by 3KB
This eliminates duplicate code. - Only maintain the code in one place!
To make sure the submodule is getting cloned too after cloning Poke_Transporter_GB, execute:
git submodule update --init --recursive
To update the submodule to a newer commit/different branch:
cd PCCS
git pull
git checkout <commit_or_branchname>
cd ..
git add PCCS
git commit
git push
The way it works is that a specific commit is tied to your Poke_Transporter_GB repository's PCCS folder.