blitter) will create noticeable fringing at the left and right borders of that image, unless the graphics are specially designed to avoid this. In order to avoid recomputing Hold-and-Modify values and circumvent fringing, the programmer would have to ensure the left-most pixel of every blitter object and the left-most pixel of every line of a scrolling playfield is a 'set' pixel. The palette would have to be designed so that it incorporates every such left-most pixel. Alternatively, a HAM display can be animated by generating pixel values through procedural generation, though this is generally useful for synthetic images only, for example, the 'rainbow' effects used in demos. Note, however, that Hold-and-Modify only applies to playfield pixels. 128 pixels of sprite data (in DMA mode) per scanline are still available for placement on top of the HAM playfield. Implementations Original Chip Set HAM mode (HAM6) HAM6 mode, named for the 6 bits of data per pixel, was introduced with the Original Chip Set and was retained in the later Enhanced Chip Set and Advanced Graphics Architecture. HAM6 allows up to 4096 colors to be displayed simultaneously at resolutions from 320×200 to 360×576. HAM6 encoding uses six bits per pixel: two bits for control and four bits for data. If the two control bits are both set to zero, the four remaining bits are used to index one of the 16 preset color registers, operating in the fashion of a normal indexed bitmap. The other three possible control bit patterns indicate that the color of the previous pixel (to the left) on the scanline should be used and the data bits should instead be used to modify the value of the red, green or blue component. Consequently, there are four possibilities: Set: Use the 4 bits of data to index a color from the 16 color palette. Use that color for this pixel. Modify Red: Hold the green and blue color components of the previous pixel. Use the 4 bits of data as the new red color component of this pixel. Modify Green: Hold the red and blue color components of the previous pixel. Use the 4 bits of data as the new green color component of this pixel. Modify Blue: Hold the red and green color components of the previous pixel. Use the 4 bits of data as the new blue color component of this pixel. HAM5 A similar mode, HAM5,