I'll add to the number of possible issues with what happened to me. It turns out the USB HDD I had plugged in was putting itself in 'sleep' powersaving mode. When this happened and the game tried to read from USB it would error out (My rough detective work says). The difficult part in diagnosing this issue is the the problem is intermittent and seems to fit into one of three options,
- Game always crashes after a short period.
- Game works fine always.
- Game sometimes works fine but sometimes crashes too. (Often crashes after period of inactivity or when saving/loading)
I believe the reason for the different behaviors lies with how the different games read from the HDD and thus are keeping it in an active state. The games that keep the drive active don't crash, the ones that let the drive sleep crash. If possible you should try to test with another USB Device or SD Card to make sure this is the actual issue.
Now as for solutions. You can look into disabling the sleep feature on your USB HDD, I was unable to get this to work on my model. The next solution is to simply replace your current device with one that works correctly, I used the USB_Devices_Compatibility_List on GBAtemp to find one that looked good. Ever since I made that change I haven't had the usual crashes I used to. I still have some issues very rarely with crashes but I chalk that up to running things that are a bit hacked up.