Hi.
Some months ago I found a Windows application that needs 32bit DIB's to work properly, or else the interface looks completely destroyed. Setting X to 15 or 8 bit makes Wine crash in that case, 16 and 24 bit leads to a scrambled interface. So, given that Windows uses (assumes) 32bit depth, and X won't handle more than 24bit, why not always assume 32bit depth when X is running on 24bit (and report this to Windows apps) and convert the DIB's to 24bit later, without the applications noticing? I think there are some other applications that work with 16 or 32bit, but not with 24 bit - this should make them work, too (Propellerhead's Reason for example, I think)... I would try to do something like this myself, but I'm afraid my limited PHP knowledge won't cut it. ;-)
The application mentioned is Mirage by Bauhaus Software, a demo can be found at http://www.bauhaussoftware.com .