Well this is the bottleneck. Sadly I CAN'T go 8 bits. The players themselves could but the backgrounds are too colorful. I don't think 8 bit -> 32 bit blits would be faster than per-pixel recoloring.