Completely arm chairing it.
Im hoping it gets fixed, but Im more than happy using Retroarch for Gaia and Terranigma.
Im a few hours into Gaia now and Ive noticed absolutely no emulation issues or input lag.
We got Gaia working fine a few days ago aside from the opening menu having a black bar due to Canoe's incorrect handling of a certain color addition/subtraction.
I'll admit, Terranigma I'm stumped on. Even more so I'm not sure how the Illusion of Gaia patch actually ended up working! I was prepared for the long fight for all of the games, and the first tentative step I took towards it worked which was beyond my expectation.
Admittedly I'm over my head. I can't directly debug canoe since there is no way to interface with it aside from maybe soldering some connectors to the board and watching the ram via serial (way way out of my league). So the best I can do is look at the following:
Change logs/source codes for existing emulators (Snes9x, PocketSNES, etc) to look where they had struggles (found a couple clues here, was able to get Terranigma 100% playable in canoe.... without sound)
Try to figure out what exactly the Slowrom patch for IoG does that somehow fixes this very similar issue by the same developers (have had zero luck here).
Trying to simulate the same issue in Bishawk (Snes emulator with advanced debugging tools) and then working from there on how to fix it. (I can't replicate the issue, and modifying the ROM to try and get it leads to it not working at all in Bishawk at all, but still be loading and 'working' in Canoe, makes me wonder if it refuses to run anything if the checksum is bad)
There are a few people who I know would have a greater idea of what's going on, but I haven't heard back from any of them, and I don't plan on harassing them or bombarding them if they can't or don't want to reply. So I'm stuck in a holding pattern.
And when I say I'm over my head, I mean it. I've tried every solution I can come up with after pouring over documents relating to the SNES hardware (specifically; NMI, Slowrom/fastrom, the SPC700 and how it interfaces with the system, as somewhere in that tangle is the problem and likely solution). I went as far back as documents dating to the mid 90's (holy crap! There are some great archives of this stuff kept from over the years!)
I still believe there is probably a workaround, and maybe even a super simple one I'm missing. I'm just not well versed enough in the SNES or assembly. Even during my hayday with the system I did little more than some simple rom translations and create some hacks to bypass lockups in things like PocketSNES for GBA. And for the latter, I at least had proper tools and dev support via Loopy and Sephiroth2k to help when I got stuck