+++ /dev/null
-Figure 1: Memory organization in mode 13h (ASCII version)\r
- by Robert Schmidt\r
- (C) 1993 Ztiff Zox Softwear\r
-\r
-a. Imagine that the top of the screen looks like this (pixel values are\r
- represented by color digits 0-9 for simplicity - actual colors may\r
- range from 0 to 255) - a screen width of 320 pixels is assumed:\r
-\r
- address: 0 10 310 319\r
- ----------------------------------------\r
- |0123456789012345 ..... 0123456789|\r
- | |\r
- | |\r
- |\r
-\r
-b. In VGA memory, the screen is represented as follows (question marks\r
- represent unused bytes):\r
-\r
- Plane 0:\r
-\r
- address: 0 10 310 319\r
- ----------------------------------------\r
- |0???4???8???2??? ..... ??2???6???|\r
- | |\r
- | |\r
-\r
- Plane 1:\r
-\r
- address: 0 10 310 319\r
- ----------------------------------------\r
- |?1???5???9???3?? ..... ???3???7??|\r
- | |\r
- | |\r
-\r
- Plane 2:\r
-\r
- address: 0 10 310 319\r
- ----------------------------------------\r
- |??2???6???0???4? ..... 0???4???8?|\r
- | |\r
- | |\r
-\r
- Plane 3:\r
-\r
- address: 0 10 310 319\r
- ----------------------------------------\r
- |???3???7???1???5 ..... ?1???5???9|\r
- | |\r
- | |\r
-\r
- I.e. a plane is selected automatically by the two least significant\r
- bits of the address of the byte being read from or written two.\r
- This renders 3/4 of the video memory unavailable and useless, but\r
- all visible pixels are easily accessed, as each address in the video\r
- segment provides access to one and ONLY ONE pixel.\r