HD Version Matching
Once you have a us function matched, there may be additional effort required to match it on the hd version.
Get the asm for both versions extracted like this:
Now, we can run a tool to try and cross-reference the symbols:
./tools/symbols.py cross asm/us/dra/nonmatchings/5298C/func_800F9F40.s asm/hd/dra/nonmatchings/5298C/func_800F9E18.s
You may get a message like
In that case, the files need to be matched manually. We can look at the asm to do this. We have matched scratches for both versions:
US version: https://decomp.me/scratch/GdX90
HD version: https://decomp.me/scratch/SoE2S
In the HD version, we can see that the symbol names are different. For example D_800DC778 corresponds to D_800DC70C. We need to add those symbols to config/undefined_syms.hd.txt
Then we can remove the #ifdef to enable the C version in the HD build.
We can check the build.
Using vbindiff to find differences