91 BITMAPINFO *pbmiDIB = ( BITMAPINFO * ) &dibheader;
95 memset( &dibheader, 0,
sizeof( dibheader ) );
109 if ( GetDeviceCaps(
sww_state.
hDC, RASTERCAPS ) & RC_PALETTE )
130 pbmiDIB->bmiHeader.biSize =
sizeof(BITMAPINFOHEADER);
131 pbmiDIB->bmiHeader.biWidth =
vid.
width;
132 pbmiDIB->bmiHeader.biHeight =
vid.
height;
133 pbmiDIB->bmiHeader.biPlanes = 1;
134 pbmiDIB->bmiHeader.biBitCount = 8;
135 pbmiDIB->bmiHeader.biCompression = BI_RGB;
136 pbmiDIB->bmiHeader.biSizeImage = 0;
137 pbmiDIB->bmiHeader.biXPelsPerMeter = 0;
138 pbmiDIB->bmiHeader.biYPelsPerMeter = 0;
139 pbmiDIB->bmiHeader.biClrUsed = 256;
140 pbmiDIB->bmiHeader.biClrImportant = 256;
145 for (
i = 0;
i < 256;
i++ )
168 if ( pbmiDIB->bmiHeader.biHeight > 0 )
181 MONITORINFOEX monInfo;
182 memset(&monInfo, 0,
sizeof(MONITORINFOEX));
183 monInfo.cbSize =
sizeof(MONITORINFOEX);
184 GetMonitorInfo( MonitorFromWindow(
sww_state.
hWnd, MONITOR_DEFAULTTOPRIMARY), (LPMONITORINFO)&monInfo );
186 ChangeDisplaySettingsEx(monInfo.szDevice,
NULL,
NULL, 0,
NULL);
192 DWORD WindowStyle, ExWindowStyle;
194 WindowRect.top = monInfo.rcMonitor.top;
195 WindowRect.left = monInfo.rcMonitor.left;
199 memset(&gdevmode, 0,
sizeof(gdevmode));
200 gdevmode.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT;
203 gdevmode.dmSize =
sizeof (gdevmode);
205 if ( ChangeDisplaySettingsEx( monInfo.szDevice, &gdevmode,
NULL, CDS_FULLSCREEN,
NULL ) != DISP_CHANGE_SUCCESSFUL )
211 GetMonitorInfo( MonitorFromWindow(
sww_state.
hWnd, MONITOR_DEFAULTTOPRIMARY), (LPMONITORINFO)&monInfo );
214 monInfo.rcMonitor.left, monInfo.rcMonitor.top,
217 SWP_NOACTIVATE | SWP_NOCOPYBITS | SWP_NOOWNERZORDER | SWP_NOREPOSITION | SWP_NOZORDER))
223 WindowStyle = WS_POPUP | WS_SYSMENU | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
226 AdjustWindowRectEx(&WindowRect, WindowStyle,
FALSE, 0);
228 SetWindowLong(
sww_state.
hWnd, GWL_STYLE, WindowStyle | WS_VISIBLE);