That's good code RichardL - highlighted just how different my monitors are, even though they are the same make and model. Not sure how I'm going to adjust them though........
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
For gamma (the only thing you can really set quite reliably by just using your eyes and the environment light you are normally exposed) I use this software with good results -> http://quickgamma.de/indexen.html
Hi,
Your procedure DrawGrayScale() needs to have the Window number passed to it...
and then the Repaint will need to provide a Window number (probably all of them!)
Richard
For gamma (the only thing you can really set quite reliably by just using your eyes and the environment light you are normally exposed) I use this software with good results -> http://quickgamma.de/indexen.html
That's fine with just one combination of computer and monitor, such as a laptop. With one computer and several monitors, IMO you're better off setting the computer's gamma to the standard of 2.2, which can be done with QuickGamma, and dealing with gamma issues in hardware for each individual monitor.
Good point, I use it with a single monitor per PC.
With multiple monitors connected to a single PC your approach it's probably better and easier to manage (for you and the software running on it).
In this thread: http://www.purebasic.fr/english/viewtop ... 12&t=59993 I posted a toy program which will allow you to adjust the Windows gamma ramp. You can set it to 2.2 (the Windows de-facto standard) and unless your monitor is grossly off, it should be pretty close. I'm not a fan of these programs where you squint at a pattern on the screen and try to match gray levels. At least with my gamma toy or Quick Gamma you can set the gamma to the known value of 2.2 and adjust your monitor hardware while you squint at circles.
One gripe about the Windows gamma adjuster is that it is not calibrated, i.e. you don't know what value you're setting it to. If it becomes misadjusted you have to squint at dots all over again instead of returning it to a known, repeatable value.