BizHawk/BizHawk.MultiClient/Config.cs

191 lines
7.4 KiB
C#
Raw Normal View History

2011-01-11 02:55:51 +00:00
namespace BizHawk.MultiClient
{
2011-01-11 02:55:51 +00:00
public class Config
{
public Config()
{
SMSController[0] = new SMSControllerTemplate(1);
SMSController[1] = new SMSControllerTemplate(2);
PCEController[0] = new PCEControllerTemplate(1);
PCEController[1] = new PCEControllerTemplate(2);
PCEController[2] = new PCEControllerTemplate(3);
PCEController[3] = new PCEControllerTemplate(4);
PCEController[4] = new PCEControllerTemplate(5);
}
2011-01-11 02:55:51 +00:00
// General Client Settings
2011-01-26 05:06:44 +00:00
public int TargetZoomFactor = 2;
2011-01-11 02:55:51 +00:00
public string LastRomPath = ".";
public bool AutoLoadMostRecentRom = false; //TODO: eventually make a class or struct for all the auto-loads, which will include recent roms, movies, etc, as well as autoloading any modeless dialog
public RecentFiles RecentRoms = new RecentFiles(8);
public bool PauseWhenMenuActivated = true;
public bool SaveWindowPosition = true;
2011-02-18 05:16:21 +00:00
public bool StartPaused = false;
2011-02-18 02:10:46 +00:00
public int MainWndx = -1; //Negative numbers will be ignored
public int MainWndy = -1;
2011-01-11 02:55:51 +00:00
2011-02-15 16:41:03 +00:00
// Display options
public bool DisplayFPS = false;
public bool DisplayFrameCounter = false;
public bool DisplayLagCounter = false;
public bool DisplayInput = false;
// Sound options
public bool SoundEnabled = true;
public bool MuteFrameAdvance = true;
2011-01-19 04:18:33 +00:00
// RamWatch Settings
public bool AutoLoadRamWatch = false;
public RecentFiles RecentWatches = new RecentFiles(8);
public int RamWatchWndx = -1; //Negative numbers will be ignored even with save window position set
public int RamWatchWndy = -1;
2011-01-20 02:22:15 +00:00
public int RamWatchWidth = -1; //Negative numbers will be ignored
public int RamWatchHeight = -1;
2011-01-19 04:18:33 +00:00
2011-01-28 03:52:43 +00:00
// RamSearch Settings
public bool AutoLoadRamSearch = false;
public int RamSearchWndx = -1; //Negative numbers will be ignored even with save window position set
public int RamSearchWndy = -1;
public int RamSearchWidth = -1; //Negative numbers will be ignored
public int RamSearchHeight = -1;
2011-01-28 03:52:43 +00:00
//Movie Settings
public RecentFiles RecentMovies = new RecentFiles(8);
2011-01-11 02:55:51 +00:00
// Client Hotkey Bindings
2011-02-15 20:51:07 +00:00
//TODO: These should be allowed to be "", not every hotkey should have to be mapped somewhere
public string HardResetBinding = "LeftShift+Tab"; //TODO: This needs to be Ctrl+R but how?
public string FastForwardBinding = "J1 B6, Tab";
public string RewindBinding = "J1 B5, LeftShift+R, RightShift+R";
public string EmulatorPauseBinding = "Pause";
2011-01-11 02:55:51 +00:00
public string FrameAdvanceBinding = "F";
public string ScreenshotBinding = "F12";
2011-01-29 08:42:35 +00:00
public string ToggleFullscreenBinding = "LeftAlt+Return, RightAlt+Return";
public string QuickSave = "I";
public string QuickLoad = "P";
public string SelectSlot0 = "0";
public string SelectSlot1 = "1";
public string SelectSlot2 = "2";
public string SelectSlot3 = "3";
public string SelectSlot4 = "4";
public string SelectSlot5 = "5";
public string SelectSlot6 = "6";
public string SelectSlot7 = "7";
public string SelectSlot8 = "8";
public string SelectSlot9 = "9";
2011-02-20 02:59:15 +00:00
public string SaveSlot0 = "SHIFT+F0";
public string SaveSlot1 = "SHIFT+F1";
public string SaveSlot2 = "SHIFT+F2";
public string SaveSlot3 = "SHIFT+F3";
public string SaveSlot4 = "SHIFT+F4";
public string SaveSlot5 = "SHIFT+F5";
public string SaveSlot6 = "SHIFT+F6";
public string SaveSlot7 = "SHIFT+F7";
public string SaveSlot8 = "SHIFT+F8";
public string SaveSlot9 = "SHIFT+F9";
public string LoadSlot0 = "CTRL+F0";
public string LoadSlot1 = "CTRL+F1";
public string LoadSlot2 = "CTRL+F2";
public string LoadSlot3 = "CTRL+F3";
public string LoadSlot4 = "CTRL+F4";
public string LoadSlot5 = "CTRL+F5";
public string LoadSlot6 = "CTRL+F6";
public string LoadSlot7 = "CTRL+F7";
public string LoadSlot8 = "CTRL+F8";
public string LoadSlot9 = "CTRL+F9";
2011-01-11 02:55:51 +00:00
2011-01-11 02:55:51 +00:00
// SMS / GameGear Settings
public bool SmsEnableFM = true;
public bool SmsAllowOverlock = false;
2011-02-14 05:02:26 +00:00
public bool SmsForceStereoSeparation = false;
public string SmsReset = "Reset, Tab";
2011-01-11 02:55:51 +00:00
public string SmsPause = "J1 B10, Space";
public SMSControllerTemplate[] SMSController = new SMSControllerTemplate[2];
2011-01-11 02:55:51 +00:00
// PCEngine Settings
public PCEControllerTemplate[] PCEController = new PCEControllerTemplate[5];
2011-01-11 02:55:51 +00:00
// Genesis Settings
public string GenP1Up = "J1 Up, UpArrow";
public string GenP1Down = "J1 Down, DownArrow";
public string GenP1Left = "J1 Left, LeftArrow";
public string GenP1Right = "J1 Right, RightArrow";
public string GenP1A = "J1 B1, Z";
public string GenP1B = "J1 B2, X";
public string GenP1C = "J1 B9, C";
2011-02-19 22:07:52 +00:00
public string GenP1Start = "J1 B10, Return";
//GameBoy Settings
public NESControllerTemplate GameBoyController = new NESControllerTemplate(1);
2011-01-11 02:55:51 +00:00
}
2011-02-19 22:07:52 +00:00
public class SMSControllerTemplate
{
public string Up;
public string Down;
public string Left;
public string Right;
public string B1;
public string B2;
public SMSControllerTemplate(int i)
{
Up = string.Format("J{0} Up", i);
Down = string.Format("J{0} Down", i);
Left = string.Format("J{0} Left", i);
Right = string.Format("J{0} Right", i);
B1 = string.Format("J{0} B1", i);
B2 = string.Format("J{0} B2", i);
}
}
public class PCEControllerTemplate
{
public string Up;
public string Down;
public string Left;
public string Right;
public string I;
public string II;
public string Run;
public string Select;
public PCEControllerTemplate(int i)
{
Up = string.Format("J{0} Up", i);
Down = string.Format("J{0} Down", i);
Left = string.Format("J{0} Left", i);
Right = string.Format("J{0} Right", i);
I = string.Format("J{0} I", i);
II = string.Format("J{0} II", i);
Run = string.Format("J{0} Run", i);
Select = string.Format("J{0} Select", i);
}
}
2011-02-19 22:07:52 +00:00
public class NESControllerTemplate
{
public string Up;
public string Down;
public string Left;
public string Right;
public string A;
public string B;
public string Start;
public string Select;
public NESControllerTemplate(int i)
{
Up = string.Format("J{0} Up", i);
Down = string.Format("J{0} Down", i);
Left = string.Format("J{0} Left", i);
Right = string.Format("J{0} Right", i);
A = string.Format("J{0} A", i);
B = string.Format("J{0} B", i);
Start = string.Format("J{0} Start", i);
Select = string.Format("J{0} Select", i);
}
}
2011-01-11 02:55:51 +00:00
}