Key split tables have been given names based on usage (KeySplitTable1 -> keysplit_piano etc) and a new macro has been set up to better represent the individual bytes for key splits with it being more obvious to how said bytes are used for the respective voice in the voicegroup.
---------
Co-authored-by: Martin Griffin <martinrgriffin@gmail.com>
mid2agb has been modified to allow more than just numbers when naming voicegroups and voicegroups have been renamed to match. A "voice_group" macro has been set up with a optional parameter for the starting note will shift the offset by the specified amount * 0xC which is the length of 1 voice in a voicegroup. All drumset voicegroups have a "starting_note" of 36.
Command used for the job:
egrep -rl ' $' --include *.c --include *.h --include *.s --include *.inc --include *.txt * | xargs sed -i 's/\s\+$//g'
Credits to Grant Murphy from Stack Overflow.
Information: Our current audio macros preclude the definition of root
key and pan (applicable when used in drumsets, aka "keysplit_all") for
GB channels. However, this functionality does exist in m4a--Pokemon
Emerald just happens not to use it. However, for the sake of people
working with custom music, I believe these values should be modifiable
by users.
Additionally, given the recent events that have occurred with this repo,
I would like to make something fully clear: I have indeed looked at the
GBA SDK before, which contains notes on how these sounds are defined;
therefore, I cannot blame you if you reject this PR on the grounds that
the information is "tainted." However, this information is readily
available and matches the same macros used for directsound--it's hardly
information that one would need the source to know.