private void OkBtn_Click(object sender, EventArgs e)
        {
            bool changed =
                _syncSettings.MachineType.ToString() != MachineSelectionComboBox.SelectedItem.ToString() ||
                _syncSettings.BorderType.ToString() != borderTypecomboBox1.SelectedItem.ToString() ||
                _syncSettings.DeterministicEmulation != determEmucheckBox1.Checked ||
                _syncSettings.AutoStartStopTape != autoLoadcheckBox1.Checked;

            if (changed)
            {
                _syncSettings.MachineType            = (MachineType)Enum.Parse(typeof(MachineType), MachineSelectionComboBox.SelectedItem.ToString());
                _syncSettings.BorderType             = (AmstradCPC.BorderType)Enum.Parse(typeof(AmstradCPC.BorderType), borderTypecomboBox1.SelectedItem.ToString());
                _syncSettings.DeterministicEmulation = determEmucheckBox1.Checked;
                _syncSettings.AutoStartStopTape      = autoLoadcheckBox1.Checked;

                _settable.PutCoreSyncSettings(_syncSettings);

                DialogResult = DialogResult.OK;
                Close();
            }
            else
            {
                DialogResult = DialogResult.OK;
                Close();
            }
        }
Пример #2
0
        public static DialogResult DoGBLPrefsDialog(
            Config config,
            IDialogParent dialogParent,
            IGameInfo game,
            IMovieSession movieSession,
            ISettingsAdapter settable)
        {
            var s  = (GambatteLink.GambatteLinkSettings)settable.GetSettings();
            var ss = (GambatteLink.GambatteLinkSyncSettings)settable.GetSyncSettings();

            using var dlg = new GBLPrefs(dialogParent.DialogController, config, game, movieSession);
            dlg.PutSettings(s, ss);

            var result = dialogParent.ShowDialogAsChild(dlg);

            if (result == DialogResult.OK)
            {
                dlg.GetSettings(out s, out ss);
                settable.PutCoreSettings(s);
                if (dlg.SyncSettingsChanged)
                {
                    settable.PutCoreSyncSettings(ss);
                }
            }
            return(result);
        }
Пример #3
0
        private void OkBtn_Click(object sender, EventArgs e)
        {
            var old = _syncSettings.RegionOverride;

            _syncSettings.RegionOverride = (NES.NESSyncSettings.Region)
                                           Enum.Parse(
                typeof(NES.NESSyncSettings.Region),
                (string)RegionComboBox.SelectedItem);

            var oldRam = _syncSettings.InitialWRamStatePattern ?? new List <byte>();

            if (!string.IsNullOrWhiteSpace(RamPatternOverrideBox.Text))
            {
                _syncSettings.InitialWRamStatePattern = Enumerable.Range(0, RamPatternOverrideBox.Text.Length)
                                                        .Where(x => x % 2 == 0)
                                                        .Select(x => Convert.ToByte(RamPatternOverrideBox.Text.Substring(x, 2), 16))
                                                        .ToList();
            }
            else
            {
                _syncSettings.InitialWRamStatePattern = null;
            }

            bool changed = (_dataTableDictionary != null && _dataTableDictionary.WasModified) ||
                           old != _syncSettings.RegionOverride ||
                           !(oldRam.SequenceEqual(_syncSettings.InitialWRamStatePattern ?? new List <byte>()));

            DialogResult = DialogResult.OK;
            if (changed)
            {
                _settable.PutCoreSyncSettings(_syncSettings);
            }
        }
Пример #4
0
        private void BtnOk_Click(object sender, EventArgs e)
        {
            _syncSettings.FIOConfig = UserConfigFromGui();
            _settable.PutCoreSyncSettings(_syncSettings);

            DialogResult = DialogResult.OK;
            Close();
        }
        private void OkBtn_Click(object sender, EventArgs e)
        {
            bool changed = _syncSettings.Filter != Port1ComboBox.SelectedItem.ToString();

            if (changed)
            {
                _syncSettings.Filter = Port1ComboBox.SelectedItem.ToString();
                _settable.PutCoreSyncSettings(_syncSettings);
            }

            DialogResult = DialogResult.OK;
            Close();
        }
Пример #6
0
        private void OkBtn_Click(object sender, EventArgs e)
        {
            _settings.VSDipswitches.Dip_Switch_1 = Dipswitch1CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_2 = Dipswitch2CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_3 = Dipswitch3CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_4 = Dipswitch4CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_5 = Dipswitch5CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_6 = Dipswitch6CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_7 = Dipswitch7CheckBox.Checked;
            _settings.VSDipswitches.Dip_Switch_8 = Dipswitch8CheckBox.Checked;

            _settable.PutCoreSyncSettings(_settings);
            Close();
        }
Пример #7
0
        private void OkBtn_Click(object sender, EventArgs e)
        {
            ControllerSettingControls
            .ForEach(c =>
            {
                _syncSettings.Controllers[c.ControllerNumber - 1].IsConnected = c.IsConnected;
                _syncSettings.Controllers[c.ControllerNumber - 1].PakType     = c.PakType;
            });

            _settable.PutCoreSyncSettings(_syncSettings);

            DialogResult = DialogResult.OK;
            Close();
        }
Пример #8
0
        private void OkBtn_Click(object sender, EventArgs e)
        {
            if (_s != null && _settingsChanged)
            {
                _settable.PutCoreSettings(_s);
            }

            if (_ss != null && _syncSettingsChanged)
            {
                _settable.PutCoreSyncSettings(_ss);
            }

            DialogResult = DialogResult.OK;
            Close();
        }
Пример #9
0
        private void BtnOk_Click(object sender, EventArgs e)
        {
            if (_dispSettingsSet)
            {
                _config.DispManagerAR       = EDispManagerAR.System;
                _config.DispFixAspectRatio  = true;
                _config.DispFixScaleInteger = false;
                _config.DispFinalFilter     = 1;             // bilinear, I hope
            }

            SyncSettingsFromGui(_settings, _syncSettings);
            _settings.Validate();
            _settable.PutCoreSettings(_settings);
            _settable.PutCoreSyncSettings(_syncSettings);

            DialogResult = DialogResult.OK;
            Close();
        }
        private void OkBtn_Click(object sender, EventArgs e)
        {
            bool changed =
                _syncSettings.LeftPort.ToString() != Port1ComboBox.SelectedItem.ToString() ||
                _syncSettings.RightPort.ToString() != Port2ComboBox.SelectedItem.ToString() ||
                _syncSettings.LimitAnalogChangeSensitivity != LimitAnalogChangeCheckBox.Checked;

            if (changed)
            {
                _syncSettings.LeftPort  = (LibsnesControllerDeck.ControllerType)Enum.Parse(typeof(LibsnesControllerDeck.ControllerType), Port1ComboBox.SelectedItem.ToString());
                _syncSettings.RightPort = (LibsnesControllerDeck.ControllerType)Enum.Parse(typeof(LibsnesControllerDeck.ControllerType), Port2ComboBox.SelectedItem.ToString());
                _syncSettings.LimitAnalogChangeSensitivity = LimitAnalogChangeCheckBox.Checked;

                _settable.PutCoreSyncSettings(_syncSettings);
            }

            DialogResult = DialogResult.OK;
            Close();
        }
        private void OkBtn_Click(object sender, EventArgs e)
        {
            bool changed =
                _syncSettings.LeftPort != (BsnesApi.BSNES_INPUT_DEVICE)Port1ComboBox.SelectedIndex ||
                _syncSettings.RightPort != (BsnesApi.BSNES_INPUT_DEVICE)Port2ComboBox.SelectedIndex ||
                _syncSettings.LimitAnalogChangeSensitivity != LimitAnalogChangeCheckBox.Checked;

            if (changed)
            {
                _syncSettings.LeftPort  = (BsnesApi.BSNES_INPUT_DEVICE)Port1ComboBox.SelectedIndex;
                _syncSettings.RightPort = (BsnesApi.BSNES_INPUT_DEVICE)Port2ComboBox.SelectedIndex;
                _syncSettings.LimitAnalogChangeSensitivity = LimitAnalogChangeCheckBox.Checked;

                _settable.PutCoreSyncSettings(_syncSettings);
            }

            DialogResult = DialogResult.OK;
            Close();
        }
        private void SaveSettings()
        {
            // Global
            if (VideoResolutionComboBox.Text != CustomResItemName)
            {
                var videoSettings = VideoResolutionComboBox.SelectedItem.ToString();
                var strArr        = videoSettings.Split('x');
                _s.VideoSizeX = int.Parse(strArr[0].Trim());
                _s.VideoSizeY = int.Parse(strArr[1].Trim());
            }
            else
            {
                _s.VideoSizeX =
                    VideoResolutionXTextBox.Text.IsUnsigned() ?
                    int.Parse(VideoResolutionXTextBox.Text) : 320;

                _s.VideoSizeY =
                    VideoResolutionYTextBox.Text.IsUnsigned() ?
                    int.Parse(VideoResolutionYTextBox.Text) : 240;
            }

            _ss.VideoPlugin = PluginComboBox.Text switch
            {
                "Rice" => PluginType.Rice,
                "Glide64" => PluginType.Glide,
                "Glide64mk2" => PluginType.GlideMk2,
                "GLideN64" => PluginType.GLideN64,
                "Angrylion" => PluginType.Angrylion,
                _ => _ss.VideoPlugin
            };

            _ss.Core = CoreTypeDropdown.SelectedItem
                       .ToString()
                       .GetEnumFromDescription <N64SyncSettings.CoreType>();

            _ss.Rsp = RspTypeDropdown.SelectedItem
                      .ToString()
                      .GetEnumFromDescription <N64SyncSettings.RspType>();

            _settable.PutCoreSettings(_s);
            _settable.PutCoreSyncSettings(_ss);
        }
Пример #13
0
        public static DialogResult DoSettingsDialog(IDialogParent dialogParent, ISettingsAdapter settable)
        {
            var s  = (LibsnesCore.SnesSettings)settable.GetSettings();
            var ss = (LibsnesCore.SnesSyncSettings)settable.GetSyncSettings();

            using var dlg = new SNESOptions
                  {
                      RandomizedInitialState = ss.RandomizedInitialState,
                      AlwaysDoubleSize       = s.AlwaysDoubleSize,
                      CropSGBFrame           = s.CropSGBFrame,
                      ShowObj1 = s.ShowOBJ_0,
                      ShowObj2 = s.ShowOBJ_1,
                      ShowObj3 = s.ShowOBJ_2,
                      ShowObj4 = s.ShowOBJ_3,
                      ShowBg1  = s.ShowBG1_0,
                      ShowBg2  = s.ShowBG2_0,
                      ShowBg3  = s.ShowBG3_0,
                      ShowBg4  = s.ShowBG4_0
                  };

            var result = dialogParent.ShowDialogAsChild(dlg);

            if (result == DialogResult.OK)
            {
                s.AlwaysDoubleSize        = dlg.AlwaysDoubleSize;
                s.CropSGBFrame            = dlg.CropSGBFrame;
                ss.RandomizedInitialState = dlg.RandomizedInitialState;
                s.ShowOBJ_0 = dlg.ShowObj1;
                s.ShowOBJ_1 = dlg.ShowObj2;
                s.ShowOBJ_2 = dlg.ShowObj3;
                s.ShowOBJ_3 = dlg.ShowObj4;
                s.ShowBG1_0 = s.ShowBG1_1 = dlg.ShowBg1;
                s.ShowBG2_0 = s.ShowBG2_1 = dlg.ShowBg2;
                s.ShowBG3_0 = s.ShowBG3_1 = dlg.ShowBg3;
                s.ShowBG4_0 = s.ShowBG4_1 = dlg.ShowBg4;

                settable.PutCoreSettings(s);
                settable.PutCoreSyncSettings(ss);
            }
            return(result);
        }
        private void OkBtn_Click(object sender, EventArgs e)
        {
            var controls = new NESControlSettings
            {
                Famicom        = checkBoxFamicom.Checked,
                FamicomExpPort = (string)comboBoxFamicom.SelectedItem,
                NesLeftPort    = (string)comboBoxNESL.SelectedItem,
                NesRightPort   = (string)comboBoxNESR.SelectedItem
            };

            bool changed = NESControlSettings.NeedsReboot(controls, _syncSettings.Controls);

            _syncSettings.Controls = controls;

            if (changed)
            {
                _settable.PutCoreSyncSettings(_syncSettings);
            }

            DialogResult = DialogResult.OK;
            Close();
        }
        private void OkBtn_Click(object sender, EventArgs e)
        {
            bool changed =
                _syncSettings.JoystickType1.ToString() != Port1ComboBox.SelectedItem.ToString() ||
                _syncSettings.JoystickType2.ToString() != Port2ComboBox.SelectedItem.ToString() ||
                _syncSettings.JoystickType3.ToString() != Port3ComboBox.SelectedItem.ToString();

            if (changed)
            {
                // enforce unique joystick selection

                bool selectionValid = true;

                var j1 = Port1ComboBox.SelectedItem.ToString();
                if (j1 != _possibleControllers.First())
                {
                    if (j1 == Port2ComboBox.SelectedItem.ToString())
                    {
                        Port2ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                    if (j1 == Port3ComboBox.SelectedItem.ToString())
                    {
                        Port3ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                }

                var j2 = Port2ComboBox.SelectedItem.ToString();
                if (j2 != _possibleControllers.First())
                {
                    if (j2 == Port1ComboBox.SelectedItem.ToString())
                    {
                        Port1ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                    if (j2 == Port3ComboBox.SelectedItem.ToString())
                    {
                        Port3ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                }

                var j3 = Port3ComboBox.SelectedItem.ToString();
                if (j3 != _possibleControllers.First())
                {
                    if (j3 == Port1ComboBox.SelectedItem.ToString())
                    {
                        Port1ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                    if (j3 == Port2ComboBox.SelectedItem.ToString())
                    {
                        Port2ComboBox.SelectedItem = _possibleControllers.First();
                        selectionValid             = false;
                    }
                }

                if (selectionValid)
                {
                    _syncSettings.JoystickType1 = (JoystickType)Enum.Parse(typeof(JoystickType), Port1ComboBox.SelectedItem.ToString());
                    _syncSettings.JoystickType2 = (JoystickType)Enum.Parse(typeof(JoystickType), Port2ComboBox.SelectedItem.ToString());
                    _syncSettings.JoystickType3 = (JoystickType)Enum.Parse(typeof(JoystickType), Port3ComboBox.SelectedItem.ToString());

                    _settable.PutCoreSyncSettings(_syncSettings);

                    DialogResult = DialogResult.OK;
                    Close();
                }
                else
                {
                    DialogController.ShowMessageBox("Invalid joystick configuration. \nDuplicates have automatically been changed to NULL.\n\nPlease review the configuration");
                }
            }
            else
            {
                DialogResult = DialogResult.OK;
                Close();
            }
        }
Пример #16
0
        public static DialogResult DoSettingsDialog(IDialogParent dialogParent, ISettingsAdapter settable)
        {
            var s  = (BsnesCore.SnesSettings)settable.GetSettings();
            var ss = (BsnesCore.SnesSyncSettings)settable.GetSyncSettings();

            using var dlg = new BSNESOptions
                  {
                      AlwaysDoubleSize = s.AlwaysDoubleSize,
                      CropSGBFrame     = s.CropSGBFrame,
                      Entropy          = ss.Entropy,
                      RegionOverride   = ss.RegionOverride,
                      Hotfixes         = ss.Hotfixes,
                      FastPPU          = ss.FastPPU,
                      FastDSP          = ss.FastDSP,
                      FastCoprocessors = ss.FastCoprocessors,
                      UseSGB2          = ss.UseSGB2,
                      ShowObj1         = s.ShowOBJ_0,
                      ShowObj2         = s.ShowOBJ_1,
                      ShowObj3         = s.ShowOBJ_2,
                      ShowObj4         = s.ShowOBJ_3,
                      ShowBg1_0        = s.ShowBG1_0,
                      ShowBg1_1        = s.ShowBG1_1,
                      ShowBg2_0        = s.ShowBG2_0,
                      ShowBg2_1        = s.ShowBG2_1,
                      ShowBg3_0        = s.ShowBG3_0,
                      ShowBg3_1        = s.ShowBG3_1,
                      ShowBg4_0        = s.ShowBG4_0,
                      ShowBg4_1        = s.ShowBG4_1
                  };

            var result = dialogParent.ShowDialogAsChild(dlg);

            if (result == DialogResult.OK)
            {
                s.AlwaysDoubleSize  = dlg.AlwaysDoubleSize;
                s.CropSGBFrame      = dlg.CropSGBFrame;
                ss.Entropy          = dlg.Entropy;
                ss.RegionOverride   = dlg.RegionOverride;
                ss.Hotfixes         = dlg.Hotfixes;
                ss.FastPPU          = dlg.FastPPU;
                ss.FastDSP          = dlg.FastDSP;
                ss.FastCoprocessors = dlg.FastCoprocessors;
                ss.UseSGB2          = dlg.UseSGB2;
                s.ShowOBJ_0         = dlg.ShowObj1;
                s.ShowOBJ_1         = dlg.ShowObj2;
                s.ShowOBJ_2         = dlg.ShowObj3;
                s.ShowOBJ_3         = dlg.ShowObj4;
                s.ShowBG1_0         = dlg.ShowBg1_0;
                s.ShowBG1_1         = dlg.ShowBg1_1;
                s.ShowBG2_0         = dlg.ShowBg2_0;
                s.ShowBG2_1         = dlg.ShowBg2_1;
                s.ShowBG3_0         = dlg.ShowBg3_0;
                s.ShowBG3_1         = dlg.ShowBg3_1;
                s.ShowBG4_0         = dlg.ShowBg4_0;
                s.ShowBG4_1         = dlg.ShowBg4_1;

                settable.PutCoreSettings(s);
                settable.PutCoreSyncSettings(ss);
            }
            return(result);
        }