diff --git a/src/gameconfigfile.cpp b/src/gameconfigfile.cpp index ee52313ce..20da4c699 100644 --- a/src/gameconfigfile.cpp +++ b/src/gameconfigfile.cpp @@ -487,6 +487,17 @@ void FGameConfigFile::DoGlobalSetup () } } } + if (last < 217) + { + auto var = FindCVar("vid_scalemode", NULL); + UCVarValue newvalue; + newvalue.Int = 2; + if (var != NULL) + { + UCVarValue v = var->GetGenericRep(CVAR_Int); + if (v.Int == 3) var->SetGenericRep(newvalue, CVAR_Int); + } + } } } } diff --git a/src/r_videoscale.cpp b/src/r_videoscale.cpp index 2a59c4a3b..fbd7393c5 100644 --- a/src/r_videoscale.cpp +++ b/src/r_videoscale.cpp @@ -66,8 +66,8 @@ namespace // isValid, isLinear, GetScaledWidth(), GetScaledHeight(), isScaled43, isCustom { true, false, [](uint32_t Width)->uint32_t { return Width; }, [](uint32_t Height)->uint32_t { return Height; }, false, false }, // 0 - Native { true, true, [](uint32_t Width)->uint32_t { return Width; }, [](uint32_t Height)->uint32_t { return Height; }, false, false }, // 1 - Native (Linear) - { true, false, [](uint32_t Width)->uint32_t { return 640; }, [](uint32_t Height)->uint32_t { return 400; }, true, false }, // 2 - formerly 320x200 - { true, false, [](uint32_t Width)->uint32_t { return 640; }, [](uint32_t Height)->uint32_t { return 400; }, true, false }, // 3 - 640x400 + { true, false, [](uint32_t Width)->uint32_t { return 640; }, [](uint32_t Height)->uint32_t { return 400; }, true, false }, // 2 - 640x400 (formerly 320x200) + { true, true, [](uint32_t Width)->uint32_t { return 960; }, [](uint32_t Height)->uint32_t { return 600; }, true, false }, // 3 - 960x600 (formerly 640x400) { true, true, [](uint32_t Width)->uint32_t { return 1280; }, [](uint32_t Height)->uint32_t { return 800; }, true, false }, // 4 - 1280x800 { true, true, [](uint32_t Width)->uint32_t { return vid_scale_customwidth; }, [](uint32_t Height)->uint32_t { return vid_scale_customheight; }, true, true }, // 5 - Custom }; @@ -90,8 +90,7 @@ CUSTOM_CVAR(Float, vid_scalefactor, 1.0, CVAR_ARCHIVE | CVAR_GLOBALCONFIG | CVAR CUSTOM_CVAR(Int, vid_scalemode, 0, CVAR_ARCHIVE | CVAR_GLOBALCONFIG) { setsizeneeded = true; - if (self == 2) self = 3; // block 320x200 setting. - else if (isOutOfBounds(self)) + if (isOutOfBounds(self)) self = 0; } diff --git a/src/version.h b/src/version.h index 146947c84..5c9b2c936 100644 --- a/src/version.h +++ b/src/version.h @@ -60,7 +60,7 @@ const char *GetVersionString(); // Version stored in the ini's [LastRun] section. // Bump it if you made some configuration change that you want to // be able to migrate in FGameConfigFile::DoGlobalSetup(). -#define LASTRUNVERSION "216" +#define LASTRUNVERSION "217" // Protocol version used in demos. // Bump it if you change existing DEM_ commands or add new ones. diff --git a/wadsrc/static/menudef.txt b/wadsrc/static/menudef.txt index ed702e345..37053129d 100644 --- a/wadsrc/static/menudef.txt +++ b/wadsrc/static/menudef.txt @@ -2132,7 +2132,8 @@ OptionValue ScaleModes { 0, "$OPTVAL_SCALENEAREST" 1, "$OPTVAL_SCALELINEAR" - 3, "640x400" + 2, "640x400" + 3, "960x600" 4, "1280x800" 5, "$OPTVAL_CUSTOM" }