diff --git a/UI/Forms/Config/frmEmulationConfig.Designer.cs b/UI/Forms/Config/frmEmulationConfig.Designer.cs
new file mode 100644
index 0000000..3c93a14
--- /dev/null
+++ b/UI/Forms/Config/frmEmulationConfig.Designer.cs
@@ -0,0 +1,332 @@
+namespace Mesen.GUI.Forms.Config
+{
+ partial class frmEmulationConfig
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if(disposing && (components != null)) {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.tabMain = new System.Windows.Forms.TabControl();
+ this.tpgGeneral = new System.Windows.Forms.TabPage();
+ this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
+ this.flowLayoutPanel9 = new System.Windows.Forms.FlowLayoutPanel();
+ this.nudTurboSpeed = new Mesen.GUI.Controls.MesenNumericUpDown();
+ this.lblTurboSpeedHint = new System.Windows.Forms.Label();
+ this.lblTurboSpeed = new System.Windows.Forms.Label();
+ this.flowLayoutPanel6 = new System.Windows.Forms.FlowLayoutPanel();
+ this.nudEmulationSpeed = new Mesen.GUI.Controls.MesenNumericUpDown();
+ this.lblEmuSpeedHint = new System.Windows.Forms.Label();
+ this.lblEmulationSpeed = new System.Windows.Forms.Label();
+ this.lblRewindSpeed = new System.Windows.Forms.Label();
+ this.flowLayoutPanel10 = new System.Windows.Forms.FlowLayoutPanel();
+ this.nudRewindSpeed = new Mesen.GUI.Controls.MesenNumericUpDown();
+ this.lblRewindSpeedHint = new System.Windows.Forms.Label();
+ this.tabMain.SuspendLayout();
+ this.tpgGeneral.SuspendLayout();
+ this.tableLayoutPanel4.SuspendLayout();
+ this.flowLayoutPanel9.SuspendLayout();
+ this.flowLayoutPanel6.SuspendLayout();
+ this.flowLayoutPanel10.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // baseConfigPanel
+ //
+ this.baseConfigPanel.Location = new System.Drawing.Point(0, 290);
+ this.baseConfigPanel.Size = new System.Drawing.Size(414, 29);
+ //
+ // tabMain
+ //
+ this.tabMain.Controls.Add(this.tpgGeneral);
+ this.tabMain.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.tabMain.Location = new System.Drawing.Point(0, 0);
+ this.tabMain.Name = "tabMain";
+ this.tabMain.SelectedIndex = 0;
+ this.tabMain.Size = new System.Drawing.Size(414, 290);
+ this.tabMain.TabIndex = 2;
+ //
+ // tpgGeneral
+ //
+ this.tpgGeneral.Controls.Add(this.tableLayoutPanel4);
+ this.tpgGeneral.Location = new System.Drawing.Point(4, 22);
+ this.tpgGeneral.Name = "tpgGeneral";
+ this.tpgGeneral.Padding = new System.Windows.Forms.Padding(3);
+ this.tpgGeneral.Size = new System.Drawing.Size(406, 264);
+ this.tpgGeneral.TabIndex = 2;
+ this.tpgGeneral.Text = "General";
+ this.tpgGeneral.UseVisualStyleBackColor = true;
+ //
+ // tableLayoutPanel4
+ //
+ this.tableLayoutPanel4.AutoSize = true;
+ this.tableLayoutPanel4.ColumnCount = 2;
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel4.Controls.Add(this.flowLayoutPanel9, 1, 1);
+ this.tableLayoutPanel4.Controls.Add(this.lblTurboSpeed, 0, 1);
+ this.tableLayoutPanel4.Controls.Add(this.flowLayoutPanel6, 1, 0);
+ this.tableLayoutPanel4.Controls.Add(this.lblEmulationSpeed, 0, 0);
+ this.tableLayoutPanel4.Controls.Add(this.lblRewindSpeed, 0, 2);
+ this.tableLayoutPanel4.Controls.Add(this.flowLayoutPanel10, 1, 2);
+ this.tableLayoutPanel4.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.tableLayoutPanel4.Location = new System.Drawing.Point(3, 3);
+ this.tableLayoutPanel4.Name = "tableLayoutPanel4";
+ this.tableLayoutPanel4.RowCount = 4;
+ this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle());
+ this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel4.Size = new System.Drawing.Size(400, 258);
+ this.tableLayoutPanel4.TabIndex = 0;
+ //
+ // flowLayoutPanel9
+ //
+ this.flowLayoutPanel9.AutoSize = true;
+ this.flowLayoutPanel9.Controls.Add(this.nudTurboSpeed);
+ this.flowLayoutPanel9.Controls.Add(this.lblTurboSpeedHint);
+ this.flowLayoutPanel9.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.flowLayoutPanel9.Location = new System.Drawing.Point(111, 27);
+ this.flowLayoutPanel9.Margin = new System.Windows.Forms.Padding(0);
+ this.flowLayoutPanel9.Name = "flowLayoutPanel9";
+ this.flowLayoutPanel9.Size = new System.Drawing.Size(289, 27);
+ this.flowLayoutPanel9.TabIndex = 14;
+ //
+ // nudTurboSpeed
+ //
+ this.nudTurboSpeed.DecimalPlaces = 0;
+ this.nudTurboSpeed.Increment = new decimal(new int[] {
+ 1,
+ 0,
+ 0,
+ 0});
+ this.nudTurboSpeed.Location = new System.Drawing.Point(3, 3);
+ this.nudTurboSpeed.Maximum = new decimal(new int[] {
+ 5000,
+ 0,
+ 0,
+ 0});
+ this.nudTurboSpeed.MaximumSize = new System.Drawing.Size(10000, 20);
+ this.nudTurboSpeed.Minimum = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ this.nudTurboSpeed.MinimumSize = new System.Drawing.Size(0, 21);
+ this.nudTurboSpeed.Name = "nudTurboSpeed";
+ this.nudTurboSpeed.Size = new System.Drawing.Size(48, 21);
+ this.nudTurboSpeed.TabIndex = 1;
+ this.nudTurboSpeed.Value = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ //
+ // lblTurboSpeedHint
+ //
+ this.lblTurboSpeedHint.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblTurboSpeedHint.AutoSize = true;
+ this.lblTurboSpeedHint.Location = new System.Drawing.Point(57, 7);
+ this.lblTurboSpeedHint.Name = "lblTurboSpeedHint";
+ this.lblTurboSpeedHint.Size = new System.Drawing.Size(121, 13);
+ this.lblTurboSpeedHint.TabIndex = 2;
+ this.lblTurboSpeedHint.Text = "% (0 = Maximum speed)";
+ //
+ // lblTurboSpeed
+ //
+ this.lblTurboSpeed.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblTurboSpeed.AutoSize = true;
+ this.lblTurboSpeed.Location = new System.Drawing.Point(3, 34);
+ this.lblTurboSpeed.Name = "lblTurboSpeed";
+ this.lblTurboSpeed.Size = new System.Drawing.Size(105, 13);
+ this.lblTurboSpeed.TabIndex = 13;
+ this.lblTurboSpeed.Text = "Fast Forward Speed:";
+ //
+ // flowLayoutPanel6
+ //
+ this.flowLayoutPanel6.AutoSize = true;
+ this.flowLayoutPanel6.Controls.Add(this.nudEmulationSpeed);
+ this.flowLayoutPanel6.Controls.Add(this.lblEmuSpeedHint);
+ this.flowLayoutPanel6.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.flowLayoutPanel6.Location = new System.Drawing.Point(111, 0);
+ this.flowLayoutPanel6.Margin = new System.Windows.Forms.Padding(0);
+ this.flowLayoutPanel6.Name = "flowLayoutPanel6";
+ this.flowLayoutPanel6.Size = new System.Drawing.Size(289, 27);
+ this.flowLayoutPanel6.TabIndex = 11;
+ //
+ // nudEmulationSpeed
+ //
+ this.nudEmulationSpeed.DecimalPlaces = 0;
+ this.nudEmulationSpeed.Increment = new decimal(new int[] {
+ 1,
+ 0,
+ 0,
+ 0});
+ this.nudEmulationSpeed.Location = new System.Drawing.Point(3, 3);
+ this.nudEmulationSpeed.Maximum = new decimal(new int[] {
+ 5000,
+ 0,
+ 0,
+ 0});
+ this.nudEmulationSpeed.MaximumSize = new System.Drawing.Size(10000, 20);
+ this.nudEmulationSpeed.Minimum = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ this.nudEmulationSpeed.MinimumSize = new System.Drawing.Size(0, 21);
+ this.nudEmulationSpeed.Name = "nudEmulationSpeed";
+ this.nudEmulationSpeed.Size = new System.Drawing.Size(48, 21);
+ this.nudEmulationSpeed.TabIndex = 1;
+ this.nudEmulationSpeed.Value = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ //
+ // lblEmuSpeedHint
+ //
+ this.lblEmuSpeedHint.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblEmuSpeedHint.AutoSize = true;
+ this.lblEmuSpeedHint.Location = new System.Drawing.Point(57, 7);
+ this.lblEmuSpeedHint.Name = "lblEmuSpeedHint";
+ this.lblEmuSpeedHint.Size = new System.Drawing.Size(121, 13);
+ this.lblEmuSpeedHint.TabIndex = 2;
+ this.lblEmuSpeedHint.Text = "% (0 = Maximum speed)";
+ //
+ // lblEmulationSpeed
+ //
+ this.lblEmulationSpeed.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblEmulationSpeed.AutoSize = true;
+ this.lblEmulationSpeed.Location = new System.Drawing.Point(3, 7);
+ this.lblEmulationSpeed.Name = "lblEmulationSpeed";
+ this.lblEmulationSpeed.Size = new System.Drawing.Size(90, 13);
+ this.lblEmulationSpeed.TabIndex = 12;
+ this.lblEmulationSpeed.Text = "Emulation Speed:";
+ //
+ // lblRewindSpeed
+ //
+ this.lblRewindSpeed.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblRewindSpeed.AutoSize = true;
+ this.lblRewindSpeed.Location = new System.Drawing.Point(3, 61);
+ this.lblRewindSpeed.Name = "lblRewindSpeed";
+ this.lblRewindSpeed.Size = new System.Drawing.Size(80, 13);
+ this.lblRewindSpeed.TabIndex = 15;
+ this.lblRewindSpeed.Text = "Rewind Speed:";
+ //
+ // flowLayoutPanel10
+ //
+ this.flowLayoutPanel10.AutoSize = true;
+ this.flowLayoutPanel10.Controls.Add(this.nudRewindSpeed);
+ this.flowLayoutPanel10.Controls.Add(this.lblRewindSpeedHint);
+ this.flowLayoutPanel10.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.flowLayoutPanel10.Location = new System.Drawing.Point(111, 54);
+ this.flowLayoutPanel10.Margin = new System.Windows.Forms.Padding(0);
+ this.flowLayoutPanel10.Name = "flowLayoutPanel10";
+ this.flowLayoutPanel10.Size = new System.Drawing.Size(289, 27);
+ this.flowLayoutPanel10.TabIndex = 16;
+ //
+ // nudRewindSpeed
+ //
+ this.nudRewindSpeed.DecimalPlaces = 0;
+ this.nudRewindSpeed.Increment = new decimal(new int[] {
+ 1,
+ 0,
+ 0,
+ 0});
+ this.nudRewindSpeed.Location = new System.Drawing.Point(3, 3);
+ this.nudRewindSpeed.Maximum = new decimal(new int[] {
+ 5000,
+ 0,
+ 0,
+ 0});
+ this.nudRewindSpeed.MaximumSize = new System.Drawing.Size(10000, 20);
+ this.nudRewindSpeed.Minimum = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ this.nudRewindSpeed.MinimumSize = new System.Drawing.Size(0, 21);
+ this.nudRewindSpeed.Name = "nudRewindSpeed";
+ this.nudRewindSpeed.Size = new System.Drawing.Size(48, 21);
+ this.nudRewindSpeed.TabIndex = 1;
+ this.nudRewindSpeed.Value = new decimal(new int[] {
+ 0,
+ 0,
+ 0,
+ 0});
+ //
+ // lblRewindSpeedHint
+ //
+ this.lblRewindSpeedHint.Anchor = System.Windows.Forms.AnchorStyles.Left;
+ this.lblRewindSpeedHint.AutoSize = true;
+ this.lblRewindSpeedHint.Location = new System.Drawing.Point(57, 7);
+ this.lblRewindSpeedHint.Name = "lblRewindSpeedHint";
+ this.lblRewindSpeedHint.Size = new System.Drawing.Size(121, 13);
+ this.lblRewindSpeedHint.TabIndex = 2;
+ this.lblRewindSpeedHint.Text = "% (0 = Maximum speed)";
+ //
+ // frmEmulationConfig
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(414, 319);
+ this.Controls.Add(this.tabMain);
+ this.Name = "frmEmulationConfig";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "Emulation Config";
+ this.Controls.SetChildIndex(this.baseConfigPanel, 0);
+ this.Controls.SetChildIndex(this.tabMain, 0);
+ this.tabMain.ResumeLayout(false);
+ this.tpgGeneral.ResumeLayout(false);
+ this.tpgGeneral.PerformLayout();
+ this.tableLayoutPanel4.ResumeLayout(false);
+ this.tableLayoutPanel4.PerformLayout();
+ this.flowLayoutPanel9.ResumeLayout(false);
+ this.flowLayoutPanel9.PerformLayout();
+ this.flowLayoutPanel6.ResumeLayout(false);
+ this.flowLayoutPanel6.PerformLayout();
+ this.flowLayoutPanel10.ResumeLayout(false);
+ this.flowLayoutPanel10.PerformLayout();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.TabControl tabMain;
+ private System.Windows.Forms.TabPage tpgGeneral;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4;
+ private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel9;
+ private Controls.MesenNumericUpDown nudTurboSpeed;
+ private System.Windows.Forms.Label lblTurboSpeedHint;
+ private System.Windows.Forms.Label lblTurboSpeed;
+ private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel6;
+ private Controls.MesenNumericUpDown nudEmulationSpeed;
+ private System.Windows.Forms.Label lblEmuSpeedHint;
+ private System.Windows.Forms.Label lblEmulationSpeed;
+ private System.Windows.Forms.Label lblRewindSpeed;
+ private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel10;
+ private Controls.MesenNumericUpDown nudRewindSpeed;
+ private System.Windows.Forms.Label lblRewindSpeedHint;
+ }
+}
\ No newline at end of file
diff --git a/UI/Forms/Config/frmEmulationConfig.cs b/UI/Forms/Config/frmEmulationConfig.cs
new file mode 100644
index 0000000..938b852
--- /dev/null
+++ b/UI/Forms/Config/frmEmulationConfig.cs
@@ -0,0 +1,36 @@
+using Mesen.GUI.Config;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Mesen.GUI.Forms.Config
+{
+ public partial class frmEmulationConfig : BaseConfigForm
+ {
+ public frmEmulationConfig()
+ {
+ InitializeComponent();
+ if(DesignMode) {
+ return;
+ }
+
+ Entity = ConfigManager.Config.Emulation.Clone();
+
+ AddBinding(nameof(EmulationConfig.EmulationSpeed), nudEmulationSpeed);
+ AddBinding(nameof(EmulationConfig.TurboSpeed), nudTurboSpeed);
+ AddBinding(nameof(EmulationConfig.RewindSpeed), nudRewindSpeed);
+ }
+
+ protected override void OnApply()
+ {
+ ConfigManager.Config.Emulation = (EmulationConfig)this.Entity;
+ ConfigManager.ApplyChanges();
+ }
+ }
+}
diff --git a/UI/Forms/Config/frmEmulationConfig.resx b/UI/Forms/Config/frmEmulationConfig.resx
new file mode 100644
index 0000000..8766f29
--- /dev/null
+++ b/UI/Forms/Config/frmEmulationConfig.resx
@@ -0,0 +1,123 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
\ No newline at end of file
diff --git a/UI/Forms/frmMain.Designer.cs b/UI/Forms/frmMain.Designer.cs
index 15c50b3..e3fe3ca 100644
--- a/UI/Forms/frmMain.Designer.cs
+++ b/UI/Forms/frmMain.Designer.cs
@@ -124,6 +124,7 @@
this.toolStripMenuItem5 = new System.Windows.Forms.ToolStripSeparator();
this.mnuAbout = new System.Windows.Forms.ToolStripMenuItem();
this.pnlRenderer = new System.Windows.Forms.Panel();
+ this.mnuEmulationConfig = new System.Windows.Forms.ToolStripMenuItem();
this.mnuMain.SuspendLayout();
this.pnlRenderer.SuspendLayout();
this.SuspendLayout();
@@ -274,6 +275,7 @@
this.toolStripMenuItem4,
this.mnuAudioConfig,
this.mnuVideoConfig,
+ this.mnuEmulationConfig,
this.toolStripMenuItem3,
this.mnuPreferences});
this.optionsToolStripMenuItem.Name = "optionsToolStripMenuItem";
@@ -297,7 +299,7 @@
this.mnuShowFPS});
this.mnuEmulationSpeed.Image = global::Mesen.GUI.Properties.Resources.Speed;
this.mnuEmulationSpeed.Name = "mnuEmulationSpeed";
- this.mnuEmulationSpeed.Size = new System.Drawing.Size(135, 22);
+ this.mnuEmulationSpeed.Size = new System.Drawing.Size(152, 22);
this.mnuEmulationSpeed.Text = "Speed";
this.mnuEmulationSpeed.DropDownOpening += new System.EventHandler(this.mnuEmulationSpeed_DropDownOpening);
//
@@ -385,7 +387,7 @@
this.mnuFullscreen});
this.mnuVideoScale.Image = global::Mesen.GUI.Properties.Resources.Fullscreen;
this.mnuVideoScale.Name = "mnuVideoScale";
- this.mnuVideoScale.Size = new System.Drawing.Size(135, 22);
+ this.mnuVideoScale.Size = new System.Drawing.Size(152, 22);
this.mnuVideoScale.Text = "Video Size";
this.mnuVideoScale.DropDownOpening += new System.EventHandler(this.mnuVideoScale_DropDownOpening);
//
@@ -471,7 +473,7 @@
this.mnuBilinearInterpolation});
this.mnuVideoFilter.Image = global::Mesen.GUI.Properties.Resources.VideoFilter;
this.mnuVideoFilter.Name = "mnuVideoFilter";
- this.mnuVideoFilter.Size = new System.Drawing.Size(135, 22);
+ this.mnuVideoFilter.Size = new System.Drawing.Size(152, 22);
this.mnuVideoFilter.Text = "Video Filter";
this.mnuVideoFilter.DropDownOpening += new System.EventHandler(this.mnuVideoFilter_DropDownOpening);
//
@@ -652,13 +654,13 @@
// toolStripMenuItem4
//
this.toolStripMenuItem4.Name = "toolStripMenuItem4";
- this.toolStripMenuItem4.Size = new System.Drawing.Size(132, 6);
+ this.toolStripMenuItem4.Size = new System.Drawing.Size(149, 6);
//
// mnuAudioConfig
//
this.mnuAudioConfig.Image = global::Mesen.GUI.Properties.Resources.Audio;
this.mnuAudioConfig.Name = "mnuAudioConfig";
- this.mnuAudioConfig.Size = new System.Drawing.Size(135, 22);
+ this.mnuAudioConfig.Size = new System.Drawing.Size(152, 22);
this.mnuAudioConfig.Text = "Audio";
this.mnuAudioConfig.Click += new System.EventHandler(this.mnuAudioConfig_Click);
//
@@ -666,20 +668,20 @@
//
this.mnuVideoConfig.Image = global::Mesen.GUI.Properties.Resources.VideoOptions;
this.mnuVideoConfig.Name = "mnuVideoConfig";
- this.mnuVideoConfig.Size = new System.Drawing.Size(135, 22);
+ this.mnuVideoConfig.Size = new System.Drawing.Size(152, 22);
this.mnuVideoConfig.Text = "Video";
this.mnuVideoConfig.Click += new System.EventHandler(this.mnuVideoConfig_Click);
//
// toolStripMenuItem3
//
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
- this.toolStripMenuItem3.Size = new System.Drawing.Size(132, 6);
+ this.toolStripMenuItem3.Size = new System.Drawing.Size(149, 6);
//
// mnuPreferences
//
this.mnuPreferences.Image = global::Mesen.GUI.Properties.Resources.Settings;
this.mnuPreferences.Name = "mnuPreferences";
- this.mnuPreferences.Size = new System.Drawing.Size(135, 22);
+ this.mnuPreferences.Size = new System.Drawing.Size(152, 22);
this.mnuPreferences.Text = "Preferences";
this.mnuPreferences.Click += new System.EventHandler(this.mnuPreferences_Click);
//
@@ -850,6 +852,14 @@
this.pnlRenderer.Size = new System.Drawing.Size(512, 448);
this.pnlRenderer.TabIndex = 2;
//
+ // mnuEmulationConfig
+ //
+ this.mnuEmulationConfig.Image = global::Mesen.GUI.Properties.Resources.DipSwitches;
+ this.mnuEmulationConfig.Name = "mnuEmulationConfig";
+ this.mnuEmulationConfig.Size = new System.Drawing.Size(152, 22);
+ this.mnuEmulationConfig.Text = "Emulation";
+ this.mnuEmulationConfig.Click += new System.EventHandler(this.mnuEmulationConfig_Click);
+ //
// frmMain
//
this.AllowDrop = true;
@@ -968,5 +978,6 @@
private System.Windows.Forms.ToolStripMenuItem mnuSaveState;
private System.Windows.Forms.ToolStripMenuItem mnuLoadState;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem10;
+ private System.Windows.Forms.ToolStripMenuItem mnuEmulationConfig;
}
}
\ No newline at end of file
diff --git a/UI/Forms/frmMain.cs b/UI/Forms/frmMain.cs
index f92aa3e..a4ae22c 100644
--- a/UI/Forms/frmMain.cs
+++ b/UI/Forms/frmMain.cs
@@ -191,6 +191,14 @@ namespace Mesen.GUI.Forms
ConfigManager.Config.Audio.ApplyConfig();
}
+ private void mnuEmulationConfig_Click(object sender, EventArgs e)
+ {
+ using(frmEmulationConfig frm = new frmEmulationConfig()) {
+ frm.ShowDialog(sender, this);
+ }
+ ConfigManager.Config.Emulation.ApplyConfig();
+ }
+
private void mnuPreferences_Click(object sender, EventArgs e)
{
using(frmPreferences frm = new frmPreferences()) {
diff --git a/UI/UI.csproj b/UI/UI.csproj
index f76566d..7a2bdd3 100644
--- a/UI/UI.csproj
+++ b/UI/UI.csproj
@@ -485,6 +485,12 @@
frmAudioConfig.cs
+
+ Form
+
+
+ frmEmulationConfig.cs
+
Form
@@ -643,6 +649,9 @@
frmAudioConfig.cs
+
+ frmEmulationConfig.cs
+
frmGetKey.cs