I have an old special "Crystal Version" GameShark that worked on all gamesup to Pokemon Crystal. It even includes a spin-off game or two. Next I had another, normal, GameShark for GBC (I think, but maybe GBA). But I either sold it in a yard sale or just lost. :p
Then I have a GBA Code Breaker. I've used it for several years, mainly on my pokemon games for stuff like rare candies and master balls. And my most recent one is a NDS Action Replay. I use it for mostly the same things I did with my Code Breaker.