I'll elaborate on anything in here if anyone wants to know things.
I'll elaborate on anything in here if anyone wants to know things.
I think this was quoted from elsewhere within the post but, is this true? If by "up to" we're not including the 3DS, the DSi and DSi XL still don't contain a GBA slot. I don't _think_ they contain the hardware either b/c with homebrew I believe the GBA games are emulated on those newer devices.
Am I mistaken here?
Later, homebrew was able to sideload GBA titles [3], which essentially has perfect software compatibility. However, emulating GBA titles still has advantages over rebooting the device so software emulators are available for the 3DS. The New 3DS is fast enough to provide pretty high quality GBA software emulation.
I don't think a similar path to directly use the DSi's ARM7 to boot GBA games was ever found by homebrewers (it may just be that the DSi is not able to reboot in a "different mode", which Nintendo did release for the 3DS?). The best available on the DSi seems to be a "compatibility layer" solution that tries to run the ARM7 code on the main ARM9 CPU [4], which seems to work surprisingly well.
[1]: https://www.3dbrew.org/wiki/ARM7_Registers
[2]: https://nintendo.fandom.com/wiki/Nintendo_3DS_Ambassador_Pro...
[3]: through "Virtual Console injection" tools, or through https://github.com/profi200/open_agb_firm
[4]: https://emulation.gametechwiki.com/index.php/GBARunner3
From GBATEK:
"The memory regions and IRQ bits do still exist internally, but the DSi does basically behave as if there is no GBA cartridge inserted. Reading GBA ROM areas does return FFFFh halfwords instead of the usual open bus values though."
Since the memory map isn't flexible and GBA games expect to load data from the cartridge at the hardcoded area, games won't function on the ARM7. I assume the 3DS has special hardware to handle this properly.