Blit framebuffers using screen aligned quads (buggy);

Implement asynchronous framebuffer readback for OpenGL and optional CPU-side pixel format conversion (needs optimization);
Add OpenGL ES support (untested).
Merge branch 'framebuffers-to-mem'
Pixels should now be read correctly on ATI cards (tested on ATI Mobility Radeon HD5165); Visual artifacts on blank areas after rendering second quad remain.
Fixed rendering glitch caused by calling ReadFramebuffersToMem for unfinished framebuffers (non-displayed framebuffers are now read at the beginning of next frame);

Fix reversed pixel format for 32-bit textures on Nvidia cards.
Merge remote-tracking branch 'upstream/master'
Pixel format switch (should work for both ATI/AMD and Nvidia);

Code cleanup;
Update submodules.
CPUConvert is now FramebuffersCPUConvert; allocated memory addressed by fb_address is now used in packing code for both OpenGL and OpenGL ES; some code cleanup, most of it pixel format conversion code.
Framebuffers are now read to system memory every third frame (done in Framebuffer::DecimateFBOs()).
Some changes around pixel format conversion, should work on all cards and Android/OpenGL ES devices now (only fully tested on Nvidia); commenting and code cleanup.
Try to guess GPU to differentiate pixel type to request in glReadPixels(); changed ConvertFromRGBA8888 to iterate linearly.
Merge pull request #2621 from arnastia/master

Improved PSP memory update code (ReadFramebuffersToMemory)