diff options
Diffstat (limited to 'Ryujinx.HLE/FileSystem/VirtualFileSystem.cs')
-rw-r--r-- | Ryujinx.HLE/FileSystem/VirtualFileSystem.cs | 37 |
1 files changed, 10 insertions, 27 deletions
diff --git a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs index 58890995..a95c9c0f 100644 --- a/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs +++ b/Ryujinx.HLE/FileSystem/VirtualFileSystem.cs @@ -4,6 +4,7 @@ using LibHac.Fs; using LibHac.FsService; using LibHac.FsSystem; using LibHac.Spl; +using Ryujinx.Common.Configuration; using Ryujinx.HLE.FileSystem.Content; using Ryujinx.HLE.HOS; using System; @@ -13,11 +14,8 @@ namespace Ryujinx.HLE.FileSystem { public class VirtualFileSystem : IDisposable { - public const string BasePath = "Ryujinx"; - public const string NandPath = "bis"; - public const string SdCardPath = "sdcard"; - public const string SystemPath = "system"; - public const string ModsPath = "mods"; + public const string NandPath = AppDataManager.DefaultNandDir; + public const string SdCardPath = AppDataManager.DefaultSdcardDir; public static string SafeNandPath = Path.Combine(NandPath, "safe"); public static string SystemNandPath = Path.Combine(NandPath, "system"); @@ -77,20 +75,10 @@ namespace Ryujinx.HLE.FileSystem return fullPath; } - public string GetBaseModsPath() - { - var baseModsDir = Path.Combine(GetBasePath(), "mods"); - ModLoader.EnsureBaseDirStructure(baseModsDir); - - return baseModsDir; - } - - public string GetSdCardPath() => MakeFullPath(SdCardPath); - + internal string GetBasePath() => AppDataManager.BaseDirPath; + internal string GetSdCardPath() => MakeFullPath(SdCardPath); public string GetNandPath() => MakeFullPath(NandPath); - public string GetSystemPath() => MakeFullPath(SystemPath); - internal string GetSavePath(ServiceCtx context, SaveInfo saveInfo, bool isDirectory = true) { string saveUserPath = ""; @@ -207,13 +195,6 @@ namespace Ryujinx.HLE.FileSystem return new DriveInfo(Path.GetPathRoot(GetBasePath())); } - public string GetBasePath() - { - string appDataPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); - - return Path.Combine(appDataPath, BasePath); - } - public void Reload() { ReloadKeySet(); @@ -245,10 +226,12 @@ namespace Ryujinx.HLE.FileSystem string titleKeyFile = null; string consoleKeyFile = null; - string home = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); + if (!AppDataManager.IsCustomBasePath) + { + LoadSetAtPath(AppDataManager.KeysDirPathAlt); + } - LoadSetAtPath(Path.Combine(home, ".switch")); - LoadSetAtPath(GetSystemPath()); + LoadSetAtPath(AppDataManager.KeysDirPath); void LoadSetAtPath(string basePath) { |