The above post is the perfect answer, so I'm going to +1 on that. The n3ds can have a9lh installed on 9.2 now, so no dangerous downgrade to 2.1. The only way to get really good speeds on gba and snes is with a kernel exploit, and of course the best is with injecting(that said I would take traditional Emulation for gba since the gba VC is pretty limited in options). Downgrading with the dsiware method is pretty easy from what I understand, and the plailect a9lh Guide has a section dedicated to it. I can promise you won't regret making the jump to a9lh. Nothing is more convenient than instant cfw loading(also it gives you a nice layer of protection if you accidently brick your sysnand. You can restore a nand backup as long as you don't Bork your firm0/1 afaik)
Edit: actually is there any way to inject a new gba/snes rom using HANS? I've never tried, but that would solve his problem rather nicely.