Refactor sprite code in preparation of implementing OBJ mosaic
Refactor sprite code in preparation of implementing OBJ mosaic

Iniquitatis/mgba,zerofalcon/mgba,zerofalcon/mgba,Anty-Lemon/mgba,matthewbauer/mgba,sergiobenrocha2/mgba,libretro/mgba,sergiobenrocha2/mgba,libretro/mgba,Iniquitatis/mgba,iracigt/mgba,Anty-Lemon/mgba,MerryMage/mgba,mgba-emu/mgba,iracigt/mgba,sergiobenrocha2/mgba,iracigt/mgba,bentley/mgba,libretro/mgba,askotx/mgba,fr500/mgba,jeremyherbert/mgba,nattthebear/mgba,Iniquitatis/mgba,jeremyherbert/mgba,cassos/mgba,sergiobenrocha2/mgba,sergiobenrocha2/mgba,Anty-Lemon/mgba,mgba-emu/mgba,askotx/mgba,Iniquitatis/mgba,MerryMage/mgba,Anty-Lemon/mgba,AdmiralCurtiss/mgba,nattthebear/mgba,cassos/mgba,mgba-emu/mgba,MerryMage/mgba,bentley/mgba,fr500/mgba,iracigt/mgba,AdmiralCurtiss/mgba,fr500/mgba,Touched/mgba,zerofalcon/mgba,libretro/mgba,jeremyherbert/mgba,Touched/mgba,AdmiralCurtiss/mgba,jeremyherbert/mgba,libretro/mgba,Touched/mgba,askotx/mgba,askotx/mgba,cassos/mgba,fr500/mgba,mgba-emu/mgba,matthewbauer/mgba