Primero, hay una regla dentro del foro que no permite el doble-post, ten cuidado con eso.
En cuanto a la primera pregunta, ¿quieres jugar juegos de GBA en DS? Pues, si tienes los cartuchos, lamento decirte que la Nintendo 3DS no viene con las ranuras para éstos, a diferencia de las primeras. Ahora, puedes emular los juegos de GBA en tu 3DS; para eso necesitas una Flashcard, y emularlos a través de las Slot. Mucho sobre ésto no puedo explicarte, pero por lo que sé, se requiere de ambas Slots (1 y 2) para poder emular correctamente los juegos, además de un par de emuladores o programas para lograrlo; aunque en algunos casos, con la Slot 1 funciona.
Ahora, si tu intención es jugar cada juego en su respectiva consola. La generación comienza con el GameBoy Color, y termina con el Nintendo DS (descartando juegos de consolas no portátiles) Con solo tener el GameBoy Advance, puedes jugar juegos tanto de GBC, como de GBA. Los juegos de Nintendo DS pueden funcionarte en la 3DS, pero debes cambiar las opciones de resolución.
En cuanto a la segunda pregunta, solo puede intercambiarse entre versiones de la misma consola portátil. Puedes cambiarlos de consolas como, por ejemplo la Wii, pero no desde un GameBoy Advance a una Nintendo DS.
Siendo juegos de la misma consola portátil; con solo tener el Diamante, Perla & Platino; o Soul Silver & Heart Gold, podrás intercambiarlos al Black & White en tu Nintendo 3DS, pero no viceversa, al ser diferentes generaciones. Para poder hacer esto, es necesario tener la Pokédex completa, y dirigirse a la ruta 15, la cual es la ruta del Pokétransfer, donde se podrá intercambiar y atrapar pokémons de la Cuarta Generación.
Tal vez algo de esto te ayude en algo, en si intercambiar de Pokémon Diamante/Perla/Platino/SoulSilver/HeartGold a Pokémon Black/White te será fácil; lo mismo con los primeros juegos para NDS, entre ellos podrás hacerlo, averigua bien en dónde.