OSDN Git Service

4bit単位でグループ化,16進数表示対応
authorkimikage <kimikage_ceo@hotmail.com>
Mon, 3 Jan 2011 16:46:52 +0000 (01:46 +0900)
committerkimikage <kimikage_ceo@hotmail.com>
Mon, 3 Jan 2011 16:46:52 +0000 (01:46 +0900)
Fugashi/BitSwitch.cs
Fugashi/BitSwitches4.Designer.cs [new file with mode: 0755]
Fugashi/BitSwitches4.cs [new file with mode: 0755]
Fugashi/BitSwitches4.resx [new file with mode: 0755]
Fugashi/Fugashi.csproj
Fugashi/MainForm.Designer.cs
Fugashi/MainForm.cs
Fugashi/Program.cs

index 863c90f..62a1ff3 100755 (executable)
@@ -30,10 +30,7 @@ namespace Fugashi
             get { return state; }\r
             set\r
             {\r
-                state = value;\r
-                label.Text = state ? "1" : "0";\r
-                label.ForeColor = state ? Color.DarkCyan : Color.SteelBlue;\r
-                label.Font = new Font(label.Font, state ? FontStyle.Bold : FontStyle.Regular);\r
+                SetStateWithoutEvent(value);\r
                 if (StateChanged != null)\r
                 {\r
                     StateChanged(this, new EventArgs());\r
@@ -88,5 +85,13 @@ namespace Fugashi
                 e.Graphics.DrawRectangle(p, 0, 0, width, Height - 1);\r
             }\r
         }\r
+\r
+        public void SetStateWithoutEvent(bool state)\r
+        {\r
+            this.state = state;\r
+            label.Text = state ? "1" : "0";\r
+            label.ForeColor = state ? Color.DarkCyan : Color.SteelBlue;\r
+            label.Font = new Font(label.Font, state ? FontStyle.Bold : FontStyle.Regular);            \r
+        }\r
     }\r
 }\r
diff --git a/Fugashi/BitSwitches4.Designer.cs b/Fugashi/BitSwitches4.Designer.cs
new file mode 100755 (executable)
index 0000000..4213d10
--- /dev/null
@@ -0,0 +1,109 @@
+namespace Fugashi\r
+{\r
+    partial class BitSwitches4\r
+    {\r
+        /// <summary> \r
+        /// 必要なデザイナ変数です。\r
+        /// </summary>\r
+        private System.ComponentModel.IContainer components = null;\r
+\r
+        /// <summary> \r
+        /// 使用中のリソースをすべてクリーンアップします。\r
+        /// </summary>\r
+        /// <param name="disposing">マネージ リソースが破棄される場合 true、破棄されない場合は false です。</param>\r
+        protected override void Dispose(bool disposing)\r
+        {\r
+            if (disposing && (components != null))\r
+            {\r
+                components.Dispose();\r
+            }\r
+            base.Dispose(disposing);\r
+        }\r
+\r
+        #region コンポーネント デザイナで生成されたコード\r
+\r
+        /// <summary> \r
+        /// デザイナ サポートに必要なメソッドです。このメソッドの内容を \r
+        /// コード エディタで変更しないでください。\r
+        /// </summary>\r
+        private void InitializeComponent()\r
+        {\r
+            this.label = new System.Windows.Forms.Label();\r
+            this.b0 = new Fugashi.BitSwitch();\r
+            this.b1 = new Fugashi.BitSwitch();\r
+            this.b2 = new Fugashi.BitSwitch();\r
+            this.b3 = new Fugashi.BitSwitch();\r
+            this.SuspendLayout();\r
+            // \r
+            // label\r
+            // \r
+            this.label.Font = new System.Drawing.Font("Tahoma", 8F);\r
+            this.label.ForeColor = System.Drawing.Color.MidnightBlue;\r
+            this.label.Location = new System.Drawing.Point(32, 0);\r
+            this.label.Name = "label";\r
+            this.label.Size = new System.Drawing.Size(26, 16);\r
+            this.label.TabIndex = 38;\r
+            this.label.Text = "0";\r
+            this.label.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
+            // \r
+            // b0\r
+            // \r
+            this.b0.BackColor = System.Drawing.Color.Transparent;\r
+            this.b0.Location = new System.Drawing.Point(42, 16);\r
+            this.b0.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
+            this.b0.Name = "b0";\r
+            this.b0.Size = new System.Drawing.Size(14, 28);\r
+            this.b0.State = false;\r
+            this.b0.TabIndex = 0;\r
+            // \r
+            // b1\r
+            // \r
+            this.b1.BackColor = System.Drawing.Color.Transparent;\r
+            this.b1.Location = new System.Drawing.Point(28, 16);\r
+            this.b1.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
+            this.b1.Name = "b1";\r
+            this.b1.Size = new System.Drawing.Size(14, 28);\r
+            this.b1.State = false;\r
+            this.b1.TabIndex = 1;\r
+            // \r
+            // b2\r
+            // \r
+            this.b2.BackColor = System.Drawing.Color.Transparent;\r
+            this.b2.Location = new System.Drawing.Point(14, 16);\r
+            this.b2.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
+            this.b2.Name = "b2";\r
+            this.b2.Size = new System.Drawing.Size(14, 28);\r
+            this.b2.State = false;\r
+            this.b2.TabIndex = 2;\r
+            // \r
+            // b3\r
+            // \r
+            this.b3.BackColor = System.Drawing.Color.Transparent;\r
+            this.b3.Location = new System.Drawing.Point(0, 16);\r
+            this.b3.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
+            this.b3.Name = "b3";\r
+            this.b3.Size = new System.Drawing.Size(14, 28);\r
+            this.b3.State = false;\r
+            this.b3.TabIndex = 3;\r
+            // \r
+            // BitSwitches4\r
+            // \r
+            this.Controls.Add(this.label);\r
+            this.Controls.Add(this.b0);\r
+            this.Controls.Add(this.b1);\r
+            this.Controls.Add(this.b2);\r
+            this.Controls.Add(this.b3);\r
+            this.Size = new System.Drawing.Size(58, 45);\r
+            this.ResumeLayout(false);\r
+\r
+        }\r
+\r
+        #endregion\r
+\r
+        private BitSwitch b0;\r
+        private BitSwitch b1;\r
+        private BitSwitch b2;\r
+        private BitSwitch b3;\r
+        private System.Windows.Forms.Label label;\r
+    }\r
+}\r
diff --git a/Fugashi/BitSwitches4.cs b/Fugashi/BitSwitches4.cs
new file mode 100755 (executable)
index 0000000..3575780
--- /dev/null
@@ -0,0 +1,79 @@
+using System;\r
+using System.Collections.Generic;\r
+using System.ComponentModel;\r
+using System.Drawing;\r
+using System.Data;\r
+using System.Text;\r
+using System.Windows.Forms;\r
+\r
+namespace Fugashi\r
+{\r
+    public partial class BitSwitches4 : Panel\r
+    {\r
+        private int startBit;\r
+        public BitSwitches4()\r
+        {\r
+            InitializeComponent();\r
+        }\r
+\r
+        [Category("データ")]\r
+        [DefaultValue(typeof(int), "0")]\r
+        public int StartBit\r
+        {\r
+            get\r
+            {\r
+                return startBit;\r
+            }\r
+            set\r
+            {\r
+                startBit = value;\r
+                Coordinate();\r
+            }\r
+        }\r
+\r
+        public BitSwitch B0\r
+        {\r
+            get \r
+            {\r
+                return b0;\r
+            }\r
+        }\r
+\r
+        public BitSwitch B1\r
+        {\r
+            get\r
+            {\r
+                return b1;\r
+            }\r
+        }\r
+\r
+        public BitSwitch B2\r
+        {\r
+            get\r
+            {\r
+                return b2;\r
+            }\r
+        }\r
+\r
+        public BitSwitch B3\r
+        {\r
+            get\r
+            {\r
+                return b3;\r
+            }\r
+        }\r
+        private void Coordinate()\r
+        {\r
+            int y = startBit < 32 ? 16 : 0;\r
+            b0.Location = new Point(b0.Location.X, y);\r
+            b1.Location = new Point(b1.Location.X, y);\r
+            b2.Location = new Point(b2.Location.X, y);\r
+            b3.Location = new Point(b3.Location.X, y);\r
+            int labelY = startBit < 32 ? 0 : 28;\r
+            label.Location = new Point(label.Location.X, labelY);\r
+            label.Text = startBit.ToString();\r
+            PerformLayout();\r
+        }\r
+\r
+    }\r
+}\r
diff --git a/Fugashi/BitSwitches4.resx b/Fugashi/BitSwitches4.resx
new file mode 100755 (executable)
index 0000000..241a864
--- /dev/null
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<root>\r
+  <!-- \r
+    Microsoft ResX Schema \r
+    \r
+    Version 2.0\r
+    \r
+    The primary goals of this format is to allow a simple XML format \r
+    that is mostly human readable. The generation and parsing of the \r
+    various data types are done through the TypeConverter classes \r
+    associated with the data types.\r
+    \r
+    Example:\r
+    \r
+    ... ado.net/XML headers & schema ...\r
+    <resheader name="resmimetype">text/microsoft-resx</resheader>\r
+    <resheader name="version">2.0</resheader>\r
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>\r
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>\r
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>\r
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>\r
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">\r
+        <value>[base64 mime encoded serialized .NET Framework object]</value>\r
+    </data>\r
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>\r
+        <comment>This is a comment</comment>\r
+    </data>\r
+                \r
+    There are any number of "resheader" rows that contain simple \r
+    name/value pairs.\r
+    \r
+    Each data row contains a name, and value. The row also contains a \r
+    type or mimetype. Type corresponds to a .NET class that support \r
+    text/value conversion through the TypeConverter architecture. \r
+    Classes that don't support this are serialized and stored with the \r
+    mimetype set.\r
+    \r
+    The mimetype is used for serialized objects, and tells the \r
+    ResXResourceReader how to depersist the object. This is currently not \r
+    extensible. For a given mimetype the value must be set accordingly:\r
+    \r
+    Note - application/x-microsoft.net.object.binary.base64 is the format \r
+    that the ResXResourceWriter will generate, however the reader can \r
+    read any of the formats listed below.\r
+    \r
+    mimetype: application/x-microsoft.net.object.binary.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter\r
+            : and then encoded with base64 encoding.\r
+    \r
+    mimetype: application/x-microsoft.net.object.soap.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter\r
+            : and then encoded with base64 encoding.\r
+\r
+    mimetype: application/x-microsoft.net.object.bytearray.base64\r
+    value   : The object must be serialized into a byte array \r
+            : using a System.ComponentModel.TypeConverter\r
+            : and then encoded with base64 encoding.\r
+    -->\r
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">\r
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />\r
+    <xsd:element name="root" msdata:IsDataSet="true">\r
+      <xsd:complexType>\r
+        <xsd:choice maxOccurs="unbounded">\r
+          <xsd:element name="metadata">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" use="required" type="xsd:string" />\r
+              <xsd:attribute name="type" type="xsd:string" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="assembly">\r
+            <xsd:complexType>\r
+              <xsd:attribute name="alias" type="xsd:string" />\r
+              <xsd:attribute name="name" type="xsd:string" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="data">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />\r
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="resheader">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+        </xsd:choice>\r
+      </xsd:complexType>\r
+    </xsd:element>\r
+  </xsd:schema>\r
+  <resheader name="resmimetype">\r
+    <value>text/microsoft-resx</value>\r
+  </resheader>\r
+  <resheader name="version">\r
+    <value>2.0</value>\r
+  </resheader>\r
+  <resheader name="reader">\r
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+  <resheader name="writer">\r
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+  <metadata name="label.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+    <value>17, 17</value>\r
+  </metadata>\r
+  <metadata name="b0.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+    <value>312, 17</value>\r
+  </metadata>\r
+  <metadata name="b1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+    <value>242, 17</value>\r
+  </metadata>\r
+  <metadata name="b2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+    <value>172, 17</value>\r
+  </metadata>\r
+  <metadata name="b3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+    <value>102, 17</value>\r
+  </metadata>\r
+  <metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">\r
+    <value>False</value>\r
+  </metadata>\r
+</root>
\ No newline at end of file
index 55c15e7..19646a0 100755 (executable)
     <Compile Include="BitSwitch.Designer.cs">\r
       <DependentUpon>BitSwitch.cs</DependentUpon>\r
     </Compile>\r
+    <Compile Include="BitSwitches4.cs">\r
+      <SubType>Component</SubType>\r
+    </Compile>\r
+    <Compile Include="BitSwitches4.Designer.cs">\r
+      <DependentUpon>BitSwitches4.cs</DependentUpon>\r
+    </Compile>\r
     <Compile Include="MainForm.cs">\r
       <SubType>Form</SubType>\r
     </Compile>\r
@@ -58,6 +64,9 @@
     <EmbeddedResource Include="BitSwitch.resx">\r
       <DependentUpon>BitSwitch.cs</DependentUpon>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="BitSwitches4.resx">\r
+      <DependentUpon>BitSwitches4.cs</DependentUpon>\r
+    </EmbeddedResource>\r
     <EmbeddedResource Include="MainForm.resx">\r
       <DependentUpon>MainForm.cs</DependentUpon>\r
     </EmbeddedResource>\r
index 262b50b..ddf30a4 100755 (executable)
@@ -35,22 +35,6 @@ namespace Fugashi
         /// </summary>\r
         private void InitializeComponent()\r
         {\r
-            this.label1 = new System.Windows.Forms.Label();\r
-            this.label2 = new System.Windows.Forms.Label();\r
-            this.label3 = new System.Windows.Forms.Label();\r
-            this.label4 = new System.Windows.Forms.Label();\r
-            this.label5 = new System.Windows.Forms.Label();\r
-            this.label6 = new System.Windows.Forms.Label();\r
-            this.label7 = new System.Windows.Forms.Label();\r
-            this.label8 = new System.Windows.Forms.Label();\r
-            this.label9 = new System.Windows.Forms.Label();\r
-            this.label10 = new System.Windows.Forms.Label();\r
-            this.label11 = new System.Windows.Forms.Label();\r
-            this.label12 = new System.Windows.Forms.Label();\r
-            this.label13 = new System.Windows.Forms.Label();\r
-            this.label14 = new System.Windows.Forms.Label();\r
-            this.label15 = new System.Windows.Forms.Label();\r
-            this.label16 = new System.Windows.Forms.Label();\r
             this.label17 = new System.Windows.Forms.Label();\r
             this.label18 = new System.Windows.Forms.Label();\r
             this.typeGroup = new System.Windows.Forms.GroupBox();\r
@@ -64,169 +48,45 @@ namespace Fugashi
             this.radio1B = new System.Windows.Forms.RadioButton();\r
             this.textValue = new System.Windows.Forms.TextBox();\r
             this.textHex = new System.Windows.Forms.TextBox();\r
-            this.b0 = new Fugashi.BitSwitch();\r
-            this.b1 = new Fugashi.BitSwitch();\r
-            this.b2 = new Fugashi.BitSwitch();\r
-            this.b3 = new Fugashi.BitSwitch();\r
-            this.b4 = new Fugashi.BitSwitch();\r
-            this.b5 = new Fugashi.BitSwitch();\r
-            this.b6 = new Fugashi.BitSwitch();\r
-            this.b7 = new Fugashi.BitSwitch();\r
-            this.b8 = new Fugashi.BitSwitch();\r
-            this.b9 = new Fugashi.BitSwitch();\r
-            this.b10 = new Fugashi.BitSwitch();\r
-            this.b11 = new Fugashi.BitSwitch();\r
-            this.b12 = new Fugashi.BitSwitch();\r
-            this.b13 = new Fugashi.BitSwitch();\r
-            this.b14 = new Fugashi.BitSwitch();\r
-            this.b15 = new Fugashi.BitSwitch();\r
-            this.b16 = new Fugashi.BitSwitch();\r
-            this.b17 = new Fugashi.BitSwitch();\r
-            this.b18 = new Fugashi.BitSwitch();\r
-            this.b19 = new Fugashi.BitSwitch();\r
-            this.b20 = new Fugashi.BitSwitch();\r
-            this.b21 = new Fugashi.BitSwitch();\r
-            this.b22 = new Fugashi.BitSwitch();\r
-            this.b23 = new Fugashi.BitSwitch();\r
-            this.b24 = new Fugashi.BitSwitch();\r
-            this.b25 = new Fugashi.BitSwitch();\r
-            this.b26 = new Fugashi.BitSwitch();\r
-            this.b27 = new Fugashi.BitSwitch();\r
-            this.b28 = new Fugashi.BitSwitch();\r
-            this.b29 = new Fugashi.BitSwitch();\r
-            this.b30 = new Fugashi.BitSwitch();\r
-            this.b31 = new Fugashi.BitSwitch();\r
-            this.b32 = new Fugashi.BitSwitch();\r
-            this.b33 = new Fugashi.BitSwitch();\r
-            this.b34 = new Fugashi.BitSwitch();\r
-            this.b35 = new Fugashi.BitSwitch();\r
-            this.b36 = new Fugashi.BitSwitch();\r
-            this.b37 = new Fugashi.BitSwitch();\r
-            this.b38 = new Fugashi.BitSwitch();\r
-            this.b39 = new Fugashi.BitSwitch();\r
-            this.b40 = new Fugashi.BitSwitch();\r
-            this.b41 = new Fugashi.BitSwitch();\r
-            this.b42 = new Fugashi.BitSwitch();\r
-            this.b43 = new Fugashi.BitSwitch();\r
-            this.b44 = new Fugashi.BitSwitch();\r
-            this.b45 = new Fugashi.BitSwitch();\r
-            this.b46 = new Fugashi.BitSwitch();\r
-            this.b47 = new Fugashi.BitSwitch();\r
-            this.b48 = new Fugashi.BitSwitch();\r
-            this.b49 = new Fugashi.BitSwitch();\r
-            this.b50 = new Fugashi.BitSwitch();\r
-            this.b51 = new Fugashi.BitSwitch();\r
-            this.b52 = new Fugashi.BitSwitch();\r
-            this.b53 = new Fugashi.BitSwitch();\r
-            this.b54 = new Fugashi.BitSwitch();\r
-            this.b55 = new Fugashi.BitSwitch();\r
-            this.b56 = new Fugashi.BitSwitch();\r
-            this.b57 = new Fugashi.BitSwitch();\r
-            this.b58 = new Fugashi.BitSwitch();\r
-            this.b59 = new Fugashi.BitSwitch();\r
-            this.b60 = new Fugashi.BitSwitch();\r
-            this.b61 = new Fugashi.BitSwitch();\r
-            this.b62 = new Fugashi.BitSwitch();\r
-            this.b63 = new Fugashi.BitSwitch();\r
+            this.bits0 = new Fugashi.BitSwitches4();\r
+            this.bits4 = new Fugashi.BitSwitches4();\r
+            this.bits8 = new Fugashi.BitSwitches4();\r
+            this.bits12 = new Fugashi.BitSwitches4();\r
+            this.bits16 = new Fugashi.BitSwitches4();\r
+            this.bits20 = new Fugashi.BitSwitches4();\r
+            this.bits24 = new Fugashi.BitSwitches4();\r
+            this.bits28 = new Fugashi.BitSwitches4();\r
+            this.bits32 = new Fugashi.BitSwitches4();\r
+            this.bits36 = new Fugashi.BitSwitches4();\r
+            this.bits40 = new Fugashi.BitSwitches4();\r
+            this.bits44 = new Fugashi.BitSwitches4();\r
+            this.bits48 = new Fugashi.BitSwitches4();\r
+            this.bits52 = new Fugashi.BitSwitches4();\r
+            this.bits56 = new Fugashi.BitSwitches4();\r
+            this.bits60 = new Fugashi.BitSwitches4();\r
             this.typeGroup.SuspendLayout();\r
             this.bytesGroup.SuspendLayout();\r
             this.SuspendLayout();\r
             // \r
-            // label1\r
-            // \r
-            this.label1.AutoSize = true;\r
-            this.label1.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label1.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label1.Location = new System.Drawing.Point(410, 144);\r
-            this.label1.Name = "label1";\r
-            this.label1.Size = new System.Drawing.Size(13, 13);\r
-            this.label1.TabIndex = 37;\r
-            this.label1.Text = "0";\r
-            this.label1.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label2\r
-            // \r
-            this.label2.AutoSize = true;\r
-            this.label2.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label2.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label2.Location = new System.Drawing.Point(359, 144);\r
-            this.label2.Name = "label2";\r
-            this.label2.Size = new System.Drawing.Size(13, 13);\r
-            this.label2.TabIndex = 38;\r
-            this.label2.Text = "4";\r
-            this.label2.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label3\r
-            // \r
-            this.label3.AutoSize = true;\r
-            this.label3.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label3.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label3.Location = new System.Drawing.Point(308, 144);\r
-            this.label3.Name = "label3";\r
-            this.label3.Size = new System.Drawing.Size(13, 13);\r
-            this.label3.TabIndex = 39;\r
-            this.label3.Text = "8";\r
-            this.label3.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label4\r
-            // \r
-            this.label4.AutoSize = true;\r
-            this.label4.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label4.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label4.Location = new System.Drawing.Point(251, 144);\r
-            this.label4.Name = "label4";\r
-            this.label4.Size = new System.Drawing.Size(19, 13);\r
-            this.label4.TabIndex = 40;\r
-            this.label4.Text = "12";\r
-            this.label4.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label5\r
-            // \r
-            this.label5.AutoSize = true;\r
-            this.label5.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label5.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label5.Location = new System.Drawing.Point(44, 144);\r
-            this.label5.Name = "label5";\r
-            this.label5.Size = new System.Drawing.Size(19, 13);\r
-            this.label5.TabIndex = 44;\r
-            this.label5.Text = "28";\r
-            this.label5.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label6\r
-            // \r
-            this.label6.AutoSize = true;\r
-            this.label6.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label6.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label6.Location = new System.Drawing.Point(95, 144);\r
-            this.label6.Name = "label6";\r
-            this.label6.Size = new System.Drawing.Size(19, 13);\r
-            this.label6.TabIndex = 43;\r
-            this.label6.Text = "24";\r
-            this.label6.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label7\r
+            // label17\r
             // \r
-            this.label7.AutoSize = true;\r
-            this.label7.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label7.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label7.Location = new System.Drawing.Point(146, 144);\r
-            this.label7.Name = "label7";\r
-            this.label7.Size = new System.Drawing.Size(19, 13);\r
-            this.label7.TabIndex = 42;\r
-            this.label7.Text = "20";\r
-            this.label7.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
+            this.label17.AutoSize = true;\r
+            this.label17.ForeColor = System.Drawing.Color.Navy;\r
+            this.label17.Location = new System.Drawing.Point(6, 37);\r
+            this.label17.Name = "label17";\r
+            this.label17.Size = new System.Drawing.Size(45, 15);\r
+            this.label17.TabIndex = 89;\r
+            this.label17.Text = "Value:";\r
             // \r
-            // label8\r
+            // label18\r
             // \r
-            this.label8.AutoSize = true;\r
-            this.label8.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label8.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label8.Location = new System.Drawing.Point(197, 144);\r
-            this.label8.Name = "label8";\r
-            this.label8.Size = new System.Drawing.Size(19, 13);\r
-            this.label8.TabIndex = 41;\r
-            this.label8.Text = "16";\r
-            this.label8.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
+            this.label18.AutoSize = true;\r
+            this.label18.ForeColor = System.Drawing.Color.Navy;\r
+            this.label18.Location = new System.Drawing.Point(16, 69);\r
+            this.label18.Name = "label18";\r
+            this.label18.Size = new System.Drawing.Size(35, 15);\r
+            this.label18.TabIndex = 90;\r
+            this.label18.Text = "Hex:";\r
             // \r
             // typeGroup\r
             // \r
@@ -234,9 +94,9 @@ namespace Fugashi
             this.typeGroup.Controls.Add(this.radioInt);\r
             this.typeGroup.Controls.Add(this.radioUint);\r
             this.typeGroup.ForeColor = System.Drawing.Color.Navy;\r
-            this.typeGroup.Location = new System.Drawing.Point(234, 12);\r
+            this.typeGroup.Location = new System.Drawing.Point(318, 14);\r
             this.typeGroup.Name = "typeGroup";\r
-            this.typeGroup.Size = new System.Drawing.Size(131, 110);\r
+            this.typeGroup.Size = new System.Drawing.Size(153, 128);\r
             this.typeGroup.TabIndex = 45;\r
             this.typeGroup.TabStop = false;\r
             this.typeGroup.Text = "Type";\r
@@ -244,9 +104,9 @@ namespace Fugashi
             // radioFloat\r
             // \r
             this.radioFloat.AutoSize = true;\r
-            this.radioFloat.Location = new System.Drawing.Point(6, 62);\r
+            this.radioFloat.Location = new System.Drawing.Point(7, 72);\r
             this.radioFloat.Name = "radioFloat";\r
-            this.radioFloat.Size = new System.Drawing.Size(94, 16);\r
+            this.radioFloat.Size = new System.Drawing.Size(112, 19);\r
             this.radioFloat.TabIndex = 48;\r
             this.radioFloat.TabStop = true;\r
             this.radioFloat.Text = "&Floating Point";\r
@@ -256,24 +116,26 @@ namespace Fugashi
             // radioInt\r
             // \r
             this.radioInt.AutoSize = true;\r
-            this.radioInt.Location = new System.Drawing.Point(6, 40);\r
+            this.radioInt.Location = new System.Drawing.Point(7, 47);\r
             this.radioInt.Name = "radioInt";\r
-            this.radioInt.Size = new System.Drawing.Size(96, 16);\r
+            this.radioInt.Size = new System.Drawing.Size(117, 19);\r
             this.radioInt.TabIndex = 47;\r
             this.radioInt.TabStop = true;\r
             this.radioInt.Text = "&Signed Integer";\r
             this.radioInt.UseVisualStyleBackColor = true;\r
+            this.radioInt.CheckedChanged += new System.EventHandler(this.radioInt_CheckedChanged);\r
             // \r
             // radioUint\r
             // \r
             this.radioUint.AutoSize = true;\r
-            this.radioUint.Location = new System.Drawing.Point(6, 18);\r
+            this.radioUint.Location = new System.Drawing.Point(7, 21);\r
             this.radioUint.Name = "radioUint";\r
-            this.radioUint.Size = new System.Drawing.Size(109, 16);\r
+            this.radioUint.Size = new System.Drawing.Size(133, 19);\r
             this.radioUint.TabIndex = 46;\r
             this.radioUint.TabStop = true;\r
             this.radioUint.Text = "&Unsigned Integer";\r
             this.radioUint.UseVisualStyleBackColor = true;\r
+            this.radioUint.CheckedChanged += new System.EventHandler(this.radioUint_CheckedChanged);\r
             // \r
             // bytesGroup\r
             // \r
@@ -282,9 +144,9 @@ namespace Fugashi
             this.bytesGroup.Controls.Add(this.radio2B);\r
             this.bytesGroup.Controls.Add(this.radio1B);\r
             this.bytesGroup.ForeColor = System.Drawing.Color.Navy;\r
-            this.bytesGroup.Location = new System.Drawing.Point(371, 12);\r
+            this.bytesGroup.Location = new System.Drawing.Point(477, 14);\r
             this.bytesGroup.Name = "bytesGroup";\r
-            this.bytesGroup.Size = new System.Drawing.Size(52, 110);\r
+            this.bytesGroup.Size = new System.Drawing.Size(61, 128);\r
             this.bytesGroup.TabIndex = 46;\r
             this.bytesGroup.TabStop = false;\r
             this.bytesGroup.Text = "Bytes";\r
@@ -292,9 +154,9 @@ namespace Fugashi
             // radio8B\r
             // \r
             this.radio8B.AutoSize = true;\r
-            this.radio8B.Location = new System.Drawing.Point(6, 84);\r
+            this.radio8B.Location = new System.Drawing.Point(7, 98);\r
             this.radio8B.Name = "radio8B";\r
-            this.radio8B.Size = new System.Drawing.Size(29, 16);\r
+            this.radio8B.Size = new System.Drawing.Size(33, 19);\r
             this.radio8B.TabIndex = 49;\r
             this.radio8B.TabStop = true;\r
             this.radio8B.Text = "&8";\r
@@ -304,9 +166,9 @@ namespace Fugashi
             // radio4B\r
             // \r
             this.radio4B.AutoSize = true;\r
-            this.radio4B.Location = new System.Drawing.Point(6, 62);\r
+            this.radio4B.Location = new System.Drawing.Point(7, 72);\r
             this.radio4B.Name = "radio4B";\r
-            this.radio4B.Size = new System.Drawing.Size(29, 16);\r
+            this.radio4B.Size = new System.Drawing.Size(33, 19);\r
             this.radio4B.TabIndex = 48;\r
             this.radio4B.TabStop = true;\r
             this.radio4B.Text = "&4";\r
@@ -316,9 +178,9 @@ namespace Fugashi
             // radio2B\r
             // \r
             this.radio2B.AutoSize = true;\r
-            this.radio2B.Location = new System.Drawing.Point(6, 40);\r
+            this.radio2B.Location = new System.Drawing.Point(7, 47);\r
             this.radio2B.Name = "radio2B";\r
-            this.radio2B.Size = new System.Drawing.Size(29, 16);\r
+            this.radio2B.Size = new System.Drawing.Size(33, 19);\r
             this.radio2B.TabIndex = 47;\r
             this.radio2B.TabStop = true;\r
             this.radio2B.Text = "&2";\r
@@ -328,943 +190,188 @@ namespace Fugashi
             // radio1B\r
             // \r
             this.radio1B.AutoSize = true;\r
-            this.radio1B.Location = new System.Drawing.Point(6, 18);\r
+            this.radio1B.Location = new System.Drawing.Point(7, 21);\r
             this.radio1B.Name = "radio1B";\r
-            this.radio1B.Size = new System.Drawing.Size(29, 16);\r
+            this.radio1B.Size = new System.Drawing.Size(33, 19);\r
             this.radio1B.TabIndex = 46;\r
             this.radio1B.TabStop = true;\r
             this.radio1B.Text = "&1";\r
             this.radio1B.UseVisualStyleBackColor = true;\r
             this.radio1B.CheckedChanged += new System.EventHandler(this.radio1B_CheckedChanged);\r
             // \r
-            // label9\r
-            // \r
-            this.label9.AutoSize = true;\r
-            this.label9.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label9.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label9.Location = new System.Drawing.Point(44, 216);\r
-            this.label9.Name = "label9";\r
-            this.label9.Size = new System.Drawing.Size(19, 13);\r
-            this.label9.TabIndex = 86;\r
-            this.label9.Text = "60";\r
-            this.label9.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label10\r
-            // \r
-            this.label10.AutoSize = true;\r
-            this.label10.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label10.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label10.Location = new System.Drawing.Point(95, 216);\r
-            this.label10.Name = "label10";\r
-            this.label10.Size = new System.Drawing.Size(19, 13);\r
-            this.label10.TabIndex = 85;\r
-            this.label10.Text = "56";\r
-            this.label10.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label11\r
-            // \r
-            this.label11.AutoSize = true;\r
-            this.label11.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label11.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label11.Location = new System.Drawing.Point(146, 216);\r
-            this.label11.Name = "label11";\r
-            this.label11.Size = new System.Drawing.Size(19, 13);\r
-            this.label11.TabIndex = 84;\r
-            this.label11.Text = "52";\r
-            this.label11.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label12\r
-            // \r
-            this.label12.AutoSize = true;\r
-            this.label12.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label12.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label12.Location = new System.Drawing.Point(197, 216);\r
-            this.label12.Name = "label12";\r
-            this.label12.Size = new System.Drawing.Size(19, 13);\r
-            this.label12.TabIndex = 83;\r
-            this.label12.Text = "48";\r
-            this.label12.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label13\r
-            // \r
-            this.label13.AutoSize = true;\r
-            this.label13.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label13.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label13.Location = new System.Drawing.Point(251, 216);\r
-            this.label13.Name = "label13";\r
-            this.label13.Size = new System.Drawing.Size(19, 13);\r
-            this.label13.TabIndex = 82;\r
-            this.label13.Text = "44";\r
-            this.label13.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label14\r
-            // \r
-            this.label14.AutoSize = true;\r
-            this.label14.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label14.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label14.Location = new System.Drawing.Point(302, 216);\r
-            this.label14.Name = "label14";\r
-            this.label14.Size = new System.Drawing.Size(19, 13);\r
-            this.label14.TabIndex = 81;\r
-            this.label14.Text = "40";\r
-            this.label14.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label15\r
-            // \r
-            this.label15.AutoSize = true;\r
-            this.label15.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label15.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label15.Location = new System.Drawing.Point(353, 216);\r
-            this.label15.Name = "label15";\r
-            this.label15.Size = new System.Drawing.Size(19, 13);\r
-            this.label15.TabIndex = 80;\r
-            this.label15.Text = "36";\r
-            this.label15.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
-            // label16\r
-            // \r
-            this.label16.AutoSize = true;\r
-            this.label16.Font = new System.Drawing.Font("Tahoma", 8F);\r
-            this.label16.ForeColor = System.Drawing.Color.MidnightBlue;\r
-            this.label16.Location = new System.Drawing.Point(404, 216);\r
-            this.label16.Name = "label16";\r
-            this.label16.Size = new System.Drawing.Size(19, 13);\r
-            this.label16.TabIndex = 79;\r
-            this.label16.Text = "32";\r
-            this.label16.TextAlign = System.Drawing.ContentAlignment.BottomRight;\r
-            // \r
             // textValue\r
             // \r
-            this.textValue.Font = new System.Drawing.Font("MS UI Gothic", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));\r
-            this.textValue.Location = new System.Drawing.Point(39, 27);\r
+            this.textValue.Font = new System.Drawing.Font("MS UI Gothic", 10.01739F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));\r
+            this.textValue.Location = new System.Drawing.Point(57, 33);\r
             this.textValue.Name = "textValue";\r
-            this.textValue.Size = new System.Drawing.Size(177, 22);\r
+            this.textValue.Size = new System.Drawing.Size(255, 23);\r
             this.textValue.TabIndex = 87;\r
             this.textValue.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;\r
             // \r
             // textHex\r
             // \r
-            this.textHex.Font = new System.Drawing.Font("MS UI Gothic", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));\r
-            this.textHex.Location = new System.Drawing.Point(39, 55);\r
+            this.textHex.Font = new System.Drawing.Font("MS UI Gothic", 10.01739F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(128)));\r
+            this.textHex.Location = new System.Drawing.Point(57, 64);\r
             this.textHex.Name = "textHex";\r
-            this.textHex.Size = new System.Drawing.Size(177, 22);\r
+            this.textHex.Size = new System.Drawing.Size(255, 23);\r
             this.textHex.TabIndex = 88;\r
             this.textHex.TextAlign = System.Windows.Forms.HorizontalAlignment.Right;\r
             // \r
-            // label17\r
-            // \r
-            this.label17.AutoSize = true;\r
-            this.label17.Location = new System.Drawing.Point(5, 33);\r
-            this.label17.Name = "label17";\r
-            this.label17.Size = new System.Drawing.Size(34, 12);\r
-            this.label17.TabIndex = 89;\r
-            this.label17.Text = "Value";\r
-            // \r
-            // label18\r
-            // \r
-            this.label18.AutoSize = true;\r
-            this.label18.Location = new System.Drawing.Point(14, 61);\r
-            this.label18.Name = "label18";\r
-            this.label18.Size = new System.Drawing.Size(25, 12);\r
-            this.label18.TabIndex = 90;\r
-            this.label18.Text = "Hex";\r
-            // \r
-            // b63\r
-            // \r
-            this.b63.BackColor = System.Drawing.Color.White;\r
-            this.b63.Location = new System.Drawing.Point(15, 189);\r
-            this.b63.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b63.Name = "b63";\r
-            this.b63.Size = new System.Drawing.Size(12, 24);\r
-            this.b63.State = false;\r
-            this.b63.TabIndex = 74;\r
-            this.b63.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b62\r
-            // \r
-            this.b62.BackColor = System.Drawing.Color.White;\r
-            this.b62.Location = new System.Drawing.Point(27, 189);\r
-            this.b62.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b62.Name = "b62";\r
-            this.b62.Size = new System.Drawing.Size(12, 24);\r
-            this.b62.State = false;\r
-            this.b62.TabIndex = 73;\r
-            this.b62.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b61\r
-            // \r
-            this.b61.BackColor = System.Drawing.Color.White;\r
-            this.b61.Location = new System.Drawing.Point(39, 189);\r
-            this.b61.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b61.Name = "b61";\r
-            this.b61.Size = new System.Drawing.Size(12, 24);\r
-            this.b61.State = false;\r
-            this.b61.TabIndex = 72;\r
-            this.b61.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b60\r
-            // \r
-            this.b60.BackColor = System.Drawing.Color.White;\r
-            this.b60.Location = new System.Drawing.Point(51, 189);\r
-            this.b60.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b60.Name = "b60";\r
-            this.b60.Size = new System.Drawing.Size(12, 24);\r
-            this.b60.State = false;\r
-            this.b60.TabIndex = 71;\r
-            this.b60.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b59\r
-            // \r
-            this.b59.BackColor = System.Drawing.Color.White;\r
-            this.b59.Location = new System.Drawing.Point(66, 189);\r
-            this.b59.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b59.Name = "b59";\r
-            this.b59.Size = new System.Drawing.Size(12, 24);\r
-            this.b59.State = false;\r
-            this.b59.TabIndex = 70;\r
-            this.b59.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b58\r
-            // \r
-            this.b58.BackColor = System.Drawing.Color.White;\r
-            this.b58.Location = new System.Drawing.Point(78, 189);\r
-            this.b58.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b58.Name = "b58";\r
-            this.b58.Size = new System.Drawing.Size(12, 24);\r
-            this.b58.State = false;\r
-            this.b58.TabIndex = 69;\r
-            this.b58.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b57\r
-            // \r
-            this.b57.BackColor = System.Drawing.Color.White;\r
-            this.b57.Location = new System.Drawing.Point(90, 189);\r
-            this.b57.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b57.Name = "b57";\r
-            this.b57.Size = new System.Drawing.Size(12, 24);\r
-            this.b57.State = false;\r
-            this.b57.TabIndex = 68;\r
-            this.b57.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b56\r
-            // \r
-            this.b56.BackColor = System.Drawing.Color.White;\r
-            this.b56.Location = new System.Drawing.Point(102, 189);\r
-            this.b56.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b56.Name = "b56";\r
-            this.b56.Size = new System.Drawing.Size(12, 24);\r
-            this.b56.State = false;\r
-            this.b56.TabIndex = 67;\r
-            this.b56.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b55\r
-            // \r
-            this.b55.BackColor = System.Drawing.Color.White;\r
-            this.b55.Location = new System.Drawing.Point(117, 189);\r
-            this.b55.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b55.Name = "b55";\r
-            this.b55.Size = new System.Drawing.Size(12, 24);\r
-            this.b55.State = false;\r
-            this.b55.TabIndex = 66;\r
-            this.b55.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b54\r
-            // \r
-            this.b54.BackColor = System.Drawing.Color.White;\r
-            this.b54.Location = new System.Drawing.Point(129, 189);\r
-            this.b54.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b54.Name = "b54";\r
-            this.b54.Size = new System.Drawing.Size(12, 24);\r
-            this.b54.State = false;\r
-            this.b54.TabIndex = 65;\r
-            this.b54.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b53\r
-            // \r
-            this.b53.BackColor = System.Drawing.Color.White;\r
-            this.b53.Location = new System.Drawing.Point(141, 189);\r
-            this.b53.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b53.Name = "b53";\r
-            this.b53.Size = new System.Drawing.Size(12, 24);\r
-            this.b53.State = false;\r
-            this.b53.TabIndex = 64;\r
-            this.b53.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b52\r
-            // \r
-            this.b52.BackColor = System.Drawing.Color.White;\r
-            this.b52.Location = new System.Drawing.Point(153, 189);\r
-            this.b52.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b52.Name = "b52";\r
-            this.b52.Size = new System.Drawing.Size(12, 24);\r
-            this.b52.State = false;\r
-            this.b52.TabIndex = 63;\r
-            this.b52.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b51\r
-            // \r
-            this.b51.BackColor = System.Drawing.Color.White;\r
-            this.b51.Location = new System.Drawing.Point(168, 189);\r
-            this.b51.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b51.Name = "b51";\r
-            this.b51.Size = new System.Drawing.Size(12, 24);\r
-            this.b51.State = false;\r
-            this.b51.TabIndex = 62;\r
-            this.b51.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b50\r
-            // \r
-            this.b50.BackColor = System.Drawing.Color.White;\r
-            this.b50.Location = new System.Drawing.Point(180, 189);\r
-            this.b50.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b50.Name = "b50";\r
-            this.b50.Size = new System.Drawing.Size(12, 24);\r
-            this.b50.State = false;\r
-            this.b50.TabIndex = 61;\r
-            this.b50.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b49\r
-            // \r
-            this.b49.BackColor = System.Drawing.Color.White;\r
-            this.b49.Location = new System.Drawing.Point(192, 189);\r
-            this.b49.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b49.Name = "b49";\r
-            this.b49.Size = new System.Drawing.Size(12, 24);\r
-            this.b49.State = false;\r
-            this.b49.TabIndex = 60;\r
-            this.b49.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b48\r
-            // \r
-            this.b48.BackColor = System.Drawing.Color.White;\r
-            this.b48.Location = new System.Drawing.Point(204, 189);\r
-            this.b48.Margin = new System.Windows.Forms.Padding(0, 3, 6, 3);\r
-            this.b48.Name = "b48";\r
-            this.b48.Size = new System.Drawing.Size(12, 24);\r
-            this.b48.State = false;\r
-            this.b48.TabIndex = 59;\r
-            this.b48.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b47\r
-            // \r
-            this.b47.BackColor = System.Drawing.Color.White;\r
-            this.b47.Location = new System.Drawing.Point(222, 189);\r
-            this.b47.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b47.Name = "b47";\r
-            this.b47.Size = new System.Drawing.Size(12, 24);\r
-            this.b47.State = false;\r
-            this.b47.TabIndex = 58;\r
-            this.b47.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b46\r
-            // \r
-            this.b46.BackColor = System.Drawing.Color.White;\r
-            this.b46.Location = new System.Drawing.Point(234, 189);\r
-            this.b46.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b46.Name = "b46";\r
-            this.b46.Size = new System.Drawing.Size(12, 24);\r
-            this.b46.State = false;\r
-            this.b46.TabIndex = 57;\r
-            this.b46.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b45\r
-            // \r
-            this.b45.BackColor = System.Drawing.Color.White;\r
-            this.b45.Location = new System.Drawing.Point(246, 189);\r
-            this.b45.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b45.Name = "b45";\r
-            this.b45.Size = new System.Drawing.Size(12, 24);\r
-            this.b45.State = false;\r
-            this.b45.TabIndex = 56;\r
-            this.b45.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b44\r
-            // \r
-            this.b44.BackColor = System.Drawing.Color.White;\r
-            this.b44.Location = new System.Drawing.Point(258, 189);\r
-            this.b44.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b44.Name = "b44";\r
-            this.b44.Size = new System.Drawing.Size(12, 24);\r
-            this.b44.State = false;\r
-            this.b44.TabIndex = 55;\r
-            this.b44.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b43\r
-            // \r
-            this.b43.BackColor = System.Drawing.Color.White;\r
-            this.b43.Location = new System.Drawing.Point(273, 189);\r
-            this.b43.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b43.Name = "b43";\r
-            this.b43.Size = new System.Drawing.Size(12, 24);\r
-            this.b43.State = false;\r
-            this.b43.TabIndex = 54;\r
-            this.b43.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b42\r
-            // \r
-            this.b42.BackColor = System.Drawing.Color.White;\r
-            this.b42.Location = new System.Drawing.Point(285, 189);\r
-            this.b42.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b42.Name = "b42";\r
-            this.b42.Size = new System.Drawing.Size(12, 24);\r
-            this.b42.State = false;\r
-            this.b42.TabIndex = 53;\r
-            this.b42.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b41\r
-            // \r
-            this.b41.BackColor = System.Drawing.Color.White;\r
-            this.b41.Location = new System.Drawing.Point(297, 189);\r
-            this.b41.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b41.Name = "b41";\r
-            this.b41.Size = new System.Drawing.Size(12, 24);\r
-            this.b41.State = false;\r
-            this.b41.TabIndex = 52;\r
-            this.b41.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b40\r
-            // \r
-            this.b40.BackColor = System.Drawing.Color.White;\r
-            this.b40.Location = new System.Drawing.Point(309, 189);\r
-            this.b40.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b40.Name = "b40";\r
-            this.b40.Size = new System.Drawing.Size(12, 24);\r
-            this.b40.State = false;\r
-            this.b40.TabIndex = 51;\r
-            this.b40.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b39\r
-            // \r
-            this.b39.BackColor = System.Drawing.Color.White;\r
-            this.b39.Location = new System.Drawing.Point(324, 189);\r
-            this.b39.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b39.Name = "b39";\r
-            this.b39.Size = new System.Drawing.Size(12, 24);\r
-            this.b39.State = false;\r
-            this.b39.TabIndex = 50;\r
-            this.b39.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b38\r
-            // \r
-            this.b38.BackColor = System.Drawing.Color.White;\r
-            this.b38.Location = new System.Drawing.Point(336, 189);\r
-            this.b38.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b38.Name = "b38";\r
-            this.b38.Size = new System.Drawing.Size(12, 24);\r
-            this.b38.State = false;\r
-            this.b38.TabIndex = 49;\r
-            this.b38.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b37\r
-            // \r
-            this.b37.BackColor = System.Drawing.Color.White;\r
-            this.b37.Location = new System.Drawing.Point(348, 189);\r
-            this.b37.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b37.Name = "b37";\r
-            this.b37.Size = new System.Drawing.Size(12, 24);\r
-            this.b37.State = false;\r
-            this.b37.TabIndex = 48;\r
-            this.b37.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b36\r
-            // \r
-            this.b36.BackColor = System.Drawing.Color.White;\r
-            this.b36.Location = new System.Drawing.Point(360, 189);\r
-            this.b36.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b36.Name = "b36";\r
-            this.b36.Size = new System.Drawing.Size(12, 24);\r
-            this.b36.State = false;\r
-            this.b36.TabIndex = 47;\r
-            this.b36.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b35\r
-            // \r
-            this.b35.BackColor = System.Drawing.Color.White;\r
-            this.b35.Location = new System.Drawing.Point(375, 189);\r
-            this.b35.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b35.Name = "b35";\r
-            this.b35.Size = new System.Drawing.Size(12, 24);\r
-            this.b35.State = false;\r
-            this.b35.TabIndex = 78;\r
-            this.b35.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b34\r
-            // \r
-            this.b34.BackColor = System.Drawing.Color.White;\r
-            this.b34.Location = new System.Drawing.Point(387, 189);\r
-            this.b34.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b34.Name = "b34";\r
-            this.b34.Size = new System.Drawing.Size(12, 24);\r
-            this.b34.State = false;\r
-            this.b34.TabIndex = 77;\r
-            this.b34.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b33\r
-            // \r
-            this.b33.BackColor = System.Drawing.Color.White;\r
-            this.b33.Location = new System.Drawing.Point(399, 189);\r
-            this.b33.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b33.Name = "b33";\r
-            this.b33.Size = new System.Drawing.Size(12, 24);\r
-            this.b33.State = false;\r
-            this.b33.TabIndex = 76;\r
-            this.b33.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b32\r
-            // \r
-            this.b32.BackColor = System.Drawing.Color.White;\r
-            this.b32.Location = new System.Drawing.Point(411, 189);\r
-            this.b32.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b32.Name = "b32";\r
-            this.b32.Size = new System.Drawing.Size(12, 24);\r
-            this.b32.State = false;\r
-            this.b32.TabIndex = 75;\r
-            this.b32.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b31\r
-            // \r
-            this.b31.BackColor = System.Drawing.Color.White;\r
-            this.b31.Location = new System.Drawing.Point(15, 159);\r
-            this.b31.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b31.Name = "b31";\r
-            this.b31.Size = new System.Drawing.Size(12, 24);\r
-            this.b31.State = false;\r
-            this.b31.TabIndex = 31;\r
-            this.b31.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b30\r
-            // \r
-            this.b30.BackColor = System.Drawing.Color.White;\r
-            this.b30.Location = new System.Drawing.Point(27, 159);\r
-            this.b30.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b30.Name = "b30";\r
-            this.b30.Size = new System.Drawing.Size(12, 24);\r
-            this.b30.State = false;\r
-            this.b30.TabIndex = 30;\r
-            this.b30.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b29\r
-            // \r
-            this.b29.BackColor = System.Drawing.Color.White;\r
-            this.b29.Location = new System.Drawing.Point(39, 159);\r
-            this.b29.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b29.Name = "b29";\r
-            this.b29.Size = new System.Drawing.Size(12, 24);\r
-            this.b29.State = false;\r
-            this.b29.TabIndex = 29;\r
-            this.b29.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b28\r
-            // \r
-            this.b28.BackColor = System.Drawing.Color.White;\r
-            this.b28.Location = new System.Drawing.Point(51, 159);\r
-            this.b28.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b28.Name = "b28";\r
-            this.b28.Size = new System.Drawing.Size(12, 24);\r
-            this.b28.State = false;\r
-            this.b28.TabIndex = 28;\r
-            this.b28.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b27\r
-            // \r
-            this.b27.BackColor = System.Drawing.Color.White;\r
-            this.b27.Location = new System.Drawing.Point(66, 159);\r
-            this.b27.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b27.Name = "b27";\r
-            this.b27.Size = new System.Drawing.Size(12, 24);\r
-            this.b27.State = false;\r
-            this.b27.TabIndex = 27;\r
-            this.b27.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b26\r
-            // \r
-            this.b26.BackColor = System.Drawing.Color.White;\r
-            this.b26.Location = new System.Drawing.Point(78, 159);\r
-            this.b26.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b26.Name = "b26";\r
-            this.b26.Size = new System.Drawing.Size(12, 24);\r
-            this.b26.State = false;\r
-            this.b26.TabIndex = 26;\r
-            this.b26.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b25\r
-            // \r
-            this.b25.BackColor = System.Drawing.Color.White;\r
-            this.b25.Location = new System.Drawing.Point(90, 159);\r
-            this.b25.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b25.Name = "b25";\r
-            this.b25.Size = new System.Drawing.Size(12, 24);\r
-            this.b25.State = false;\r
-            this.b25.TabIndex = 25;\r
-            this.b25.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b24\r
-            // \r
-            this.b24.BackColor = System.Drawing.Color.White;\r
-            this.b24.Location = new System.Drawing.Point(102, 159);\r
-            this.b24.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b24.Name = "b24";\r
-            this.b24.Size = new System.Drawing.Size(12, 24);\r
-            this.b24.State = false;\r
-            this.b24.TabIndex = 24;\r
-            this.b24.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b23\r
-            // \r
-            this.b23.BackColor = System.Drawing.Color.White;\r
-            this.b23.Location = new System.Drawing.Point(117, 159);\r
-            this.b23.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b23.Name = "b23";\r
-            this.b23.Size = new System.Drawing.Size(12, 24);\r
-            this.b23.State = false;\r
-            this.b23.TabIndex = 23;\r
-            this.b23.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b22\r
-            // \r
-            this.b22.BackColor = System.Drawing.Color.White;\r
-            this.b22.Location = new System.Drawing.Point(129, 159);\r
-            this.b22.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b22.Name = "b22";\r
-            this.b22.Size = new System.Drawing.Size(12, 24);\r
-            this.b22.State = false;\r
-            this.b22.TabIndex = 22;\r
-            this.b22.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b21\r
-            // \r
-            this.b21.BackColor = System.Drawing.Color.White;\r
-            this.b21.Location = new System.Drawing.Point(141, 159);\r
-            this.b21.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b21.Name = "b21";\r
-            this.b21.Size = new System.Drawing.Size(12, 24);\r
-            this.b21.State = false;\r
-            this.b21.TabIndex = 21;\r
-            this.b21.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b20\r
-            // \r
-            this.b20.BackColor = System.Drawing.Color.White;\r
-            this.b20.Location = new System.Drawing.Point(153, 159);\r
-            this.b20.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b20.Name = "b20";\r
-            this.b20.Size = new System.Drawing.Size(12, 24);\r
-            this.b20.State = false;\r
-            this.b20.TabIndex = 20;\r
-            this.b20.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b19\r
-            // \r
-            this.b19.BackColor = System.Drawing.Color.White;\r
-            this.b19.Location = new System.Drawing.Point(168, 159);\r
-            this.b19.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b19.Name = "b19";\r
-            this.b19.Size = new System.Drawing.Size(12, 24);\r
-            this.b19.State = false;\r
-            this.b19.TabIndex = 19;\r
-            this.b19.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b18\r
-            // \r
-            this.b18.BackColor = System.Drawing.Color.White;\r
-            this.b18.Location = new System.Drawing.Point(180, 159);\r
-            this.b18.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b18.Name = "b18";\r
-            this.b18.Size = new System.Drawing.Size(12, 24);\r
-            this.b18.State = false;\r
-            this.b18.TabIndex = 18;\r
-            this.b18.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b17\r
-            // \r
-            this.b17.BackColor = System.Drawing.Color.White;\r
-            this.b17.Location = new System.Drawing.Point(192, 159);\r
-            this.b17.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b17.Name = "b17";\r
-            this.b17.Size = new System.Drawing.Size(12, 24);\r
-            this.b17.State = false;\r
-            this.b17.TabIndex = 17;\r
-            this.b17.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b16\r
-            // \r
-            this.b16.BackColor = System.Drawing.Color.White;\r
-            this.b16.Location = new System.Drawing.Point(204, 159);\r
-            this.b16.Margin = new System.Windows.Forms.Padding(0, 3, 6, 3);\r
-            this.b16.Name = "b16";\r
-            this.b16.Size = new System.Drawing.Size(12, 24);\r
-            this.b16.State = false;\r
-            this.b16.TabIndex = 16;\r
-            this.b16.StateChanged += new System.EventHandler(this.bitChanged);\r
-            // \r
-            // b15\r
+            // bits0\r
             // \r
-            this.b15.BackColor = System.Drawing.Color.White;\r
-            this.b15.Location = new System.Drawing.Point(222, 159);\r
-            this.b15.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b15.Name = "b15";\r
-            this.b15.Size = new System.Drawing.Size(12, 24);\r
-            this.b15.State = false;\r
-            this.b15.TabIndex = 15;\r
-            this.b15.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits0.Location = new System.Drawing.Point(459, 168);\r
+            this.bits0.Name = "bits0";\r
+            this.bits0.Size = new System.Drawing.Size(58, 45);\r
+            this.bits0.TabIndex = 91;\r
             // \r
-            // b14\r
+            // bits4\r
             // \r
-            this.b14.BackColor = System.Drawing.Color.White;\r
-            this.b14.Location = new System.Drawing.Point(234, 159);\r
-            this.b14.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b14.Name = "b14";\r
-            this.b14.Size = new System.Drawing.Size(12, 24);\r
-            this.b14.State = false;\r
-            this.b14.TabIndex = 14;\r
-            this.b14.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits4.Location = new System.Drawing.Point(399, 168);\r
+            this.bits4.Name = "bits4";\r
+            this.bits4.Size = new System.Drawing.Size(58, 45);\r
+            this.bits4.StartBit = 4;\r
+            this.bits4.TabIndex = 93;\r
             // \r
-            // b13\r
+            // bits8\r
             // \r
-            this.b13.BackColor = System.Drawing.Color.White;\r
-            this.b13.Location = new System.Drawing.Point(246, 159);\r
-            this.b13.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b13.Name = "b13";\r
-            this.b13.Size = new System.Drawing.Size(12, 24);\r
-            this.b13.State = false;\r
-            this.b13.TabIndex = 13;\r
-            this.b13.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits8.Location = new System.Drawing.Point(339, 168);\r
+            this.bits8.Name = "bits8";\r
+            this.bits8.Size = new System.Drawing.Size(58, 45);\r
+            this.bits8.StartBit = 8;\r
+            this.bits8.TabIndex = 94;\r
             // \r
-            // b12\r
+            // bits12\r
             // \r
-            this.b12.BackColor = System.Drawing.Color.White;\r
-            this.b12.Location = new System.Drawing.Point(258, 159);\r
-            this.b12.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b12.Name = "b12";\r
-            this.b12.Size = new System.Drawing.Size(12, 24);\r
-            this.b12.State = false;\r
-            this.b12.TabIndex = 12;\r
-            this.b12.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits12.Location = new System.Drawing.Point(280, 168);\r
+            this.bits12.Name = "bits12";\r
+            this.bits12.Size = new System.Drawing.Size(58, 45);\r
+            this.bits12.StartBit = 12;\r
+            this.bits12.TabIndex = 95;\r
             // \r
-            // b11\r
+            // bits16\r
             // \r
-            this.b11.BackColor = System.Drawing.Color.White;\r
-            this.b11.Location = new System.Drawing.Point(273, 159);\r
-            this.b11.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b11.Name = "b11";\r
-            this.b11.Size = new System.Drawing.Size(12, 24);\r
-            this.b11.State = false;\r
-            this.b11.TabIndex = 11;\r
-            this.b11.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits16.Location = new System.Drawing.Point(214, 168);\r
+            this.bits16.Name = "bits16";\r
+            this.bits16.Size = new System.Drawing.Size(58, 45);\r
+            this.bits16.StartBit = 16;\r
+            this.bits16.TabIndex = 99;\r
             // \r
-            // b10\r
+            // bits20\r
             // \r
-            this.b10.BackColor = System.Drawing.Color.White;\r
-            this.b10.Location = new System.Drawing.Point(285, 159);\r
-            this.b10.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b10.Name = "b10";\r
-            this.b10.Size = new System.Drawing.Size(12, 24);\r
-            this.b10.State = false;\r
-            this.b10.TabIndex = 10;\r
-            this.b10.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits20.Location = new System.Drawing.Point(154, 168);\r
+            this.bits20.Name = "bits20";\r
+            this.bits20.Size = new System.Drawing.Size(58, 45);\r
+            this.bits20.StartBit = 20;\r
+            this.bits20.TabIndex = 101;\r
             // \r
-            // b9\r
+            // bits24\r
             // \r
-            this.b9.BackColor = System.Drawing.Color.White;\r
-            this.b9.Location = new System.Drawing.Point(297, 159);\r
-            this.b9.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b9.Name = "b9";\r
-            this.b9.Size = new System.Drawing.Size(12, 24);\r
-            this.b9.State = false;\r
-            this.b9.TabIndex = 9;\r
-            this.b9.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits24.Location = new System.Drawing.Point(94, 168);\r
+            this.bits24.Name = "bits24";\r
+            this.bits24.Size = new System.Drawing.Size(58, 45);\r
+            this.bits24.StartBit = 24;\r
+            this.bits24.TabIndex = 102;\r
             // \r
-            // b8\r
+            // bits28\r
             // \r
-            this.b8.BackColor = System.Drawing.Color.White;\r
-            this.b8.Location = new System.Drawing.Point(309, 159);\r
-            this.b8.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b8.Name = "b8";\r
-            this.b8.Size = new System.Drawing.Size(12, 24);\r
-            this.b8.State = false;\r
-            this.b8.TabIndex = 8;\r
-            this.b8.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits28.Location = new System.Drawing.Point(35, 168);\r
+            this.bits28.Name = "bits28";\r
+            this.bits28.Size = new System.Drawing.Size(58, 45);\r
+            this.bits28.StartBit = 28;\r
+            this.bits28.TabIndex = 103;\r
             // \r
-            // b7\r
+            // bits32\r
             // \r
-            this.b7.BackColor = System.Drawing.Color.White;\r
-            this.b7.Location = new System.Drawing.Point(324, 159);\r
-            this.b7.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b7.Name = "b7";\r
-            this.b7.Size = new System.Drawing.Size(12, 24);\r
-            this.b7.State = false;\r
-            this.b7.TabIndex = 7;\r
-            this.b7.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits32.Location = new System.Drawing.Point(459, 219);\r
+            this.bits32.Name = "bits32";\r
+            this.bits32.Size = new System.Drawing.Size(58, 45);\r
+            this.bits32.StartBit = 32;\r
+            this.bits32.TabIndex = 92;\r
             // \r
-            // b6\r
+            // bits36\r
             // \r
-            this.b6.BackColor = System.Drawing.Color.White;\r
-            this.b6.Location = new System.Drawing.Point(336, 159);\r
-            this.b6.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b6.Name = "b6";\r
-            this.b6.Size = new System.Drawing.Size(12, 24);\r
-            this.b6.State = false;\r
-            this.b6.TabIndex = 6;\r
-            this.b6.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits36.Location = new System.Drawing.Point(399, 219);\r
+            this.bits36.Name = "bits36";\r
+            this.bits36.Size = new System.Drawing.Size(58, 45);\r
+            this.bits36.StartBit = 36;\r
+            this.bits36.TabIndex = 96;\r
             // \r
-            // b5\r
+            // bits40\r
             // \r
-            this.b5.BackColor = System.Drawing.Color.White;\r
-            this.b5.Location = new System.Drawing.Point(348, 159);\r
-            this.b5.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b5.Name = "b5";\r
-            this.b5.Size = new System.Drawing.Size(12, 24);\r
-            this.b5.State = false;\r
-            this.b5.TabIndex = 5;\r
-            this.b5.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits40.Location = new System.Drawing.Point(339, 219);\r
+            this.bits40.Name = "bits40";\r
+            this.bits40.Size = new System.Drawing.Size(58, 45);\r
+            this.bits40.StartBit = 40;\r
+            this.bits40.TabIndex = 97;\r
             // \r
-            // b4\r
+            // bits44\r
             // \r
-            this.b4.BackColor = System.Drawing.Color.White;\r
-            this.b4.Location = new System.Drawing.Point(360, 159);\r
-            this.b4.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b4.Name = "b4";\r
-            this.b4.Size = new System.Drawing.Size(12, 24);\r
-            this.b4.State = false;\r
-            this.b4.TabIndex = 4;\r
-            this.b4.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits44.Location = new System.Drawing.Point(280, 219);\r
+            this.bits44.Name = "bits44";\r
+            this.bits44.Size = new System.Drawing.Size(58, 45);\r
+            this.bits44.StartBit = 44;\r
+            this.bits44.TabIndex = 98;\r
             // \r
-            // b3\r
+            // bits48\r
             // \r
-            this.b3.BackColor = System.Drawing.Color.White;\r
-            this.b3.Location = new System.Drawing.Point(375, 159);\r
-            this.b3.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b3.Name = "b3";\r
-            this.b3.Size = new System.Drawing.Size(12, 24);\r
-            this.b3.State = false;\r
-            this.b3.TabIndex = 36;\r
-            this.b3.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits48.Location = new System.Drawing.Point(214, 219);\r
+            this.bits48.Name = "bits48";\r
+            this.bits48.Size = new System.Drawing.Size(58, 45);\r
+            this.bits48.StartBit = 48;\r
+            this.bits48.TabIndex = 100;\r
             // \r
-            // b2\r
+            // bits52\r
             // \r
-            this.b2.BackColor = System.Drawing.Color.White;\r
-            this.b2.Location = new System.Drawing.Point(387, 159);\r
-            this.b2.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b2.Name = "b2";\r
-            this.b2.Size = new System.Drawing.Size(12, 24);\r
-            this.b2.State = false;\r
-            this.b2.TabIndex = 35;\r
-            this.b2.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits52.Location = new System.Drawing.Point(154, 219);\r
+            this.bits52.Name = "bits52";\r
+            this.bits52.Size = new System.Drawing.Size(58, 45);\r
+            this.bits52.StartBit = 52;\r
+            this.bits52.TabIndex = 104;\r
             // \r
-            // b1\r
+            // bits56\r
             // \r
-            this.b1.BackColor = System.Drawing.Color.White;\r
-            this.b1.Location = new System.Drawing.Point(399, 159);\r
-            this.b1.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3);\r
-            this.b1.Name = "b1";\r
-            this.b1.Size = new System.Drawing.Size(12, 24);\r
-            this.b1.State = false;\r
-            this.b1.TabIndex = 34;\r
-            this.b1.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits56.Location = new System.Drawing.Point(94, 219);\r
+            this.bits56.Name = "bits56";\r
+            this.bits56.Size = new System.Drawing.Size(58, 45);\r
+            this.bits56.StartBit = 56;\r
+            this.bits56.TabIndex = 105;\r
             // \r
-            // b0\r
+            // bits60\r
             // \r
-            this.b0.BackColor = System.Drawing.Color.White;\r
-            this.b0.Location = new System.Drawing.Point(411, 159);\r
-            this.b0.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);\r
-            this.b0.Name = "b0";\r
-            this.b0.Size = new System.Drawing.Size(12, 24);\r
-            this.b0.State = false;\r
-            this.b0.TabIndex = 33;\r
-            this.b0.StateChanged += new System.EventHandler(this.bitChanged);\r
+            this.bits60.Location = new System.Drawing.Point(35, 219);\r
+            this.bits60.Name = "bits60";\r
+            this.bits60.Size = new System.Drawing.Size(58, 45);\r
+            this.bits60.StartBit = 60;\r
+            this.bits60.TabIndex = 106;\r
             // \r
             // MainForm\r
             // \r
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);\r
+            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);\r
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;\r
             this.BackColor = System.Drawing.SystemColors.Window;\r
-            this.ClientSize = new System.Drawing.Size(441, 241);\r
+            this.ClientSize = new System.Drawing.Size(550, 284);\r
+            this.Controls.Add(this.bits0);\r
+            this.Controls.Add(this.bits4);\r
+            this.Controls.Add(this.bits8);\r
+            this.Controls.Add(this.bits12);\r
+            this.Controls.Add(this.bits16);\r
+            this.Controls.Add(this.bits20);\r
+            this.Controls.Add(this.bits24);\r
+            this.Controls.Add(this.bits28);\r
+            this.Controls.Add(this.bits32);\r
+            this.Controls.Add(this.bits36);\r
+            this.Controls.Add(this.bits40);\r
+            this.Controls.Add(this.bits44);\r
+            this.Controls.Add(this.bits48);\r
+            this.Controls.Add(this.bits52);\r
+            this.Controls.Add(this.bits56);\r
+            this.Controls.Add(this.bits60);\r
             this.Controls.Add(this.label18);\r
             this.Controls.Add(this.label17);\r
             this.Controls.Add(this.textHex);\r
             this.Controls.Add(this.textValue);\r
-            this.Controls.Add(this.label9);\r
-            this.Controls.Add(this.label10);\r
-            this.Controls.Add(this.label11);\r
-            this.Controls.Add(this.label12);\r
-            this.Controls.Add(this.label13);\r
-            this.Controls.Add(this.label14);\r
-            this.Controls.Add(this.label15);\r
-            this.Controls.Add(this.label16);\r
             this.Controls.Add(this.bytesGroup);\r
             this.Controls.Add(this.typeGroup);\r
-            this.Controls.Add(this.label5);\r
-            this.Controls.Add(this.label6);\r
-            this.Controls.Add(this.label7);\r
-            this.Controls.Add(this.label8);\r
-            this.Controls.Add(this.label4);\r
-            this.Controls.Add(this.label3);\r
-            this.Controls.Add(this.label2);\r
-            this.Controls.Add(this.label1);\r
-            this.Controls.Add(this.b63);\r
-            this.Controls.Add(this.b62);\r
-            this.Controls.Add(this.b61);\r
-            this.Controls.Add(this.b60);\r
-            this.Controls.Add(this.b59);\r
-            this.Controls.Add(this.b58);\r
-            this.Controls.Add(this.b57);\r
-            this.Controls.Add(this.b56);\r
-            this.Controls.Add(this.b55);\r
-            this.Controls.Add(this.b54);\r
-            this.Controls.Add(this.b53);\r
-            this.Controls.Add(this.b52);\r
-            this.Controls.Add(this.b51);\r
-            this.Controls.Add(this.b50);\r
-            this.Controls.Add(this.b49);\r
-            this.Controls.Add(this.b48);\r
-            this.Controls.Add(this.b47);\r
-            this.Controls.Add(this.b46);\r
-            this.Controls.Add(this.b45);\r
-            this.Controls.Add(this.b44);\r
-            this.Controls.Add(this.b43);\r
-            this.Controls.Add(this.b42);\r
-            this.Controls.Add(this.b41);\r
-            this.Controls.Add(this.b40);\r
-            this.Controls.Add(this.b39);\r
-            this.Controls.Add(this.b38);\r
-            this.Controls.Add(this.b37);\r
-            this.Controls.Add(this.b36);\r
-            this.Controls.Add(this.b35);\r
-            this.Controls.Add(this.b34);\r
-            this.Controls.Add(this.b33);\r
-            this.Controls.Add(this.b32);\r
-            this.Controls.Add(this.b31);\r
-            this.Controls.Add(this.b30);\r
-            this.Controls.Add(this.b29);\r
-            this.Controls.Add(this.b28);\r
-            this.Controls.Add(this.b27);\r
-            this.Controls.Add(this.b26);\r
-            this.Controls.Add(this.b25);\r
-            this.Controls.Add(this.b24);\r
-            this.Controls.Add(this.b23);\r
-            this.Controls.Add(this.b22);\r
-            this.Controls.Add(this.b21);\r
-            this.Controls.Add(this.b20);\r
-            this.Controls.Add(this.b19);\r
-            this.Controls.Add(this.b18);\r
-            this.Controls.Add(this.b17);\r
-            this.Controls.Add(this.b16);\r
-            this.Controls.Add(this.b15);\r
-            this.Controls.Add(this.b14);\r
-            this.Controls.Add(this.b13);\r
-            this.Controls.Add(this.b12);\r
-            this.Controls.Add(this.b11);\r
-            this.Controls.Add(this.b10);\r
-            this.Controls.Add(this.b9);\r
-            this.Controls.Add(this.b8);\r
-            this.Controls.Add(this.b7);\r
-            this.Controls.Add(this.b6);\r
-            this.Controls.Add(this.b5);\r
-            this.Controls.Add(this.b4);\r
-            this.Controls.Add(this.b3);\r
-            this.Controls.Add(this.b2);\r
-            this.Controls.Add(this.b1);\r
-            this.Controls.Add(this.b0);\r
             this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D;\r
             this.Name = "MainForm";\r
             this.Text = "Fugashi Bit Viewer";\r
@@ -1280,86 +387,6 @@ namespace Fugashi
 \r
         #endregion\r
 \r
-        private BitSwitch b0;\r
-        private BitSwitch b1;\r
-        private BitSwitch b2;\r
-        private BitSwitch b3;\r
-        private BitSwitch b4;\r
-        private BitSwitch b5;\r
-        private BitSwitch b6;\r
-        private BitSwitch b7;\r
-        private BitSwitch b8;\r
-        private BitSwitch b9;\r
-        private BitSwitch b10;\r
-        private BitSwitch b11;\r
-        private BitSwitch b12;\r
-        private BitSwitch b13;\r
-        private BitSwitch b14;\r
-        private BitSwitch b15;\r
-        private BitSwitch b16;\r
-        private BitSwitch b17;\r
-        private BitSwitch b18;\r
-        private BitSwitch b19;\r
-        private BitSwitch b20;\r
-        private BitSwitch b21;\r
-        private BitSwitch b22;\r
-        private BitSwitch b23;\r
-        private BitSwitch b24;\r
-        private BitSwitch b25;\r
-        private BitSwitch b26;\r
-        private BitSwitch b27;\r
-        private BitSwitch b28;\r
-        private BitSwitch b29;\r
-        private BitSwitch b30;\r
-        private BitSwitch b31;\r
-        private BitSwitch b32;\r
-        private BitSwitch b33;\r
-        private BitSwitch b34;\r
-        private BitSwitch b35;\r
-        private BitSwitch b36;\r
-        private BitSwitch b37;\r
-        private BitSwitch b38;\r
-        private BitSwitch b39;\r
-        private BitSwitch b40;\r
-        private BitSwitch b41;\r
-        private BitSwitch b42;\r
-        private BitSwitch b43;\r
-        private BitSwitch b44;\r
-        private BitSwitch b45;\r
-        private BitSwitch b46;\r
-        private BitSwitch b47;\r
-        private BitSwitch b48;\r
-        private BitSwitch b49;\r
-        private BitSwitch b50;\r
-        private BitSwitch b51;\r
-        private BitSwitch b52;\r
-        private BitSwitch b53;\r
-        private BitSwitch b54;\r
-        private BitSwitch b55;\r
-        private BitSwitch b56;\r
-        private BitSwitch b57;\r
-        private BitSwitch b58;\r
-        private BitSwitch b59;\r
-        private BitSwitch b60;\r
-        private BitSwitch b61;\r
-        private BitSwitch b62;\r
-        private BitSwitch b63;\r
-        private System.Windows.Forms.Label label1;\r
-        private System.Windows.Forms.Label label2;\r
-        private System.Windows.Forms.Label label3;\r
-        private System.Windows.Forms.Label label4;\r
-        private System.Windows.Forms.Label label5;\r
-        private System.Windows.Forms.Label label6;\r
-        private System.Windows.Forms.Label label7;\r
-        private System.Windows.Forms.Label label8;\r
-        private System.Windows.Forms.Label label9;\r
-        private System.Windows.Forms.Label label10;\r
-        private System.Windows.Forms.Label label11;\r
-        private System.Windows.Forms.Label label12;\r
-        private System.Windows.Forms.Label label13;\r
-        private System.Windows.Forms.Label label14;\r
-        private System.Windows.Forms.Label label15;\r
-        private System.Windows.Forms.Label label16;\r
         private System.Windows.Forms.GroupBox typeGroup;\r
         private System.Windows.Forms.RadioButton radioFloat;\r
         private System.Windows.Forms.RadioButton radioInt;\r
@@ -1373,6 +400,22 @@ namespace Fugashi
         private System.Windows.Forms.TextBox textHex;\r
         private System.Windows.Forms.Label label17;\r
         private System.Windows.Forms.Label label18;\r
+        private BitSwitches4 bits0;\r
+        private BitSwitches4 bits4;\r
+        private BitSwitches4 bits8;\r
+        private BitSwitches4 bits12;\r
+        private BitSwitches4 bits16;\r
+        private BitSwitches4 bits20;\r
+        private BitSwitches4 bits24;\r
+        private BitSwitches4 bits28;\r
+        private BitSwitches4 bits32;\r
+        private BitSwitches4 bits36;\r
+        private BitSwitches4 bits40;\r
+        private BitSwitches4 bits44;\r
+        private BitSwitches4 bits48;\r
+        private BitSwitches4 bits52;\r
+        private BitSwitches4 bits56;\r
+        private BitSwitches4 bits60;\r
     }\r
 }\r
 \r
index 56eb4f5..cd9e244 100755 (executable)
@@ -25,15 +25,41 @@ namespace Fugashi
             InitializeComponent();\r
 \r
             bits = new BitSwitch[64];\r
-            char[] prefix = { 'b' };\r
             foreach (Control c in Controls)\r
             {\r
-                if (c is BitSwitch)\r
+                if (c is BitSwitches4)\r
                 {\r
-                    int i = Int32.Parse(c.Name.TrimStart(prefix));\r
-                    bits[i] = c as BitSwitch;\r
+                    BitSwitches4 bs = c as BitSwitches4;\r
+                    int i = bs.StartBit;\r
+                    bits[i + 0] = bs.B0;\r
+                    bits[i + 1] = bs.B1;\r
+                    bits[i + 2] = bs.B2;\r
+                    bits[i + 3] = bs.B3;\r
                 }\r
             }\r
+            foreach (BitSwitch b in bits)\r
+            {\r
+                b.StateChanged += BitChanged;\r
+            }\r
+            Font mono = new Font(FontFamily.GenericMonospace, textHex.Font.Size);\r
+            textHex.Font = mono;\r
+            textValue.Font = mono;\r
+\r
+        }\r
+        private void radioUint_CheckedChanged(object sender, EventArgs e)\r
+        {\r
+            if (radioUint.Checked)\r
+            {\r
+                UpdateUint(GetBytes());\r
+            }\r
+        }\r
+\r
+        private void radioInt_CheckedChanged(object sender, EventArgs e)\r
+        {\r
+            if (radioInt.Checked)\r
+            {\r
+                UpdateInt(GetBytes());\r
+            }\r
         }\r
 \r
         private void radioFloat_CheckedChanged(object sender, EventArgs e)\r
@@ -46,11 +72,12 @@ namespace Fugashi
                 {\r
                     radio4B.Checked = true;\r
                 }\r
-                setForFloatingPoint(radio8B.Checked);\r
+                SetForFloatingPoint(radio8B.Checked);\r
+                UpdateFloat(GetBytes());\r
             }\r
             else\r
             {\r
-                setForInteger();\r
+                SetForInteger();\r
                 radio1B.Enabled = true;\r
                 radio2B.Enabled = true;\r
             }\r
@@ -62,7 +89,7 @@ namespace Fugashi
             radio4B.Checked = true;\r
         }\r
 \r
-        private void setForFloatingPoint(bool isDouble)\r
+        private void SetForFloatingPoint(bool isDouble)\r
         {\r
             Color c1 = isDouble ? Color.White : Color.Moccasin;\r
             Color c2 = isDouble ? Color.Moccasin : Color.White;\r
@@ -76,7 +103,7 @@ namespace Fugashi
             }\r
         }\r
 \r
-        private void setForInteger()\r
+        private void SetForInteger()\r
         {\r
             for (int i = 0; i < 64; ++i)\r
             {\r
@@ -85,7 +112,7 @@ namespace Fugashi
         }\r
 \r
 \r
-        private byte[] getBytes()\r
+        private byte[] GetBytes()\r
         {\r
             byte[] b = new Byte[length];\r
             int i = 0;\r
@@ -106,10 +133,10 @@ namespace Fugashi
         {\r
             if (radio8B.Checked)\r
             {\r
-                setLength(8);\r
+                SetLength(8);\r
                 if (radioFloat.Checked)\r
                 {\r
-                    setForFloatingPoint(true);\r
+                    SetForFloatingPoint(true);\r
                 }\r
             }\r
         }\r
@@ -118,20 +145,19 @@ namespace Fugashi
         {\r
             if (radio4B.Checked)\r
             {\r
-                setLength(4);\r
+                SetLength(4);\r
                 if (radioFloat.Checked)\r
                 {\r
-                    setForFloatingPoint(false);\r
+                    SetForFloatingPoint(false);\r
                 }\r
             }\r
         }\r
 \r
-\r
         private void radio2B_CheckedChanged(object sender, EventArgs e)\r
         {\r
             if (radio2B.Checked)\r
             {\r
-                setLength(2);\r
+                SetLength(2);\r
             }\r
         }\r
 \r
@@ -139,11 +165,11 @@ namespace Fugashi
         {\r
             if (radio1B.Checked)\r
             {\r
-                setLength(1);\r
+                SetLength(1);\r
             }\r
         }\r
 \r
-        private void setLength(int length)\r
+        private void SetLength(int length)\r
         {\r
             this.length = length;\r
             int b = length * 8;\r
@@ -157,56 +183,86 @@ namespace Fugashi
             }\r
         }\r
 \r
-        private void bitChanged(object sender, EventArgs e)\r
+        private void BitChanged(object sender, EventArgs e)\r
         {\r
-            byte[] b = getBytes();\r
+            byte[] b = GetBytes();\r
             if (radioUint.Checked)\r
             {\r
-                switch (length)\r
-                {\r
-                    case 1:\r
-                        textValue.Text = b[0].ToString();\r
-                        break;\r
-                    case 2:\r
-                        textValue.Text = BitConverter.ToUInt16(b, 0).ToString();\r
-                        break;\r
-                    case 4:\r
-                        textValue.Text = BitConverter.ToUInt32(b, 0).ToString();\r
-                        break;\r
-                    case 8:\r
-                        textValue.Text = BitConverter.ToUInt64(b, 0).ToString();\r
-                        break;\r
-                }\r
+                UpdateUint(b);\r
             }\r
             else if (radioInt.Checked)\r
             {\r
-                switch (length)\r
-                {\r
-                    case 1:\r
-                        textValue.Text = ((sbyte)b[0]).ToString();\r
-                        break;\r
-                    case 2:\r
-                        textValue.Text = BitConverter.ToInt16(b, 0).ToString();\r
-                        break;\r
-                    case 4:\r
-                        textValue.Text = BitConverter.ToInt32(b, 0).ToString();\r
-                        break;\r
-                    case 8:\r
-                        textValue.Text = BitConverter.ToInt64(b, 0).ToString();\r
-                        break;\r
-                }\r
+                UpdateInt(b);\r
             }\r
             else if (radioFloat.Checked)\r
             {\r
-                switch (length)\r
-                {\r
-                    case 4:\r
-                        textValue.Text = BitConverter.ToSingle(b, 0).ToString("g8");\r
-                        break;\r
-                    case 8:\r
-                        textValue.Text = BitConverter.ToDouble(b, 0).ToString("g17");\r
-                        break;\r
-                }\r
+                UpdateFloat(b);\r
+            }\r
+            UpdateHex(b);\r
+        }\r
+        \r
+        private void UpdateUint(byte[] bytes)\r
+        {\r
+            ulong value = 0;\r
+            switch (length)\r
+            {\r
+                case 1:\r
+                    value = bytes[0]; \r
+                    break;\r
+                case 2:\r
+                    value = BitConverter.ToUInt16(bytes, 0);\r
+                    break;\r
+                case 4:\r
+                    value = BitConverter.ToUInt32(bytes, 0);\r
+                    break;\r
+                case 8:\r
+                    value = BitConverter.ToUInt64(bytes, 0);\r
+                    break;\r
+            }\r
+            textValue.Text = value.ToString();\r
+        }\r
+\r
+        private void UpdateInt(byte[] bytes)\r
+        {\r
+            long value = 0;\r
+            switch (length)\r
+            {\r
+                case 1:\r
+                    value = (sbyte)bytes[0];\r
+                    break;\r
+                case 2:\r
+                    value = BitConverter.ToInt16(bytes, 0);\r
+                    break;\r
+                case 4:\r
+                    value = BitConverter.ToInt32(bytes, 0);\r
+                    break;\r
+                case 8:\r
+                    value = BitConverter.ToInt64(bytes, 0);\r
+                    break;\r
+            }\r
+            textValue.Text = value.ToString();\r
+        }\r
+\r
+        private void UpdateFloat(byte[] bytes)\r
+        {\r
+            if (length == 4)\r
+            {\r
+                float value = BitConverter.ToSingle(bytes, 0);\r
+                textValue.Text = value.ToString("g8");\r
+            }\r
+            else\r
+            {\r
+                double value = BitConverter.ToDouble(bytes, 0);\r
+                textValue.Text = value.ToString("g17");\r
+            }\r
+        }\r
+\r
+        private void UpdateHex(byte[] bytes)\r
+        {\r
+            textHex.Text = "";\r
+            for (int i = length - 1; i >= 0; --i)\r
+            {\r
+                 textHex.Text += bytes[i].ToString("X2");\r
             }\r
         }\r
 \r
index 6959028..f0d1894 100755 (executable)
@@ -19,9 +19,17 @@ namespace Fugashi
         [STAThread]\r
         static void Main()\r
         {\r
-            Application.EnableVisualStyles();\r
-            Application.SetCompatibleTextRenderingDefault(false);\r
-            Application.Run(new MainForm());\r
+            if (BitConverter.IsLittleEndian)\r
+            {\r
+                Application.EnableVisualStyles();\r
+                Application.SetCompatibleTextRenderingDefault(false);\r
+                Application.Run(new MainForm());\r
+            }\r
+            else\r
+            {\r
+                MessageBox.Show("Fugashi does not support big-endian system.",\r
+                    "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
+            }\r
         }\r
     }\r
 }\r