Short answer: no and no.
It's theoretically possible to run a GBA game in DS mode, because the hardware is so similar. However, memory mapping, I/O registers, graphic/sound system, and CPU speeds all change, so a lot of the code would need to be modified. If you have the game's source code, it's not difficult to port, but hacking a game to do it would be nearly impossible in practise. (Virtualizaztion would also be possible, but slow.) Your best bet is to get a slot-2 RAM cartridge. That will let you play GBA games stored on a slot-1 card.
Hacking the game to change which song plays at a certain point is pretty easy, but adding new songs is pretty difficult. Even when you can (you need to figure out the music format, which can be very complicated), most games use a MIDI-like format, so it's not possible to just drop in an MP3. You'd have to convert a MIDI or write your own music. (And no, you can't really convert MP3 to MIDI; they're very different things. Look it up.)
The only thing you could really do is get an M3 or similar adaptor (that has a CF or SD slot), program your own music engine in place of the game's, and have it play WAVs from the CF/SD card. (MP3 would still take too much CPU power; even DS can't really play MP3 and do anything else simultaneously.) And it'd still sound like shit, because the sound hardware isn't very powerful.
Summary: these things can be done, but the amount of work involved is exponentially beyond being worth it. You'd be much better off buying a GBA RAM cartridge, and listening to music on an actual music player (either turning the game sound right off or hacking it to not play any music).
_________________ 143 HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!
|