I didnt know this was a thing. What makes one romhack work on an emulator that another cant?
My wild guess is that there might be certain hacky ASM Routines out there that were written with VBA's inaccurate behavior in mind first and foremost, and are used by people who doesn't test the effects of said routines thoroughly.
For a quick example, the well known
Pokémon Adventures Red Chapter crashes on mGBA if you try to get into a battle after changing your costume.
Now, when you change your costume in that hack things like the character's OW Sprite, Trainer Sprite and Trainer Backsprite are directly affected. Changing the backsprite of the main character is presumably handled by an ASM Routine and the hack uses JPAN's Engine for other things which does include a feature that allows you to swap Trainer Backsprites. That's what led me into thinking that some of the ASM Routine/s used there
(like the ones injected into the ROM by using JPAN's Tool's "Apply Character Hacks" button) might not work all too well in real hardware or hardware accurate emulators like mGBA.
Even if that guess was correct though, JPAN's Routines are not the only problem.
As it's shown in the video I just linked up there, things like the Real Time Clock systems for Fire Red can become another matter of concern.
Certain implementations of RTC for Fire Red like Prime-Dialga's don't seem to work correctly in mGBA, not by default. The important thing to note about that is that, at least as far as I know, his implementation is the most used one, mainly because it can be quickly injected into a Fire Red ROM with a tool.
In my opinion
(and this is related to Bonesy's plea), if we want to see a positive change, the foundation of the Pokémon ROM Hacking Community needs some changes, or a straight up revolution that redesigns the ways of Pokémon ROM Hacking as we know it.
The Pokémon Decompilation Projects created by Pret are one step towards that goal. With them, any issues a project may have can be easily repaired by anyone, by jumping straight into the function causing problems to read, debug and fix it. With the decomps, proper efforts can be made to avoid the problems currently plaguing the ROM Hacking of Pokémon Fire Red, and we can also have a more unified community overall, where people can help each other with their projects, doubts and problems easily, to avoid things like game breaking bugs or buggy features from happening ever again.
The problem is that right now, the learning curve to set up and use the decomps can be very intimidating to people with no experience beyond opening Microsoft Office or using a Web Browser.