What's the point of even playing this game if you're going to use a gameshark? It completely ruins what makes the game fun, and further destroys that people will ever battle or trade over a net connection because so many newbs think it's fun to cheat. Read a game guide. If you want to trade anything up to the latest DS titles, use the latest version of Visual Boy Advance for the original titles, trade Pokemon from Red/Blue up to Fire Red using the latest Visual Boy Advance Link emulator. Then switch the emulator from VBA to the latest version of NO$GBA (2.6a I believe) which allows you to further trade your Pokemon up from GBA titles to NDS titles. All-in-all, this is how you can play Pokemon Red all the way to Pokemon Diamond without the need of using a lame GameShark to complete your Pokedex, even though I wouldn't at all consider it being complete by using cheat codes. The only problem I've been able to see so far is that you can't directly trade your Pokemon from Red up to Diamond without first going through Fire Red (for example). GB doesn't trade to NDS, but GB trades to GBA trades to NDS.
Another thing I should add is how to make your "emulated" saved Pokemon compatable with real games. I'm quite sure you can take a VBA save state and load it onto a blank Flash Cart for GBA/SP, the Flash Cart must be one with a built-in clock. Once your save state is loaded onto the actual cartridge, I'm sure you can trade your Pokemon over to official copies of the game. Doing this the other way around however is quite difficult.
This topic has gone quite far off-topic so I might as well ask it now, does anyone know anything about emulator development to see GB/GBC roms being compatable with Pokemon Stadium / Stadium 2? Using level 50's from rental isn't all that amusing.