tkWinX.c specifies a value of FC for the green_mask in
16 bit mode. While 5-6-5 is a supported Windows DIB
format, a quick glance at tkWinImage.c (line 140) shows
that Tk uses the 5-5-5 format. Therefore, the value
should be F8 for R, G, and B.
Here is a patch to correct it:
--- tkWinX.c.old Mon Jul 9 12:46:10 2001
+++ tkWinX.c Mon Aug 20 14:35:22 2001
@@ -383,7 +383,7 @@
screen->root_visual->class = TrueColor;
screen->root_visual->map_entries = 64;
screen->root_visual->red_mask = 0xf8;
- screen->root_visual->green_mask = 0xfc00;
+ screen->root_visual->green_mask = 0xf800;
screen->root_visual->blue_mask = 0xf80000;
} else if (screen->root_depth >= 24) {
screen->root_visual->class = TrueColor;