|
|
|
|
|
by int_19h
2746 days ago
|
|
> He was just taking the existing video modes and changing them. For instance, instead of having a video mode of 640x400 with 16 colors, Abrash figured out that you could have a video mode of 320x200 with 256 colors and most importantly, a buffer. It was that buffer that was absolutely critical; it changed the game completely. It allowed programmers to draw a screen, flip a bit, and change the entire screen in a millisecond. To be more specific: 320x200x8 was a standard documented VGA video mode (13h), but it lacked the ability to page flip. There were other video modes that did allow page flipping - the idea itself dates back to some of the earliest text-only modes - but none of them were 8-bit color. Mode X (which Abrash discovered) allowed page flipping while retaining all 256 colors. Page flipping is different from double buffering, though. Double buffering is when you render to an offscreen buffer, and then bulk copy the resulting pixels into video RAM (usually with vsync to avoid visible tearing). This could be done just as well with regular mode 13h, and it was pretty common for games to do exactly that. Page flipping made things much faster by avoiding the need to copy anything - everything is in video RAM, you just switch which parts of it are currently visible on screen. |
|