|Publication number||US4908779 A|
|Application number||US 06/847,343|
|Publication date||Mar 13, 1990|
|Filing date||Apr 2, 1986|
|Priority date||Apr 2, 1985|
|Publication number||06847343, 847343, US 4908779 A, US 4908779A, US-A-4908779, US4908779 A, US4908779A|
|Original Assignee||Nec Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (9), Non-Patent Citations (2), Referenced by (17), Classifications (13), Legal Events (5)|
|External Links: USPTO, USPTO Assignment, Espacenet|
1. Field of the Invention
The present invention relates to a display pattern processing apparatus, and more particularly to a color pattern processing apparatus having a video memory into which is written color pattern data which is to be displayed on a display such as a cathode ray tube (CRT).
2. Description of the Background Art
Color data to be displayed on a CRT generally is written first into a video memory which is a random access memory (RAM) in accordance with a pre-edit operation. Thereafter, the color data is converted into a video signal and is sent to the CRT. The number of bits which may be stored in the video memory usually is at least as large as the number of picture elements on a CRT screen. In a color display, three video memories are required, for red (R), green (G), and blue (B), respectively. Color data corresponding to one picture element, then, consists of three bits, one red, one green, and one blue. A color to be displayed is determined in accordance with a combination of these bits.
Thus, eight colors, as indicated in Table 1 on the next page, may be displayed according to the combination of the red, green, and blue bits.
TABLE 1______________________________________R G B Color______________________________________1 0 0 Red0 1 0 Green0 0 1 Blue0 0 0 Black1 0 1 Magenta1 1 0 Yellow0 1 1 Cyan1 1 1 White______________________________________
Display pattern data and a color code are required for a color display. The color code consists of three bits (R, G, B) as described above, and is assigned to each item of pattern data. The color code is designated by an operator and is written into the video memories.
In multicolor displays, it has been known to execute a writing operation to the video memories for each of the colors to be displayed. For example, when two colors (such as red and black) are to be displayed, a color code for one of the two colors first is written into all of the video memories. Thereafter, the other color code is written. That is, a red color code "1 0 0" first is written into all locations in the video memories. Then, every location where a black color code "0 0 0" is to be written is changed to the black color code. Therefore, at least two writing operations must be performed for a two-color display. If more than two colors are to be displayed, one writing operation must be performed for each color to be displayed. These writing operations require much time.
Further, digital pattern processing, such as filing for changing luminance, or masking has been proposed. To perform digital pattern processing, a logical operation (AND, OR, EXOR, and the like) is required. It has been known to perform such a logical operation after writing the appropriate color codes into the video memories. Therefore, reading of the color data written into the video memories, a logical operation according to the desired digital pattern processing, and a writing operation of the result of the logical operation into the video memories also are required.
In view of the foregoing, it is an object of the present invention to provide a pattern processing apparatus capable of high-speed processing of color data.
Another object of the invention is to provide a pattern processing apparatus capable of writing color data into a video memory quickly.
Yet another object of the present invention is to provide a display pattern processing apparatus suitable for producing a multicolor display.
In accordance with these and other objects, a display pattern processing apparatus of the present invention comprises means for producing display pattern data, means for generating a plurality of color codes, a memory for storing a plurality of programs, means for reading a selected one of the programs out of the memory in accordance with the color codes, means for producing color data according to the program which has been read out, and means for writing the color data into a video memory. The reading means assigns one of the programs for a red video memory, a green video memory, and a blue video memory, respectively, according to the plurality of color codes. These color codes are combined according to a predetermined order and are used as an address.
According to the present invention, color data to be displayed are produced in a single program execution. Therefore, color data can be written into a video memory in a single writing operation, and changing of contents of the video memories is required. Thus, color display control is simplified, and high speed color display can be obtained. Further, a color display program is selected on the basis of the color codes for the color display. In other words, the combination of the color codes is used as an address for designating a program. Therefore, selection of a program is easy and may be performed at high speed.
According to the present invention, 2n programs are employed when n colors are displayed, as described hereinafter. If digital pattern processing, such as filing or masking, is employed, the programs may be modified, or another program may be added as desired. In such a case, a digital code designating the required digital pattern processing would be required. A program to be executed is selected according to the combination of the color codes with the digital code.
The present invention now will be described in accordance with the accompanying drawings, wherein:
FIG. 1 shows a block diagram of a conventional pattern processing apparatus:
FIG. 2 represents a conventional writing operation into video memories;
FIG. 3 shows a block diagram of a display pattern processing apparatus according to one embodiment of the present invention:
FIG. 4 shows a detailed block diagram of a table memory and a program memory shown in FIG. 3;
FIG. 5 shows a flow chart for a color data writing operation according to the present invention; and
FIG. 6 represents a writing operation into video memories in accordance with the present invention.
As has been known, and as shown in FIG. 1, pattern data generated by a pattern generator 1 and a color code generated by a color code generator 2 are applied to a writing control circuit 3. When multicolor display is required, a plurality of color codes are generated by the color code generator 2. The writing control circuit 3 produces red, green, and blue color data, and writes them into video memories 4 (R), 5 (G), and 6 (B), respectively. The color data in the video memories are converted into a color video signal by a video signal generator 7 and are transferred to a display unit 8, such as a CRT. Here, each video memory can store at least as many bits as there are picture elements (dots) on a CRT screen.
A conventional video memory writing operation now will be explained with reference to FIG. 2 for the operation steps, and to FIG. 1 for structural elements. Let it now be assumed that a pattern "0 1 0" is displayed at arbitrary address locations XX, XX+1, XX+2 on a CRT screen. When a red color is displayed in locations XX and XX+2 corresponding to the pattern data "0" and a black color is displayed in the location XX+1 corresponding to the pattern "1", a red color code "1 0 0" and a black color code "0 0 0" are generated by the color code generator 2. In this case, red is displayed on a background represented by the pattern data "0", while black is displayed on a foreground represented by the pattern data "1". That is, red (R) - black (B) - red (R) are sequentially displayed on the screen.
As has been known, a "1" is written at all address locations XX, XX+1' and XX+2 of the video memory 4 (R), and a "0" is written at all address locations XX, XX+1, and XX+2 of the video memories 5 (G) and 6 (B), respectively. With this condition, red is displayed at all locations XX, XX+1, and XX+2 on the screen. Thereafter, a second writing operation is required to change red color data at the location XX'1 to black color data. According to the second writing operation, a "0" is written at the address location XX+1 of the video memories 4, 5, and 6, respectively. Thus, red is displayed in the background, while black is displayed in the foreground.
As described above, three writing operations are required to display red, and at least one additional writing operation is required thereafter to display black, consuming a great deal of time as a result.
One embodiment of the present invention is shown in FIG. 3. In FIG. 3, pattern data and a color code generated by display pattern data generator 1 and color code generator 2, respectively, are entered into a control circuit 9 by means of an operator console (e.q. keyboard, disk or the like) or under program control. The control circuit 9 produces an address for designating tables 10, 11, and 12 according to the color code. As described above, a plurality of color codes are entered into the control circuit 9 for multicolor display.
In this embodiment, three tables are prepared. The table 10 is used to select a program by which color data to be written into the video memory 4 (R) is produced. The other tables 11 and 12 are used to select programs for producing color data to be written into the video memories 5 (G) and 6 (B), respectively. These tables are preliminarily prepared in a table memory (not shown), such as a read-only memory (ROM), a RAM, or the like. An output of each table is sent to an address control circuit 13 to select one of a plurality of programs stored in a program memory 14. The selected program is applied to a program execution circuit 15. The program execution circuit 15 produces color data by using the pattern data transferred through a bus 16 according to the selected program. The color data is written into one of the respective video memories 4, 5, and 6.
Referring to FIG. 4, the tables and the program memory now will be described in detail. Here, tables and programs to display two colors (red and black) have been prepared as an example. The background (BG) is red, while the foreground (FG) is black. Since two colors are displayed, at least four programs PO to P3 are prepared. Start addresses of these four programs PO to P3 are PAO, PA1, PA2, and PA3, respectively. A table memory 19 contains three tables 10, 11, and 12, each of which stores 64 start addresses in a predetermined order.
When the pattern data "0" is red and "1" is black as in FIG. 6 which describes a writing operation, FIGS. 3 and 4 showing corresponding structural elements, the red color code "1 0 0" and the black color code "0 0 0" are entered into the control circuit 9. The control circuit 9 has a register 17. The red code "1 0 0" of the background is stored in a lower portion of the register 17, and the black code "0 0 0" of the foreground is stored in an upper portion of the register 17, as shown in FIG. 4. Thus, the black and red codes are combined and are used as an address for accessing the table memory 19.
The content of the register, which is used as an address for accessing the table memory 19, is decoded by a decoder 18 and is applied to the table memory 19. In this case, the address "0 0 0 1 0 0" represents "4", so that the address "4" of the table memory 19 is designated. Thus, the start addresses PA3, PAO, and PAO are read out of the tables 10, 11, and 12, respectively, and are decoded by a decoder 20. The start address PA3 read out of the table 10 designates a program P3. The start address PAO read out of the tables 11 and 12 designate a program PO, respectively.
Now, when two color codes A (R1 G1 B1) and B (R2 G2 B2) are used, there are four combinations of R1 with R2 in each red bit portion, that is, , , , and . With respect to the green bit portion (G1 and G2) and the blue bit portion (B1 and B2), there are also four combinations, the same as those of the red bit portions.
When the combination of bit portions is , the color data is "0". When the combination is , the color data is "1". When the combination is , the color data is pattern data input from the display pattern generator 1, and when the combination is , the color data is an inversion of the pattern data. Therefore, four programs PO to write "0", P1 to write "1", P2 to write the pattern data, and P3 to write the inverted pattern data into a video memory are stored in the program memory 14.
The combination of bit portions for a two-color display and the programs to be selected are shown in Table 2 below.
TABLE 2______________________________________Code FG BG Start Address Program______________________________________R 0 0 PA0 P0 0 1 PA3 P3 1 0 PA2 P2 1 1 PA1 P1G 0 0 PA0 P0 0 1 PA3 P3 1 0 PA2 P2 1 1 PA1 P1B 0 0 PA0 P0 0 1 PA3 P3 1 0 PA2 P2 1 1 PA1 P1______________________________________
P0: write "0" into a video memory
P1: write "1" into a video memory
P2: write "pattern data" into a video memory
P3: write "inverted pattern data" into a video memory
In the case where the foreground is black "0 0 0" and the background is red "1 0 0", three programs are selected, as shown in Table 3 below.
TABLE 3______________________________________FG BG StartBlack Red Address Program______________________________________R 0 1 PA3 P3G 0 0 PA0 P0B 0 0 PA0 P0______________________________________
A writing operation according to this embodiment now will be described with reference to FIG. 5 for the operation steps, and to FIGS. 3 and 4 for structural elements. In response to a processing start command, the control circuit 9 resets a counter register (N) to zero and enters pattern data "0 1 0" displayed at address locations XX, XX'1, and XX'2 on a screen. The black code "0 0 0" for the pattern data "1" and red code "1 0 0" for the pattern data "0" are applied to the control circuit 9 and are set in the register 17. At this point, the content of the register 17 is "0 0 0 0 0", or "4". Thus, the start address PA3 is read out of the table 10, so that the program P3 is selected and applied to the program execution circuit 15. The program execution circuit 15 produces the inverted pattern data "1 0 1" according to the program P3. As a result, the color data "1 0 1" is written into the address locations XX, XX'1, and XX'2 of the video memory 4 (R) at the same time.
When the writing operation of the color data "1 0 1" is terminated, the counter register (N) is incremented by +1. At this time, since the content of the counter register (N) is not "2", the program PO is selected by the start address PAO of the table 11 to which the address "0 0 0 1 0 0" is applied. The program execution circuit 15 produces color data "0 0 0" in accordance with execution of the program PO. The produced color data "0 0 0" is written into the address locations XX, XX+1 and XX+2 of the video memory 5 (G) at the same time.
Thereafter, the counter register (N) is further incremented by +1. Then, the program PO is executed again in accordance with the start address PAO of the table 12. Thus, the color data "0 0 0" is written into the address locations XX, XX+1, and XX+2 of the video memory 6 (B) at the same time. At this point, since the content of the register (N) is "2", the writing operation of the color pattern corresponding to the address locations XX, XX'1, and XX'2 of the video memories 4, 5, and 6 is terminated. As a result of the writing operation, red-black-red is sequentially displayed on the screen, as shown in FIG. 6.
According to this embodiment, color data can be written into the respective video memories in at most three writing operations. Of course, these writing operations can be performed in parallel, rather than in series. Further, no operation to change the content of the video memories is required. Thus, the color data processing can be performed quickly. Moreover, since the tables 10, 11, and 12 are accessed by the combination of color codes, program selection is very easy. For example, when the foreground (FG) is red (color code "1 0 0") and the background (BG) is green (color code "0 1 0"), the content of the register 17 is "1 0 0 0 1 0", or "34". As a result, the start addresses PA2, PA3, and PAO are designated, respectively, and the programs P2, P3, and PO are selected, as shown in FIG. 4. Thus, arbitrary color data can be produced easily, at high speed.
If the color code generator generates more than two colors for multicolor display (three, for example), then three color codes are combined and are used as an address for designating start addresses. Eight (23) start addresses PAO to PA7 and eight programs PO to P7 are used because there are 8 combinations of each color bit portions, that is, , , , . . . , . To select one of eight programs, a table having 512 (29) address locations is required. However, the color data can be written into the respective video memory in one writing operation.
Further, when filing or masking is required, a control code designating filing or masking is combined with a color code or codes, and is used as an address for accessing tables. In this case, the color data can be produced at high speed through digital pattern processing and color processing.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US3389404 *||Sep 20, 1965||Jun 18, 1968||Bunker Ramo||Control/display apparatus|
|US4016544 *||Jun 17, 1975||Apr 5, 1977||Tokyo Broadcasting System Inc.||Memory write-in control system for color graphic display|
|US4490797 *||Jan 18, 1982||Dec 25, 1984||Honeywell Inc.||Method and apparatus for controlling the display of a computer generated raster graphic system|
|US4528636 *||Oct 19, 1981||Jul 9, 1985||Intermark Industries, Inc.||Display memory with write inhibit signal for transparent foreground pixel codes|
|US4595917 *||Jun 13, 1983||Jun 17, 1986||Vectrix Corporation||Data processing technique for computer color graphic system|
|US4635048 *||Feb 6, 1985||Jan 6, 1987||Ascii Corporation||Video display controller|
|US4641282 *||May 24, 1983||Feb 3, 1987||Tokyo Shbaura Denki Kabushiki Kaisha||Memory system|
|US4677427 *||Sep 17, 1984||Jun 30, 1987||Hitachi, Ltd.||Display control circuit|
|US4689613 *||Jun 4, 1985||Aug 25, 1987||Hitachi, Ltd.||Character and pattern display system|
|1||*||Prokop, IBM Technical Disclosure Bulletin, vol. 20, No. 4, Sep. 1977, pp. 1290 1291.|
|2||Prokop, IBM Technical Disclosure Bulletin, vol. 20, No. 4, Sep. 1977, pp. 1290-1291.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US5237517 *||Aug 29, 1990||Aug 17, 1993||Xerox Corporation||Color printing having a highlight color image mapped from a full color image|
|US5254977 *||Jul 13, 1992||Oct 19, 1993||Crosfield Electronics Ltd.||Color display|
|US5276788 *||Apr 12, 1990||Jan 4, 1994||Quantel Limited||Video image creation systems|
|US5299301 *||Dec 7, 1992||Mar 29, 1994||Hitachi, Ltd.||Image displaying method and apparatus|
|US5309552 *||Oct 18, 1991||May 3, 1994||International Business Machines Corporation||Programmable multi-format display controller|
|US5355443 *||Nov 12, 1992||Oct 11, 1994||University Of Washington||Image computing system|
|US5428743 *||Mar 30, 1992||Jun 27, 1995||Nec Corporation||Arrangement and method of accessing frame buffer in raster-scan type computer system|
|US5544335 *||Jun 24, 1994||Aug 6, 1996||Mitsubishi Denki Kabushiki Kaisha||Processor for data transmitted in accordance with a plurality of transmission methods, which generates output data applicable to the output device|
|US5594473 *||Mar 8, 1993||Jan 14, 1997||Escom Ag||Personal computer apparatus for holding and modifying video output signals|
|US5721884 *||Sep 30, 1994||Feb 24, 1998||Canon Kabushiki Kaisha||Apparatus for combining and separating color component data in an image processing system|
|US5734484 *||Nov 1, 1993||Mar 31, 1998||Canon Kabushiki Kaisha||Image processing apparatus for receiving multicolor image information and generating two-color image information|
|US6185013 *||Dec 23, 1996||Feb 6, 2001||Xerox Corporation||Color printing having a plural highlight color image map in a full color image|
|US6556212 *||Aug 15, 2000||Apr 29, 2003||Joseph W. Griffin||Method and apparatus for displaying a chain of rotating color output units on a displayer of a data processing system|
|US6559975 *||Jun 15, 1999||May 6, 2003||Microsoft Corporation||Full-color to a spot-color image converter|
|US6934054 *||Aug 4, 2000||Aug 23, 2005||Transact Technologies Incorporated||Method and apparatus for two-color thermal point of sale (POS) printing|
|US8941513 *||Nov 20, 2013||Jan 27, 2015||Nicolas Thomas Mathieu Dupont||Variable frequency data transmission|
|WO1991019247A1 *||Mar 7, 1991||Dec 12, 1991||University Of Washington||Image computing system|
|U.S. Classification||345/593, 345/594, 345/550, 345/629, 345/639, 345/601, 345/565|
|International Classification||G09G5/36, G09G5/02, G06T11/00, G09G5/06|
|Jan 2, 1990||AS||Assignment|
Owner name: NEC CORPORATION, JAPAN
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST.;ASSIGNOR:IWATA, TSUKASA;REEL/FRAME:005203/0390
Effective date: 19860402
|Jul 16, 1991||CC||Certificate of correction|
|Jul 13, 1993||FPAY||Fee payment|
Year of fee payment: 4
|Sep 12, 1997||FPAY||Fee payment|
Year of fee payment: 8
|Aug 24, 2001||FPAY||Fee payment|
Year of fee payment: 12