Screenshot backend: Code cleanup, no functional changes
Screenshot backend: Handle 32bpp, double buffering, screen resolution