Reply 20 of 34, by mkarcher
kdr wrote on 2021-12-24, 20:57:I don't think EGA 4bpp has to be any slower than CGA 2bpp, because one of the big features of EGA graphics is the capability to modify all four colour planes with a single 8-bit memory write.
This "big feature" of the EGA card doesn't help if all you do is "painting sprites from main memory into screen memory". Also, to set up the graphics controller, you need to do 8-bit port I/O. AT-class computers typically add a lot of wait-state between 8-bit I/O cycles (called "recovery time"), to be compatible with the awfully slow port I/O on the PC/XT. There are some situations where the graphics controller is a win, like byte-aligned screen-to-screen copies on FIFO-less cards, or painting two-color graphics. Some native EGA games make use of the fast screen-to-screen copy feature by placing the sprites into off-screen memory. Typical multi-standard games don't do that, though. In essence, you often get to shuffle twice as much data, and also have to talk to the Graphics Controller on how to distribute the data you shuffle around.