Can someone elaborate on the forms of Anti Piracy? It almost seems that Nintendo does what Sony does when adding protection to their newer games. Newer games usually call functions from the newest firmware functions. If users aren't on the latest firmware, their isn't any possibility to run those functions in the game being called.
Considering the DS and DS Lite don't have firmware updates, no.
The PSP and such already have functions to play games and run programs from the memory stick, CFW tricks and redirects the firmware to run whatever they want, and since the PSP is made to play games like that there's not an issue assuming they're on a supported firmware (which is most often the case). Lately however PSP games have started using other tricks (such as checking to see if there's some CFW files in flash0 to see if the PSP's modded), but that's not really an issue.
With the DS, it's meant to run games from the carts, and that's it. It expects the game ROM to be running from a specific piece of hardware. Flash carts are NOT that hardware, and have a different structure. So to make games run, flash carts automatically patch them so that they can run off of the MicroSD, and to make the saving functions work and all that jazz. This means that the way the games are running (and some of the data) is abnormal, and there's various ways to detect it. Doing a checksum on some data to see if it's been modified/patched or not and trying to poke non-game stuff to see what's up with it are common methods.
Kinda' like ways of detecting if you're in a dream or not. Go out of your way to toke random shit around you and see if it reacts the way it should. Oh, you're in your kitchen making a meal and you want to know if you're in a dream? Okay, distance yourself from the concept of the dream and go poke the neighbor's cat. The neighbor's cat just barfed up a car? Yeah, it's a dream, wake up.
In order to bypass the AP, it's generally a matter of automatically patching the games so that the checking routines return "all clear" when it's not all clear, or changing the flash cart software to start returning known non-game values it checks for.
This is about as simple as I could get, and even it's technically so-so as an explanation. ^^;