Compare commits

..

No commits in common. "c8f486170216a8e32caf846a56890a7c234be04a" and "68aee26c8972721a495a13c8442bb0c52bac7e03" have entirely different histories.

4 changed files with 112 additions and 60 deletions

View file

@ -57,19 +57,16 @@ namespace Ryujinx.Input.SDL2
return null;
}
// Remove the first 4 char of the guid (CRC part) to make it stable
string guidString = "0000" + guid.ToString().Substring(4);
string id;
lock (_lock)
{
int guidIndex = 0;
id = guidIndex + "-" + guidString;
id = guidIndex + "-" + guid;
while (_gamepadsIds.Contains(id))
{
id = (++guidIndex) + "-" + guidString;
id = (++guidIndex) + "-" + guid;
}
}

View file

@ -460,7 +460,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "스크린샷 폴더 열기",
"no_NO": "Åpne Skjermbilde Mappen",
"no_NO": "",
"pl_PL": "",
"pt_BR": "Abrir Pasta de Capturas de Tela",
"ru_RU": "Открыть папку со скриншотами",
@ -2760,7 +2760,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "사용자 정의 구성 만들기",
"no_NO": "Opprett egendefinert konfigurasjon",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "Задать индивидуальные параметры",
@ -2785,7 +2785,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "사용자 정의 구성 편집",
"no_NO": "Rediger egendefinert konfigurasjon",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "Изменить индивидуальные параметры",
@ -2860,7 +2860,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "선택한 게임에 대한 기존 독립 구성 편집",
"no_NO": "Rediger din eksisterende uavhengige konfigurasjon for det valgte spillet",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "Отредактировать существующие независимые параметры для выбранной игры.",
@ -4934,8 +4934,8 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "터보 모드 배수 :",
"no_NO": "Multiplikator i turbomodus:",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "",
@ -4959,8 +4959,8 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "터보 모드 배수 목표 값입니다.\n\n모르면 200으로 두세요.",
"no_NO": "Målverdien for multiplikatoren i turbomodus. \n\nLa syå på 200 hvis du er usikker.",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "",
@ -4984,8 +4984,8 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "터보 모드는 게임이 프레임 속도에 민감하지 않을 때 효과적으로 속도를 높이거나 낮추는 에뮬레이터 기능입니다.\n이 기능은 Ryujinx 키보드 단축키 설정에서 구성할 수 있는 단축키를 사용하여 게임 내에서 전환할 수 있습니다.\n\n모르면 200으로 두세요.",
"no_NO": "Turbo-modus er en emulatorfunksjon som effektivt øker eller senker hastigheten når et spill ikke er følsom for bildefrekvens.\nDu kan slå på denne funksjonen i spillet med en hurtigtast, som kan konfigureres i Ryujinx Keyboard Hotkeys-innstillingene.\n\nLa den stå på 200 hvis du er usikker.",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "",
@ -5335,7 +5335,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "컨트롤러 애플릿 무시",
"no_NO": "Ignorer Kontroller-applet",
"no_NO": "",
"pl_PL": "",
"pt_BR": "Ignorar Applet do Controlador",
"ru_RU": "Игнорировать апплет контроллера",
@ -16710,7 +16710,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "앱이 실행 중일 때, 게임패드의 연결이 끊어지면 컨트롤러 애플릿 대화 상자가 나타나지 않습니다.\n\n모르시면 끔으로 두십시오.",
"no_NO": "Håndkontroller-appleten vises ikke hvis gamepaden kobles fra mens et program kjører.",
"no_NO": "",
"pl_PL": "",
"pt_BR": "A caixa de diálogo do Applet do controlador não aparecerá se o controle for desconectado enquanto um aplicativo estiver em execução.\n\nDeixe a opção DESLIGADO se não tiver certeza.",
"ru_RU": "Диалоговое окно апплета контроллера не будет отображаться, если геймпад отключен во время работы приложения.\n\nОставьте выключенным, если не уверены.",
@ -17385,7 +17385,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "Ryujinx 스크린샷 폴더 열기",
"no_NO": "Åpne Ryujinx skjermbildemappen",
"no_NO": "",
"pl_PL": "",
"pt_BR": "Abre a pasta de capturas de tela do Ryujinx",
"ru_RU": "Открывает папку скриншотов Ryujinx",
@ -18134,7 +18134,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "{0}FPS({1}밀리초)",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
@ -18159,7 +18159,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "{0}FPS({1}밀리초), ({2}%) 터보",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
@ -23909,7 +23909,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "터보 모드 :",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
@ -23934,8 +23934,8 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "터보 모드 단축키입니다.\nRyujinx CPU 설정에서 터보 모드의 동작을 구성합니다.\n\n모르면 바인딩 해제 상태로 두세요.",
"no_NO": "Hurtigtasten for turbo-modus.\nKonfigurer oppførselen til turbo-modus i Ryujinx CPU-innstillinger.\n\nLa være ubundet hvis du er usikker.",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "",
@ -23959,8 +23959,8 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "누르고 있는 동안만",
"no_NO": "Bare mens du trykker på",
"ko_KR": "",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "",
@ -24010,7 +24010,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "호환성 목록 - {0}개 항목",
"no_NO": "Kompatibilitetsliste - {0} oppføringer",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "Список совместимости — записей: {0}",
@ -24159,7 +24159,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "원활",
"ko_KR": "플레이 가능",
"no_NO": "Spillbar",
"pl_PL": "",
"pt_BR": "Jogável",
@ -24184,7 +24184,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "가능",
"ko_KR": "게임 내",
"no_NO": "",
"pl_PL": "",
"pt_BR": "No jogo",
@ -24234,7 +24234,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "부",
"ko_KR": "부",
"no_NO": "Starter",
"pl_PL": "",
"pt_BR": "Inicializa",
@ -24259,7 +24259,7 @@
"he_IL": "",
"it_IT": "",
"ja_JP": "",
"ko_KR": "불가능",
"ko_KR": "없음",
"no_NO": "Ingenting",
"pl_PL": "",
"pt_BR": "Nada",
@ -24410,7 +24410,7 @@
"it_IT": "",
"ja_JP": "",
"ko_KR": "사용자 정의 설정",
"no_NO": "Tilpasset konfigurasjon",
"no_NO": "",
"pl_PL": "",
"pt_BR": "",
"ru_RU": "Индивидуальные параметры",

View file

@ -312,37 +312,60 @@ namespace Ryujinx.Headless
return new OpenGLRenderer();
}
private static Switch InitializeEmulationContext(WindowBase window, IRenderer renderer, Options options) =>
new(
new HleConfiguration(
options.DramSize,
options.SystemLanguage,
options.SystemRegion,
options.VSyncMode,
!options.DisableDockedMode,
!options.DisablePTC,
ITickSource.RealityTickScalar,
options.EnableInternetAccess,
!options.DisableFsIntegrityChecks ? IntegrityCheckLevel.ErrorOnInvalid : IntegrityCheckLevel.None,
options.FsGlobalAccessLogMode,
options.SystemTimeOffset,
options.SystemTimeZone,
options.MemoryManagerMode,
#if DEBUG
options.IgnoreMissingServices,
new HleConfiguration(
options.DramSize,
options.SystemLanguage,
options.SystemRegion,
options.VSyncMode,
!options.DisableDockedMode,
!options.DisablePTC,
ITickSource.RealityTickScalar,
options.EnableInternetAccess,
!options.DisableFsIntegrityChecks ? IntegrityCheckLevel.ErrorOnInvalid : IntegrityCheckLevel.None,
options.FsGlobalAccessLogMode,
options.SystemTimeOffset,
options.SystemTimeZone,
options.MemoryManagerMode,
options.IgnoreMissingServices,
options.AspectRatio,
options.AudioVolume,
options.UseHypervisor ?? true,
options.MultiplayerLanInterfaceId,
Common.Configuration.Multiplayer.MultiplayerMode.Disabled,
false,
string.Empty,
string.Empty,
options.CustomVSyncInterval
)
#else
new HleConfiguration(
options.DramSize,
options.SystemLanguage,
options.SystemRegion,
options.VSyncMode,
!options.DisableDockedMode,
!options.DisablePTC,
options.EnableInternetAccess,
!options.DisableFsIntegrityChecks ? IntegrityCheckLevel.ErrorOnInvalid : IntegrityCheckLevel.None,
options.FsGlobalAccessLogMode,
options.SystemTimeOffset,
options.SystemTimeZone,
options.MemoryManagerMode,
options.AspectRatio,
options.AudioVolume,
options.UseHypervisor ?? true,
options.MultiplayerLanInterfaceId,
Common.Configuration.Multiplayer.MultiplayerMode.Disabled,
false,
string.Empty,
string.Empty,
options.CustomVSyncInterval
)
#endif
options.AspectRatio,
options.AudioVolume,
options.UseHypervisor ?? true,
options.MultiplayerLanInterfaceId,
Common.Configuration.Multiplayer.MultiplayerMode.Disabled,
false,
string.Empty,
string.Empty,
options.CustomVSyncInterval
)
.Configure(
_virtualFileSystem,
_libHacHorizonManager,

View file

@ -843,6 +843,7 @@ namespace Ryujinx.Ava.Systems.Configuration
}
public HleConfiguration CreateHleConfiguration() =>
#if DEBUG
new(
System.DramSize,
System.Language.Value.ToHLE(),
@ -861,9 +862,7 @@ namespace Ryujinx.Ava.Systems.Configuration
: System.SystemTimeOffset,
System.TimeZone,
System.MemoryManagerMode,
#if DEBUG
CommandLineState.IgnoreMissingServices,
#endif
Graphics.AspectRatio,
System.AudioVolume,
System.UseHypervisor,
@ -874,5 +873,38 @@ namespace Ryujinx.Ava.Systems.Configuration
Instance.Multiplayer.GetLdnServer(),
Instance.Graphics.CustomVSyncInterval,
Instance.Hacks.ShowDirtyHacks ? Instance.Hacks.EnabledHacks : null);
#else
new(
System.DramSize,
System.Language.Value.ToHLE(),
System.Region.Value.ToHLE(),
Graphics.VSyncMode,
System.EnableDockedMode,
System.EnablePtc,
System.TickScalar,
System.EnableInternetAccess,
System.EnableFsIntegrityChecks
? IntegrityCheckLevel.ErrorOnInvalid
: IntegrityCheckLevel.None,
System.FsGlobalAccessLogMode,
System.MatchSystemTime
? 0
: System.SystemTimeOffset,
System.TimeZone,
System.MemoryManagerMode,
Graphics.AspectRatio,
System.AudioVolume,
System.UseHypervisor,
Multiplayer.LanInterfaceId,
Multiplayer.Mode,
Multiplayer.DisableP2p,
Multiplayer.LdnPassphrase,
Instance.Multiplayer.GetLdnServer(),
Instance.Graphics.CustomVSyncInterval,
Instance.Hacks.ShowDirtyHacks ? Instance.Hacks.EnabledHacks : null);
#endif
Multiplayer.GetLdnServer(),
Graphics.CustomVSyncInterval,
Hacks.ShowDirtyHacks ? Hacks.EnabledHacks : null);
}
}