Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!samsung!zaphod.mps.ohio-state.edu!wuarchive!husc6!m2c!jjmhome!cpoint!alien From: alien@cpoint.UUCP (Alien Wells) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: 256 GrayScale Matching to 256 Colors Keywords: Look Up Table Needed Message-ID: <4158@cpoint.UUCP> Date: 2 Mar 90 20:12:49 GMT References: <858@dukempd.phy.duke.edu> <1990Mar2.043848.501@uncecs.edu> Reply-To: alien@cpoint.UUCP (Alien Wells) Organization: Clearpoint Research Corp., Hopkinton Mass. Lines: 26 In article <1990Mar2.043848.501@uncecs.edu> cjl@uncecs.edu (Charles J. Lord) writes: >It sounds possible, but the problem is that the color pallette >on the VGA is 18 bits: 6 each R,G,&B. To do a true gray scale >with a color monitor, you can only define a 64-shade scale. It seems to me that a similar thing could be done for a color VGA system. start with all three colors 0. To fill suceeding registers, use the following algorithm, cycling until all registers are complete: - increment R by 1 - increment G by 1 - increment B by 1, decrement G by 1 - increment G by 1 Thus, you get colors like: - 00,00,00 01,00,00 01,01,00 01,00,01 01,01,01 02,01,01 The nice thing about using this is that the colors rendered would look like a gray scale (they all approximate the vector running through the center of color space). The total number of colors is 4 * 2**6 = 2**8 = 256, thus all registers are used. The only 'bug' is in the one discontinuity where G is being decremented, but 01,01,00 will at least be different than 01,00,01, and my suspicion is that the progression would look natural. -- --------| Then am I a happy fly, If I live or if I die. Alien | - William Blake --------| jjmhome!cpoint!alien bu-cs!mirror!frog!cpoint!alien