Fix "grain will be off" by making it not actually off

This fixes the "Suicide Barbie" homebrew thing from dying at startup (broken by 8191ea4d76c3c97cb68de58ab7980e1b89afaa9f.)  Thanks for the link.

Might be a little dangerous, but I'm pretty sure it's the sane thing to do: downalign the off-grain pointer (that is, allocate the full 0x100 block.)  This way we don't report a free size that is off grain.  Still returns the original (unaligned) address, and I'm pretty sure the other memory was never allocatable anyway...

Meanwhile, makes it use the same logic for finding the memstick/ directory on Windows as sceIo/etc. does.

-[Unknown]