Yeah, but on the thread on PP, people were saying they got it to work using VBA. Also the guide pMD posted is wrong on so many levels lol. And then he says that the save file extension should be .sav2 which is wrong, it should be .sv2 (I remembered that from a few years ago last night as I was trying to sleep.)
Instead I ended up using NO$GBA v2.6a since it doesn't crash on startup every time after using multiplayer emulation, but it was a -huge- pain in the ass to get distro rom on screen 1 + FireRed on screen 2 working. I can't even make it work a second time for me to write a step-by-step guide for 2.6a lol.
So instead I wrote a step-by-step guide that actually works for 2.8d.
- With NO$GBA 2.8d
- With gba bios named gba.rom in the same directory
- With your Gen. III save file in extension .sv2 (not .sav2) in the BATTERY folder, saved in the Pokémon Center with free space in your party
1. Start up the emulator, click Options --> Save options to create NO$GBA.ini
2. Close the emulator and open NO$GBA.ini in a text editor, change "SAV/SNA File Format == Compressed (good/lz)" to "SAV/SNA File Format == Raw" (Otherwise NO$GBA will compress your save for no reason at all and you won't be able to use it in VBA or restore to physical cartridge anymore.)
3. Start up the emulator again, go to Options --> Emulation setup
4. Set "Reset/Startup Entrypoint" to "GBA/NDS BIOS"
5. Click the "Controls" tab and define controls for both Player 1 and Player 2.
6. Exit the settings, right-click the emulator screen and select Link which will open a second screen.
7. Go to File --> Cartridge Menu (FileName), at the bottom, select 1st machine in the dropdown menu then select the distro rom. The distro rom will start on screen 1.
8. Go to File --> Cartridge Menu (FileName) again, this time select 2nd machine in the dropdown menu and select your Gen. III rom. It will start up on second screen.
9. Hold the keys you have bound in controls to Start + Select for Player 2 (hit File --> Reset Cartridge if you need to), and on Player 1 (distro rom) select one of the Pokémon you want to send.
10. It will send the Pokémon you chose over to your Gen. III game. Once it says you can turn off the power, go ahead and hit File --> Reset Cartridge and repeat the process to receive other Pokémon, or to get to the Pokémon Center in-game if your party gets full.
Do note however that NO$GBA 2.8d is shit and will crash on startup after you've done multiplayer stuff, and you'll have to delete NO$GBA.ini and redo the setup again if you need to use it again, but once you're done sending every 10ANNIV over you can just close it and move your save file back over to VBA so it doesn't matter much. The setup only takes a minute or two anyway so if you ever need it again it's not a huge deal.