papa@pollux.usc.edu (Marco Papa) (08/18/90)
A Microsft source told me that Palettes are "programmable" ONLY with drivers and hardware that support 256 colors (or more). This seems to be quite restrictive considering that VGA can really have a huge palette (256K). Now the question comes up: is this an "inherent" misfeature of Windows, or could somebody write a 16 color VGA driver, in which the 16 colors CAN be changed by changing the system palette? -- Marco -- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= "Xerox sues somebody for copying?" -- David Letterman -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
kensy@microsoft.UUCP (Ken SYKES) (08/20/90)
In article <26680@usc.edu> papa@pollux.usc.edu (Marco Papa) writes: >A Microsft source told me that Palettes are "programmable" ONLY with drivers >and hardware that support 256 colors (or more). This seems to be quite >restrictive considering that VGA can really have a huge palette (256K). >Now the question comes up: is this an "inherent" misfeature of >Windows, or could somebody write a 16 color VGA driver, in which the >16 colors CAN be changed by changing the system palette? It should be possible to write a palette-based 16 color driver but it is questionable whether one would want to do this. Remember that there are reserved colors that windows uses to draw windows, icons, etc. In order to actually set the colors you would also have to issue an escape saying that you are taking over the entire palette - this is a very unsocial thing to do. And after all of this you would have 14 palette entries to work with (windows keeps two for b/w.) These would have to be shared by all the palette apps and your main windows will look cruddy most likely. A 16 color palette just doesn't give you too much breathing room. A move intermediate solution is to change the driver default colors to something more specialized, say all grey scales for instance. This will allow windows to run (although the window colors will still be messed up) but you get some interesting results. This would require the DDK to do this or some creative NORTONing in the .drv file ;-) Hope this answers your question. Ken Sykes Disclaimer: These opinions are mine, all mine!