diff --git a/src/BizHawk.Client.Common/config/Config.cs b/src/BizHawk.Client.Common/config/Config.cs index 886b337cbe..f29d595518 100644 --- a/src/BizHawk.Client.Common/config/Config.cs +++ b/src/BizHawk.Client.Common/config/Config.cs @@ -145,6 +145,9 @@ namespace BizHawk.Client.Common public bool AcceptBackgroundInput { get; set; } public bool AcceptBackgroundInputControllerOnly { get; set; } public bool HandleAlternateKeyboardLayouts { get; set; } + + public bool SetInvariantCulture { get; set; } = false; + public bool SingleInstanceMode { get; set; } public OpposingDirPolicy OpposingDirPolicy { get; set; } public bool ShowContextMenu { get; set; } = true; diff --git a/src/BizHawk.Client.EmuHawk/Program.cs b/src/BizHawk.Client.EmuHawk/Program.cs index f1ea4b31e4..4c65eec856 100644 --- a/src/BizHawk.Client.EmuHawk/Program.cs +++ b/src/BizHawk.Client.EmuHawk/Program.cs @@ -1,6 +1,7 @@ using System.Diagnostics; using System.IO; using System.Collections.Generic; +using System.Globalization; using System.Linq; using System.Reflection; using System.Runtime.InteropServices; @@ -223,6 +224,11 @@ namespace BizHawk.Client.EmuHawk if (cliFlags.GDIPlusRequested) initialConfig.DispMethod = EDispMethod.GdiPlus; // initialConfig should really be globalConfig as it's mutable + if (initialConfig.SetInvariantCulture) + { + CultureInfo.CurrentCulture = CultureInfo.DefaultThreadCurrentCulture = CultureInfo.InvariantCulture; + } + StringLogUtil.DefaultToDisk = initialConfig.Movies.MoviesOnDisk; // must be done VERY early, before any SDL_Init calls can be done