A company back in 1984 produced computer graphics hardware containing the functionality of real time blending of multiple images. The hardware system was named the "944" and is described within the following excerpt of the Users Guide dated October 28, 1991. This system has been on active display at the Smithsonian Institution's National Aerospace Museum in Washington D.C. since the late 1980's. This graphical system also happens to share a kiosk exhibiting an Apple Computer.
============================== Start Of Excerpt ============================== 4.2 944 HARDWARE OVERVIEW The 944 frame buffer owes much of its power to the Texas Instruments TMS34010 graphics processor. For a more complete description of pixel masks, Pixel Processing OPerations (PPOPS) and transparency, see the "TI34010 User's Guide", available from: Texas Instruments Incorporated Data Book Marketing P.O. Box 117692 Carrollton, TX 75011-7692 4.2.1 Pixel Byte Definitions The 944 frame buffer is a 1024 by 1024 double buffered 24-bit RGB framebuffer, with an additional 8-bit background/foreground buffer (Beta) and an 8-bit control buffer (Alpha). Figure 4-1 shows the components of each visible pixel. The red, green and blue vbalues are selected from the current RGB buffer. ------------------------------- Figure 4-1 is a graphical depiction of the pixel breakdown which is as follows... One Pixel (40 bits) Red (8 bits) Green (8 bits) Blue (8 bits) Beta Alpha (8 bits) rgb_overide (1 bit) beta_sel (1 bit) red_lut_sel (2 bits) green_lut_sel (2 bits) blue_lut_sel (2 bits) ------------------------------- The bits of the Alpha byte of each pixel control the following actions(where red, green and blue are the values from the currently selected RGB buffer): red_lut_select - Specifies one of four red lookup tabl3es (LUTS) to be used to adjust the red color value. green_lut_select - Specifies one of four green lookup tables (LUTS) to be used to adjust the green color value. blue_lut_select - Specifies one of four blue lookup tables (LUTS) to be used to adjust the blue color value. beta_sel - When off (0), the red, green and blue values are used to determine the color of the pixel. When beta_sel is on (1), the Beta value is used. video_key_enable - When video_key_enable is on (1), RGB Keying and BETA Keying for that pixel will select live video for composite output. Se the Video Keying discussion, section 4.2.4, for more information. 4.2.2 Lookup Tables and the Beta Palette When the RGB buffers are selected, the color of a pixel on the monitor is determined by using the red, green or blue value as an offset into the respective LUT. If no color adjustments or manipulations are desired, the LUTs may remain linear (i.e., location 0 contains 0, 1 contains 1, ...) and the monitor output will be the red, green and blue value. When the Beta buffer is selected, the color of a pixel is selected from a table of 256 24-bit RGB values, with the Beta value acting as an offset of index into that table. 4.2.3 Color Keying Color key comprisons are made before LUT or palette lookups occur and RGB_OVERRIDE active (1) disables all keying modes for that pixel. Color based RGB and Beta buffer selection (keying) values are summarized in Table 4-1. ------------------------------- Table 4-1. RGB and Beta Buffer Keying NAME FUNCTION RGBKEY RGB keying on(1) or off(0) BETAKEY Beta keying on(1) or off(0) KEY_RED red value for RGB keying KEY_GREEN green value for RGB keying KEY_BLUE blue value for RGB keying KEY_BETA value for BETA keying ------------------------------- When RGB keying and the RGB buffers are selected (RGBKEY = 1, BETA_SEL = 0), and the KEY - RED, KEY - GREEN, and KEY - BLUE values match the red, green and blue values from the RGB buffer, the Beta buffer value is used to determine the color of that pixel. To make the Beta buffer a background buffer, use RGB keying; i.e., set the KEY color equal to the RGB background color. When Beta keying and the Beta buffer are selected (BETAKEY and BETA-SEL = 1), and the KEY-BETA value matches the value in the Beta buffer, the RGB buffered to determine the color of that pixel. To make the Beta buffer a foreground buffer, set the BETA-SEL bit of all pixels to 1 and load KEY-BETA with a value that is the "clear" color. This will allow RGB to be seen through the foreground, since Beta will be used for all pixels except where RGB appears. Nothe that the Beta buffer can slso be used a s foreground buffer by using BETA-SEL. This method is less efficient if the foreground is dynamic, since both the Alpha and Beta values for each pixel must be modified. 4.2.4 Video Keying When the VIDEO_KEY_ENABLE bit in the ALPHA buffer is set to 1, the keying function for that specific pixel are modified. Instead of RGB keying selecting the BETA buffer and BETA keying selecting the RGB buffer, both types of keying select the live video input supplied to the 'video in' connector of the TFB framebuffer. The video keying only effects the composite video output; therefore, it can only be used in NTSC or PAL video modes. the RGB outputs are unaffected by video keying. ============================== End Of Excerpt ==============================