889 lines
40 KiB
C#
889 lines
40 KiB
C#
using Data;
|
|
using System;
|
|
using System.ComponentModel;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
|
|
internal class parmPopcorn : UserControl
|
|
{
|
|
private bool bool_0;
|
|
private Class18 class18_0;
|
|
private ErrorProvider errorProvider_0;
|
|
private GroupBox groupBox1;
|
|
private IContainer icontainer_0;
|
|
private Label label2;
|
|
private Label label6;
|
|
private Label label7;
|
|
private Label label9;
|
|
private IContainer components;
|
|
private TrackBar trackBar1;
|
|
private Label label3;
|
|
private NumericUpDown txtbRpmMin;
|
|
private NumericUpDown txtbTps;
|
|
private NumericUpDown txtbBoostRetard;
|
|
private Label label11;
|
|
private Button btnSave;
|
|
private ToolTip toolTip1;
|
|
private Label label5;
|
|
private Label label8;
|
|
private GroupBox groupBox_IgnFuel;
|
|
private Label label10;
|
|
private Button buttonIncrease;
|
|
private Button buttonDecrease;
|
|
private GroupBox groupBox3;
|
|
private Panel panel1;
|
|
private NumericUpDown numericAboveRPM;
|
|
private Label label1;
|
|
private Button buttonADD;
|
|
private int MinimumLoad = 0;
|
|
private CheckBox checkBoxSecondary;
|
|
private CheckBox checkBoxPrimary;
|
|
private bool FirstLoad = true;
|
|
private Button buttonOpenFCutOnDecel;
|
|
private bool HasModInstalled = false;
|
|
|
|
public parmPopcorn(ref Class18 rm)
|
|
{
|
|
this.class18_0 = rm;
|
|
this.class18_0.delegate55_0 += new Class18.Delegate55(this.method_3);
|
|
this.class18_0.delegate58_0 += new Class18.Delegate58(this.method_3);
|
|
this.InitializeComponent();
|
|
|
|
foreach (Control control in base.Controls)
|
|
{
|
|
float emSize = control.Font.Size * (class18_0.class10_settings_0.scaleRate / 100f);
|
|
control.Font = new Font(control.Font.Name, emSize, control.Font.Style, control.Font.Unit);
|
|
}
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing && (this.icontainer_0 != null))
|
|
{
|
|
this.icontainer_0.Dispose();
|
|
}
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.components = new System.ComponentModel.Container();
|
|
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
|
this.buttonOpenFCutOnDecel = new System.Windows.Forms.Button();
|
|
this.buttonADD = new System.Windows.Forms.Button();
|
|
this.groupBox3 = new System.Windows.Forms.GroupBox();
|
|
this.label2 = new System.Windows.Forms.Label();
|
|
this.label7 = new System.Windows.Forms.Label();
|
|
this.label6 = new System.Windows.Forms.Label();
|
|
this.txtbRpmMin = new System.Windows.Forms.NumericUpDown();
|
|
this.label9 = new System.Windows.Forms.Label();
|
|
this.txtbTps = new System.Windows.Forms.NumericUpDown();
|
|
this.trackBar1 = new System.Windows.Forms.TrackBar();
|
|
this.label3 = new System.Windows.Forms.Label();
|
|
this.groupBox_IgnFuel = new System.Windows.Forms.GroupBox();
|
|
this.checkBoxSecondary = new System.Windows.Forms.CheckBox();
|
|
this.checkBoxPrimary = new System.Windows.Forms.CheckBox();
|
|
this.numericAboveRPM = new System.Windows.Forms.NumericUpDown();
|
|
this.label1 = new System.Windows.Forms.Label();
|
|
this.label10 = new System.Windows.Forms.Label();
|
|
this.buttonIncrease = new System.Windows.Forms.Button();
|
|
this.buttonDecrease = new System.Windows.Forms.Button();
|
|
this.txtbBoostRetard = new System.Windows.Forms.NumericUpDown();
|
|
this.label11 = new System.Windows.Forms.Label();
|
|
this.btnSave = new System.Windows.Forms.Button();
|
|
this.label8 = new System.Windows.Forms.Label();
|
|
this.label5 = new System.Windows.Forms.Label();
|
|
this.errorProvider_0 = new System.Windows.Forms.ErrorProvider(this.components);
|
|
this.panel1 = new System.Windows.Forms.Panel();
|
|
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
|
this.groupBox1.SuspendLayout();
|
|
this.groupBox3.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbRpmMin)).BeginInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbTps)).BeginInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();
|
|
this.groupBox_IgnFuel.SuspendLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.numericAboveRPM)).BeginInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbBoostRetard)).BeginInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.errorProvider_0)).BeginInit();
|
|
this.panel1.SuspendLayout();
|
|
this.SuspendLayout();
|
|
//
|
|
// groupBox1
|
|
//
|
|
this.groupBox1.Controls.Add(this.buttonOpenFCutOnDecel);
|
|
this.groupBox1.Controls.Add(this.buttonADD);
|
|
this.groupBox1.Controls.Add(this.groupBox3);
|
|
this.groupBox1.Controls.Add(this.groupBox_IgnFuel);
|
|
this.groupBox1.Controls.Add(this.label8);
|
|
this.groupBox1.Controls.Add(this.label5);
|
|
this.groupBox1.Location = new System.Drawing.Point(3, 3);
|
|
this.groupBox1.Name = "groupBox1";
|
|
this.groupBox1.Size = new System.Drawing.Size(291, 487);
|
|
this.groupBox1.TabIndex = 0;
|
|
this.groupBox1.TabStop = false;
|
|
this.groupBox1.Text = "Popcorn MOD Settings:";
|
|
//
|
|
// buttonOpenFCutOnDecel
|
|
//
|
|
this.buttonOpenFCutOnDecel.BackColor = System.Drawing.SystemColors.ControlLight;
|
|
this.buttonOpenFCutOnDecel.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.buttonOpenFCutOnDecel.Location = new System.Drawing.Point(14, 54);
|
|
this.buttonOpenFCutOnDecel.Name = "buttonOpenFCutOnDecel";
|
|
this.buttonOpenFCutOnDecel.Size = new System.Drawing.Size(256, 25);
|
|
this.buttonOpenFCutOnDecel.TabIndex = 129;
|
|
this.buttonOpenFCutOnDecel.Text = "Open FuelCut on Decel Parameters";
|
|
this.toolTip1.SetToolTip(this.buttonOpenFCutOnDecel, "Open the FuelCut on deceleration parameters page");
|
|
this.buttonOpenFCutOnDecel.UseVisualStyleBackColor = false;
|
|
this.buttonOpenFCutOnDecel.Click += new System.EventHandler(this.buttonOpenFCutOnDecel_Click);
|
|
//
|
|
// buttonADD
|
|
//
|
|
this.buttonADD.BackColor = System.Drawing.SystemColors.ControlLight;
|
|
this.buttonADD.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.buttonADD.Location = new System.Drawing.Point(69, 23);
|
|
this.buttonADD.Name = "buttonADD";
|
|
this.buttonADD.Size = new System.Drawing.Size(156, 25);
|
|
this.buttonADD.TabIndex = 128;
|
|
this.buttonADD.Text = "ADD MOD";
|
|
this.toolTip1.SetToolTip(this.buttonADD, "Apply Ignition to Ignition Tables");
|
|
this.buttonADD.UseVisualStyleBackColor = false;
|
|
this.buttonADD.Click += new System.EventHandler(this.Button3_Click);
|
|
//
|
|
// groupBox3
|
|
//
|
|
this.groupBox3.Controls.Add(this.label2);
|
|
this.groupBox3.Controls.Add(this.label7);
|
|
this.groupBox3.Controls.Add(this.label6);
|
|
this.groupBox3.Controls.Add(this.txtbRpmMin);
|
|
this.groupBox3.Controls.Add(this.label9);
|
|
this.groupBox3.Controls.Add(this.txtbTps);
|
|
this.groupBox3.Controls.Add(this.trackBar1);
|
|
this.groupBox3.Controls.Add(this.label3);
|
|
this.groupBox3.Location = new System.Drawing.Point(7, 91);
|
|
this.groupBox3.Name = "groupBox3";
|
|
this.groupBox3.Size = new System.Drawing.Size(276, 128);
|
|
this.groupBox3.TabIndex = 1;
|
|
this.groupBox3.TabStop = false;
|
|
this.groupBox3.Text = "Fuel Cut on Deceleration Settings:";
|
|
//
|
|
// label2
|
|
//
|
|
this.label2.AutoSize = true;
|
|
this.label2.Location = new System.Drawing.Point(9, 23);
|
|
this.label2.Name = "label2";
|
|
this.label2.Size = new System.Drawing.Size(66, 14);
|
|
this.label2.TabIndex = 101;
|
|
this.label2.Text = "Below TPS:";
|
|
//
|
|
// label7
|
|
//
|
|
this.label7.AutoSize = true;
|
|
this.label7.Location = new System.Drawing.Point(10, 75);
|
|
this.label7.Name = "label7";
|
|
this.label7.Size = new System.Drawing.Size(63, 14);
|
|
this.label7.TabIndex = 107;
|
|
this.label7.Text = "Cut Delay:";
|
|
//
|
|
// label6
|
|
//
|
|
this.label6.AutoSize = true;
|
|
this.label6.Location = new System.Drawing.Point(181, 97);
|
|
this.label6.Name = "label6";
|
|
this.label6.Size = new System.Drawing.Size(43, 14);
|
|
this.label6.TabIndex = 106;
|
|
this.label6.Text = "344ms";
|
|
//
|
|
// txtbRpmMin
|
|
//
|
|
this.txtbRpmMin.Increment = new decimal(new int[] {
|
|
50,
|
|
0,
|
|
0,
|
|
0});
|
|
this.txtbRpmMin.Location = new System.Drawing.Point(110, 47);
|
|
this.txtbRpmMin.Maximum = new decimal(new int[] {
|
|
4000,
|
|
0,
|
|
0,
|
|
0});
|
|
this.txtbRpmMin.Name = "txtbRpmMin";
|
|
this.txtbRpmMin.Size = new System.Drawing.Size(69, 20);
|
|
this.txtbRpmMin.TabIndex = 120;
|
|
this.txtbRpmMin.Click += new System.EventHandler(this.txtbMap_Validated);
|
|
this.txtbRpmMin.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtbMap_KeyPress);
|
|
this.txtbRpmMin.Validating += new System.ComponentModel.CancelEventHandler(this.txtbMap_Validating);
|
|
this.txtbRpmMin.Validated += new System.EventHandler(this.txtbMap_Validated);
|
|
//
|
|
// label9
|
|
//
|
|
this.label9.AutoSize = true;
|
|
this.label9.Location = new System.Drawing.Point(10, 49);
|
|
this.label9.Name = "label9";
|
|
this.label9.Size = new System.Drawing.Size(70, 14);
|
|
this.label9.TabIndex = 110;
|
|
this.label9.Text = "Above RPM:";
|
|
//
|
|
// txtbTps
|
|
//
|
|
this.txtbTps.Location = new System.Drawing.Point(109, 21);
|
|
this.txtbTps.Name = "txtbTps";
|
|
this.txtbTps.Size = new System.Drawing.Size(69, 20);
|
|
this.txtbTps.TabIndex = 118;
|
|
this.txtbTps.Click += new System.EventHandler(this.txtbMap_Validated);
|
|
this.txtbTps.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtbMap_KeyPress);
|
|
this.txtbTps.Validating += new System.ComponentModel.CancelEventHandler(this.txtbMap_Validating);
|
|
this.txtbTps.Validated += new System.EventHandler(this.txtbMap_Validated);
|
|
//
|
|
// trackBar1
|
|
//
|
|
this.trackBar1.AutoSize = false;
|
|
this.trackBar1.Location = new System.Drawing.Point(7, 97);
|
|
this.trackBar1.Maximum = 2310;
|
|
this.trackBar1.Name = "trackBar1";
|
|
this.trackBar1.Size = new System.Drawing.Size(162, 22);
|
|
this.trackBar1.TabIndex = 115;
|
|
this.trackBar1.TickStyle = System.Windows.Forms.TickStyle.None;
|
|
this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll);
|
|
this.trackBar1.Validated += new System.EventHandler(this.txtbMap_Validated);
|
|
//
|
|
// label3
|
|
//
|
|
this.label3.AutoSize = true;
|
|
this.label3.Location = new System.Drawing.Point(190, 23);
|
|
this.label3.Name = "label3";
|
|
this.label3.Size = new System.Drawing.Size(14, 14);
|
|
this.label3.TabIndex = 116;
|
|
this.label3.Text = "%";
|
|
//
|
|
// groupBox_IgnFuel
|
|
//
|
|
this.groupBox_IgnFuel.Controls.Add(this.checkBoxSecondary);
|
|
this.groupBox_IgnFuel.Controls.Add(this.checkBoxPrimary);
|
|
this.groupBox_IgnFuel.Controls.Add(this.numericAboveRPM);
|
|
this.groupBox_IgnFuel.Controls.Add(this.label1);
|
|
this.groupBox_IgnFuel.Controls.Add(this.label10);
|
|
this.groupBox_IgnFuel.Controls.Add(this.buttonIncrease);
|
|
this.groupBox_IgnFuel.Controls.Add(this.buttonDecrease);
|
|
this.groupBox_IgnFuel.Controls.Add(this.txtbBoostRetard);
|
|
this.groupBox_IgnFuel.Controls.Add(this.label11);
|
|
this.groupBox_IgnFuel.Controls.Add(this.btnSave);
|
|
this.groupBox_IgnFuel.Location = new System.Drawing.Point(7, 225);
|
|
this.groupBox_IgnFuel.Name = "groupBox_IgnFuel";
|
|
this.groupBox_IgnFuel.Size = new System.Drawing.Size(276, 169);
|
|
this.groupBox_IgnFuel.TabIndex = 1;
|
|
this.groupBox_IgnFuel.TabStop = false;
|
|
this.groupBox_IgnFuel.Text = "Fuel/Ignition Tables";
|
|
//
|
|
// checkBoxSecondary
|
|
//
|
|
this.checkBoxSecondary.AutoSize = true;
|
|
this.checkBoxSecondary.Checked = true;
|
|
this.checkBoxSecondary.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.checkBoxSecondary.Location = new System.Drawing.Point(29, 51);
|
|
this.checkBoxSecondary.Name = "checkBoxSecondary";
|
|
this.checkBoxSecondary.Size = new System.Drawing.Size(218, 18);
|
|
this.checkBoxSecondary.TabIndex = 132;
|
|
this.checkBoxSecondary.Text = "Popcorn MOD on Secondary Tables";
|
|
this.checkBoxSecondary.UseVisualStyleBackColor = true;
|
|
this.checkBoxSecondary.CheckedChanged += new System.EventHandler(this.CheckBoxSecondary_CheckedChanged);
|
|
//
|
|
// checkBoxPrimary
|
|
//
|
|
this.checkBoxPrimary.AutoSize = true;
|
|
this.checkBoxPrimary.Checked = true;
|
|
this.checkBoxPrimary.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.checkBoxPrimary.Location = new System.Drawing.Point(29, 23);
|
|
this.checkBoxPrimary.Name = "checkBoxPrimary";
|
|
this.checkBoxPrimary.Size = new System.Drawing.Size(198, 18);
|
|
this.checkBoxPrimary.TabIndex = 131;
|
|
this.checkBoxPrimary.Text = "Popcorn MOD on Primary Tables";
|
|
this.checkBoxPrimary.UseVisualStyleBackColor = true;
|
|
this.checkBoxPrimary.CheckedChanged += new System.EventHandler(this.CheckBoxPrimary_CheckedChanged);
|
|
//
|
|
// numericAboveRPM
|
|
//
|
|
this.numericAboveRPM.Increment = new decimal(new int[] {
|
|
50,
|
|
0,
|
|
0,
|
|
0});
|
|
this.numericAboveRPM.Location = new System.Drawing.Point(109, 80);
|
|
this.numericAboveRPM.Maximum = new decimal(new int[] {
|
|
11050,
|
|
0,
|
|
0,
|
|
0});
|
|
this.numericAboveRPM.Name = "numericAboveRPM";
|
|
this.numericAboveRPM.Size = new System.Drawing.Size(69, 20);
|
|
this.numericAboveRPM.TabIndex = 130;
|
|
this.numericAboveRPM.Click += new System.EventHandler(this.txtbMap_Validated);
|
|
//
|
|
// label1
|
|
//
|
|
this.label1.AutoSize = true;
|
|
this.label1.Location = new System.Drawing.Point(9, 82);
|
|
this.label1.Name = "label1";
|
|
this.label1.Size = new System.Drawing.Size(93, 14);
|
|
this.label1.TabIndex = 129;
|
|
this.label1.Text = "Pop Above RPM:";
|
|
//
|
|
// label10
|
|
//
|
|
this.label10.AutoSize = true;
|
|
this.label10.Location = new System.Drawing.Point(10, 141);
|
|
this.label10.Name = "label10";
|
|
this.label10.Size = new System.Drawing.Size(33, 14);
|
|
this.label10.TabIndex = 128;
|
|
this.label10.Text = "Fuel:";
|
|
//
|
|
// buttonIncrease
|
|
//
|
|
this.buttonIncrease.BackColor = System.Drawing.SystemColors.ControlLight;
|
|
this.buttonIncrease.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.buttonIncrease.Location = new System.Drawing.Point(193, 136);
|
|
this.buttonIncrease.Name = "buttonIncrease";
|
|
this.buttonIncrease.Size = new System.Drawing.Size(70, 25);
|
|
this.buttonIncrease.TabIndex = 127;
|
|
this.buttonIncrease.Text = "Increase";
|
|
this.toolTip1.SetToolTip(this.buttonIncrease, "Apply to Fuel Tables");
|
|
this.buttonIncrease.UseVisualStyleBackColor = false;
|
|
this.buttonIncrease.Click += new System.EventHandler(this.Button2_Click);
|
|
//
|
|
// buttonDecrease
|
|
//
|
|
this.buttonDecrease.BackColor = System.Drawing.SystemColors.ControlLight;
|
|
this.buttonDecrease.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.buttonDecrease.Location = new System.Drawing.Point(109, 136);
|
|
this.buttonDecrease.Name = "buttonDecrease";
|
|
this.buttonDecrease.Size = new System.Drawing.Size(70, 25);
|
|
this.buttonDecrease.TabIndex = 126;
|
|
this.buttonDecrease.Text = "Decrease";
|
|
this.toolTip1.SetToolTip(this.buttonDecrease, "Apply to Fuel Tables");
|
|
this.buttonDecrease.UseVisualStyleBackColor = false;
|
|
this.buttonDecrease.Click += new System.EventHandler(this.ButtonDecrease_Click);
|
|
//
|
|
// txtbBoostRetard
|
|
//
|
|
this.txtbBoostRetard.DecimalPlaces = 2;
|
|
this.txtbBoostRetard.Location = new System.Drawing.Point(109, 106);
|
|
this.txtbBoostRetard.Maximum = new decimal(new int[] {
|
|
2,
|
|
0,
|
|
0,
|
|
0});
|
|
this.txtbBoostRetard.Minimum = new decimal(new int[] {
|
|
6,
|
|
0,
|
|
0,
|
|
-2147483648});
|
|
this.txtbBoostRetard.Name = "txtbBoostRetard";
|
|
this.txtbBoostRetard.Size = new System.Drawing.Size(69, 20);
|
|
this.txtbBoostRetard.TabIndex = 122;
|
|
this.txtbBoostRetard.Value = new decimal(new int[] {
|
|
6,
|
|
0,
|
|
0,
|
|
-2147483648});
|
|
this.txtbBoostRetard.Click += new System.EventHandler(this.txtbMap_Validated);
|
|
this.txtbBoostRetard.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtbMap_KeyPress);
|
|
this.txtbBoostRetard.Validating += new System.ComponentModel.CancelEventHandler(this.txtbIgn_Validating);
|
|
this.txtbBoostRetard.Validated += new System.EventHandler(this.txtbMap_Validated);
|
|
//
|
|
// label11
|
|
//
|
|
this.label11.AutoSize = true;
|
|
this.label11.Location = new System.Drawing.Point(9, 108);
|
|
this.label11.Name = "label11";
|
|
this.label11.Size = new System.Drawing.Size(87, 14);
|
|
this.label11.TabIndex = 121;
|
|
this.label11.Text = "Ignition(static):";
|
|
//
|
|
// btnSave
|
|
//
|
|
this.btnSave.BackColor = System.Drawing.SystemColors.ControlLight;
|
|
this.btnSave.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
this.btnSave.Location = new System.Drawing.Point(193, 103);
|
|
this.btnSave.Name = "btnSave";
|
|
this.btnSave.Size = new System.Drawing.Size(70, 25);
|
|
this.btnSave.TabIndex = 125;
|
|
this.btnSave.Text = "Apply";
|
|
this.toolTip1.SetToolTip(this.btnSave, "Apply Ignition to Ignition Tables");
|
|
this.btnSave.UseVisualStyleBackColor = false;
|
|
this.btnSave.Click += new System.EventHandler(this.BtnSave_Click);
|
|
//
|
|
// label8
|
|
//
|
|
this.label8.AutoSize = true;
|
|
this.label8.Font = new System.Drawing.Font("Lucida Sans", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
this.label8.ForeColor = System.Drawing.Color.Red;
|
|
this.label8.Location = new System.Drawing.Point(55, 402);
|
|
this.label8.Name = "label8";
|
|
this.label8.Size = new System.Drawing.Size(176, 24);
|
|
this.label8.TabIndex = 127;
|
|
this.label8.Text = "PORCORN MOD ARE SHARING\r\nTHE SAME PARAMETERS FOR:";
|
|
//
|
|
// label5
|
|
//
|
|
this.label5.AutoSize = true;
|
|
this.label5.ForeColor = System.Drawing.Color.Red;
|
|
this.label5.Location = new System.Drawing.Point(71, 431);
|
|
this.label5.Name = "label5";
|
|
this.label5.Size = new System.Drawing.Size(147, 42);
|
|
this.label5.TabIndex = 126;
|
|
this.label5.Text = "-Fuel Cut(on deceleration)\r\n-Ignition Tables\r\n-Fuel Tables";
|
|
//
|
|
// errorProvider_0
|
|
//
|
|
this.errorProvider_0.ContainerControl = this;
|
|
//
|
|
// panel1
|
|
//
|
|
this.panel1.AutoScroll = true;
|
|
this.panel1.Controls.Add(this.groupBox1);
|
|
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
|
this.panel1.Location = new System.Drawing.Point(0, 0);
|
|
this.panel1.Name = "panel1";
|
|
this.panel1.Size = new System.Drawing.Size(313, 473);
|
|
this.panel1.TabIndex = 2;
|
|
//
|
|
// parmPopcorn
|
|
//
|
|
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
|
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
|
this.Controls.Add(this.panel1);
|
|
this.Font = new System.Drawing.Font("Lucida Sans", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
this.Name = "parmPopcorn";
|
|
this.Size = new System.Drawing.Size(313, 473);
|
|
this.Load += new System.EventHandler(this.parmPopcorn_Load);
|
|
this.groupBox1.ResumeLayout(false);
|
|
this.groupBox1.PerformLayout();
|
|
this.groupBox3.ResumeLayout(false);
|
|
this.groupBox3.PerformLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbRpmMin)).EndInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbTps)).EndInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.trackBar1)).EndInit();
|
|
this.groupBox_IgnFuel.ResumeLayout(false);
|
|
this.groupBox_IgnFuel.PerformLayout();
|
|
((System.ComponentModel.ISupportInitialize)(this.numericAboveRPM)).EndInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.txtbBoostRetard)).EndInit();
|
|
((System.ComponentModel.ISupportInitialize)(this.errorProvider_0)).EndInit();
|
|
this.panel1.ResumeLayout(false);
|
|
this.ResumeLayout(false);
|
|
|
|
}
|
|
|
|
private void method_IncreaseFuel(SelectedTable selectedTable_0)
|
|
{
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++)
|
|
{
|
|
if (this.class18_0.method_160((byte)j, selectedTable_0) >= (int.Parse(numericAboveRPM.Text) - 25))
|
|
{
|
|
byte columnIndex = (byte)0;
|
|
byte rowIndex = (byte)j;
|
|
float num2 = this.class18_0.method_175(columnIndex, rowIndex, selectedTable_0);
|
|
if (num2 >= this.class18_0.class10_settings_0.float_3) this.class18_0.method_177(columnIndex, rowIndex, num2 + ((num2 / 100f) * this.class18_0.class10_settings_0.float_1), selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, num2 + this.class18_0.class10_settings_0.float_2, selectedTable_0);
|
|
|
|
//Check if editing are done correctly
|
|
float num2_new = this.class18_0.method_175(columnIndex, rowIndex, selectedTable_0);
|
|
float Multiplyer = 1.5f;
|
|
int TryCount = 0;
|
|
while (num2 == num2_new && TryCount < 3)
|
|
{
|
|
if (num2 >= this.class18_0.class10_settings_0.float_3) this.class18_0.method_177(columnIndex, rowIndex, num2 + ((num2 / 100f) * (this.class18_0.class10_settings_0.float_1 * Multiplyer)), selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, num2 + (this.class18_0.class10_settings_0.float_2 * Multiplyer), selectedTable_0);
|
|
|
|
num2_new = this.class18_0.method_175(columnIndex, rowIndex, selectedTable_0);
|
|
Multiplyer += 0.5f;
|
|
TryCount++;
|
|
if (TryCount == 3) this.class18_0.method_155("Cannot increase fuel value for Col:#" + columnIndex + " Row:#" + rowIndex);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private void method_DecreaseFuel(SelectedTable selectedTable_0)
|
|
{
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++)
|
|
{
|
|
if (this.class18_0.method_160((byte)j, selectedTable_0) >= (int.Parse(numericAboveRPM.Text) - 25))
|
|
{
|
|
byte columnIndex = (byte)0;
|
|
byte rowIndex = (byte)j;
|
|
float num2 = this.class18_0.method_175(columnIndex, rowIndex, selectedTable_0);
|
|
if (num2 >= this.class18_0.class10_settings_0.float_3)
|
|
{
|
|
if ((num2 - ((num2 / 100f) * this.class18_0.class10_settings_0.float_1)) >= 0f) this.class18_0.method_177(columnIndex, rowIndex, num2 - ((num2 / 100f) * this.class18_0.class10_settings_0.float_1), selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, 0f, selectedTable_0);
|
|
}
|
|
else
|
|
{
|
|
if ((num2 - this.class18_0.class10_settings_0.float_2) >= 0f) this.class18_0.method_177(columnIndex, rowIndex, num2 - this.class18_0.class10_settings_0.float_2, selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, 0f, selectedTable_0);
|
|
}
|
|
|
|
//Check if editing are done correctly
|
|
if (num2 > 0f)
|
|
{
|
|
float num2_new = this.class18_0.method_174(columnIndex, rowIndex);
|
|
float Multiplyer = 1.5f;
|
|
int TryCount = 0;
|
|
while (num2 == num2_new && TryCount < 3)
|
|
{
|
|
if (num2 >= this.class18_0.class10_settings_0.float_3)
|
|
{
|
|
if ((num2 - ((num2 / 100f) * (this.class18_0.class10_settings_0.float_1 * Multiplyer))) >= 0f) this.class18_0.method_177(columnIndex, rowIndex, num2 - ((num2 / 100f) * (this.class18_0.class10_settings_0.float_1 * Multiplyer)), selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, 0f, selectedTable_0);
|
|
}
|
|
else
|
|
{
|
|
if ((num2 - (this.class18_0.class10_settings_0.float_2 * Multiplyer)) >= 0f) this.class18_0.method_177(columnIndex, rowIndex, num2 - (this.class18_0.class10_settings_0.float_2 * Multiplyer), selectedTable_0);
|
|
else this.class18_0.method_177(columnIndex, rowIndex, 0f, selectedTable_0);
|
|
}
|
|
|
|
num2_new = this.class18_0.method_175(columnIndex, rowIndex, selectedTable_0);
|
|
Multiplyer += 0.5f;
|
|
TryCount++;
|
|
if (TryCount == 3) this.class18_0.method_155("Cannot decrease fuel value for Col:#" + columnIndex + " Row:#" + rowIndex);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private void method_ApplyIgn(SelectedTable selectedTable_0)
|
|
{
|
|
//Reset before settting
|
|
method_ResetIgn(selectedTable_0);
|
|
|
|
//Set
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++)
|
|
{
|
|
if (this.class18_0.method_160((byte)j, selectedTable_0) >= (int.Parse(numericAboveRPM.Text) - 5))
|
|
{
|
|
this.class18_0.method_177((byte)0, (byte)j, float.Parse(txtbBoostRetard.Text), selectedTable_0);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void method_ResetIgn(SelectedTable selectedTable_0)
|
|
{
|
|
//reset all rpm rows, only reset Col0
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++)
|
|
{
|
|
this.class18_0.method_177((byte)0, (byte)j, this.class18_0.method_175((byte)1, (byte)j, selectedTable_0), selectedTable_0);
|
|
}
|
|
}
|
|
|
|
private bool HasPopcornMod()
|
|
{
|
|
bool Hasmod = false;
|
|
SelectedTable selectedTable_0 = SelectedTable.ign1_lo;
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++) if (this.class18_0.method_175((byte)0, (byte)j, selectedTable_0) <= 2) Hasmod = true;
|
|
if (!Hasmod)
|
|
{
|
|
selectedTable_0 = SelectedTable.ign1_hi;
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++) if (this.class18_0.method_175((byte)0, (byte)j, selectedTable_0) <= 2) Hasmod = true;
|
|
}
|
|
}
|
|
if (checkBoxSecondary.Checked)
|
|
{
|
|
if (!Hasmod)
|
|
{
|
|
selectedTable_0 = SelectedTable.ign2_lo;
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++) if (this.class18_0.method_175((byte)0, (byte)j, selectedTable_0) <= 2) Hasmod = true;
|
|
}
|
|
if (!Hasmod)
|
|
{
|
|
selectedTable_0 = SelectedTable.ign2_hi;
|
|
for (int j = 0; j < this.class18_0.method_32_GetRPM_RowsNumber(); j++) if (this.class18_0.method_175((byte)0, (byte)j, selectedTable_0) <= 2) Hasmod = true;
|
|
}
|
|
}
|
|
|
|
HasModInstalled = Hasmod;
|
|
if (HasModInstalled)
|
|
{
|
|
buttonADD.Text = "REMOVE MOD";
|
|
buttonADD.ForeColor = Color.Red;
|
|
}
|
|
else
|
|
{
|
|
buttonADD.Text = "ADD MOD";
|
|
buttonADD.ForeColor = SystemColors.ControlText;
|
|
}
|
|
|
|
return Hasmod;
|
|
}
|
|
|
|
private void method_3()
|
|
{
|
|
if (this.class18_0.method_30_HasFileLoadedInBMTune())
|
|
{
|
|
this.parmPopcorn_Load(null, null);
|
|
}
|
|
}
|
|
|
|
private void method_5()
|
|
{
|
|
if (!this.bool_0)
|
|
{
|
|
this.class18_0.method_155("Popcorn Mod Settings");
|
|
this.class18_0.method_149_SetByte(this.class18_0.class13_u_0.long_58, (byte) (trackBar1.Value / 10));
|
|
this.class18_0.method_149_SetByte(this.class18_0.class13_u_0.long_56, this.class18_0.method_228(int.Parse(this.txtbTps.Text)));
|
|
this.class18_0.method_149_SetByte(this.class18_0.class13_u_0.long_54, this.class18_0.method_216(int.Parse(this.txtbRpmMin.Text)));
|
|
this.class18_0.method_149_SetByte(this.class18_0.class13_u_0.long_55, this.class18_0.method_216(int.Parse(this.txtbRpmMin.Text) - 200));
|
|
|
|
this.class18_0.method_153();
|
|
}
|
|
}
|
|
|
|
private void parmPopcorn_Load(object sender, EventArgs e)
|
|
{
|
|
this.bool_0 = true;
|
|
this.trackBar1.Value = (this.class18_0.GetByteAt(this.class18_0.class13_u_0.long_58) * 10);
|
|
this.label6.Text = this.trackBar1.Value + "ms";
|
|
this.txtbTps.Text = this.class18_0.method_198(this.class18_0.GetByteAt(this.class18_0.class13_u_0.long_56)).ToString("0");
|
|
this.txtbRpmMin.Text = this.class18_0.method_186(this.class18_0.GetByteAt(this.class18_0.class13_u_0.long_54)).ToString();
|
|
|
|
MinimumLoad = this.class18_0.method_164((byte)0, SelectedTable.fuel1_lo);
|
|
if (FirstLoad)
|
|
{
|
|
this.numericAboveRPM.Text = (this.class18_0.method_186(this.class18_0.GetByteAt(this.class18_0.class13_u_0.long_54)) + 250).ToString();
|
|
}
|
|
|
|
HasPopcornMod();
|
|
|
|
this.bool_0 = false;
|
|
this.FirstLoad = false;
|
|
}
|
|
|
|
private void txtbMap_KeyPress(object sender, KeyPressEventArgs e)
|
|
{
|
|
if (e.KeyChar == '\r')
|
|
{
|
|
NumericUpDown control = (NumericUpDown) sender;
|
|
this.groupBox1.Focus();
|
|
if (this.errorProvider_0.GetError(control) == string.Empty)
|
|
{
|
|
this.method_5();
|
|
}
|
|
control.Focus();
|
|
}
|
|
}
|
|
|
|
private void txtbMap_Validated(object sender, EventArgs e)
|
|
{
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
}
|
|
|
|
private void txtbMap_Validating(object sender, CancelEventArgs e)
|
|
{
|
|
NumericUpDown control = (NumericUpDown) sender;
|
|
if (!this.class18_0.method_255(control.Text.ToString()))
|
|
{
|
|
this.errorProvider_0.SetError(control, "Invalid input, integer required");
|
|
e.Cancel = true;
|
|
}
|
|
else
|
|
{
|
|
this.errorProvider_0.SetError(control, "");
|
|
}
|
|
}
|
|
|
|
private void txtbIgn_Validating(object sender, CancelEventArgs e)
|
|
{
|
|
NumericUpDown control = (NumericUpDown)sender;
|
|
if (!this.class18_0.method_252(control.Text.ToString()))
|
|
{
|
|
this.errorProvider_0.SetError(control, "Invalid input, double required");
|
|
e.Cancel = true;
|
|
}
|
|
else
|
|
{
|
|
this.errorProvider_0.SetError(control, "");
|
|
}
|
|
}
|
|
|
|
private void trackBar1_Scroll(object sender, EventArgs e)
|
|
{
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
}
|
|
|
|
private void BtnSave_Click(object sender, EventArgs e)
|
|
{
|
|
this.class18_0.method_155("Popcorn Mod Settings");
|
|
if (checkBoxPrimary.Checked || checkBoxPrimary.Checked)
|
|
{
|
|
try
|
|
{
|
|
if (MessageBox.Show(Form.ActiveForm, "Do you want to set the Ignition Table for popcorn mod?\n\nThis will set ignition at " + double.Parse(txtbBoostRetard.Text) + "\nAbove " + int.Parse(numericAboveRPM.Text) + "rpm\nBellow " + MinimumLoad + "mBar", "BMTune", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
|
{
|
|
this.class18_0.method_149_SetByte(this.class18_0.class13_u_0.long_59, 0xff); //set fuel cut enabled
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
this.method_ApplyIgn(SelectedTable.ign1_hi);
|
|
this.method_ApplyIgn(SelectedTable.ign1_lo);
|
|
}
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_ApplyIgn(SelectedTable.ign2_hi);
|
|
this.method_ApplyIgn(SelectedTable.ign2_lo);
|
|
}
|
|
}
|
|
}
|
|
catch (Exception message)
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Error when setting Ignition Table! Error:\n\n" + message, "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
this.class18_0.method_53();
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Cant set Ignition Table because you didn't selected\nwhich map to work with(primary or secondary)", "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
private void Button3_Click(object sender, EventArgs e)
|
|
{
|
|
this.class18_0.method_155("Popcorn Mod Settings");
|
|
if (!HasModInstalled)
|
|
{
|
|
//add mod
|
|
this.method_5();
|
|
this.BtnSave_Click(null, null);
|
|
this.parmPopcorn_Load(null, null);
|
|
}
|
|
else
|
|
{
|
|
if (checkBoxPrimary.Checked || checkBoxPrimary.Checked)
|
|
{
|
|
//remove mod
|
|
try
|
|
{
|
|
if (MessageBox.Show(Form.ActiveForm, "Do you want to remove popcorn mod\nfrom the Ignition Table?", "BMTune", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
|
{
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_ResetIgn(SelectedTable.ign1_hi);
|
|
this.method_ResetIgn(SelectedTable.ign1_lo);
|
|
}
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_ResetIgn(SelectedTable.ign2_hi);
|
|
this.method_ResetIgn(SelectedTable.ign2_lo);
|
|
}
|
|
}
|
|
}
|
|
catch (Exception message)
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Error when setting Ignition Table! Error:\n\n" + message, "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
this.class18_0.method_53();
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Cant reset Ignition Table because you didn't selected\nwhich map to work with(primary or secondary)", "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void Button2_Click(object sender, EventArgs e)
|
|
{
|
|
this.class18_0.method_155("Popcorn Mod Settings");
|
|
if (checkBoxPrimary.Checked || checkBoxPrimary.Checked)
|
|
{
|
|
try
|
|
{
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_IncreaseFuel(SelectedTable.fuel1_hi);
|
|
this.method_IncreaseFuel(SelectedTable.fuel1_lo);
|
|
}
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_IncreaseFuel(SelectedTable.fuel2_hi);
|
|
this.method_IncreaseFuel(SelectedTable.fuel2_lo);
|
|
}
|
|
}
|
|
catch (Exception message)
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Error when setting Fuel Table! Error:\n\n" + message, "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
this.class18_0.method_53();
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Cant increase Fuel Table because you didn't selected\nwhich map to work with(primary or secondary)", "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
private void ButtonDecrease_Click(object sender, EventArgs e)
|
|
{
|
|
this.class18_0.method_155("Popcorn Mod Settings");
|
|
if (checkBoxPrimary.Checked || checkBoxPrimary.Checked)
|
|
{
|
|
try
|
|
{
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_DecreaseFuel(SelectedTable.fuel1_hi);
|
|
this.method_DecreaseFuel(SelectedTable.fuel1_lo);
|
|
}
|
|
if (checkBoxPrimary.Checked)
|
|
{
|
|
|
|
this.method_DecreaseFuel(SelectedTable.fuel2_hi);
|
|
this.method_DecreaseFuel(SelectedTable.fuel2_lo);
|
|
}
|
|
}
|
|
catch (Exception message)
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Error when setting Fuel Table! Error:\n\n" + message, "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
|
|
this.method_5();
|
|
this.parmPopcorn_Load(null, null);
|
|
this.class18_0.method_53();
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show(Form.ActiveForm, "Cant decrease Fuel Table because you didn't selected\nwhich map to work with(primary or secondary)", "BMTune", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
private void CheckBoxPrimary_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
HasPopcornMod();
|
|
}
|
|
|
|
private void CheckBoxSecondary_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
HasPopcornMod();
|
|
}
|
|
|
|
private void buttonOpenFCutOnDecel_Click(object sender, EventArgs e)
|
|
{
|
|
this.class18_0.class17_0.frmMain_0.frmParameters_0.SelectPage("nFuelCut", "Fuel Cut Decel");
|
|
}
|
|
}
|
|
|