Aha found the cause! mGBA debug print. It was running perfectly fine with the mGBA debug calls left in, but as soon as the LUT was added it breaks. Source of the issue found.
mGBA is not standard (writes within 0x4000400-0x4FFFFFF), so it is probably a non-issue.
Any developers who encounter...