look on gamefaqs' web site for the action replay codes, they don't like direct links aparently.
http://www.gamefaqs.com/portable/gbadvance/game/918915.html should work i figure.
use gameshark entry for the action replay codes.
you first need to use the master code, then the pokemon catch master codes, then the pokemon code.
Here's an example of how you would gain a bulbasaur.
Master Code for POKEMON FIRE USA
72BC6DFB E9CA5465
A47FB2DC 1AF3CA86
version and pokemon code
17543C48 E65E0B97
AD86124F 2823D8DA
***************************DISREGUARD********************************
when you want to change, try doing it the way i've tested it. Delete the master code, and the pokemon codes. get into a new battle to make sure the game realizes its gone, then re enter the master code and the new pokemon code. I forget if just turning them off works but i know if you leave the old pokemon code in it for some reasion still reads it. I'll probebly find a way aroudn that later.
***********************************************************************
Edit:
Ok, I did some testing and i found a way around the error i kept getting. here's what you do.
To change the pokemon you want to catch, you must enter the version code BEFORE the pokemon code EVERY TIME you put in a new pokemon, that means don't just put the version code in once.
Also don't get the version code mixed up with the master code.