Intel 815 manual Pattern Data -- Always an 8x8 Array of Pixels

Models: 815

1 423
Download 423 pages 44.71 Kb
Page 60
Image 60

Intel® 815 Chipset: Graphics Controller PRM, Rev 1.0

R

monochrome source data can be set in the source expansion foreground color register and the source expansion background color register.

The BLT Engine requires that the bit alignment of each scan line’s worth of monochrome source data be specified. Each scan line’s worth of monochrome source data is word aligned, but can actually start on any bit boundary of the first byte. Monochrome text is special cased and it is bit packed, where there are no invalid pixels (bits) between scan lines. There is a 3 bit field which indicates the starting pixel position within the first byte for each scan line, Mono Source Start.

The BLT engine also provides various clipping options for use with specific BLT commands

(BLT_TEXT) with a monochrome source. Clipping is supported through: Clip rectangle Y addresses and X coordinates along with scan line starting and ending addresses along with X starting and ending coordinates.

6.2.4.Pattern Data

The color pattern data must exist within the frame buffer or Main memory graphics memory where the BLT engine may read it directly. Monochrome pattern data is supplied by the command packet when it is to be used. As shown in figure below, the block of pattern graphics data always represents a block of 8x8 pixels. The bits or bytes of a block of pattern data may be organized in the frame buffer memory in only one of four ways, depending upon its color depth which may be 8, 16, 24, or 32 bits per pixel (whichever matches the color depth to which the BLT engine has been set), or monochrome.

Figure 14. Pattern Data -- Always an 8x8 Array of Pixels

 

 

 

Pixel (0, 0)

 

Pixel (7, 0)

 

 

 

 

 

 

Pixel (0, 7)

 

Pixel (7, 7)

 

 

 

 

 

 

 

 

 

 

b_blt7.vsd

 

 

63

57

56

48 47

40 39

32 31

24 23

16

15

8 7

0

Pixel

 

 

 

Pixel

 

Pixel

 

 

 

Pixel

(0, 7)

 

 

 

(7, 7)

 

(0, 0)

 

 

 

(7, 0)

 

 

 

 

 

 

 

 

 

 

b_blt8.vsd

The Pattern Address Register is used to specify the address of the color pattern data at which the block of pattern data begins. The three least significant bits of the address written to this register are ignored, because the address must be in terms of quadwords. This is because the pattern must always be located on an address boundary equal to its size. Monochrome patterns take up 8 bytes, or a single quadword of space, and are loaded through the command packet that uses it. Similarly, color patterns with color depths of 8, 16, and 32 bits per pixel must start on 64-byte, 128-byte and 256-byte boundaries, respectively. Color patterns with color depths of 24 bits per pixel must start on 256-byte boundaries, despite the fact that the actual color data fills only 3 bytes per pixel. The next 4 figures show how monochrome, 8bpp, 16bpp, 24bpp, and 32bpp pattern data, respectively, is organized in memory.

60

Page 60
Image 60
Intel 815 manual Pattern Data -- Always an 8x8 Array of Pixels