ok sorry for cutting and pasting the whole routine.. did not see to do just the diff ... (give the old guy a break.. I am an architect now not a programmer <G>)
here is the diff :
119d118 < 122d120 <???? WineD3D_PixelFormat *cfgs = This->adapter->cfgs; 124,125c122,124 <???? TRACE("ColorFormat=%s, DepthStencilFormat=%s, auxBuffers=%d, numSamples=%d, pbuffer=%d, findCompatible=%d\n", <?????????? debug_d3dformat(ColorFormat), debug_d3dformat(DepthStencilFormat), auxBuffers, numSamples, pbuffer, findCompatible); ---
???? WineD3D_PixelFormat *cfgs = This->adapter->cfgs; ???? BOOL exactDepthMatch = FALSE;? /*Changed june 23,08 */?? ???? PIXELFORMATDESCRIPTOR pfd;???? /*Changed june 23,08 */
148,150c147,151 <???? if(DepthStencilFormat) { <???????? getDepthStencilBits(DepthStencilFormat, &depthBits, &stencilBits); <???? } ---
/* Changed Section June 24,08 */
/*??? if(DepthStencilFormat) {???????????????????? Changed June 19,08*/ ???? getDepthStencilBits(DepthStencilFormat, &depthBits, &stencilBits); /*??? } */
153,154c154,155 <???? for(i=0; i<nCfgs; i++) { <???????? BOOL exactDepthMatch = TRUE; ---
???? for(i=0; i<nCfgs; i++) ?????? {
156c157 < ---
????????????????????
160c161 <???????????? continue; ---
??????????? continue;
164c165 <???????????? continue; ---
??????????? continue;
166c167 <???????? /* We like to have aux buffers in backbuffer mode */ ---
??????? /* We like to have aux buffers in backbuffer mode */
168c169 <???????????? continue; ---
??????????? continue;
172,181c173 <???????????? continue; < <???????? if(cfgs->redSize != redBits) <???????????? continue; <???????? if(cfgs->greenSize != greenBits) <???????????? continue; <???????? if(cfgs->blueSize != blueBits) <???????????? continue; <???????? if(cfgs->alphaSize != alphaBits) <???????????? continue; ---
????????????? continue;
183,188c175,176 <???????? /* We try to locate a format which matches our requirements exactly. In case of <????????? * depth it is no problem to emulate 16-bit using e.g. 24-bit, so accept that. */ <???????? if(cfgs->depthSize < depthBits) <???????????? continue; <???????? else if(cfgs->depthSize > depthBits) <???????????? exactDepthMatch = FALSE; ---
???????? if ((cfgs->redSize != redBits) || (cfgs->greenSize != greenBits) || (cfgs->blueSize != blueBits) || (cfgs->alphaSize != alphaBits)) ????????????? continue;
194,195c182,183 <???????? if(stencilBits != cfgs->stencilSize && !(This->adapter->brokenStencil && stencilBits <= cfgs->stencilSize)) <???????????? continue; ---
???????? if((stencilBits != cfgs->stencilSize) && !((This->adapter->brokenStencil && stencilBits) <= cfgs->stencilSize)) ????????????? continue;
199c187 <???????????? continue; ---
????????????? continue;
201,205c189,192 <???????? /* When we have passed all the checks then we have found a format which matches our <????????? * requirements. Note that we only check for a limit number of capabilities right now, <????????? * so there can easily be a dozen of pixel formats which appear to be the 'same' but <????????? * can still differ in things like multisampling, stereo, SRGB and other flags. <????????? */ ---
???????? /* We try to locate a format which matches our requirements exactly. In case of ????????? * depth it is no problem to emulate 16-bit using e.g. 24-bit, so accept that. */ ????????? if (cfgs->depthSize !=? depthBits) ???????????? continue;
208c195,197 <???????? if(exactDepthMatch) { ---
???????? if (exactDepthMatch) ??????????? { ???????????? TRACE("Exact Depth Match\n");
211c200,202 <???????? } else if(!iPixelFormat) { ---
??????????? } ???????? if (!iPixelFormat) ?????????? {
214a206
???????????? TRACE("Emulating %d\n",cfgs->iPixelFormat);
216c208,209 <???????? } ---
???????????? break; /* Added June 24,08 */ ?????????? }
220c213,215 <???? if(!iPixelFormat && !findCompatible) { ---
/*??? if (!iPixelFormat && !findCompatible) ?????? {
223,225c218,222 <???? } else if(!iPixelFormat) { <???????? PIXELFORMATDESCRIPTOR pfd; < ---
?????? } */ ?????? ???? if (!iPixelFormat) ?????? {
238c235 < ---
????????
240,245c237,243 <???????? if(!iPixelFormat) { <???????????? /* If this happens something is very wrong as ChoosePixelFormat barely fails */ <???????????? ERR("Can't find a suitable iPixelFormat\n"); <???????????? return FALSE; <???????? } <???? } ---
???????? if (!iPixelFormat) ?????????? { ??????????? /* If this happens something is very wrong as ChoosePixelFormat barely fails */ ??????????? ERR("Can't find a suitable iPixelFormat\n"); ??????????? return FALSE; ?????????? } ?????? }
247c245 <???? TRACE("Found iPixelFormat=%d for ColorFormat=%s, DepthStencilFormat=%s\n", iPixelFormat, debug_d3dformat(ColorFormat), debug_d3dformat(DepthStencilFormat)); ---
???? TRACE("Found iPixelFormat\n");
374a373
???????????? TRACE("Choose Pixel Format Failed\n");
Chris