MMU: properly check MEM1 range on Gamecube games

Fixes at the very least Rogue Squadron II crashes.

Note to do this I refactored loads slightly so that addresses have to be a register or immediate, which should be more consistent anyways.
What's a better name -- CheckIfSafeAccess or something?