EMI: Properly handle endianness of TIL backgrounds

This code is essentially the same as what grim uses for it's backgrounds. We could also do a read loop, but that would hurt LE performance (a tiny bit). Any opinions?

Is there some way to make the code accept 16 bpp and 32 bpp without the same code twice?