diff --git a/BizHawk.MultiClient/Config.cs b/BizHawk.MultiClient/Config.cs index d8655e8988..e3047db363 100644 --- a/BizHawk.MultiClient/Config.cs +++ b/BizHawk.MultiClient/Config.cs @@ -21,13 +21,54 @@ // Directories public string LastRomPath = "."; public string BasePath = "."; + public string BaseNES = ".\\NES"; + public string PathNESROMs = "."; + public string PathNESSavestates = ".\\State"; + public string PathNESSaveRAM = ".\\SaveRAM"; + public string PathNESScreenshots = ".\\Screenshots"; + public string PathNESCheats = ".\\Cheats"; + public string BaseSMS = ".\\SMS"; + public string PathSMSROMs = "."; + public string PathSMSSavestates = ".\\State"; + public string PathSMSSaveRAM = ".\\SaveRAM"; + public string PathSMSScreenshots = ".\\Screenshots"; + public string PathSMSCheats = ".\\Cheats"; + public string BaseGenesis = ".\\Genesis"; + public string PathGenesisROMs = "."; + public string PathGenesisSavestates = ".\\State"; + public string PathGenesisSaveRAM = ".\\SaveRAM"; + public string PathGenesisScreenshots = ".\\Screenshots"; + public string PathGenesisCheats = ".\\Cheats"; + public string BasePCE = ".\\PCE"; + public string PathPCEROMs = "."; + public string PathPCESavestates = ".\\State"; + public string PathPCESaveRAM = ".\\SaveRAM"; + public string PathPCEScreenshots = ".\\Screenshots"; + public string PathPCECheats = ".\\Cheats"; + public string BaseGameboy = ".\\Gameboy"; + public string PathGBROMs = "."; + public string PathGBSavestates = ".\\State"; + public string PathGBSaveRAM = ".\\SaveRAM"; + public string PathGBScreenshots = ".\\Screenshots"; + public string PathGBCheats = ".\\Cheats"; + public string BaseTI83 = ".\\TI83"; + public string PathTI83ROMs = "."; + public string PathTI83Savestates = ".\\State"; + public string PathTI83SaveRAM = ".\\SaveRAM"; + public string PathTI83Screenshots = ".\\Screenshots"; + public string PathTI83Cheats = ".\\Cheats"; + + public string MoviesPath = ".\\Movies"; + public string LuaPath = ".\\Lua"; public string WatchPath = "."; + public string AVIPath = "."; + // General Client Settings public int TargetZoomFactor = 2; diff --git a/BizHawk.MultiClient/config/PathConfig.Designer.cs b/BizHawk.MultiClient/config/PathConfig.Designer.cs index 8089709d31..3999eee824 100644 --- a/BizHawk.MultiClient/config/PathConfig.Designer.cs +++ b/BizHawk.MultiClient/config/PathConfig.Designer.cs @@ -678,7 +678,7 @@ this.tabPage2.Padding = new System.Windows.Forms.Padding(3); this.tabPage2.Size = new System.Drawing.Size(435, 251); this.tabPage2.TabIndex = 1; - this.tabPage2.Text = "Sega 8bit"; + this.tabPage2.Text = "SMS"; this.tabPage2.UseVisualStyleBackColor = true; // // Sega8CheatsDescription diff --git a/BizHawk.MultiClient/config/PathConfig.cs b/BizHawk.MultiClient/config/PathConfig.cs index 7bb3530ac9..6afe076dc4 100644 --- a/BizHawk.MultiClient/config/PathConfig.cs +++ b/BizHawk.MultiClient/config/PathConfig.cs @@ -23,6 +23,7 @@ namespace BizHawk.MultiClient //Find a way for base to always be absolute //Make all base path text boxes not allow %recent% //All path text boxes should do some kind of error checking + //Paths should default to their platform specific base before the main base! This will have to be done by specifically calling methods for each platform type public PathConfig() { @@ -31,7 +32,54 @@ namespace BizHawk.MultiClient private void PathConfig_Load(object sender, EventArgs e) { + BasePathBox.Text = Global.Config.BasePath; + + NESBaseBox.Text = Global.Config.BaseNES; + NESROMsBox.Text = Global.Config.PathNESROMs; + NESSavestatesBox.Text = Global.Config.PathNESSavestates; + NESSaveRAMBox.Text = Global.Config.PathNESSaveRAM; + NESScreenshotsBox.Text = Global.Config.PathNESScreenshots; + NESCheatsBox.Text = Global.Config.PathNESCheats; + + Sega8BaseBox.Text = Global.Config.BaseSMS; + Sega8ROMsBox.Text = Global.Config.PathSMSROMs; + Sega8SavestatesBox.Text = Global.Config.PathSMSSavestates; + Sega8SaveRAM.Text = Global.Config.PathSMSSaveRAM; + Sega8ScreenshotsBox.Text = Global.Config.PathSMSScreenshots; + Sega8CheatsBox.Text = Global.Config.PathSMSCheats; + + PCEBaseBox.Text = Global.Config.BasePCE; + PCEROMsBox.Text = Global.Config.PathPCEROMs; + PCESavestatesBox.Text = Global.Config.PathPCESavestates; + PCESaveRAMBox.Text = Global.Config.PathPCESaveRAM; + PCEScreenshotsBox.Text = Global.Config.PathPCEScreenshots; + PCECheatsBox.Text = Global.Config.PathPCECheats; + + GenesisBaseBox.Text = Global.Config.BaseGenesis; + GenesisROMsBox.Text = Global.Config.PathGenesisROMs; + GenesisSavestatesBox.Text = Global.Config.PathGenesisScreenshots; + GenesisSaveRAMBox.Text = Global.Config.PathGenesisSaveRAM; + GenesisScreenshotsBox.Text = Global.Config.PathGenesisScreenshots; + GenesisCheatsBox.Text = Global.Config.PathGenesisCheats; + + GBBaseBox.Text = Global.Config.BaseGameboy; + GBROMsBox.Text = Global.Config.PathGBROMs; + GBSavestatesBox.Text = Global.Config.PathGBSavestates; + GBSaveRAMBox.Text = Global.Config.PathGBSaveRAM; + GBScreenshotsBox.Text = Global.Config.PathGBScreenshots; + GBCheatsBox.Text = Global.Config.PathGBCheats; + + TI83BaseBox.Text = Global.Config.BaseTI83; + TI83ROMsBox.Text = Global.Config.PathTI83ROMs; + TI83SavestatesBox.Text = Global.Config.PathTI83Savestates; + TI83SaveRAMBox.Text = Global.Config.PathTI83SaveRAM; + TI83ScreenshotsBox.Text = Global.Config.PathTI83Screenshots; + TI83CheatsBox.Text = Global.Config.PathTI83Cheats; + + MoviesBox.Text = Global.Config.MoviesPath; + LuaBox.Text = Global.Config.LuaPath; WatchBox.Text = Global.Config.WatchPath; + AVIBox.Text = Global.Config.AVIPath; } private void SaveSettings() diff --git a/BizHawk.MultiClient/tools/RamSearch.cs b/BizHawk.MultiClient/tools/RamSearch.cs index 54279e3ed5..0a2291668b 100644 --- a/BizHawk.MultiClient/tools/RamSearch.cs +++ b/BizHawk.MultiClient/tools/RamSearch.cs @@ -1234,10 +1234,20 @@ namespace BizHawk.MultiClient { var sfd = new SaveFileDialog(); if (currentSearchFile.Length > 0) + { sfd.FileName = Path.GetFileNameWithoutExtension(currentSearchFile); + sfd.InitialDirectory = Path.GetDirectoryName(currentSearchFile); + } else if (!(Global.Emulator is NullEmulator)) + { sfd.FileName = Global.Game.Name; - sfd.InitialDirectory = Global.Config.LastRomPath; + sfd.InitialDirectory = PathManager.MakeAbsolutePath(Global.Config.WatchPath); + } + else + { + sfd.FileName = "NULL"; + sfd.InitialDirectory = PathManager.MakeAbsolutePath(Global.Config.WatchPath); + } sfd.Filter = "Watch Files (*.wch)|*.wch|All Files|*.*"; sfd.RestoreDirectory = true; Global.Sound.StopSound(); @@ -1429,7 +1439,7 @@ namespace BizHawk.MultiClient var ofd = new OpenFileDialog(); if (currentSearchFile.Length > 0) ofd.FileName = Path.GetFileNameWithoutExtension(currentSearchFile); - ofd.InitialDirectory = Global.Config.LastRomPath; + ofd.InitialDirectory = PathManager.MakeAbsolutePath(Global.Config.WatchPath); ofd.Filter = "Watch Files (*.wch)|*.wch|All Files|*.*"; ofd.RestoreDirectory = true; if (currentSearchFile.Length > 0)