#elif TARGET_HOST_WIN32
- DEVMODE devMode;
+/* DEVMODE devMode; */
/*
* Grab the current desktop settings...
unsigned int displayModes = 0, mode = 0xffffffff;
GLboolean success = FALSE;
- HDC desktopDC;
+/* HDC desktopDC; */
DEVMODE devMode;
/*
* Enumerate the available display modes
+ * Try to get a complete match
*/
while( EnumDisplaySettings( NULL, displayModes, &devMode ) == TRUE )
{
* Does the enumerated display mode match the user's preferences?
*/
if( fghCheckDisplayMode( devMode.dmPelsWidth, devMode.dmPelsHeight,
- devMode.dmBitsPerPel, fgState.GameModeRefresh ) )
+ devMode.dmBitsPerPel, devMode.dmDisplayFrequency ) )
{
/*
* OKi, we've found a matching display mode, remember its number and break
displayModes++;
}
+ if ( mode == 0xffffffff )
+ {
+ /* then try without Display Frequency */
+ displayModes = 0;
+
+ /*
+ * Enumerate the available display modes
+ */
+ while( EnumDisplaySettings( NULL, displayModes, &devMode ) == TRUE )
+ {
+ /* then try without Display Frequency */
+
+ if( fghCheckDisplayMode( devMode.dmPelsWidth, devMode.dmPelsHeight,
+ devMode.dmBitsPerPel, fgState.GameModeRefresh))
+ {
+ /*
+ * OKi, we've found a matching display mode, remember its number and break
+ */
+ mode = displayModes;
+ break;
+ }
+
+ /*
+ * Switch to the next display mode, if any
+ */
+ displayModes++;
+ }
+ }
+
/*
* Did we find a matching display mode?
*/