Original Post
hey, When I set my display to 1024x768x32 I works until I try to create an offscreen surface in video memory, thats when I get a DDERR_NODIRECTDRAWHW error. I have a Geforce2 MX 100/200 with 32mb. EnumDisplayModes() and the manual says the card can handle that mode and more, but GetCaps() returns DDCAPS_NOHARDWARE. So what is the Geforce doing? Here is the code to create the offscreen surface:
memset(&ddsd, 0, sizeof(ddsd));
ddsd.dwSize=sizeof(ddsd);
ddsd.dwFlags = DDSD_CAPS | DDSD_WIDTH | DDSD_HEIGHT;
ddsd.dwWidth = this->width;
ddsd.dwHeight = this->height;
//mem_flag = DDSCAPS_VIDEOMEMORY in this case
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN | mem_flag;
retval = this->lpdd7->CreateSurface(&ddsd, &this->lpdds, NULL);
My program works perfectly in 1024x768x8 mode, so the error doesn't make any sense to me. Any thoughts? Thanks D