rendered paste bodyIndex: lib/framework/frame.h===================================================================--- lib/framework/frame.h (revision 4564)+++ lib/framework/frame.h (working copy)@@ -42,6 +42,14 @@ extern UDWORD selectedPlayer; #define MAX_PLAYERS 8 /**< Maximum number of players in the game. */ +/* Frame limit for multiplayer games (excluding skirmish and campaign) */+#define MP_FRAME_LIMIT 45++/* Default frame limit for single player: skirmish ans campaign */+#define SP_FRAME_LIMIT 60++extern SDWORD spFrameLimit;+ /** Initialise the frame work library */ extern BOOL frameInitialise( const char *pWindowName,// The text to appear in the window title barIndex: src/configuration.c===================================================================--- src/configuration.c (revision 4564)+++ src/configuration.c (working copy)@@ -62,6 +62,8 @@ extern void registry_clear(void); // from configfile.c +// current frame limit for single player modes+SDWORD spFrameLimit = SP_FRAME_LIMIT; // //////////////////////////////////////////////////////////////////////////// BOOL loadConfig(void)@@ -120,14 +122,15 @@ setWarzoneKeyNumeric("debugmode", bAllowDebugMode); } - if (getWarzoneKeyNumeric("framerate", &val))+ if (getWarzoneKeyNumeric("SinglePlayerFPS", &val)) {- setFramerateLimit(val);+ spFrameLimit = val;+ setFramerateLimit(spFrameLimit); } else {- setFramerateLimit(60);- setWarzoneKeyNumeric("framerate", 60);+ setFramerateLimit(spFrameLimit);+ setWarzoneKeyNumeric("SinglePlayerFPS", spFrameLimit); } if (getWarzoneKeyString("language", sBuf))Index: src/frontend.c===================================================================--- src/frontend.c (revision 4564)+++ src/frontend.c (working copy)@@ -100,6 +100,7 @@ static void displayTitleBitmap (WIDGET *psWidget, UDWORD xOffset, UDWORD yOffset, PIELIGHT *pColours); void displayTextAt270 (WIDGET *psWidget, UDWORD xOffset, UDWORD yOffset, PIELIGHT *pColours); static void displayBigSlider (WIDGET *psWidget, UDWORD xOffset, UDWORD yOffset, PIELIGHT *pColours);+static void setDefaultFrameRateLimit(void); @@ -219,9 +220,23 @@ break; } + /* Set default frame rate limit */+ setDefaultFrameRateLimit();+ return; } +static void setDefaultFrameRateLimit(void)+{+ if(bMultiPlayer && NetPlay.bComms)+ {+ setFramerateLimit(MP_FRAME_LIMIT); // true multiplayer+ }+ else+ {+ setFramerateLimit(spFrameLimit); // single player+ }+} // //////////////////////////////////////////////////////////////////////////// // Title Screen