I am sorry everyone for the spam =)
been awhile since I developed stuff, been so used to designing things  =)

here in all its glorry is the diff -u context.c context.c.new > diff.txt file

I couldnt get the -c option to work so here is just the -u

--- context.c    2008-06-26 13:52:57.000000000 -0400
+++ context.c.change    2008-06-26 14:32:48.000000000 -0400
@@ -116,13 +116,12 @@
     int iPixelFormat=0;
     short redBits, greenBits, blueBits, alphaBits, colorBits;
     short depthBits=0, stencilBits=0;
-
     int i = 0;
     int nCfgs = This->adapter->nCfgs;
-    WineD3D_PixelFormat *cfgs = This->adapter->cfgs;
 
-    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 */
 
     if(!getColorBits(ColorFormat, &redBits, &greenBits, &blueBits, &alphaBits, &colorBits)) {
         ERR("Unable to get color bits for format %s (%#x)!\n", debug_d3dformat(ColorFormat), ColorFormat);
@@ -145,84 +144,91 @@
 
     DepthStencilFormat = WINED3DFMT_D24S8;
 
-    if(DepthStencilFormat) {
-        getDepthStencilBits(DepthStencilFormat, &depthBits, &stencilBits);
-    }
+/* Changed Section June 24,08 */
+
+#if 0
+    if(DepthStencilFormat)
+      {                    
+    getDepthStencilBits(DepthStencilFormat, &depthBits, &stencilBits);
+    }
+#endif
+
+/* Just call getDepthStencilBits as the above IF will always in this case be true */
+
+    getDepthStencilBits(DepthStencilFormat, &depthBits, &stencilBits);
 
     /* Find a pixel format which EXACTLY matches our requirements (except for depth) */
-    for(i=0; i<nCfgs; i++) {
-        BOOL exactDepthMatch = TRUE;
+    for(i=0; i<nCfgs; i++)
+      {
         cfgs = &This->adapter->cfgs[i];
-
+                   
         /* For now only accept RGBA formats. Perhaps some day we will
          * allow floating point formats for pbuffers. */
         if(cfgs->iPixelType != WGL_TYPE_RGBA_ARB)
-            continue;
+           continue;
 
         /* In window mode (!pbuffer) we need a window drawable format and double buffering. */
         if(!pbuffer && !(cfgs->windowDrawable && cfgs->doubleBuffer))
-            continue;
+           continue;
 
-        /* We like to have aux buffers in backbuffer mode */
+       /* We like to have aux buffers in backbuffer mode */
         if(auxBuffers && !cfgs->auxBuffers)
-            continue;
+           continue;
 
         /* In pbuffer-mode we need a pbuffer-capable format but we don't want double buffering */
         if(pbuffer && (!cfgs->pbufferDrawable || cfgs->doubleBuffer))
-            continue;
+             continue;
 
-        if(cfgs->redSize != redBits)
-            continue;
-        if(cfgs->greenSize != greenBits)
-            continue;
-        if(cfgs->blueSize != blueBits)
-            continue;
-        if(cfgs->alphaSize != alphaBits)
-            continue;
-
-        /* 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;
 
         /* In all cases make sure the number of stencil bits matches our requirements
          * even when we don't need stencil because it could affect performance EXCEPT
          * on cards which don't offer depth formats without stencil like the i915 drivers
          * on Linux. */
-        if(stencilBits != cfgs->stencilSize && !(This->adapter->brokenStencil && stencilBits <= cfgs->stencilSize))
-            continue;
+        if((stencilBits != cfgs->stencilSize) && !((This->adapter->brokenStencil && stencilBits) <= cfgs->stencilSize))
+             continue;
 
         /* Check multisampling support */
         if(cfgs->numSamples != numSamples)
-            continue;
+             continue;
 
-        /* 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;
 
         /* Exit the loop as we have found a format :) */
-        if(exactDepthMatch) {
+        if (exactDepthMatch)
+           {
+            TRACE("Exact Depth Match\n");
             iPixelFormat = cfgs->iPixelFormat;
             break;
-        } else if(!iPixelFormat) {
+           }
+        if (!iPixelFormat)
+          {
             /* In the end we might end up with a format which doesn't exactly match our depth
              * requirements. Accept the first format we found because formats with higher iPixelFormat
              * values tend to have more extended capabilities (e.g. multisampling) which we don't need. */
+
+            TRACE("Emulating %d\n",cfgs->iPixelFormat);
             iPixelFormat = cfgs->iPixelFormat;
-        }
+            break; /* Added June 24,08 */
+          }
     }
 
     /* When findCompatible is set and no suitable format was found, let ChoosePixelFormat choose a pixel format in order not to crash. */
-    if(!iPixelFormat && !findCompatible) {
+
+#if 0   
+if (!iPixelFormat && !findCompatible)
+      {
         ERR("Can't find a suitable iPixelFormat\n");
         return FALSE;
-    } else if(!iPixelFormat) {
-        PIXELFORMATDESCRIPTOR pfd;
-
+      }
+#endif
+     
+    if (!iPixelFormat)
+      {
         TRACE("Falling back to ChoosePixelFormat as we weren't able to find an exactly matching pixel format\n");
         /* PixelFormat selection */
         ZeroMemory(&pfd, sizeof(pfd));
@@ -235,16 +241,17 @@
         pfd.cDepthBits = depthBits;
         pfd.cStencilBits = stencilBits;
         pfd.iLayerType = PFD_MAIN_PLANE;
-
+       
         iPixelFormat = ChoosePixelFormat(hdc, &pfd);
-        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;
+          }
+      }
 
-    TRACE("Found iPixelFormat=%d for ColorFormat=%s, DepthStencilFormat=%s\n", iPixelFormat, debug_d3dformat(ColorFormat), debug_d3dformat(DepthStencilFormat));
+    TRACE("Found iPixelFormat\n");
     return iPixelFormat;
 }
 
@@ -372,6 +379,7 @@
 
         /* If we still don't have a pixel format, something is very wrong as ChoosePixelFormat barely fails */
         if(!iPixelFormat) {
+            TRACE("Choose Pixel Format Failed\n");
             ERR("Can't find a suitable iPixelFormat\n");
             return FALSE;
         }


Better?

Chris