diff --git a/GUI.NET/Dependencies/resources.en.xml b/GUI.NET/Dependencies/resources.en.xml
index 720784e9..c369deb9 100644
--- a/GUI.NET/Dependencies/resources.en.xml
+++ b/GUI.NET/Dependencies/resources.en.xml
@@ -42,7 +42,7 @@
Please select a ROM matching the IPS patch file.
Unable to download file. Check your internet connection and try again.
Details:
Mesen must download and install the Microsoft Visual Studio 2015 runtime to continue. Would you like to automatically download the runtime from Microsoft's website and install it now?"
- Mesen was unable to start due to missing files.
Error: WinMesen.dll is missing.
+ Mesen was unable to start due to missing files.
Error: MesenCore.dll is missing.
An unexpected error has occurred.
Error details:
{0}
Download failed - the file appears to be corrupted. Please visit the Mesen website to download the latest version manually.
Upgrade completed successfully.
diff --git a/GUI.NET/Dependencies/resources.es.xml b/GUI.NET/Dependencies/resources.es.xml
index 6302e282..198cfd5c 100644
--- a/GUI.NET/Dependencies/resources.es.xml
+++ b/GUI.NET/Dependencies/resources.es.xml
@@ -512,7 +512,7 @@
Elija la ROM que corresponde al archivo IPS seleccionado.
No se puede descargar el archivo. Compruebe su conexión a Internet e inténtelo de nuevo.
Detalles del error:
Mesen debe descargar e instalar el paquete redistribuible de Visual C++ de Microsoft Visual Studio 2015 antes de poder continuar. ¿Le gustaría instalarlo ahora?
- Mesen no puede iniciar debido a que faltan archivos.
Error: No se encuentra el archivo WinMesen.dll.
+ Mesen no puede iniciar debido a que faltan archivos.
Error: No se encuentra el archivo MesenCore.dll.
Se ha producido un error inesperado.
Detalles del error:
{0}
Error en la descarga - el archivo parece estar dañado. Por favor, visite el sitio web de Mesen para descargar manualmente la versión más reciente.
La actualización se ha realizado con éxito.
diff --git a/GUI.NET/Dependencies/resources.fr.xml b/GUI.NET/Dependencies/resources.fr.xml
index 2d422171..cd8a786c 100644
--- a/GUI.NET/Dependencies/resources.fr.xml
+++ b/GUI.NET/Dependencies/resources.fr.xml
@@ -526,7 +526,7 @@
Choisissez un ROM qui correspond au fichier IPS choisi.
Impossible de télécharger le fichier. Vérifier votre connexion internet et essayez à nouveau.
Détails de l'erreur:
Mesen doit télécharger et installer le package Redistribuable Visual C++ pour Microsoft Visual Studio 2015 avant de pouvoir continuer. Voulez-vous l'installer maintenant?"
- Mesen est incapable de démarrer puisqu'il manque des fichiers.
Erreur: Le fichier WinMesen.dll est introuvable.
+ Mesen est incapable de démarrer puisqu'il manque des fichiers.
Erreur: Le fichier MesenCore.dll est introuvable.
Une erreur inattendue s'est produite.
Détails de l'erreur :
{0}
Le téléchargement a échoué - le fichier semble être corrompu. Veuillez visiter le site de Mesen pour télécharger manuellement la version la plus récente.
La mise-à-jour s'est faite avec succès.
diff --git a/GUI.NET/Dependencies/resources.ja.xml b/GUI.NET/Dependencies/resources.ja.xml
index 397e24f4..8982e0b1 100644
--- a/GUI.NET/Dependencies/resources.ja.xml
+++ b/GUI.NET/Dependencies/resources.ja.xml
@@ -508,7 +508,7 @@
IPSファイルに合うゲームファイルを選んでください。
ファイルをダウンロードできませんでした。ネット接続を確認してから、再試行してください。
エラーの詳細:
MesenはMicrosoft Visual Studio 2015のVisual C++再頒布可能パッケージなしではゲームをロードできません。 パッケージを自動的にMicrosoftのサーバからダウンロードして、インストールしますか?
- 必要なファイルはロード出来なかったため、Mesenは起動できません。
エラー: WinMesen.dllはロードできません。
+ 必要なファイルはロード出来なかったため、Mesenは起動できません。
エラー: MesenCore.dllはロードできません。
予期しないエラーが発生しました。
エラーの詳細:
{0}
ダウンロードは失敗しました。 Mesenのサイトに行って、新しいバージョンをダウンロードしてください。
必要不可欠なファイルがないため、アップデートは出来なかった。
diff --git a/GUI.NET/Dependencies/resources.ru.xml b/GUI.NET/Dependencies/resources.ru.xml
index 8fa400de..faff9dc6 100644
--- a/GUI.NET/Dependencies/resources.ru.xml
+++ b/GUI.NET/Dependencies/resources.ru.xml
@@ -517,7 +517,7 @@
Пожалуйста выберите ROM соответствующий IPS.
Невозможно загрузить файл. Проверьте ваше соединение с интернетом и попробуйте ещё раз.
Подробно:
Mesen должен загрузить и установить Microsoft Visual Studio 2015 runtime чтобы продолжить. Хотите автоматически загрузить Microsoft Visual Studio 2015 runtime с сайта Microsoft и установить его сейчас?"
- Mesen не может запуститься из за отсутствующих файлов.
Ошибка: WinMesen.dll не найден.
+ Mesen не может запуститься из за отсутствующих файлов.
Ошибка: MesenCore.dll не найден.
Неизвестная ошибка.
Подробно:
{0}
Загрузка не удалась - файл повреждён. Пожалуйста посетите сайт Mesen и загрузите последнюю версию вручную.
Обновление прошло успешно.
diff --git a/GUI.NET/Dependencies/resources.uk.xml b/GUI.NET/Dependencies/resources.uk.xml
index 7850eb7d..9a199dc9 100644
--- a/GUI.NET/Dependencies/resources.uk.xml
+++ b/GUI.NET/Dependencies/resources.uk.xml
@@ -516,7 +516,7 @@
Будь ласка, оберіть ROM відповідний IPS.
Неможливо завантажити файл. Перевірте ваше з'єднання з інтернетом і спробуйте ще раз.
Детально:
Mesen повинен завантажити та встановити Microsoft Visual Studio 2015 runtime щоб продовжити. Хочете автоматично завантажити Microsoft Visual Studio 2015 runtime з сайту Microsoft і встановити його зараз?"
- Mesen не може запуститися через відсутні файли.
Помилка: WinMesen.dll не знайдений.
+ Mesen не може запуститися через відсутні файли.
Помилка: MesenCore.dll не знайдений.
Невідома помилка.
Детально:
{0}
Завантаження не вдалася - файл пошкоджений. Будь ласка відвідайте сайт Mesen і завантажте останню версію вручну.
Оновлення пройшло успішно.
diff --git a/GUI.NET/GUI.NET.csproj b/GUI.NET/GUI.NET.csproj
index 27a2f3ff..8a3e7624 100644
--- a/GUI.NET/GUI.NET.csproj
+++ b/GUI.NET/GUI.NET.csproj
@@ -195,11 +195,9 @@
-
-
False
Dependencies\Zlib.Portable.dll
@@ -222,6 +220,9 @@
+
+ UserControl
+
UserControl
diff --git a/GUI.NET/InteropEmu.cs b/GUI.NET/InteropEmu.cs
index 6457bf33..1371bb67 100644
--- a/GUI.NET/InteropEmu.cs
+++ b/GUI.NET/InteropEmu.cs
@@ -14,7 +14,7 @@ namespace Mesen.GUI
{
public class InteropEmu
{
- private const string DLLPath = "WinMesen.dll";
+ private const string DLLPath = "MesenCore.dll";
[DllImport(DLLPath)] [return: MarshalAs(UnmanagedType.I1)] public static extern bool TestDll();
[DllImport(DLLPath, EntryPoint = "GetMesenVersion")] private static extern UInt32 GetMesenVersionWrapper();
diff --git a/GUI.NET/ResourceManager.cs b/GUI.NET/ResourceManager.cs
index b216938f..7fdf2912 100644
--- a/GUI.NET/ResourceManager.cs
+++ b/GUI.NET/ResourceManager.cs
@@ -62,6 +62,9 @@ namespace Mesen.GUI
if(Directory.Exists(Path.Combine(ConfigManager.HomeFolder, "WinMesen"))) {
Directory.Delete(Path.Combine(ConfigManager.HomeFolder, "WinMesen"), true);
}
+ if(File.Exists(Path.Combine(ConfigManager.HomeFolder, "WinMesen.dll"))) {
+ File.Delete(Path.Combine(ConfigManager.HomeFolder, "WinMesen.dll"));
+ }
if(File.Exists(Path.Combine(ConfigManager.HomeFolder, "NesNtsc.dll"))) {
File.Delete(Path.Combine(ConfigManager.HomeFolder, "NesNtsc.dll"));
}
@@ -84,7 +87,8 @@ namespace Mesen.GUI
string suffix = IntPtr.Size == 4 ? ".x86" : ".x64";
foreach(ZipArchiveEntry entry in zip.Entries) {
if(entry.Name.Contains(suffix)) {
- string outputFilename = Path.Combine(ConfigManager.HomeFolder, entry.Name.Replace(suffix, ""));
+ string baseFolder = Program.IsMono ? Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) : ConfigManager.HomeFolder;
+ string outputFilename = Path.Combine(baseFolder, entry.Name.Replace(suffix, ""));
ExtractFile(entry, outputFilename);
} else if(entry.Name == "MesenUpdater.exe" || entry.Name == "MesenDB.txt") {
string outputFilename = Path.Combine(ConfigManager.HomeFolder, entry.Name.Replace(suffix, ""));
diff --git a/GUI.NET/RuntimeChecker.cs b/GUI.NET/RuntimeChecker.cs
index b47f15d9..f2e38f3a 100644
--- a/GUI.NET/RuntimeChecker.cs
+++ b/GUI.NET/RuntimeChecker.cs
@@ -21,7 +21,7 @@ namespace Mesen.GUI
} catch {
}
- if(!File.Exists("WinMesen.dll")) {
+ if(!File.Exists("MesenCore.dll") && !File.Exists("libMesenCore.dll")) {
MesenMsgBox.Show("UnableToStartMissingFiles", MessageBoxButtons.OK, MessageBoxIcon.Error);
} else {
if(MesenMsgBox.Show("UnableToStartMissingDependencies", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) {
diff --git a/InteropDLL/InteropDLL.vcxproj b/InteropDLL/InteropDLL.vcxproj
index b53bd48b..9016bc27 100644
--- a/InteropDLL/InteropDLL.vcxproj
+++ b/InteropDLL/InteropDLL.vcxproj
@@ -125,49 +125,49 @@
true
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
true
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\
obj\$(Platform)\PGO Profile\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\
obj\$(Platform)\$(Configuration)\
false
- WinMesen
+ MesenCore
$(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\
obj\$(Platform)\PGO Profile\
diff --git a/Linux/LinuxKeyManager.h b/Linux/LinuxKeyManager.h
index 1cca37d8..d8bce367 100755
--- a/Linux/LinuxKeyManager.h
+++ b/Linux/LinuxKeyManager.h
@@ -12,7 +12,6 @@ struct KeyDefinition {
class LinuxKeyManager : public IKeyManager
{
private:
- int _numKeys;
vector _keyState;
std::unordered_map _keyNames;
std::unordered_map _keyCodes;