psx - hook up new controller configuration, to support 0-2 pads and 0-2 memcards. Not tested very well yet. no multitap this release.
This commit is contained in:
parent
d1fa718120
commit
c9838d668a
|
@ -412,12 +412,6 @@
|
|||
<Compile Include="config\ProfileConfig.Designer.cs">
|
||||
<DependentUpon>ProfileConfig.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="config\PSX\PSXControllerConfig.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="config\PSX\PSXControllerConfig.Designer.cs">
|
||||
<DependentUpon>PSXControllerConfig.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="config\PSX\PSXControllerConfigNew.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -1271,9 +1265,6 @@
|
|||
<EmbeddedResource Include="config\ProfileConfig.resx">
|
||||
<DependentUpon>ProfileConfig.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="config\PSX\PSXControllerConfig.resx">
|
||||
<DependentUpon>PSXControllerConfig.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="config\PSX\PSXControllerConfigNew.resx">
|
||||
<DependentUpon>PSXControllerConfigNew.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
|
|
@ -2553,7 +2553,7 @@
|
|||
this.PSXControllerSettingsMenuItem.Image = global::BizHawk.Client.EmuHawk.Properties.Resources.GameController;
|
||||
this.PSXControllerSettingsMenuItem.Name = "PSXControllerSettingsMenuItem";
|
||||
this.PSXControllerSettingsMenuItem.Size = new System.Drawing.Size(172, 22);
|
||||
this.PSXControllerSettingsMenuItem.Text = "Controller Settings";
|
||||
this.PSXControllerSettingsMenuItem.Text = "FrontIO Settings";
|
||||
this.PSXControllerSettingsMenuItem.Click += new System.EventHandler(this.PSXControllerSettingsMenuItem_Click);
|
||||
//
|
||||
// PSXOptionsMenuItem
|
||||
|
|
|
@ -1746,7 +1746,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
private void PSXControllerSettingsMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
new PSXControllerConfig().ShowDialog();
|
||||
new PSXControllerConfigNew().ShowDialog();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
|
@ -58,8 +58,6 @@ namespace BizHawk.Client.EmuHawk
|
|||
|
||||
SyncSettings.Controls = ctrls;
|
||||
|
||||
SyncSettings.Controls = ctrls;
|
||||
|
||||
if (changed)
|
||||
{
|
||||
GlobalWin.MainForm.PutCoreSyncSettings(SyncSettings);
|
||||
|
|
|
@ -1,96 +0,0 @@
|
|||
namespace BizHawk.Client.EmuHawk
|
||||
{
|
||||
partial class PSXControllerConfig
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PSXControllerConfig));
|
||||
this.CancelBtn = new System.Windows.Forms.Button();
|
||||
this.OkBtn = new System.Windows.Forms.Button();
|
||||
this.btnTest = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// CancelBtn
|
||||
//
|
||||
this.CancelBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.CancelBtn.Location = new System.Drawing.Point(294, 227);
|
||||
this.CancelBtn.Name = "CancelBtn";
|
||||
this.CancelBtn.Size = new System.Drawing.Size(60, 23);
|
||||
this.CancelBtn.TabIndex = 5;
|
||||
this.CancelBtn.Text = "&Cancel";
|
||||
this.CancelBtn.UseVisualStyleBackColor = true;
|
||||
this.CancelBtn.Click += new System.EventHandler(this.CancelBtn_Click);
|
||||
//
|
||||
// OkBtn
|
||||
//
|
||||
this.OkBtn.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.OkBtn.Location = new System.Drawing.Point(228, 227);
|
||||
this.OkBtn.Name = "OkBtn";
|
||||
this.OkBtn.Size = new System.Drawing.Size(60, 23);
|
||||
this.OkBtn.TabIndex = 4;
|
||||
this.OkBtn.Text = "&Ok";
|
||||
this.OkBtn.UseVisualStyleBackColor = true;
|
||||
this.OkBtn.Click += new System.EventHandler(this.OkBtn_Click);
|
||||
//
|
||||
// btnTest
|
||||
//
|
||||
this.btnTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnTest.Location = new System.Drawing.Point(12, 227);
|
||||
this.btnTest.Name = "btnTest";
|
||||
this.btnTest.Size = new System.Drawing.Size(60, 23);
|
||||
this.btnTest.TabIndex = 6;
|
||||
this.btnTest.Text = "Test";
|
||||
this.btnTest.UseVisualStyleBackColor = true;
|
||||
this.btnTest.Click += new System.EventHandler(this.btnTest_Click);
|
||||
//
|
||||
// PSXControllerConfig
|
||||
//
|
||||
this.AcceptButton = this.OkBtn;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.CancelBtn;
|
||||
this.ClientSize = new System.Drawing.Size(366, 262);
|
||||
this.Controls.Add(this.btnTest);
|
||||
this.Controls.Add(this.CancelBtn);
|
||||
this.Controls.Add(this.OkBtn);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "PSXControllerConfig";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "Controller Settings";
|
||||
this.Load += new System.EventHandler(this.PSXControllerConfig_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button CancelBtn;
|
||||
private System.Windows.Forms.Button OkBtn;
|
||||
private System.Windows.Forms.Button btnTest;
|
||||
}
|
||||
}
|
|
@ -1,98 +0,0 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
using BizHawk.Common;
|
||||
using BizHawk.Emulation.Cores.Sony.PSX;
|
||||
using BizHawk.Client.Common;
|
||||
using BizHawk.Client.EmuHawk.WinFormExtensions;
|
||||
using BizHawk.Common.ReflectionExtensions;
|
||||
|
||||
namespace BizHawk.Client.EmuHawk
|
||||
{
|
||||
public partial class PSXControllerConfig : Form
|
||||
{
|
||||
public PSXControllerConfig()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void PSXControllerConfig_Load(object sender, EventArgs e)
|
||||
{
|
||||
var psxSettings = ((Octoshock)Global.Emulator).GetSyncSettings();
|
||||
for (int i = 0; i < psxSettings.Controllers.Length; i++)
|
||||
{
|
||||
Controls.Add(new Label
|
||||
{
|
||||
Text = "Controller " + (i + 1),
|
||||
Location = new Point(15, 19 + (i * 25)),
|
||||
Width = 85
|
||||
});
|
||||
Controls.Add(new CheckBox
|
||||
{
|
||||
Text = "Connected",
|
||||
Name = "Controller" + i,
|
||||
Location = new Point(105, 15 + (i * 25)),
|
||||
Checked = psxSettings.Controllers[i].IsConnected,
|
||||
Width = 90
|
||||
});
|
||||
|
||||
var dropdown = new ComboBox
|
||||
{
|
||||
Name = "Controller" + i,
|
||||
DropDownStyle = ComboBoxStyle.DropDownList,
|
||||
Location = new Point(200, 15 + (i * 25))
|
||||
};
|
||||
|
||||
dropdown.PopulateFromEnum<Octoshock.ControllerSetting.ControllerType>(psxSettings.Controllers[i].Type);
|
||||
|
||||
Controls.Add(dropdown);
|
||||
}
|
||||
}
|
||||
|
||||
private void OkBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
var psxSettings = ((Octoshock)Global.Emulator).GetSyncSettings();
|
||||
|
||||
Controls
|
||||
.OfType<CheckBox>()
|
||||
.OrderBy(c => c.Name)
|
||||
.ToList()
|
||||
.ForEach(c =>
|
||||
{
|
||||
var index = int.Parse(c.Name.Replace("Controller", ""));
|
||||
psxSettings.Controllers[index].IsConnected = c.Checked;
|
||||
});
|
||||
|
||||
Controls
|
||||
.OfType<ComboBox>()
|
||||
.OrderBy(c => c.Name)
|
||||
.ToList()
|
||||
.ForEach(c =>
|
||||
{
|
||||
var index = int.Parse(c.Name.Replace("Controller", ""));
|
||||
psxSettings.Controllers[index].Type = c.SelectedItem.ToString().GetEnumFromDescription<Octoshock.ControllerSetting.ControllerType>();
|
||||
});
|
||||
|
||||
GlobalWin.MainForm.PutCoreSyncSettings(psxSettings);
|
||||
DialogResult = DialogResult.OK;
|
||||
Close();
|
||||
}
|
||||
|
||||
private void CancelBtn_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.Cancel;
|
||||
Close();
|
||||
}
|
||||
|
||||
private void btnTest_Click(object sender, EventArgs e)
|
||||
{
|
||||
new PSXControllerConfigNew().ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,624 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAwAMDAQAAAABABoBgAAxgAAACAgEAAAAAQA6AIAAC4HAAAYGBAAAAAEAOgBAAAWCgAAEBAQAAAA
|
||||
BAAoAQAA/gsAADAwAAAAAAgAqA4AACYNAAAgIAAAAAAIAKgIAADOGwAAGBgAAAAACADIBgAAdiQAABAQ
|
||||
AAAAAAgAaAUAAD4rAAAwMAAAAAAgAKglAACmMAAAICAAAAAAIACoEAAATlYAABgYAAAAACAAiAkAAPZm
|
||||
AAAQEAAAAAAgAGgEAAB+cAAAKAAAADAAAABgAAAAAQAEAAAAAACABAAAAAAAAAAAAAAQAAAAEAAAAAAA
|
||||
AAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8AAAD/AP8A//8AAP//
|
||||
/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAHR3AAAAAAAAAAAAAAAAAAAAAAAAAAAAdHdEcAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAHd0d3QAAAAAAAAAAAAAAAAAAAAAAAAAAEd8d3UAAAAAAAAAAAAAAAAAAAAAAAAAB3yHfHZw
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAd3fIyHVwAAAAAAAAAAAAAAAAAAAAAAAAfHh3jIxwAAAAAAAAAAAAAAAA
|
||||
AAAAAAAHd8jIyHdgAAAAAAAAAAAAAAAAAAAAAAAHd4yHfIdAAAAAAAAAAAAAAAAAAAAAAAAHyMjIyMhQ
|
||||
AAAAAAAAAAAAAAAAAAAAAAB3d3eMh4dgAAAAAAAAAAAAAAAAAAAAAAB8jIyIfIdQAAAAAAAAAAAAAAAA
|
||||
AAAAAAB3h4jIiMh3AAAAAAAAAAAAAAAAAAAAAAB8jIeHeIjHAAAAAAAAAAAAAAAAAAAAAAeIiHh4eMiE
|
||||
AAAAAAAAAAAAB0dHcAAAAAd8h4eIiIiHcAAAAAAAAAB0d3d3RwAAAAeIeIiIiIh3RwAAAAAAAHR3d8h3
|
||||
dAAAAAfIh4iIiHiIx0cAAAAAdHh3eIeHhwAAAAeHiIiIiIiId3R3dHR0eHd4h4eHhAAAAAd4eIiIiIiH
|
||||
x3d2d3eId4iIiIiIhwAAAAd4eIiI+IiIh3d3eHh3iIiIiIeHwAAAAAfIjHeIiIiIyIeHh4iIiIiIiIiI
|
||||
cAAAAAeIQ0R3h3iIiMiIiIiIiIiIiIiEAAAAAAfIR3d3d0iIiIh4iIeIiIiIiHhAAAAAAAB4d3d3SHiI
|
||||
h4fTiIi3iIiIeIwAAAAAAAB3h4d3eIeIiHiJiIuIiIh4jHAAAAAAAAAHyId3h3h4iIh4iIiIiIiHeAAA
|
||||
AAAAAAAAB8iMiMjIiIiIh4h3aMjHAAAAAAAAAAAAAAdYyIeIiIiMjId6d4eAAAAAAAAAAAAAAAAHdsjH
|
||||
eIeH6MiId3AAAAAAAAAAAAAAAIiIh4V8jIh4eIfHcAAAAAAAAAAAAACIiIh3AAAHd3h3fHcAAAAAAAAA
|
||||
AAAAAAiIjHgAAAAAAHx8eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
|
||||
AAD///////8AAP///////wAA//h/////AAD/4D////8AAP/AP////wAA/8A/////AAD/gB////8AAP8A
|
||||
H////wAA/wAf////AAD+AB////8AAP4AH////wAA/gAf////AAD8AB////8AAPwAH////wAA/AAP////
|
||||
AAD8AA////8AAPgAD//+BwAA+AAH//ADAAD4AAP/wAMAAPgAAP8AAwAA+AAAAAADAAD4AAAAAAMAAPgA
|
||||
AAAABwAA+AAAAAAHAAD4AAAAAA8AAPgAAAAAHwAA/AAAAAA/AAD8AAAAAH8AAP4AAAAA/wAA/4AAAAP/
|
||||
AAD/4AAAB/8AAP/4AAAf/wAA/8AAAH//AAD8A+AD//8AAPgP/A///wAA////////AAD///////8AAP//
|
||||
/////wAA////////AAD///////8AAP///////wAA////////AAAoAAAAIAAAAEAAAAABAAQAAAAAAAAC
|
||||
AAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
|
||||
AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdwAAAAAAAAAAAAAAAA
|
||||
AAd0dAAAAAAAAAAAAAAAAAB3x3cAAAAAAAAAAAAAAAAAd3fHcAAAAAAAAAAAAAAAB3yMh3AAAAAAAAAA
|
||||
AAAAAAfIeMdwAAAAAAAAAAAAAAAHjIyHQAAAAAAAAAAAAAAAfId4yHAAAAAAAAAAAAAAAHjIyIdQAAAA
|
||||
AAAAAAAAAAB3iId4YAAAAAAAAAdwAAAAjIiIiIUAAAAAAHd3dAAAB4iIiHh8cAAAAHd3x4dwAAd4iIiI
|
||||
h3Z3d3R3yIh4cAAHh4iIiIfHd3d4iIiIh3AAB3jHiIiIiHeHiIiIiIwAAAh3dXh4iMiIiIiIiIhwAAAA
|
||||
yGd0d4iIeIi4iIiMAAAAAIeHd4iIh32IiIiIcAAAAAAAd4jIyIiIiHeHyAAAAAAAAAB3h4iIh8h3dwAA
|
||||
AAAAAAAIh8fIh4eIaAAAAAAAAACIiHAAB8jIyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////
|
||||
////////////////////n////g////wP///8B///+Af///gH///4B///8Af///AH///wB//n8AP/A+AB
|
||||
/AHgAAAB4AAAAeAAAAPgAAAH8AAAD/AAAB/8AAA//wAA//4AA//weA//////////////////////////
|
||||
//8oAAAAGAAAADAAAAABAAQAAAAAACABAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAgAAAgAAAAICAAIAA
|
||||
AACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRwAAAAAAAAAAAAB3dAAAAAAAAAAAAA
|
||||
d8dwAAAAAAAAAAAAfId3AAAAAAAAAAAHeMjHAAAAAAAAAAAHyHh3AAAAAAAAAAAHh3eEAAAAAAAAAAAI
|
||||
yIiHAAAAAHd2cAAIiIiIQAAAd3d4UACHiIiId3d3eHiIcACHh4iIyHeHiIiIcAAIR3d4iIiIiIiMAAAH
|
||||
d3eIh3iIiIhwAAAAeMh4iIiHiMAAAAAAAHfIiMh4aAAAAAAAiIgHyIfIAAAAAAAIgAAAAIAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD///8A////AP///wD8f/8A+H//APB/
|
||||
/wDwP/8A4D//AOA//wDgP/8A4D/BAOAfAQDAAAEAwAABAOAAAwDgAAcA8AAfAPwAPwDwgP8A5/f/AP//
|
||||
/wD///8A////ACgAAAAQAAAAIAAAAAEABAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACA
|
||||
AAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAd1AAAAAAAAB8cAAAAAAAB4eAAAAAAAAHyMgAAAAAAAiIhwAAAHcACI
|
||||
iHcAd3hwAIz4jIeIiIAAd3eIiIiIAACHeIiIiHAAAACMeMh4AAAAiAAIgAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAD//wAA//8AAP//AADj/wAA4/8AAMP/AADB/wAAwfkAAMDBAADAAQAAwAMAAMAHAADwDwAAzn8AAP//
|
||||
AAD//wAAKAAAADAAAABgAAAAAQAIAAAAAAAACQAAAAAAAAAAAAAAAQAAAAEAAAAAAAA9OzsAZD8/AGg8
|
||||
PABtPj4AQkNDAEZIRwBWQkIAV0REAF5AQABbRkYAVklJAFxPTwBTU1MAXFJSAF5ZWQBkQEAAYUREAGZF
|
||||
RQBqQkEAYEtLAGNPTwBwQUEAfUZGAHJKSgB2SUkAfU9PAGBRUQBgVFQAZlZWAGZYWABqWVkAclZWAHpU
|
||||
VAB9W1oAbmJiAGtoaABtaWkAcWdnAHdnZwB8Y2MAe2pqAHJxcQB+dHQAd3l5AHl6egCGT08AiU9PAIFP
|
||||
UACGU1MAjVFRAIlWVgCMV1cAg1xbAIxaWQCQUlIAlVJSAJFXVgCXVVUAmVVVAJZaWQCSXV0AlV9eAJpZ
|
||||
WgCeW1sAml5eAKBZWgCgXFwAql9fAIRmZQCIZWQAhWtrAI5ragCTYmEAnGBhAJ9kYwCaZmYAk25uAJ1s
|
||||
awCFdHQAiXd3AIt+fgCWd3cAmHR0AJV5eQCbfHwAo2JhAKZhYQChZWUApGVkAKplZACsZGQAqmhnAKZr
|
||||
agCnbGsAqmloAKlubQCsbW0AtGZnALhsbACxb3AAv29wAKVxcACrc3IAr35+ALN0cwC5c3MAvXBxALR4
|
||||
dgC1fHsAunt6AMNtbgDGb3AAw3FyAMZwcQDGdXUAyHR1AMp3eADBeXkAxnt7AMB/fgDLensANLBSAEWf
|
||||
TgBBtFwAPMdnADHkdgDciiIAvoF/AISrdwDln0sA35lhAN2XfADgmmEA8LdlAO61cAArWPIALWT+AEh5
|
||||
+gDOf4AAfoCAAHiA1ABZv9wAZrnUAGK+2ABxnv4Ad6P/ADPX/QBw0OcAW+D7AIKEgwCPgoIAjI2NAJuC
|
||||
ggCUiIgAmYqKAJGSkgCjhIQAqoKCAKKLiwC+hIMAsoqKALaSgQCum5sAsZubALqqlQCdgr4Ar6ytALGh
|
||||
oAC6pKQAwoSDAMyBggDGiIYAyYiHAMWMigDMjIoA0ISFANKHiADUjIwA2Y6NAMCUjQDIk44A0JCPANaP
|
||||
kADHlZQAzpSSAMScmwDUkpIA2ZSVANWYlgDampcA2ZeYANWcnADam5sA4p2cAMChjwDeoJ4A5aCFAOaj
|
||||
jQDlpJoA2p6hAMOkowDOoaEAy62tANegoADdoqEA2aGpANGsrwDdq6kAwbG4ANGysQDdtLQA2ri3AOGk
|
||||
owDjqKYA66ylAOGnqADjq6oA6a2rAOOwrwDssK4A5K+wAOaztADttLIA57i2AO24tgDmurgA6rq6APC1
|
||||
swDyuLYA9Ly5APi+uwD1wL0A+cC9AKKMwACkk8QAqprMALSayACptsEAlaDkAOy/wACRxtQAgOv9AJnr
|
||||
9wDEwsoA5sbGAOzCwgDuyMcA7MzMAPPEwgDxy8oA9dPTAPja2gAAAAAAAAAAAP///wAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAoIJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAACYXODs4BCUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
KTNDQ0M7OAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALllbYmJZQBcAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYYWNwcHBwWy8mAAAAAAAAAAAAAAAAAAAA
|
||||
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
|
||||
AAAAAAAAAAAAAAAAAAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
|
||||
AAD///////8AAP///////wAA//h/////AAD/4D////8AAP/AP////wAA/8A/////AAD/gB////8AAP8A
|
||||
H////wAA/wAf////AAD+AB////8AAP4AH////wAA/gAf////AAD8AB////8AAPwAH////wAA/AAP////
|
||||
AAD8AA////8AAPgAD//+BwAA+AAH//ADAAD4AAP/wAMAAPgAAP8AAwAA+AAAAAADAAD4AAAAAAMAAPgA
|
||||
AAAABwAA+AAAAAAHAAD4AAAAAA8AAPgAAAAAHwAA/AAAAAA/AAD8AAAAAH8AAP4AAAAA/wAA/4AAAAP/
|
||||
AAD/4AAAB/8AAP/4AAAf/wAA/8AAAH//AAD8A+AD//8AAPgP/A///wAA////////AAD///////8AAP//
|
||||
/////wAA////////AAD///////8AAP///////wAA////////AAAoAAAAIAAAAEAAAAABAAgAAAAAAAAE
|
||||
AAAAAAAAAAAAAAABAAAAAQAAAAAAAFFNTQBRUlIAU1RUAGJHRwBiT08Aa0lIAGJTUwBrVlYAYllZAGZc
|
||||
XABpWloAb1xbAHNTUwB7V1YAc1hXAHFbWwBkZWUAaWFhAG5kZABpamkAcGFhAHlubgB2cHAAf3V1AH55
|
||||
eQB8fX0AgUpKAI1PTwCLWFcAhlhYAI9ZWQCKXFsAm1ZWAJJZWQCWWVgAmlpbAJtcWwCiXFwAl2BfAIBg
|
||||
YACAZ2YAgG9vAI9oaACWZWQAmGBhAJ5kZACcaWoAmm9vAIV0dACNcHAAiXZ2AIB8fACac3IAm3V0AJ51
|
||||
dQCZfHwAnHx8AKNmZgCnZmYAqmJiAK5jYwCvb24AtWVmALBtbgC5bW0AvmxtAKx+fQCxcnIAtHBwALZz
|
||||
dACydXQAtnd2ALlwcAC5dnYAt3p5ALh5eAC8fHsAun18ALx+fQDGb3AAxnBxAMdzdADAd3YAyHJzAMlz
|
||||
dADJdXYAynd4AMd/fwDMe3wAzXx9AHunbwBhvHIAYsN4ANuLOwC2hn4A4Zt5APC3ZABte9sAX47+AHWM
|
||||
5QAl0foAY+P8AIeDgwCFhoYAioSEAJOIiACWi4sAmpKRAKGCgQCmhYUAqYGBAKuDhACniooApYyMAKiO
|
||||
jQCyhYMAvoWEALeNjQCrj5AAr5eXALSVlAC9lJMAmbCEAK6RugDBgYAAwoSCAMWDhADChoQAxYeFAM6A
|
||||
gQDFiIYAxoqIAMqIiQDMi4oAy4yKAMiPjQDPj44A0ISFANKJigDUi4wA04+NANWNjgDKkY8A0JCOANud
|
||||
iQDWj5AAzJSTAM2XlgDGm5oA1pGSANOUkgDVl5EA1pOUANiVlgDYmJUA2ZeYANKenADbmpsA3pmYANuc
|
||||
mgDbn5wA1aacAN6gngDqqZoA3Z+gAMyjowDCra0AxqysAMqpqQDboaAA3qKiAN6logDbp6UA3aWkANer
|
||||
qgDWsbMA0rW0ANe0tADfs7IA4aSiAOGlpQDkp6UA46imAOWopgDsraIA6qimAOGoqADhrqwA6a2rAOqv
|
||||
rADpsK4A7LGuAOGzswDlsbEA7bKxAO+1sgDotrYA5rm3AO+4twDot7sA6bq5AOu9uwDrv70A8bazAPG2
|
||||
tADxuLUA9Lm2APC9uwD2vboA9L+9APi+uwD4v7wA8sC+APXAvgD5wL0AkILJAKqXzACsu8cAqr/LALLV
|
||||
3QDawMIA48XFAOvDwQDswMAA7cTDAO/ExQDgxsgA8cbEAPTGxADwyskA9MvJAPLNzQD21dYA+NjZAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAMEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqHCEcBQAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAayU9PSYbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdQlBSQiJpAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAM0pSUlJQPRcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnUlJSUlJGFQAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAFJSUlJSUkoQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzUlJSWVJZfxAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAC5XWYqKioqGDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASoqMkpqa
|
||||
mqAsAAAAAAAAAAAAAAAAAABoNAAAAAAAAACMjJyuvLy2toYHAAAAAAAAAAAAABcOIDouBgAAAAAAc4yc
|
||||
tsHKysPAriIKAAAAAAAAABYgRk1LTX+DEAAAAABukqXB4ejo4dHPQCIEChcXEwggTXV/k66unKMpAAAA
|
||||
AG6Srsro6ero0dN/Rk1NRk2Dg4STrsbh4cHAt2sAAAAAbpKuOXPe6ajW15KGg4OGk528yuHo5eHPz882
|
||||
AAAAAAB4jCkDAxSoMabXt5yjt8ro3ePo5dbT09HTdAAAAAAAAABGcBFoGgFwdtfDwHxi2dpmZcrX09HP
|
||||
z0MAAAAAAAAAAHh/qWwaOa6cz9PNZGPYsdzbzc3DwLk2AAAAAAAAAAAAAAAvhpKakoyg19HNyKS5wHtb
|
||||
orZ/cwAAAAAAAAAAAAAAAAAANkaKWVm5zb1gYV6cXVxfNgAAAAAAAAAAAAAAAAAAALGvlTIuP1K5tqCR
|
||||
l4xfLwAAAAAAAAAAAAAAAAAAsbPBenkAAAAAcCVYjE0scwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////////////////+f///+D////A////wH
|
||||
///4B///+Af///gH///wB///8Af///AH/+fwA/8D4AH8AeAAAAHgAAAB4AAAA+AAAAfwAAAP8AAAH/wA
|
||||
AD//AAD//gAD//B4D////////////////////////////ygAAAAYAAAAMAAAAAEACAAAAAAAQAIAAAAA
|
||||
AAAAAAAAAAEAAAABAAAAAAAAWlJSAHBJSQB1SEgAe1dXAHdYWAB5WlkAel1dAGBiYgB1bGwAfWtrAHh2
|
||||
dgB9fn4Ag01NAIRXVwCIV1cAhV9eAItbWgCgX14ApV1dAJhgXwCNYGAAnWtqAJhtbQCCdnYAh3x8AI15
|
||||
eACeensAqGBgAKhoZwCga2oArGpqALNqagCzb28AtG1tALltbQCxb3AApnVzAKlzcwCqdHMApnp6AKd+
|
||||
fgCpensAq3x7ALZ3dgC8dHQAvH59AMZvcADGcHEAxXN0AMhycwDJdncAynh5AMx5egDNfn8Ajo1wAOek
|
||||
VgDGgH8A4p53AEZ2+gB8u4AAd8PaAIuEhACOh4cAjo6OAJ+DggCejo4Ao4SEAKSIiACsi4sAqo2MAK6P
|
||||
jgC+gYAAvoaGAL+KiACskJAAtJeXALWenQC5np4At6iOAKmyjgC9nroAwYSDAMaGhADOhoYAxomHAMiK
|
||||
iQDJjYwA0oeIANOOjwDUjY0A2ZiPANaPkADGkZEAx5eXAMySkADGnZwA1ZOSANeTlADWl5YA2JSVANGZ
|
||||
mADan50A3J6dAOCcmwDVoJ8A7K2fAMOtrQDXo6IA3aCgAN+kpADVq6oA3ay3AMu0tADPtrYA3L+/AOCi
|
||||
oQDhpqUA5KelAOinpgDlq6gA46usAOOvrQDqrqwA7LGuAOayswDjtrQA5re1AOqysQDts7EA57y6AO+8
|
||||
ugDrvL0A8LOwAPC1sgDwtrQA87q3APS6twD2vboA8b69APi/vAD2wb4A+cC9AJmTzwDHqMMAu8PMAIHf
|
||||
8QDByNAA7cLCAO3FwwDvxsQA5cjIAOzOzgDwxcQA9cbEAPPP0AD10tIAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
BQMJAAAAAAAAAAAAAAAAAAAAAAAAAAAPHBMNAAAAAAAAAAAAAAAAAAAAAAAAABojLy8TAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAB0wMDAiPgAAAAAAAAAAAAAAAAAAAAAAQjAwMDAtGAAAAAAAAAAAAAAAAAAAAAAAFzIy
|
||||
NTU5CgAAAAAAAAAAAAAAAAAAAAAAIjZYWFxcBwAAAAAAAAAAAAAAAAAAAAAANlxtdW11JQAAAAAAAAAA
|
||||
PgcRDgkAAAAAXG1/lISAZgMAAAAAABkVLC5SVhcAAABNY3WWnJuLfB8UBAcQHkhWaX91dSsAAABNY2BM
|
||||
mJeCiVJSVl9laX+WloSJgEIAAAAAXAEIC0tGjnR0dJaRk5qNjIyJQwAAAAAAJkNADBtdjIaPO1GSPYuJ
|
||||
hnVEAAAAAAAAAClISWRcd4xwkGp8UE90VwAAAAAAAAAAAAAAKSQ1NYZ7OjhbPDdGAAAAAAAAAAAAAHNv
|
||||
YGsAKyJoXFYmRwAAAAAAAAAAAAAAcnIAAAAAAAAATgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP//
|
||||
/wD///8A////APx//wD4f/8A8H//APA//wDgP/8A4D//AOA//wDgP8EA4B8BAMAAAQDAAAEA4AADAOAA
|
||||
BwDwAB8A/AA/APCA/wDn9/8A////AP///wD///8AKAAAABAAAAAgAAAAAQAIAAAAAAAAAQAAAAAAAAAA
|
||||
AAAAAQAAAAEAAAAAAABjZGQAdmRjAHtpaQB/eHgAgU9PAKBaWgCFbm0AlWtqAKptbgCwZ2cAsGhoAKxw
|
||||
cACteHkAvnJyAMZvcADGcHEAy3l5AMx9fgCFmXQAwIB/ANeUfQDhoX8AlIqJAJWMjACYiIgAoIaGAK2K
|
||||
igCxh4cAvoGAALKKigC4iYgAuJWVAL2cnACss50AuqKhAL+mpgDLgoIAxImHAMeNjADLkI8AxpWTANCS
|
||||
kQDYlZUA1J6dANqZmgDdnp4A1J+oAMaiogDOr68AzLKyANi5uADhpaIA4qypAOWtqADrrqsA4bKwAOay
|
||||
sgDtuLYA57++AOy4uADxtLIA8be0APa9ugDswL4A9sG+ALCcxwC5ncIA06zBALnH0QC2ytQA7sPDAPLS
|
||||
0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAZBgUAAAAAAAAAAAAAAAAACw8KAAAAAAAAAAAAAAAAGhAQDgAAAAAAAAAAAAAAAAkRESUYAAAA
|
||||
AAAAAAAAAAAlKy4uBwAAAAAAAAcDAAAAKzlHPCYCAAAYCB0oKgAAAC0wSDs0FB0nLDlAOiwAAAANAQQb
|
||||
Pi9DRkVBPzUAAAAAJB4cKz5EQjMiNSkAAAAAAAAAHwwRNxYVEyQAAAAAAAAxMgAAACEgAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//8AAP//AAD//wAA4/8AAOP/AADD/wAAwf8AAMH5
|
||||
AADAwQAAwAEAAMADAADABwAA8A8AAM5/AAD//wAA//8AACgAAAAwAAAAYAAAAAEAIAAAAAAAgCUAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAkAAAAJAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAUAAAAOAEBAVUAAABUAAAANQAAABAAAAABAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAkFBSUvGRl5TCkpwlYuLtxDJCTQFw0NmQAA
|
||||
AEkAAAAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACGAwMKE8rK6V6RET2klJR/5ZS
|
||||
U/+OT0//ZDc38B0QEJoAAAAyAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYDAwYVzAwoopP
|
||||
T/ygXVz/oFtb/55ZWf+bWFf/k1NT/1UvL9wGAwNcAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AARNKipxhk5O+adkY/+uZWX/tWdo/7VmZ/+qYWH/nltb/3hERPcfERGCAAAAFgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAADEZGS1zQ0LXqGdm/7ptbf/Fb3D/x3Bx/8hwcf/BbW7/q2Vl/4hPT/82HR2gAAAAIAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAB1gxMYyYXl3/vXFx/8Zwcf/HcHH/x3Bx/8dwcf/HcHH/uG1t/5NY
|
||||
V/9EJia2AAAAKQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPB8fNH1MS+K4cnH/x3Fy/8dwcf/HcHH/x3Bx/8dw
|
||||
cf/HcHH/wHBx/51gX/9PLCzGAAAAMwAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXjU1h6NnZv/Fc3T/x3Bx/8dw
|
||||
cf/HcHH/x3Bx/8dwcf/HcHH/w3Jz/6ZoZ/9ZMzPTAQAAPQAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyFxccektK0b12
|
||||
dv/HcHH/x3Bx/8dwcf/HcHH/x3Bx/8dwcf/HcHH/xXR0/69wb/9jOjneBwMDSQAAAAUAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AABNKSlNlmBf9sh3d//HcHH/x3Bx/8dwcf/HcHH/x3Bx/8dwcf/HcHH/xnd3/7Z4d/9sQUDnDgcHVQAA
|
||||
AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
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
|
||||
ov/grq3/4a6t/96lo//eoJ7/36Kg/+Cjof+IWVjnGwwMQwAAAAIAAAAAAAAAAAAAAAAAAAAARyQkL6Br
|
||||
auzZk5P/25qb/+GnqP/ntLT/7cDA//LLy//209T/+NjY//fX1//00ND/8cbG//W9u//4vrz/46ak/7d0
|
||||
c/+vb27/s3Jy/7d2df+ucXD/pWpp/6Npaf+nbWz/sHVz/7p9fP/EhYT/yImI/8WIhv/DiIb/ypGP/9eg
|
||||
n//hr63/57q5/+rCwP/rwsD/6bq4/+evrf/nq6n/6q6r/9qgnv9wRkbDBwAAHgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAASCQkLZ1nZuvYkpP/25uc/+Opqv/qtrf/7cHB//TOzv/52Nj/+tzc//na2v/xz9D/8MfH//fA
|
||||
vv/6wb7/6a6r/8OBgP/DgoD/vX58/7h7ev+8fn3/woOC/8aHhv/HiYj/xoqJ/8aLif/Ijoz/zZST/9eg
|
||||
nv/hrav/6Lm3/+zCwf/uyMf/78nH/+/Dwf/uvLr/7ba0/+60sf/vtLL/8ri1/7J+fflMKSltAAAABAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAQyEhI5JcXOPWj5D/3Juc/8qVlf+BZmb/bl5e/4l4eP/AqKj/8tPT//LO
|
||||
zv+5p6b/w6qq//fBv//7wr//8LWy/86Ojf/Ojoz/0ZGP/9GSkP/OkY//zpOR/9GamP/VoJ//2qel/+Gv
|
||||
rf/nt7X/6727/+3Dwf/wycf/8czL//LLyf/yxsT/8cC+//G7uf/yubf/87m3//S7uP/4vrv/1J6c/3JH
|
||||
RrAdCgsWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANRcXEYJNTcvPiIn/15aW/2VNTf85Ojr/Q0VF/0JF
|
||||
RP9dXFz/n5GR/+S/v/+bh4f/hXp6/+25uP/7wr//9bu4/9qcmv/Zmpj/252b/96gnf/ipKH/5q+s/+u+
|
||||
vP/vycf/8srI/+3Hxv/wysj/9c7M//TNy//0ysj/9MbE//TBv//1vrz/9r26//e9u//4vrv/+L+8//vB
|
||||
vv/hqqf/g1ZVzDwcHC4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAW4+Ppq/env/05OT/2ZX
|
||||
V/9rbm7/fX9//3l6ev99f3//cHJy/5F9ff+ff3//XFhY/9eop//8wr//+L+8/+Wppv/ipaP/5qil/96i
|
||||
pP/Kmaz/1qi1//LGxP/tyMf/qb3J/23E3P9kw9//vMTN//jDwP/3wb//+MC9//i/vf/5v73/+b+8//i/
|
||||
vP/3vrv/+L68/92mo/+IWlnRRSMjOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFcv
|
||||
L0mbX1/y15GS/6GAgP9XV1b/iYuL/4CBgf98fX3/cnR0/1dPT/++j4//km9w/9Sfnv/6wL3/+cC9/+6z
|
||||
sP/ssK3/0Z+u/4OH1P9YffD/QGPs/7KYyv/Ct7z/Ytrz/3Ts//8s2f//cbvU//m+u//4v7z/+L67//e9
|
||||
uv/1vLn/9Lq3//O5tv/zuLX/0puZ/4RVVctGIyM4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAADIXFwdrPDySq2ts/diZmf/ApKT/sKur/4CBgP95enr/iYiI/49zdP/do6P/36Ch/96e
|
||||
nv/zuLX/+sK///W7uP/1ubT/qZC//2qY+/9tnf//MGT6/56FxP/esK//nMbS/57n8/9+z+T/ybG3//a6
|
||||
t//zubb/8re0//C1s//utLH/7rKw/+qvrP++iIb9dklJtkMgISoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABHIyMSazw8kZ5hYvXNjI3/2aSk/7OMjP+bd3f/sIKC/9KV
|
||||
lv/cnJz/2peY/9aRkf/koqL/+sG+//nAvf/5v7z/4amw/6qZx/+aouP/qpvP/+mxtv/2urj/6rGv/+S6
|
||||
u//ptrX/466n/+Ovqf/ssK7/6q6s/+isqv/oq6n/2J2b/6JubfFoPT2NOxoaFwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOBoaCFowMFd7SEjAomZm9sWC
|
||||
gv/XkZL/25SV/9iSk//Wj5D/1IyN/9KHiP/UiIj/8bOx//rCv//3vbv/9ru4//O3s//xuLX/7q6e/+ej
|
||||
hf/npIn/7bCp/+Otp/+KsX3/ULdm/1WjWv+7oYz/5KWk/9uenP+4gH79glJRzVYuLlQgCAkGAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAA8HBwQVy4uS3FBQaCPV1fjsG5v/cmAgf/ShYb/0YKD/85+f//LeXr/2I2M//e8uf/1vLn/7rOx/+2y
|
||||
sP/lpJX/5qFY/+6xXP/djS3/35h9/86gl/9SwW7/Nd90/0WxXP+vlH//wYSE/49cW+VlOTmBQR4eHAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGk7OhqIWFd8oG5u8J5qav+eX2D/tmts/8Z0df/KdHX/yXJz/92T
|
||||
k//3vLn/7LGu/+Snpf/dm5L/4Z1q/+61dP/fmmX/15WM/9eYlv/Bm43/r6uR/6uNgP+WYWDtbkBAnUwn
|
||||
JzQVAQECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiFJSBnhC
|
||||
QgpqNDQJWSUlB08dHQdfKisKfENDFJJWViinbGtRvYOCjtOcm8/pt7X157y6/7eOjfhxRUW7aTk5m4RK
|
||||
StehWlr6uGdo/8Zwcf/dkpH/8bSx/+OnpP/YmZj/1ZWT/9ealP/Vl5X/0JCP/8eIhv+zdnb/lFtc6nA/
|
||||
QKRSKio/JQwNBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AADTn6AB2qioDMuUlCHBhYU8voCAWcCBgXTEhoaLzZGQqdeensngrKvn47Sz/NOop/+yiIfyi2Bgs2k+
|
||||
PlZXKysPAAAAAUYlJRxcMTFYcj4+pYpMTeWmXF3+xnl5/9+Zl//dnJr/z46M/8KCgf+vc3L/ll9e831L
|
||||
S8hlOTl/TigoMy0REQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAABzQUIDnmprDriGhifHlpZMzp6eeNCgoZ7On5+2yJqaybuPj9WnfHzVj2RkunVJ
|
||||
SYNbLy8/PRQUCgAAAAAAAAAAAAAAAAAAAAAAAAAAKRUVBU0pKSphNDRtd0BAsotNTd2ZW1vrkVlY4HtJ
|
||||
Sb5lOTmCUysrQTsbGxEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWCwsA2Y4OA5xQkImdkhIRHhKSll0R0dibUBAWWI2
|
||||
NkNUKCgoOhISDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMhkZB0km
|
||||
Jh5LJiYsRSEhITATFAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP//
|
||||
/////wAA////////AAD///////8AAP///////wAA////////AAD/+H////8AAP/gH////wAA/8Af////
|
||||
AAD/gA////8AAP+AD////wAA/wAP////AAD/AA////8AAP4AB////wAA/gAH////AAD8AAf///8AAPwA
|
||||
B////wAA/AAH////AAD8AAf///8AAPgAB////wAA+AAH//4HAAD4AAP/8AEAAPgAAf/AAQAA8AAA/wAA
|
||||
AADwAAAAAAAAAPAAAAAAAAAA8AAAAAAAAADwAAAAAAEAAPAAAAAAAQAA8AAAAAADAADwAAAAAAcAAPAA
|
||||
AAAADwAA+AAAAAAfAAD4AAAAAD8AAPwAAAAAfwAA/gAAAAD/AAD/gAAAA/8AAP/gAAAH/wAAgAAAAB//
|
||||
AAAAAAAAf/8AAAAD4AP//wAAgB/8H///AAD///////8AAP///////wAA////////AAD///////8AAP//
|
||||
/////wAA////////AAAoAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAYAAAAZAAAAGQAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAARCQkYOh8fb0ooKK80HByiCQUFTAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAIhERFmA2Np2ITUz3lVNT/4dLS/5IKCi9AAAALwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAANjODiBllhY+61kZP+vY2P/pV5e/3xHRvEhEhJfAAAAAgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAASSgoN41VVeS6bW3/xW9w/8dwcf+9bG3/klZW/jogIIEAAAAGAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZ1RkWcs2xs/8dxcv/HcHH/x3Bx/8Zwcf+iYWH/SSkpmAAA
|
||||
AAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUC0tMZtgX+fGcnP/x3Bx/8dwcf/HcHH/x3Fy/61q
|
||||
av9UMTGqAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABxRER1tm9v/8hxcv/HcHH/x3Bx/8dw
|
||||
cf/HcnP/tnRz/185OboAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAACIxXV7TEdHT/yHJz/8l1
|
||||
dv/Kd3j/ynd4/8p4eP/Bf37/bURDywAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNKysjo2Zm4Mt4
|
||||
ef/NfH3/z4GC/9GFhf/RhYb/0YWF/82Mi/9+UVHeCAICOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAJAAAACwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAGc+
|
||||
Pkm1c3P30IGC/9OJiv/XkZL/2ZaW/9mWl//YlJX/2JmY/5hnZfMeEBBrAAAABwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAA0FAgItHhAQWzAbG4IqFxeHDQcHWwAAABkAAAAAAAAAAAAA
|
||||
AAAAAAAAek1MdMN/f//VjI3/2piZ/9+io//hqKn/4qmp/+Clpf/jpqT/wImH/04xMLwAAAA6AAAABQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAABEbDg5GRygokW5CQs+MVlbxnGJh/JdfXvxnPz7hHA8PbgAA
|
||||
AAwAAAAAAAAAAAAAAACMW1qbz4qK/9qXl//gpqb/5rKz/+q6u//rvLz/6La2/+qxr//epKL/j1lZ+DUc
|
||||
HLACAQFPAAAAHQAAAA8AAAAPAAAAEwAAACIbDg5MVDExnYZUU+SpbWz+uXl4/7x+fP/AgoD/xoeF/72A
|
||||
f/9fOzu1AAAAHAAAAAAAAAAAAAAABJhkZK/VkZH/3Z+g/+axsf/twMD/8svL//LNzf/vxcX/8Lq4/+6z
|
||||
sf+1dHP/j1VU+144N9g7IiKqMhwclDcfH5RGKSmiYTw7v4tZWOiydXT+woOC/8aKiP/Ol5X/2aWj/9ui
|
||||
of/cnpz/2pyb/35TUrgAAAAVAAAAAAAAAAAAAAAFmmVkstaTk//hpaX/7Lm6//TLy//419f/+NnZ//TP
|
||||
z//1wb//9Lq3/8aGhP+1dHP/s3Rz/6xwb/+pb27+rnNy/7Z7ev/BhIL/yY2L/8+WlP/apqT/5be2/+vB
|
||||
v//rvrz/6bKw/+uvrf/Um5n/bUVEgAAAAAMAAAAAAAAAAAAAAAOTXV2q1ZGR/9CYmP+dfX7/o4yM/9e8
|
||||
vP/z0tL/zLOz/+u8u//5v7z/1peV/8uLif/Ki4r/yoyL/86Ukv/TnJv/2qSi/+Gtq//nuLb/7cPB//DJ
|
||||
x//xxsT/8b+9//G6t//zubf/77az/6d1dM89Hx8lAAAAAAAAAAAAAAAAAAAAAIJOTojNiIn/jGlp/01O
|
||||
Tv9UVlb/dnNz/7uhof+Pfn7/xJ+e//zCv//lqKb/3J2b/+Chnv/hpaT/7Ly5/+vHxv/MxMn/0MjN//LK
|
||||
yf/1x8X/9sLA//a/vP/3vrv/+L+8//S7uP+5hoXhYTo5RwAAAAAAAAAAAAAAAAAAAAAAAAAAaTs7RrVz
|
||||
dPKmfn7/cXJx/4SGhv97fX3/b2Zm/516ev+7kJD/+sG+//C2s//lqqr/rpbA/3aB2/+ql83/tMHK/2jc
|
||||
9P9OzOz/2r3B//q/vP/3vrv/9ry6//a8uf/ss7D/tYGA32c+Pk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAvEhIHg01Njbp9fvrCn5//nI+P/4R7ev+fgID/2Jyd/9ybnP/ytrT/+b+8/+ewtf+Mld3/ZI36/5eI
|
||||
zv/Ttrn/sNLc/6/Czv/stLT/8re0/++0sf/tsq//2qCe/6Rxb8phODg+AAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAABCIB8MeUZGbqRpata8gYH8x4mJ/9eTk//YkpP/04qL/+Cbmv/5wL3/9726/+Sw
|
||||
t//Zrrn/56qY/+2smf/lr6n/nLWJ/4Gtdf/Pppn/3qGf/7yEg/KJWViYTyoqIAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQh0dGXJAQGOXXl7NtnR1/8V7fP/MfH3/znt8/+il
|
||||
o//0urj/7LCu/+Whg//rq13/35VX/9Kek/9yvXz/ZbNv/6iCdfqYY2O/aj4+TCUJCgcAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAACcamsBjFRVB4FERAh9PT0JjU1ND6VnZx+/hINF0JqZiNOjoty0iIf2hFBQw5lX
|
||||
V8+wY2P4xXR0/+aioP/oq6j/2pqT/92fif/Vlor/yYqJ/7N8efiVZmPGdERFYkEfHxIAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAALiFhgXFkJEdx5CQSMqSknbNlZWbz5uaws2cnOXBlJPnqH18r4dc
|
||||
XFFULy8OSCUlFm07O0+FSUmeoV1d3sF9fPrGhoX/snZ295xkZNiFUlKbbD4+T0UdHxIAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc0JDA5FgYRKdbm46onR0Zp9ycnuWampzhFlZVmY6
|
||||
OikvDAwHAAAAAAAAAAAAAAAAAAAAAB0ODgRULCwhbjo7UXhERGVrPDxHTCYmGxAAAQMAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAP//////////////////////D////gf///wH///4A///+AP///AD///wA///8AP//+AD
|
||||
///gA//D4AH+AeAA+ADgAAAAwAAAAMAAAADAAAAB4AAAA+AAAAfgAAAP8AAAH/wAAD8AAAD/AAAD/wB4
|
||||
D//H////////////////////KAAAABgAAAAwAAAAAQAgAAAAAABgCQAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAABMAAAAtAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAgIO1cwMM1qOjrsHhAQmwAA
|
||||
ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
|
@ -28,413 +28,429 @@
|
|||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.cbMultitap_1 = new System.Windows.Forms.CheckBox();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.lbl_p_1_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_1 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_1 = new System.Windows.Forms.Label();
|
||||
this.combo_1_4 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_3 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_2 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_1 = new System.Windows.Forms.ComboBox();
|
||||
this.cbMemcard_1 = new System.Windows.Forms.CheckBox();
|
||||
this.btnOK = new System.Windows.Forms.Button();
|
||||
this.btnCancel = new System.Windows.Forms.Button();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.lbl_p_2_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_1 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_1 = new System.Windows.Forms.Label();
|
||||
this.combo_2_4 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_3 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_2 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_1 = new System.Windows.Forms.ComboBox();
|
||||
this.cbMemcard_2 = new System.Windows.Forms.CheckBox();
|
||||
this.cbMultitap_2 = new System.Windows.Forms.CheckBox();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// cbMultitap_1
|
||||
//
|
||||
this.cbMultitap_1.AutoSize = true;
|
||||
this.cbMultitap_1.Location = new System.Drawing.Point(18, 43);
|
||||
this.cbMultitap_1.Name = "cbMultitap_1";
|
||||
this.cbMultitap_1.Size = new System.Drawing.Size(63, 17);
|
||||
this.cbMultitap_1.TabIndex = 0;
|
||||
this.cbMultitap_1.Text = "Multitap";
|
||||
this.cbMultitap_1.UseVisualStyleBackColor = true;
|
||||
this.cbMultitap_1.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_4);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_3);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_2);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_1);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_4);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_3);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_2);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_1);
|
||||
this.groupBox1.Controls.Add(this.combo_1_4);
|
||||
this.groupBox1.Controls.Add(this.combo_1_3);
|
||||
this.groupBox1.Controls.Add(this.combo_1_2);
|
||||
this.groupBox1.Controls.Add(this.combo_1_1);
|
||||
this.groupBox1.Controls.Add(this.cbMemcard_1);
|
||||
this.groupBox1.Controls.Add(this.cbMultitap_1);
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 12);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(273, 136);
|
||||
this.groupBox1.TabIndex = 1;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Port 1";
|
||||
//
|
||||
// lbl_p_1_4
|
||||
//
|
||||
this.lbl_p_1_4.AutoSize = true;
|
||||
this.lbl_p_1_4.Location = new System.Drawing.Point(241, 105);
|
||||
this.lbl_p_1_4.Name = "lbl_p_1_4";
|
||||
this.lbl_p_1_4.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_4.TabIndex = 12;
|
||||
this.lbl_p_1_4.Text = "P1";
|
||||
this.lbl_p_1_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_3
|
||||
//
|
||||
this.lbl_p_1_3.AutoSize = true;
|
||||
this.lbl_p_1_3.Location = new System.Drawing.Point(241, 78);
|
||||
this.lbl_p_1_3.Name = "lbl_p_1_3";
|
||||
this.lbl_p_1_3.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_3.TabIndex = 11;
|
||||
this.lbl_p_1_3.Text = "P1";
|
||||
this.lbl_p_1_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_2
|
||||
//
|
||||
this.lbl_p_1_2.AutoSize = true;
|
||||
this.lbl_p_1_2.Location = new System.Drawing.Point(241, 50);
|
||||
this.lbl_p_1_2.Name = "lbl_p_1_2";
|
||||
this.lbl_p_1_2.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_2.TabIndex = 10;
|
||||
this.lbl_p_1_2.Text = "P1";
|
||||
this.lbl_p_1_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_1
|
||||
//
|
||||
this.lbl_p_1_1.AutoSize = true;
|
||||
this.lbl_p_1_1.Location = new System.Drawing.Point(241, 24);
|
||||
this.lbl_p_1_1.Name = "lbl_p_1_1";
|
||||
this.lbl_p_1_1.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_1.TabIndex = 9;
|
||||
this.lbl_p_1_1.Text = "P1";
|
||||
this.lbl_p_1_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_4
|
||||
//
|
||||
this.lbl_1_4.AutoSize = true;
|
||||
this.lbl_1_4.Location = new System.Drawing.Point(94, 105);
|
||||
this.lbl_1_4.Name = "lbl_1_4";
|
||||
this.lbl_1_4.Size = new System.Drawing.Size(15, 13);
|
||||
this.lbl_1_4.TabIndex = 8;
|
||||
this.lbl_1_4.Text = "D";
|
||||
this.lbl_1_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_3
|
||||
//
|
||||
this.lbl_1_3.AutoSize = true;
|
||||
this.lbl_1_3.Location = new System.Drawing.Point(94, 78);
|
||||
this.lbl_1_3.Name = "lbl_1_3";
|
||||
this.lbl_1_3.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_3.TabIndex = 7;
|
||||
this.lbl_1_3.Text = "C";
|
||||
this.lbl_1_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_2
|
||||
//
|
||||
this.lbl_1_2.AutoSize = true;
|
||||
this.lbl_1_2.Location = new System.Drawing.Point(94, 51);
|
||||
this.lbl_1_2.Name = "lbl_1_2";
|
||||
this.lbl_1_2.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_2.TabIndex = 6;
|
||||
this.lbl_1_2.Text = "B";
|
||||
this.lbl_1_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_1
|
||||
//
|
||||
this.lbl_1_1.AutoSize = true;
|
||||
this.lbl_1_1.Location = new System.Drawing.Point(94, 24);
|
||||
this.lbl_1_1.Name = "lbl_1_1";
|
||||
this.lbl_1_1.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_1.TabIndex = 2;
|
||||
this.lbl_1_1.Text = "A";
|
||||
this.lbl_1_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// combo_1_4
|
||||
//
|
||||
this.combo_1_4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_4.FormattingEnabled = true;
|
||||
this.combo_1_4.Location = new System.Drawing.Point(114, 102);
|
||||
this.combo_1_4.Name = "combo_1_4";
|
||||
this.combo_1_4.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_4.TabIndex = 5;
|
||||
this.combo_1_4.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_3
|
||||
//
|
||||
this.combo_1_3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_3.FormattingEnabled = true;
|
||||
this.combo_1_3.Location = new System.Drawing.Point(114, 75);
|
||||
this.combo_1_3.Name = "combo_1_3";
|
||||
this.combo_1_3.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_3.TabIndex = 4;
|
||||
this.combo_1_3.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_2
|
||||
//
|
||||
this.combo_1_2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_2.FormattingEnabled = true;
|
||||
this.combo_1_2.Location = new System.Drawing.Point(114, 48);
|
||||
this.combo_1_2.Name = "combo_1_2";
|
||||
this.combo_1_2.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_2.TabIndex = 3;
|
||||
this.combo_1_2.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_1
|
||||
//
|
||||
this.combo_1_1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_1.FormattingEnabled = true;
|
||||
this.combo_1_1.Location = new System.Drawing.Point(114, 21);
|
||||
this.combo_1_1.Name = "combo_1_1";
|
||||
this.combo_1_1.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_1.TabIndex = 2;
|
||||
this.combo_1_1.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// cbMemcard_1
|
||||
//
|
||||
this.cbMemcard_1.AutoSize = true;
|
||||
this.cbMemcard_1.Location = new System.Drawing.Point(18, 21);
|
||||
this.cbMemcard_1.Name = "cbMemcard_1";
|
||||
this.cbMemcard_1.Size = new System.Drawing.Size(70, 17);
|
||||
this.cbMemcard_1.TabIndex = 1;
|
||||
this.cbMemcard_1.Text = "Memcard";
|
||||
this.cbMemcard_1.UseVisualStyleBackColor = true;
|
||||
this.cbMemcard_1.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btnOK.Location = new System.Drawing.Point(408, 163);
|
||||
this.btnOK.Name = "btnOK";
|
||||
this.btnOK.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnOK.TabIndex = 2;
|
||||
this.btnOK.Text = "OK";
|
||||
this.btnOK.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// btnCancel
|
||||
//
|
||||
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.btnCancel.Location = new System.Drawing.Point(489, 163);
|
||||
this.btnCancel.Name = "btnCancel";
|
||||
this.btnCancel.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnCancel.TabIndex = 3;
|
||||
this.btnCancel.Text = "Cancel";
|
||||
this.btnCancel.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_4);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_3);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_2);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_1);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_4);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_3);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_2);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_1);
|
||||
this.groupBox2.Controls.Add(this.combo_2_4);
|
||||
this.groupBox2.Controls.Add(this.combo_2_3);
|
||||
this.groupBox2.Controls.Add(this.combo_2_2);
|
||||
this.groupBox2.Controls.Add(this.combo_2_1);
|
||||
this.groupBox2.Controls.Add(this.cbMemcard_2);
|
||||
this.groupBox2.Controls.Add(this.cbMultitap_2);
|
||||
this.groupBox2.Location = new System.Drawing.Point(291, 12);
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(273, 136);
|
||||
this.groupBox2.TabIndex = 13;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "Port 2";
|
||||
//
|
||||
// lbl_p_2_4
|
||||
//
|
||||
this.lbl_p_2_4.AutoSize = true;
|
||||
this.lbl_p_2_4.Location = new System.Drawing.Point(241, 105);
|
||||
this.lbl_p_2_4.Name = "lbl_p_2_4";
|
||||
this.lbl_p_2_4.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_4.TabIndex = 12;
|
||||
this.lbl_p_2_4.Text = "P1";
|
||||
this.lbl_p_2_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_3
|
||||
//
|
||||
this.lbl_p_2_3.AutoSize = true;
|
||||
this.lbl_p_2_3.Location = new System.Drawing.Point(241, 78);
|
||||
this.lbl_p_2_3.Name = "lbl_p_2_3";
|
||||
this.lbl_p_2_3.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_3.TabIndex = 11;
|
||||
this.lbl_p_2_3.Text = "P1";
|
||||
this.lbl_p_2_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_2
|
||||
//
|
||||
this.lbl_p_2_2.AutoSize = true;
|
||||
this.lbl_p_2_2.Location = new System.Drawing.Point(241, 50);
|
||||
this.lbl_p_2_2.Name = "lbl_p_2_2";
|
||||
this.lbl_p_2_2.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_2.TabIndex = 10;
|
||||
this.lbl_p_2_2.Text = "P1";
|
||||
this.lbl_p_2_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_1
|
||||
//
|
||||
this.lbl_p_2_1.AutoSize = true;
|
||||
this.lbl_p_2_1.Location = new System.Drawing.Point(241, 24);
|
||||
this.lbl_p_2_1.Name = "lbl_p_2_1";
|
||||
this.lbl_p_2_1.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_1.TabIndex = 9;
|
||||
this.lbl_p_2_1.Text = "P1";
|
||||
this.lbl_p_2_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_4
|
||||
//
|
||||
this.lbl_2_4.AutoSize = true;
|
||||
this.lbl_2_4.Location = new System.Drawing.Point(94, 105);
|
||||
this.lbl_2_4.Name = "lbl_2_4";
|
||||
this.lbl_2_4.Size = new System.Drawing.Size(15, 13);
|
||||
this.lbl_2_4.TabIndex = 8;
|
||||
this.lbl_2_4.Text = "D";
|
||||
this.lbl_2_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_3
|
||||
//
|
||||
this.lbl_2_3.AutoSize = true;
|
||||
this.lbl_2_3.Location = new System.Drawing.Point(94, 78);
|
||||
this.lbl_2_3.Name = "lbl_2_3";
|
||||
this.lbl_2_3.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_3.TabIndex = 7;
|
||||
this.lbl_2_3.Text = "C";
|
||||
this.lbl_2_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_2
|
||||
//
|
||||
this.lbl_2_2.AutoSize = true;
|
||||
this.lbl_2_2.Location = new System.Drawing.Point(94, 51);
|
||||
this.lbl_2_2.Name = "lbl_2_2";
|
||||
this.lbl_2_2.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_2.TabIndex = 6;
|
||||
this.lbl_2_2.Text = "B";
|
||||
this.lbl_2_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_1
|
||||
//
|
||||
this.lbl_2_1.AutoSize = true;
|
||||
this.lbl_2_1.Location = new System.Drawing.Point(94, 24);
|
||||
this.lbl_2_1.Name = "lbl_2_1";
|
||||
this.lbl_2_1.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_1.TabIndex = 2;
|
||||
this.lbl_2_1.Text = "A";
|
||||
this.lbl_2_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// combo_2_4
|
||||
//
|
||||
this.combo_2_4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_4.FormattingEnabled = true;
|
||||
this.combo_2_4.Location = new System.Drawing.Point(114, 102);
|
||||
this.combo_2_4.Name = "combo_2_4";
|
||||
this.combo_2_4.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_4.TabIndex = 5;
|
||||
this.combo_2_4.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_3
|
||||
//
|
||||
this.combo_2_3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_3.FormattingEnabled = true;
|
||||
this.combo_2_3.Location = new System.Drawing.Point(114, 75);
|
||||
this.combo_2_3.Name = "combo_2_3";
|
||||
this.combo_2_3.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_3.TabIndex = 4;
|
||||
this.combo_2_3.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_2
|
||||
//
|
||||
this.combo_2_2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_2.FormattingEnabled = true;
|
||||
this.combo_2_2.Location = new System.Drawing.Point(114, 48);
|
||||
this.combo_2_2.Name = "combo_2_2";
|
||||
this.combo_2_2.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_2.TabIndex = 3;
|
||||
this.combo_2_2.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_1
|
||||
//
|
||||
this.combo_2_1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_1.FormattingEnabled = true;
|
||||
this.combo_2_1.Location = new System.Drawing.Point(114, 21);
|
||||
this.combo_2_1.Name = "combo_2_1";
|
||||
this.combo_2_1.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_1.TabIndex = 2;
|
||||
this.combo_2_1.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// cbMemcard_2
|
||||
//
|
||||
this.cbMemcard_2.AutoSize = true;
|
||||
this.cbMemcard_2.Location = new System.Drawing.Point(18, 21);
|
||||
this.cbMemcard_2.Name = "cbMemcard_2";
|
||||
this.cbMemcard_2.Size = new System.Drawing.Size(70, 17);
|
||||
this.cbMemcard_2.TabIndex = 1;
|
||||
this.cbMemcard_2.Text = "Memcard";
|
||||
this.cbMemcard_2.UseVisualStyleBackColor = true;
|
||||
this.cbMemcard_2.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// cbMultitap_2
|
||||
//
|
||||
this.cbMultitap_2.AutoSize = true;
|
||||
this.cbMultitap_2.Location = new System.Drawing.Point(18, 43);
|
||||
this.cbMultitap_2.Name = "cbMultitap_2";
|
||||
this.cbMultitap_2.Size = new System.Drawing.Size(63, 17);
|
||||
this.cbMultitap_2.TabIndex = 0;
|
||||
this.cbMultitap_2.Text = "Multitap";
|
||||
this.cbMultitap_2.UseVisualStyleBackColor = true;
|
||||
this.cbMultitap_2.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// PSXControllerConfigNew
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(586, 201);
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.btnCancel);
|
||||
this.Controls.Add(this.btnOK);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "PSXControllerConfigNew";
|
||||
this.Text = "PSX FrontIO Configuration";
|
||||
this.Load += new System.EventHandler(this.PSXControllerConfigNew_Load);
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
this.cbMultitap_1 = new System.Windows.Forms.CheckBox();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.lbl_p_1_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_1_1 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_1_1 = new System.Windows.Forms.Label();
|
||||
this.combo_1_4 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_3 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_2 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_1_1 = new System.Windows.Forms.ComboBox();
|
||||
this.cbMemcard_1 = new System.Windows.Forms.CheckBox();
|
||||
this.btnOK = new System.Windows.Forms.Button();
|
||||
this.btnCancel = new System.Windows.Forms.Button();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.lbl_p_2_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_p_2_1 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_4 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_3 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_2 = new System.Windows.Forms.Label();
|
||||
this.lbl_2_1 = new System.Windows.Forms.Label();
|
||||
this.combo_2_4 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_3 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_2 = new System.Windows.Forms.ComboBox();
|
||||
this.combo_2_1 = new System.Windows.Forms.ComboBox();
|
||||
this.cbMemcard_2 = new System.Windows.Forms.CheckBox();
|
||||
this.cbMultitap_2 = new System.Windows.Forms.CheckBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// cbMultitap_1
|
||||
//
|
||||
this.cbMultitap_1.AutoSize = true;
|
||||
this.cbMultitap_1.Enabled = false;
|
||||
this.cbMultitap_1.Location = new System.Drawing.Point(18, 43);
|
||||
this.cbMultitap_1.Name = "cbMultitap_1";
|
||||
this.cbMultitap_1.Size = new System.Drawing.Size(63, 17);
|
||||
this.cbMultitap_1.TabIndex = 0;
|
||||
this.cbMultitap_1.Text = "Multitap";
|
||||
this.cbMultitap_1.UseVisualStyleBackColor = true;
|
||||
this.cbMultitap_1.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_4);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_3);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_2);
|
||||
this.groupBox1.Controls.Add(this.lbl_p_1_1);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_4);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_3);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_2);
|
||||
this.groupBox1.Controls.Add(this.lbl_1_1);
|
||||
this.groupBox1.Controls.Add(this.combo_1_4);
|
||||
this.groupBox1.Controls.Add(this.combo_1_3);
|
||||
this.groupBox1.Controls.Add(this.combo_1_2);
|
||||
this.groupBox1.Controls.Add(this.combo_1_1);
|
||||
this.groupBox1.Controls.Add(this.cbMemcard_1);
|
||||
this.groupBox1.Controls.Add(this.cbMultitap_1);
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 12);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(273, 136);
|
||||
this.groupBox1.TabIndex = 1;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Port 1";
|
||||
//
|
||||
// lbl_p_1_4
|
||||
//
|
||||
this.lbl_p_1_4.AutoSize = true;
|
||||
this.lbl_p_1_4.Location = new System.Drawing.Point(241, 105);
|
||||
this.lbl_p_1_4.Name = "lbl_p_1_4";
|
||||
this.lbl_p_1_4.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_4.TabIndex = 12;
|
||||
this.lbl_p_1_4.Text = "P1";
|
||||
this.lbl_p_1_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_3
|
||||
//
|
||||
this.lbl_p_1_3.AutoSize = true;
|
||||
this.lbl_p_1_3.Location = new System.Drawing.Point(241, 78);
|
||||
this.lbl_p_1_3.Name = "lbl_p_1_3";
|
||||
this.lbl_p_1_3.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_3.TabIndex = 11;
|
||||
this.lbl_p_1_3.Text = "P1";
|
||||
this.lbl_p_1_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_2
|
||||
//
|
||||
this.lbl_p_1_2.AutoSize = true;
|
||||
this.lbl_p_1_2.Location = new System.Drawing.Point(241, 50);
|
||||
this.lbl_p_1_2.Name = "lbl_p_1_2";
|
||||
this.lbl_p_1_2.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_2.TabIndex = 10;
|
||||
this.lbl_p_1_2.Text = "P1";
|
||||
this.lbl_p_1_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_1_1
|
||||
//
|
||||
this.lbl_p_1_1.AutoSize = true;
|
||||
this.lbl_p_1_1.Location = new System.Drawing.Point(241, 24);
|
||||
this.lbl_p_1_1.Name = "lbl_p_1_1";
|
||||
this.lbl_p_1_1.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_1_1.TabIndex = 9;
|
||||
this.lbl_p_1_1.Text = "P1";
|
||||
this.lbl_p_1_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_4
|
||||
//
|
||||
this.lbl_1_4.AutoSize = true;
|
||||
this.lbl_1_4.Location = new System.Drawing.Point(94, 105);
|
||||
this.lbl_1_4.Name = "lbl_1_4";
|
||||
this.lbl_1_4.Size = new System.Drawing.Size(15, 13);
|
||||
this.lbl_1_4.TabIndex = 8;
|
||||
this.lbl_1_4.Text = "D";
|
||||
this.lbl_1_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_3
|
||||
//
|
||||
this.lbl_1_3.AutoSize = true;
|
||||
this.lbl_1_3.Location = new System.Drawing.Point(94, 78);
|
||||
this.lbl_1_3.Name = "lbl_1_3";
|
||||
this.lbl_1_3.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_3.TabIndex = 7;
|
||||
this.lbl_1_3.Text = "C";
|
||||
this.lbl_1_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_2
|
||||
//
|
||||
this.lbl_1_2.AutoSize = true;
|
||||
this.lbl_1_2.Location = new System.Drawing.Point(94, 51);
|
||||
this.lbl_1_2.Name = "lbl_1_2";
|
||||
this.lbl_1_2.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_2.TabIndex = 6;
|
||||
this.lbl_1_2.Text = "B";
|
||||
this.lbl_1_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_1_1
|
||||
//
|
||||
this.lbl_1_1.AutoSize = true;
|
||||
this.lbl_1_1.Location = new System.Drawing.Point(94, 24);
|
||||
this.lbl_1_1.Name = "lbl_1_1";
|
||||
this.lbl_1_1.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_1_1.TabIndex = 2;
|
||||
this.lbl_1_1.Text = "A";
|
||||
this.lbl_1_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// combo_1_4
|
||||
//
|
||||
this.combo_1_4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_4.FormattingEnabled = true;
|
||||
this.combo_1_4.Location = new System.Drawing.Point(114, 102);
|
||||
this.combo_1_4.Name = "combo_1_4";
|
||||
this.combo_1_4.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_4.TabIndex = 5;
|
||||
this.combo_1_4.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_3
|
||||
//
|
||||
this.combo_1_3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_3.FormattingEnabled = true;
|
||||
this.combo_1_3.Location = new System.Drawing.Point(114, 75);
|
||||
this.combo_1_3.Name = "combo_1_3";
|
||||
this.combo_1_3.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_3.TabIndex = 4;
|
||||
this.combo_1_3.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_2
|
||||
//
|
||||
this.combo_1_2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_2.FormattingEnabled = true;
|
||||
this.combo_1_2.Location = new System.Drawing.Point(114, 48);
|
||||
this.combo_1_2.Name = "combo_1_2";
|
||||
this.combo_1_2.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_2.TabIndex = 3;
|
||||
this.combo_1_2.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_1_1
|
||||
//
|
||||
this.combo_1_1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_1_1.FormattingEnabled = true;
|
||||
this.combo_1_1.Location = new System.Drawing.Point(114, 21);
|
||||
this.combo_1_1.Name = "combo_1_1";
|
||||
this.combo_1_1.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_1_1.TabIndex = 2;
|
||||
this.combo_1_1.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// cbMemcard_1
|
||||
//
|
||||
this.cbMemcard_1.AutoSize = true;
|
||||
this.cbMemcard_1.Location = new System.Drawing.Point(18, 21);
|
||||
this.cbMemcard_1.Name = "cbMemcard_1";
|
||||
this.cbMemcard_1.Size = new System.Drawing.Size(70, 17);
|
||||
this.cbMemcard_1.TabIndex = 1;
|
||||
this.cbMemcard_1.Text = "Memcard";
|
||||
this.cbMemcard_1.UseVisualStyleBackColor = true;
|
||||
this.cbMemcard_1.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// btnOK
|
||||
//
|
||||
this.btnOK.DialogResult = System.Windows.Forms.DialogResult.OK;
|
||||
this.btnOK.Location = new System.Drawing.Point(408, 163);
|
||||
this.btnOK.Name = "btnOK";
|
||||
this.btnOK.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnOK.TabIndex = 2;
|
||||
this.btnOK.Text = "OK";
|
||||
this.btnOK.UseVisualStyleBackColor = true;
|
||||
this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
|
||||
//
|
||||
// btnCancel
|
||||
//
|
||||
this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.btnCancel.Location = new System.Drawing.Point(489, 163);
|
||||
this.btnCancel.Name = "btnCancel";
|
||||
this.btnCancel.Size = new System.Drawing.Size(75, 23);
|
||||
this.btnCancel.TabIndex = 3;
|
||||
this.btnCancel.Text = "Cancel";
|
||||
this.btnCancel.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_4);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_3);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_2);
|
||||
this.groupBox2.Controls.Add(this.lbl_p_2_1);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_4);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_3);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_2);
|
||||
this.groupBox2.Controls.Add(this.lbl_2_1);
|
||||
this.groupBox2.Controls.Add(this.combo_2_4);
|
||||
this.groupBox2.Controls.Add(this.combo_2_3);
|
||||
this.groupBox2.Controls.Add(this.combo_2_2);
|
||||
this.groupBox2.Controls.Add(this.combo_2_1);
|
||||
this.groupBox2.Controls.Add(this.cbMemcard_2);
|
||||
this.groupBox2.Controls.Add(this.cbMultitap_2);
|
||||
this.groupBox2.Location = new System.Drawing.Point(291, 12);
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(273, 136);
|
||||
this.groupBox2.TabIndex = 13;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "Port 2";
|
||||
//
|
||||
// lbl_p_2_4
|
||||
//
|
||||
this.lbl_p_2_4.AutoSize = true;
|
||||
this.lbl_p_2_4.Location = new System.Drawing.Point(241, 105);
|
||||
this.lbl_p_2_4.Name = "lbl_p_2_4";
|
||||
this.lbl_p_2_4.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_4.TabIndex = 12;
|
||||
this.lbl_p_2_4.Text = "P1";
|
||||
this.lbl_p_2_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_3
|
||||
//
|
||||
this.lbl_p_2_3.AutoSize = true;
|
||||
this.lbl_p_2_3.Location = new System.Drawing.Point(241, 78);
|
||||
this.lbl_p_2_3.Name = "lbl_p_2_3";
|
||||
this.lbl_p_2_3.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_3.TabIndex = 11;
|
||||
this.lbl_p_2_3.Text = "P1";
|
||||
this.lbl_p_2_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_2
|
||||
//
|
||||
this.lbl_p_2_2.AutoSize = true;
|
||||
this.lbl_p_2_2.Location = new System.Drawing.Point(241, 50);
|
||||
this.lbl_p_2_2.Name = "lbl_p_2_2";
|
||||
this.lbl_p_2_2.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_2.TabIndex = 10;
|
||||
this.lbl_p_2_2.Text = "P1";
|
||||
this.lbl_p_2_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_p_2_1
|
||||
//
|
||||
this.lbl_p_2_1.AutoSize = true;
|
||||
this.lbl_p_2_1.Location = new System.Drawing.Point(241, 24);
|
||||
this.lbl_p_2_1.Name = "lbl_p_2_1";
|
||||
this.lbl_p_2_1.Size = new System.Drawing.Size(20, 13);
|
||||
this.lbl_p_2_1.TabIndex = 9;
|
||||
this.lbl_p_2_1.Text = "P1";
|
||||
this.lbl_p_2_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_4
|
||||
//
|
||||
this.lbl_2_4.AutoSize = true;
|
||||
this.lbl_2_4.Location = new System.Drawing.Point(94, 105);
|
||||
this.lbl_2_4.Name = "lbl_2_4";
|
||||
this.lbl_2_4.Size = new System.Drawing.Size(15, 13);
|
||||
this.lbl_2_4.TabIndex = 8;
|
||||
this.lbl_2_4.Text = "D";
|
||||
this.lbl_2_4.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_3
|
||||
//
|
||||
this.lbl_2_3.AutoSize = true;
|
||||
this.lbl_2_3.Location = new System.Drawing.Point(94, 78);
|
||||
this.lbl_2_3.Name = "lbl_2_3";
|
||||
this.lbl_2_3.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_3.TabIndex = 7;
|
||||
this.lbl_2_3.Text = "C";
|
||||
this.lbl_2_3.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_2
|
||||
//
|
||||
this.lbl_2_2.AutoSize = true;
|
||||
this.lbl_2_2.Location = new System.Drawing.Point(94, 51);
|
||||
this.lbl_2_2.Name = "lbl_2_2";
|
||||
this.lbl_2_2.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_2.TabIndex = 6;
|
||||
this.lbl_2_2.Text = "B";
|
||||
this.lbl_2_2.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// lbl_2_1
|
||||
//
|
||||
this.lbl_2_1.AutoSize = true;
|
||||
this.lbl_2_1.Location = new System.Drawing.Point(94, 24);
|
||||
this.lbl_2_1.Name = "lbl_2_1";
|
||||
this.lbl_2_1.Size = new System.Drawing.Size(14, 13);
|
||||
this.lbl_2_1.TabIndex = 2;
|
||||
this.lbl_2_1.Text = "A";
|
||||
this.lbl_2_1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// combo_2_4
|
||||
//
|
||||
this.combo_2_4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_4.FormattingEnabled = true;
|
||||
this.combo_2_4.Location = new System.Drawing.Point(114, 102);
|
||||
this.combo_2_4.Name = "combo_2_4";
|
||||
this.combo_2_4.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_4.TabIndex = 5;
|
||||
this.combo_2_4.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_3
|
||||
//
|
||||
this.combo_2_3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_3.FormattingEnabled = true;
|
||||
this.combo_2_3.Location = new System.Drawing.Point(114, 75);
|
||||
this.combo_2_3.Name = "combo_2_3";
|
||||
this.combo_2_3.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_3.TabIndex = 4;
|
||||
this.combo_2_3.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_2
|
||||
//
|
||||
this.combo_2_2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_2.FormattingEnabled = true;
|
||||
this.combo_2_2.Location = new System.Drawing.Point(114, 48);
|
||||
this.combo_2_2.Name = "combo_2_2";
|
||||
this.combo_2_2.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_2.TabIndex = 3;
|
||||
this.combo_2_2.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// combo_2_1
|
||||
//
|
||||
this.combo_2_1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.combo_2_1.FormattingEnabled = true;
|
||||
this.combo_2_1.Location = new System.Drawing.Point(114, 21);
|
||||
this.combo_2_1.Name = "combo_2_1";
|
||||
this.combo_2_1.Size = new System.Drawing.Size(121, 21);
|
||||
this.combo_2_1.TabIndex = 2;
|
||||
this.combo_2_1.SelectedIndexChanged += new System.EventHandler(this.combo_SelectedIndexChanged);
|
||||
//
|
||||
// cbMemcard_2
|
||||
//
|
||||
this.cbMemcard_2.AutoSize = true;
|
||||
this.cbMemcard_2.Location = new System.Drawing.Point(18, 21);
|
||||
this.cbMemcard_2.Name = "cbMemcard_2";
|
||||
this.cbMemcard_2.Size = new System.Drawing.Size(70, 17);
|
||||
this.cbMemcard_2.TabIndex = 1;
|
||||
this.cbMemcard_2.Text = "Memcard";
|
||||
this.cbMemcard_2.UseVisualStyleBackColor = true;
|
||||
this.cbMemcard_2.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// cbMultitap_2
|
||||
//
|
||||
this.cbMultitap_2.AutoSize = true;
|
||||
this.cbMultitap_2.Enabled = false;
|
||||
this.cbMultitap_2.Location = new System.Drawing.Point(18, 43);
|
||||
this.cbMultitap_2.Name = "cbMultitap_2";
|
||||
this.cbMultitap_2.Size = new System.Drawing.Size(63, 17);
|
||||
this.cbMultitap_2.TabIndex = 0;
|
||||
this.cbMultitap_2.Text = "Multitap";
|
||||
this.cbMultitap_2.UseVisualStyleBackColor = true;
|
||||
this.cbMultitap_2.CheckedChanged += new System.EventHandler(this.cb_changed);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(13, 172);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(177, 13);
|
||||
this.label1.TabIndex = 14;
|
||||
this.label1.Text = "Sorry, multitap not supported just yet";
|
||||
//
|
||||
// PSXControllerConfigNew
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.CancelButton = this.btnCancel;
|
||||
this.ClientSize = new System.Drawing.Size(586, 201);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.btnCancel);
|
||||
this.Controls.Add(this.btnOK);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "PSXControllerConfigNew";
|
||||
this.Text = "PSX FrontIO Configuration";
|
||||
this.Load += new System.EventHandler(this.PSXControllerConfigNew_Load);
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
@ -470,6 +486,7 @@
|
|||
private System.Windows.Forms.ComboBox combo_2_2;
|
||||
private System.Windows.Forms.ComboBox combo_2_1;
|
||||
private System.Windows.Forms.CheckBox cbMemcard_2;
|
||||
private System.Windows.Forms.CheckBox cbMultitap_2;
|
||||
private System.Windows.Forms.CheckBox cbMultitap_2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
}
|
||||
}
|
|
@ -34,15 +34,56 @@ namespace BizHawk.Client.EmuHawk
|
|||
combo.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
var psxSettings = ((Octoshock)Global.Emulator).GetSyncSettings();
|
||||
GuiFromUserConfig(psxSettings.FIOConfig);
|
||||
|
||||
RefreshLabels();
|
||||
}
|
||||
|
||||
void GuiFromUserConfig(OctoshockFIOConfigUser user)
|
||||
{
|
||||
cbMemcard_1.Checked = user.Memcards[0];
|
||||
cbMemcard_2.Checked = user.Memcards[1];
|
||||
cbMultitap_1.Checked = user.Multitaps[0];
|
||||
cbMultitap_2.Checked = user.Multitaps[1];
|
||||
|
||||
var combos = new[] { combo_1_1, combo_1_2, combo_1_3, combo_1_4, combo_2_1, combo_2_2, combo_2_3, combo_2_4 };
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
var combo = combos[i];
|
||||
if (user.Devices8[i] == OctoshockDll.ePeripheralType.None) combo.SelectedIndex = 0;
|
||||
if (user.Devices8[i] == OctoshockDll.ePeripheralType.DualAnalog) combo.SelectedIndex = 1;
|
||||
if (user.Devices8[i] == OctoshockDll.ePeripheralType.DualShock) combo.SelectedIndex = 2;
|
||||
}
|
||||
}
|
||||
|
||||
OctoshockFIOConfigUser UserConfigFromGui()
|
||||
{
|
||||
OctoshockFIOConfigUser uc = new OctoshockFIOConfigUser();
|
||||
|
||||
uc.Memcards[0] = cbMemcard_1.Checked;
|
||||
uc.Memcards[1] = cbMemcard_2.Checked;
|
||||
|
||||
uc.Multitaps[0] = cbMultitap_1.Checked;
|
||||
uc.Multitaps[1] = cbMultitap_2.Checked;
|
||||
|
||||
var combos = new[] { combo_1_1, combo_1_2, combo_1_3, combo_1_4, combo_2_1, combo_2_2, combo_2_3, combo_2_4 };
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
var combo = combos[i];
|
||||
if (combo.SelectedIndex == 0) uc.Devices8[i] = OctoshockDll.ePeripheralType.None;
|
||||
if (combo.SelectedIndex == 1) uc.Devices8[i] = OctoshockDll.ePeripheralType.DualAnalog;
|
||||
if (combo.SelectedIndex == 2) uc.Devices8[i] = OctoshockDll.ePeripheralType.DualShock;
|
||||
}
|
||||
|
||||
return uc;
|
||||
}
|
||||
|
||||
void RefreshLabels()
|
||||
{
|
||||
bool multitap_1 = cbMultitap_1.Checked;
|
||||
bool multitap_2 = cbMultitap_2.Checked;
|
||||
{
|
||||
var uc = UserConfigFromGui();
|
||||
|
||||
bool b1 = multitap_1;
|
||||
bool b1 = uc.Multitaps[0];
|
||||
lbl_1_1.Visible = b1;
|
||||
lbl_1_2.Visible = b1;
|
||||
lbl_1_3.Visible = b1;
|
||||
|
@ -52,9 +93,9 @@ namespace BizHawk.Client.EmuHawk
|
|||
combo_1_4.Enabled = b1;
|
||||
lbl_p_1_2.Visible = b1;
|
||||
lbl_p_1_3.Visible = b1;
|
||||
lbl_p_1_4.Visible = b1;
|
||||
|
||||
bool b2 = multitap_2;
|
||||
lbl_p_1_4.Visible = b1;
|
||||
|
||||
bool b2 = uc.Multitaps[1];
|
||||
lbl_2_1.Visible = b2;
|
||||
lbl_2_2.Visible = b2;
|
||||
lbl_2_3.Visible = b2;
|
||||
|
@ -66,21 +107,7 @@ namespace BizHawk.Client.EmuHawk
|
|||
lbl_p_2_3.Visible = b2;
|
||||
lbl_p_2_4.Visible = b2;
|
||||
|
||||
OctoshockControlUserConfig uc = new OctoshockControlUserConfig();
|
||||
|
||||
uc.Multitaps[0] = multitap_1;
|
||||
uc.Multitaps[1] = multitap_2;
|
||||
|
||||
var combos = new[] { combo_1_1, combo_1_2, combo_1_3, combo_1_4, combo_2_1, combo_2_2, combo_2_3, combo_2_4};
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
var combo = combos[i];
|
||||
if (combo.SelectedIndex == 0) uc.Devices8[i] = OctoshockDll.ePeripheralType.None;
|
||||
if (combo.SelectedIndex == 1) uc.Devices8[i] = OctoshockDll.ePeripheralType.DualAnalog;
|
||||
if (combo.SelectedIndex == 2) uc.Devices8[i] = OctoshockDll.ePeripheralType.DualShock;
|
||||
}
|
||||
|
||||
var LC = uc.ToLogicalConfig();
|
||||
var LC = uc.ToLogical();
|
||||
|
||||
var p_labels = new[] { lbl_p_1_1,lbl_p_1_2,lbl_p_1_3,lbl_p_1_4,lbl_p_2_1,lbl_p_2_2,lbl_p_2_3,lbl_p_2_4};
|
||||
for (int i = 0; i < 8; i++)
|
||||
|
@ -94,7 +121,6 @@ namespace BizHawk.Client.EmuHawk
|
|||
lbl.Visible = true;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void cb_changed(object sender, EventArgs e)
|
||||
|
@ -105,6 +131,18 @@ namespace BizHawk.Client.EmuHawk
|
|||
private void combo_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
RefreshLabels();
|
||||
}
|
||||
|
||||
private void btnOK_Click(object sender, EventArgs e)
|
||||
{
|
||||
var psxSettings = ((Octoshock)Global.Emulator).GetSyncSettings();
|
||||
|
||||
psxSettings.FIOConfig = UserConfigFromGui();
|
||||
GlobalWin.MainForm.PutCoreSyncSettings(psxSettings);
|
||||
|
||||
DialogResult = DialogResult.OK;
|
||||
|
||||
Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,120 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
|
@ -14,19 +14,14 @@ namespace BizHawk.Client.EmuHawk
|
|||
var psx = ((Octoshock)Global.Emulator);
|
||||
var settings = (Octoshock.SyncSettings)psx.GetSyncSettings();
|
||||
|
||||
for (int i = 0; i < settings.Controllers.Length; i++)
|
||||
var fioConfig = settings.FIOConfig.ToLogical();
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
if (settings.Controllers[i].IsConnected)
|
||||
{
|
||||
if (settings.Controllers[i].Type == Octoshock.ControllerSetting.ControllerType.Gamepad)
|
||||
{
|
||||
yield return GamePadController(i + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
yield return DualShockController(i + 1);
|
||||
}
|
||||
}
|
||||
int pnum = i + 1;
|
||||
if (fioConfig.DevicesPlayer[i] == OctoshockDll.ePeripheralType.DualAnalog || fioConfig.DevicesPlayer[i] == OctoshockDll.ePeripheralType.DualShock)
|
||||
yield return DualShockController(pnum);
|
||||
if (fioConfig.DevicesPlayer[i] == OctoshockDll.ePeripheralType.Pad)
|
||||
yield return GamePadController(pnum);
|
||||
}
|
||||
|
||||
yield return ConsoleButtons(psx);
|
||||
|
|
|
@ -797,8 +797,8 @@
|
|||
<Compile Include="Consoles\Sony\PSX\Octoshock.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Consoles\Sony\PSX\OctoshockControlConfig.cs" />
|
||||
<Compile Include="Consoles\Sony\PSX\OctoshockDll.cs" />
|
||||
<Compile Include="Consoles\Sony\PSX\OctoshockFIOConfig.cs" />
|
||||
<Compile Include="Consoles\Sony\PSX\PSF.cs" />
|
||||
<Compile Include="Consoles\WonderSwan\BizSwan.cs" />
|
||||
<Compile Include="Consoles\WonderSwan\WonderSwan.cs" />
|
||||
|
|
|
@ -39,47 +39,49 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
private void SetControllerButtons()
|
||||
{
|
||||
ControllerDefinition = new ControllerDefinition();
|
||||
ControllerDefinition.Name = _SyncSettings.Controllers.All(c => c.Type == ControllerSetting.ControllerType.Gamepad)
|
||||
? "PSX Gamepad Controller"
|
||||
: "PSX DualShock Controller"; // Meh, more nuanced logic doesn't really work with a simple property
|
||||
ControllerDefinition.Name = "PSX DualShock Controller"; // <-- for compatibility
|
||||
//ControllerDefinition.Name = "PSX FrontIO"; // TODO - later rename to this, I guess, so it's less misleading. don't want to wreck keybindings yet.
|
||||
|
||||
ControllerDefinition.BoolButtons.Clear();
|
||||
ControllerDefinition.FloatControls.Clear();
|
||||
|
||||
for (int i = 0; i < _SyncSettings.Controllers.Length; i++)
|
||||
var cfg = _SyncSettings.FIOConfig.ToLogical();
|
||||
|
||||
for (int i = 0; i < cfg.NumPlayers; i++)
|
||||
{
|
||||
if (_SyncSettings.Controllers[i].IsConnected)
|
||||
{
|
||||
int pnum = i + 1;
|
||||
ControllerDefinition.BoolButtons.AddRange(new[]
|
||||
{
|
||||
"P" + (i + 1) + " Up",
|
||||
"P" + (i + 1) + " Down",
|
||||
"P" + (i + 1) + " Left",
|
||||
"P" + (i + 1) + " Right",
|
||||
"P" + (i + 1) + " Select",
|
||||
"P" + (i + 1) + " Start",
|
||||
"P" + (i + 1) + " Square",
|
||||
"P" + (i + 1) + " Triangle",
|
||||
"P" + (i + 1) + " Circle",
|
||||
"P" + (i + 1) + " Cross",
|
||||
"P" + (i + 1) + " L1",
|
||||
"P" + (i + 1) + " R1",
|
||||
"P" + (i + 1) + " L2",
|
||||
"P" + (i + 1) + " R2",
|
||||
"P" + pnum + " Up",
|
||||
"P" + pnum + " Down",
|
||||
"P" + pnum + " Left",
|
||||
"P" + pnum + " Right",
|
||||
"P" + pnum + " Select",
|
||||
"P" + pnum + " Start",
|
||||
"P" + pnum + " Square",
|
||||
"P" + pnum + " Triangle",
|
||||
"P" + pnum + " Circle",
|
||||
"P" + pnum + " Cross",
|
||||
"P" + pnum + " L1",
|
||||
"P" + pnum + " R1",
|
||||
"P" + pnum + " L2",
|
||||
"P" + pnum + " R2",
|
||||
});
|
||||
|
||||
if (_SyncSettings.Controllers[i].Type != ControllerSetting.ControllerType.Gamepad)
|
||||
var type = cfg.DevicesPlayer[i];
|
||||
|
||||
if (type == OctoshockDll.ePeripheralType.DualShock || type == OctoshockDll.ePeripheralType.DualAnalog)
|
||||
{
|
||||
ControllerDefinition.BoolButtons.Add("P" + (i + 1) + " L3");
|
||||
ControllerDefinition.BoolButtons.Add("P" + (i + 1) + " R3");
|
||||
ControllerDefinition.BoolButtons.Add("P" + (i + 1) + " MODE");
|
||||
ControllerDefinition.BoolButtons.Add("P" + pnum + " L3");
|
||||
ControllerDefinition.BoolButtons.Add("P" + pnum + " R3");
|
||||
ControllerDefinition.BoolButtons.Add("P" + pnum + " MODE");
|
||||
|
||||
ControllerDefinition.FloatControls.AddRange(new[]
|
||||
{
|
||||
"P" + (i + 1) + " LStick X",
|
||||
"P" + (i + 1) + " LStick Y",
|
||||
"P" + (i + 1) + " RStick X",
|
||||
"P" + (i + 1) + " RStick Y"
|
||||
"P" + pnum + " LStick X",
|
||||
"P" + pnum + " LStick Y",
|
||||
"P" + pnum + " RStick X",
|
||||
"P" + pnum + " RStick Y"
|
||||
});
|
||||
|
||||
ControllerDefinition.FloatRanges.Add(new[] { 0.0f, 128.0f, 255.0f });
|
||||
|
@ -88,7 +90,6 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
ControllerDefinition.FloatRanges.Add(new[] { 255.0f, 128.0f, 0.0f });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ControllerDefinition.BoolButtons.AddRange(new[]
|
||||
{
|
||||
|
@ -374,21 +375,18 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
//setup the controller based on sync settings
|
||||
SetControllerButtons();
|
||||
|
||||
var lookup = new Dictionary<ControllerSetting.ControllerType, OctoshockDll.ePeripheralType> {
|
||||
{ ControllerSetting.ControllerType.Gamepad, OctoshockDll.ePeripheralType.Pad },
|
||||
{ ControllerSetting.ControllerType.DualAnalog, OctoshockDll.ePeripheralType.DualAnalog },
|
||||
{ ControllerSetting.ControllerType.DualShock, OctoshockDll.ePeripheralType.DualShock },
|
||||
var fioCfg = _SyncSettings.FIOConfig;
|
||||
if(fioCfg.Devices8[0] != OctoshockDll.ePeripheralType.None)
|
||||
OctoshockDll.shock_Peripheral_Connect(psx, 0x01, fioCfg.Devices8[0]);
|
||||
if (fioCfg.Devices8[4] != OctoshockDll.ePeripheralType.None)
|
||||
OctoshockDll.shock_Peripheral_Connect(psx, 0x02, fioCfg.Devices8[4]);
|
||||
|
||||
var memcardTransaction = new OctoshockDll.ShockMemcardTransaction()
|
||||
{
|
||||
transaction = OctoshockDll.eShockMemcardTransaction.Connect
|
||||
};
|
||||
|
||||
if (_SyncSettings.Controllers[0].IsConnected)
|
||||
{
|
||||
OctoshockDll.shock_Peripheral_Connect(psx, 0x01, lookup[_SyncSettings.Controllers[0].Type]);
|
||||
}
|
||||
|
||||
if (_SyncSettings.Controllers[1].IsConnected)
|
||||
{
|
||||
OctoshockDll.shock_Peripheral_Connect(psx, 0x02, lookup[_SyncSettings.Controllers[1].Type]);
|
||||
}
|
||||
if (fioCfg.Memcards[0]) OctoshockDll.shock_Peripheral_MemcardTransact(psx, 0x01, ref memcardTransaction);
|
||||
if (fioCfg.Memcards[1]) OctoshockDll.shock_Peripheral_MemcardTransact(psx, 0x02, ref memcardTransaction);
|
||||
|
||||
//do this after framebuffers and peripherals and whatever crap are setup. kind of lame, but thats how it is for now
|
||||
StudySaveBufferSize();
|
||||
|
@ -423,65 +421,48 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
|
||||
void SetInput()
|
||||
{
|
||||
uint buttons = 0;
|
||||
var fioCfg = _SyncSettings.FIOConfig.ToLogical();
|
||||
|
||||
if (_SyncSettings.Controllers[0].IsConnected)
|
||||
int portNum = 0x01;
|
||||
foreach (int slot in new[] { 0, 4 })
|
||||
{
|
||||
//dualshock style
|
||||
if (Controller["P1 Select"]) buttons |= 1;
|
||||
if (Controller["P1 L3"]) buttons |= 2;
|
||||
if (Controller["P1 R3"]) buttons |= 4;
|
||||
if (Controller["P1 Start"]) buttons |= 8;
|
||||
if (Controller["P1 Up"]) buttons |= 16;
|
||||
if (Controller["P1 Right"]) buttons |= 32;
|
||||
if (Controller["P1 Down"]) buttons |= 64;
|
||||
if (Controller["P1 Left"]) buttons |= 128;
|
||||
if (Controller["P1 L2"]) buttons |= 256;
|
||||
if (Controller["P1 R2"]) buttons |= 512;
|
||||
if (Controller["P1 L1"]) buttons |= 1024;
|
||||
if (Controller["P1 R1"]) buttons |= 2048;
|
||||
if (Controller["P1 Triangle"]) buttons |= 4096;
|
||||
if (Controller["P1 Circle"]) buttons |= 8192;
|
||||
if (Controller["P1 Cross"]) buttons |= 16384;
|
||||
if (Controller["P1 Square"]) buttons |= 32768;
|
||||
if (Controller["P1 MODE"]) buttons |= 65536;
|
||||
//no input to set
|
||||
if (fioCfg.Devices8[slot] == OctoshockDll.ePeripheralType.None)
|
||||
continue;
|
||||
|
||||
byte left_x = (byte)Controller.GetFloat("P1 LStick X");
|
||||
byte left_y = (byte)Controller.GetFloat("P1 LStick Y");
|
||||
byte right_x = (byte)Controller.GetFloat("P1 RStick X");
|
||||
byte right_y = (byte)Controller.GetFloat("P1 RStick Y");
|
||||
uint buttons = 0;
|
||||
string pstring = "P" + fioCfg.PlayerAssignments[slot] + " ";
|
||||
|
||||
OctoshockDll.shock_Peripheral_SetPadInput(psx, 0x01, buttons, left_x, left_y, right_x, right_y);
|
||||
}
|
||||
if (Controller[pstring + "Select"]) buttons |= 1;
|
||||
if (Controller[pstring + "Start"]) buttons |= 8;
|
||||
if (Controller[pstring + "Up"]) buttons |= 16;
|
||||
if (Controller[pstring + "Right"]) buttons |= 32;
|
||||
if (Controller[pstring + "Down"]) buttons |= 64;
|
||||
if (Controller[pstring + "Left"]) buttons |= 128;
|
||||
if (Controller[pstring + "L2"]) buttons |= 256;
|
||||
if (Controller[pstring + "R2"]) buttons |= 512;
|
||||
if (Controller[pstring + "L1"]) buttons |= 1024;
|
||||
if (Controller[pstring + "R1"]) buttons |= 2048;
|
||||
if (Controller[pstring + "Triangle"]) buttons |= 4096;
|
||||
if (Controller[pstring + "Circle"]) buttons |= 8192;
|
||||
if (Controller[pstring + "Cross"]) buttons |= 16384;
|
||||
if (Controller[pstring + "Square"]) buttons |= 32768;
|
||||
|
||||
if (_SyncSettings.Controllers[1].IsConnected)
|
||||
{
|
||||
//dualshock style
|
||||
buttons = 0;
|
||||
if (Controller["P2 Select"]) buttons |= 1;
|
||||
if (Controller["P2 L3"]) buttons |= 2;
|
||||
if (Controller["P2 R3"]) buttons |= 4;
|
||||
if (Controller["P2 Start"]) buttons |= 8;
|
||||
if (Controller["P2 Up"]) buttons |= 16;
|
||||
if (Controller["P2 Right"]) buttons |= 32;
|
||||
if (Controller["P2 Down"]) buttons |= 64;
|
||||
if (Controller["P2 Left"]) buttons |= 128;
|
||||
if (Controller["P2 L2"]) buttons |= 256;
|
||||
if (Controller["P2 R2"]) buttons |= 512;
|
||||
if (Controller["P2 L1"]) buttons |= 1024;
|
||||
if (Controller["P2 R1"]) buttons |= 2048;
|
||||
if (Controller["P2 Triangle"]) buttons |= 4096;
|
||||
if (Controller["P2 Circle"]) buttons |= 8192;
|
||||
if (Controller["P2 Cross"]) buttons |= 16384;
|
||||
if (Controller["P2 Square"]) buttons |= 32768;
|
||||
if (Controller["P2 MODE"]) buttons |= 65536;
|
||||
byte left_x = 0, left_y = 0, right_x = 0, right_y = 0;
|
||||
if (fioCfg.Devices8[slot] == OctoshockDll.ePeripheralType.DualShock || fioCfg.Devices8[slot] == OctoshockDll.ePeripheralType.DualAnalog)
|
||||
{
|
||||
if (Controller[pstring + "L3"]) buttons |= 2;
|
||||
if (Controller[pstring + "R3"]) buttons |= 4;
|
||||
if (Controller[pstring + "MODE"]) buttons |= 65536;
|
||||
|
||||
byte left_x = (byte)Controller.GetFloat("P2 LStick X");
|
||||
byte left_y = (byte)Controller.GetFloat("P2 LStick Y");
|
||||
byte right_x = (byte)Controller.GetFloat("P2 RStick X");
|
||||
byte right_y = (byte)Controller.GetFloat("P2 RStick Y");
|
||||
left_x = (byte)Controller.GetFloat(pstring + "LStick X");
|
||||
left_y = (byte)Controller.GetFloat(pstring + "LStick Y");
|
||||
right_x = (byte)Controller.GetFloat(pstring + "RStick X");
|
||||
right_y = (byte)Controller.GetFloat(pstring + "RStick Y");
|
||||
}
|
||||
|
||||
OctoshockDll.shock_Peripheral_SetPadInput(psx, 0x02, buttons, left_x, left_y, right_x, right_y);
|
||||
OctoshockDll.shock_Peripheral_SetPadInput(psx, portNum, buttons, left_x, left_y, right_x, right_y);
|
||||
portNum <<= 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -858,25 +839,42 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
|
||||
public byte[] CloneSaveRam()
|
||||
{
|
||||
var buf = new byte[128 * 1024];
|
||||
fixed (byte* pbuf = buf)
|
||||
var cfg = _SyncSettings.FIOConfig.ToLogical();
|
||||
int nMemcards = cfg.NumMemcards;
|
||||
var buf = new byte[128 * 1024 * nMemcards];
|
||||
for (int i = 0, idx = 0, addr=0x01; i < 2; i++, addr<<=1)
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.buffer128k = pbuf;
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.Read;
|
||||
OctoshockDll.shock_Peripheral_MemcardTransact(psx, 0x01, ref transaction);
|
||||
if (cfg.Memcards[i])
|
||||
{
|
||||
fixed (byte* pbuf = buf)
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.buffer128k = pbuf + idx * 128 * 1024;
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.Read;
|
||||
OctoshockDll.shock_Peripheral_MemcardTransact(psx, addr, ref transaction);
|
||||
idx++;
|
||||
}
|
||||
}
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
|
||||
public void StoreSaveRam(byte[] data)
|
||||
{
|
||||
fixed (byte* pbuf = data)
|
||||
var cfg = _SyncSettings.FIOConfig.ToLogical();
|
||||
for (int i = 0, idx = 0, addr = 0x01; i < 2; i++, addr <<= 1)
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.buffer128k = pbuf;
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.Write;
|
||||
OctoshockDll.shock_Peripheral_MemcardTransact(psx, 0x01, ref transaction);
|
||||
if (cfg.Memcards[i])
|
||||
{
|
||||
fixed (byte* pbuf = data)
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.buffer128k = pbuf + idx * 128 * 1024;
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.Write;
|
||||
OctoshockDll.shock_Peripheral_MemcardTransact(psx, addr, ref transaction);
|
||||
idx++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -884,9 +882,20 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
{
|
||||
get
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.CheckDirty;
|
||||
return OctoshockDll.shock_Peripheral_MemcardTransact(psx, 0x01, ref transaction) == OctoshockDll.SHOCK_TRUE;
|
||||
var cfg = _SyncSettings.FIOConfig.ToLogical();
|
||||
for (int i = 0, addr = 0x01; i < 2; i++, addr <<= 1)
|
||||
{
|
||||
if (cfg.Memcards[i])
|
||||
{
|
||||
var transaction = new OctoshockDll.ShockMemcardTransaction();
|
||||
transaction.transaction = OctoshockDll.eShockMemcardTransaction.CheckDirty;
|
||||
OctoshockDll.shock_Peripheral_MemcardTransact(psx, addr, ref transaction);
|
||||
if (OctoshockDll.shock_Peripheral_MemcardTransact(psx, addr, ref transaction) == OctoshockDll.SHOCK_TRUE)
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1055,49 +1064,23 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
{
|
||||
public SyncSettings Clone()
|
||||
{
|
||||
var ret = (SyncSettings)MemberwiseClone();
|
||||
ret.Controllers = Controllers.Select(x => x.Clone()).ToArray();
|
||||
|
||||
return ret;
|
||||
return JsonConvert.DeserializeObject<SyncSettings>(JsonConvert.SerializeObject(this));
|
||||
}
|
||||
|
||||
public bool EnableLEC;
|
||||
|
||||
public ControllerSetting[] Controllers =
|
||||
public SyncSettings()
|
||||
{
|
||||
new ControllerSetting
|
||||
{
|
||||
IsConnected = true,
|
||||
Type = ControllerSetting.ControllerType.DualShock
|
||||
},
|
||||
new ControllerSetting
|
||||
{
|
||||
IsConnected = false,
|
||||
Type = ControllerSetting.ControllerType.DualShock
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
public class ControllerSetting
|
||||
{
|
||||
public ControllerSetting Clone()
|
||||
{
|
||||
return (ControllerSetting)this.MemberwiseClone();
|
||||
//initialize with historical default settings
|
||||
var user = new OctoshockFIOConfigUser();
|
||||
user.Memcards[0] = user.Memcards[1] = true;
|
||||
user.Multitaps[0] = user.Multitaps[0] = false;
|
||||
user.Devices8[0] = OctoshockDll.ePeripheralType.DualShock;
|
||||
user.Devices8[4] = OctoshockDll.ePeripheralType.DualShock;
|
||||
FIOConfig = user;
|
||||
}
|
||||
|
||||
public bool IsConnected { get; set; }
|
||||
public ControllerType Type { get; set; }
|
||||
|
||||
public enum ControllerType
|
||||
{
|
||||
Gamepad,
|
||||
|
||||
[Description("Dual Analog")]
|
||||
DualAnalog,
|
||||
|
||||
[Description("Dual Shock")]
|
||||
DualShock
|
||||
}
|
||||
public OctoshockFIOConfigUser FIOConfig;
|
||||
}
|
||||
|
||||
public enum eHorizontalClipping
|
||||
|
@ -1200,12 +1183,15 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
|
||||
public bool PutSyncSettings(SyncSettings o)
|
||||
{
|
||||
//check for reboot-required options (well, none right now)
|
||||
bool reboot = false;
|
||||
//currently LEC and pad settings changes both require reboot
|
||||
bool reboot = true;
|
||||
|
||||
//we could do it this way roughly if we need to
|
||||
//if(JsonConvert.SerializeObject(o.FIOConfig) != JsonConvert.SerializeObject(_SyncSettings.FIOConfig)
|
||||
|
||||
|
||||
_SyncSettings = o;
|
||||
|
||||
//TODO - store settings into core? or we can just keep doing it before frameadvance
|
||||
|
||||
|
||||
return reboot;
|
||||
}
|
||||
|
|
|
@ -3,28 +3,57 @@ using System.Collections.Generic;
|
|||
|
||||
namespace BizHawk.Emulation.Cores.Sony.PSX
|
||||
{
|
||||
public class OctoshockControlUserConfig
|
||||
/// <summary>
|
||||
/// Represents a user's view of what equipment is plugged into the PSX FIO
|
||||
/// </summary>
|
||||
public class OctoshockFIOConfigUser
|
||||
{
|
||||
public bool[] Multitaps = new bool[2];
|
||||
public bool[] Memcards = new bool[2];
|
||||
public OctoshockDll.ePeripheralType[] Devices8 = new OctoshockDll.ePeripheralType[8];
|
||||
|
||||
public OctoshockControlLogicalConfig ToLogicalConfig()
|
||||
public OctoshockFIOConfigLogical ToLogical()
|
||||
{
|
||||
var lc = new OctoshockControlLogicalConfig();
|
||||
var lc = new OctoshockFIOConfigLogical();
|
||||
lc.PopulateFrom(this);
|
||||
return lc;
|
||||
}
|
||||
}
|
||||
|
||||
public class OctoshockControlLogicalConfig
|
||||
/// <summary>
|
||||
/// Represents a baked-down view of what's plugged into the PSX FIO.
|
||||
/// But really, users are interested in it too (its what produces the player number assignments)
|
||||
/// </summary>
|
||||
public class OctoshockFIOConfigLogical
|
||||
{
|
||||
public int[] PlayerAssignments = new int[8];
|
||||
public bool[] Multitaps;
|
||||
public bool[] Memcards;
|
||||
public OctoshockDll.ePeripheralType[] Devices8;
|
||||
|
||||
internal void PopulateFrom(OctoshockControlUserConfig userConfig)
|
||||
/// <summary>
|
||||
/// Total number of players defined
|
||||
/// </summary>
|
||||
public int NumPlayers;
|
||||
|
||||
/// <summary>
|
||||
/// The player number on each of the input slots
|
||||
/// </summary>
|
||||
public int[] PlayerAssignments = new int[8];
|
||||
|
||||
/// <summary>
|
||||
/// The device type associated with each player
|
||||
/// </summary>
|
||||
public OctoshockDll.ePeripheralType[] DevicesPlayer = new OctoshockDll.ePeripheralType[8];
|
||||
|
||||
/// <summary>
|
||||
/// Total number of connected memcards
|
||||
/// </summary>
|
||||
public int NumMemcards { get { return (Memcards[0] ? 1 : 0) + (Memcards[1] ? 1 : 0); } }
|
||||
|
||||
internal void PopulateFrom(OctoshockFIOConfigUser userConfig)
|
||||
{
|
||||
Multitaps = (bool[])userConfig.Multitaps.Clone();
|
||||
Memcards = (bool[])userConfig.Memcards.Clone();
|
||||
Devices8 = (OctoshockDll.ePeripheralType[])userConfig.Devices8.Clone();
|
||||
|
||||
int id = 1;
|
||||
|
@ -38,6 +67,18 @@ namespace BizHawk.Emulation.Cores.Sony.PSX
|
|||
if (userConfig.Devices8[5] == OctoshockDll.ePeripheralType.None || !userConfig.Multitaps[1]) PlayerAssignments[5] = -1; else PlayerAssignments[5] = id++;
|
||||
if (userConfig.Devices8[6] == OctoshockDll.ePeripheralType.None || !userConfig.Multitaps[1]) PlayerAssignments[6] = -1; else PlayerAssignments[6] = id++;
|
||||
if (userConfig.Devices8[7] == OctoshockDll.ePeripheralType.None || !userConfig.Multitaps[1]) PlayerAssignments[7] = -1; else PlayerAssignments[7] = id++;
|
||||
|
||||
NumPlayers = id - 1;
|
||||
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
int pnum = i+1;
|
||||
for (int j = 0; j < 8; j++)
|
||||
{
|
||||
if(PlayerAssignments[j] == pnum)
|
||||
DevicesPlayer[i] = userConfig.Devices8[j];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
|
@ -1,6 +1,6 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
# Visual Studio 2015
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "octoshock", "octoshock.vcxproj", "{5F35CAFC-6208-4FBE-AD17-0E69BA3F70EC}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniclient", "..\test\miniclient\miniclient.vcxproj", "{5A0DAC84-1170-4B1A-B9A9-F566A1D97790}"
|
||||
|
|
|
@ -136,10 +136,6 @@ FrontIO::FrontIO()
|
|||
PortData[i] = NULL;
|
||||
MCPorts[i] = new InputDevice();
|
||||
}
|
||||
|
||||
//always add one memory device for now
|
||||
delete MCPorts[0];
|
||||
MCPorts[0] = Device_Memcard_Create();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -26,6 +26,8 @@ class InputDevice
|
|||
virtual void Update(const pscpu_timestamp_t timestamp); // Partially-implemented, don't rely on for timing any more fine-grained than a video frame for now.
|
||||
virtual void ResetTS(void);
|
||||
|
||||
virtual const char* GetName() const { return "InputDevice"; }
|
||||
|
||||
|
||||
//
|
||||
//
|
||||
|
|
|
@ -40,6 +40,8 @@ class InputDevice_Memcard : public InputDevice
|
|||
InputDevice_Memcard();
|
||||
virtual ~InputDevice_Memcard();
|
||||
|
||||
virtual const char* GetName() const { return "InputDevice_Memcard"; }
|
||||
|
||||
virtual void Power(void);
|
||||
virtual void SyncState(bool isReader, EW::NewState *ns);
|
||||
//
|
||||
|
|
|
@ -32,6 +32,8 @@
|
|||
#include "input/dualshock.h"
|
||||
#include "input/dualanalog.h"
|
||||
#include "input/gamepad.h"
|
||||
#include "input/memcard.h"
|
||||
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <ctype.h>
|
||||
|
@ -1197,8 +1199,15 @@ struct {
|
|||
//TODO - once we get flexible here, do some extra condition checks.. whether memcards exist, etc. much like devices.
|
||||
switch(transaction->transaction)
|
||||
{
|
||||
case eShockMemcardTransaction_Connect: return SHOCK_ERROR; //not supported yet
|
||||
case eShockMemcardTransaction_Disconnect: return SHOCK_ERROR; //not supported yet
|
||||
case eShockMemcardTransaction_Connect:
|
||||
//cant connect when a memcard is already connected
|
||||
if(!strcmp(FIO->MCPorts[portnum]->GetName(),"InputDevice_Memcard"))
|
||||
return SHOCK_NOCANDO;
|
||||
delete FIO->MCPorts[portnum]; //delete dummy
|
||||
FIO->MCPorts[portnum] = Device_Memcard_Create();
|
||||
|
||||
case eShockMemcardTransaction_Disconnect:
|
||||
return SHOCK_ERROR; //not supported yet
|
||||
|
||||
case eShockMemcardTransaction_Write:
|
||||
FIO->MCPorts[portnum]->WriteNV((uint8*)transaction->buffer128k,0,128*1024);
|
||||
|
|
Loading…
Reference in New Issue