diff --git a/BizHawk.MultiClient/tools/HexEditor.Designer.cs b/BizHawk.MultiClient/tools/HexEditor.Designer.cs
index 2362393977..5be5c87bb4 100644
--- a/BizHawk.MultiClient/tools/HexEditor.Designer.cs
+++ b/BizHawk.MultiClient/tools/HexEditor.Designer.cs
@@ -28,6 +28,7 @@
///
private void InitializeComponent()
{
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(HexEditor));
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.dumpToFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@@ -43,8 +44,8 @@
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoloadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer();
this.enToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
@@ -120,21 +121,21 @@
// byteToolStripMenuItem
//
this.byteToolStripMenuItem.Name = "byteToolStripMenuItem";
- this.byteToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
+ this.byteToolStripMenuItem.Size = new System.Drawing.Size(116, 22);
this.byteToolStripMenuItem.Text = "1 Byte";
this.byteToolStripMenuItem.Click += new System.EventHandler(this.byteToolStripMenuItem_Click);
//
// byteToolStripMenuItem1
//
this.byteToolStripMenuItem1.Name = "byteToolStripMenuItem1";
- this.byteToolStripMenuItem1.Size = new System.Drawing.Size(152, 22);
+ this.byteToolStripMenuItem1.Size = new System.Drawing.Size(116, 22);
this.byteToolStripMenuItem1.Text = "2 Byte";
this.byteToolStripMenuItem1.Click += new System.EventHandler(this.byteToolStripMenuItem1_Click);
//
// byteToolStripMenuItem2
//
this.byteToolStripMenuItem2.Name = "byteToolStripMenuItem2";
- this.byteToolStripMenuItem2.Size = new System.Drawing.Size(152, 22);
+ this.byteToolStripMenuItem2.Size = new System.Drawing.Size(116, 22);
this.byteToolStripMenuItem2.Text = "4 Byte";
this.byteToolStripMenuItem2.Click += new System.EventHandler(this.byteToolStripMenuItem2_Click);
//
@@ -168,6 +169,13 @@
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.autoloadToolStripMenuItem.Text = "Auto-load";
//
+ // enToolStripMenuItem
+ //
+ this.enToolStripMenuItem.Name = "enToolStripMenuItem";
+ this.enToolStripMenuItem.Size = new System.Drawing.Size(192, 22);
+ this.enToolStripMenuItem.Text = "Big Endian";
+ this.enToolStripMenuItem.Click += new System.EventHandler(this.enToolStripMenuItem_Click);
+ //
// MemoryViewer
//
this.MemoryViewer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
@@ -180,13 +188,6 @@
this.MemoryViewer.TabStop = false;
this.MemoryViewer.Text = "RAM";
//
- // enToolStripMenuItem
- //
- this.enToolStripMenuItem.Name = "enToolStripMenuItem";
- this.enToolStripMenuItem.Size = new System.Drawing.Size(192, 22);
- this.enToolStripMenuItem.Text = "Big Endian";
- this.enToolStripMenuItem.Click += new System.EventHandler(this.enToolStripMenuItem_Click);
- //
// HexEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
@@ -194,6 +195,7 @@
this.ClientSize = new System.Drawing.Size(531, 344);
this.Controls.Add(this.MemoryViewer);
this.Controls.Add(this.menuStrip1);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MainMenuStrip = this.menuStrip1;
this.Name = "HexEditor";
this.Text = "HexEditor";
diff --git a/BizHawk.MultiClient/tools/HexEditor.resx b/BizHawk.MultiClient/tools/HexEditor.resx
index 69c56499b0..63ec1f833f 100644
--- a/BizHawk.MultiClient/tools/HexEditor.resx
+++ b/BizHawk.MultiClient/tools/HexEditor.resx
@@ -120,4 +120,29 @@
17, 17
+
+
+
+ AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAABMLAAATCwAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAADp6en/AAAA/wAAAAAAAAD/3Nzc/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAKioq/wAAAAAAAAAAAAAAAD4+Pv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vP8AAAD/AAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+urq7/4ODg/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAChoaH/AAAA/6CgoP8AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4+Pj/wAAAP+qqqr/AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACurq7/AAAA/+Dg
+ 4P8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4uLi/wAA
+ AP+3t7f/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAD/r6+v/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAxMTE/wAAAP/Pz8//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAD/sbGx/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAA/6ioqP/l5eX/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAANLS0v8AAAD/xcbE/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/7e4tv/o6ef/AAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADo6Oj/AAAA/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAA5P8AAO7/AADl/wAA+P8AAPj/AAD4/wAA/H8AAPx/AAD+fwAA/j8AAP8/AAD/HwAA/x8AAP+P
+ AAD/nwAA/58AAA==
+
+
\ No newline at end of file
diff --git a/BizHawk.MultiClient/tools/MemoryViewer.cs b/BizHawk.MultiClient/tools/MemoryViewer.cs
index 6b5321734a..b278660328 100644
--- a/BizHawk.MultiClient/tools/MemoryViewer.cs
+++ b/BizHawk.MultiClient/tools/MemoryViewer.cs
@@ -84,6 +84,13 @@ namespace BizHawk.MultiClient
}
break;
case 4:
+ Header = " 0 4 8 C";
+ for (int j = 0; j < 16; j += 4)
+ {
+ addr = (row * 16) + j;
+ if (addr < Domain.Size)
+ rowStr += String.Format("{0:X8}", MakeValue(addr, DataSize, BigEndian)) + " ";
+ }
break;
}
@@ -106,23 +113,11 @@ namespace BizHawk.MultiClient
x = Domain.PeekByte(addr);
break;
case 2:
- if (Bigendian)
- {
- x = Domain.PeekByte(addr) + (Domain.PeekByte(addr + 1) * 255);
- }
- else
- {
- x = (Domain.PeekByte(addr) * 255) + Domain.PeekByte(addr + 1);
- }
+ x = MakeWord(addr, Bigendian);
break;
- case 3:
- if (Bigendian)
- {
- //TODO
- }
- else
- {
- }
+ case 4:
+ x = (MakeWord(addr, Bigendian) * 65536) +
+ MakeWord(addr + 2, Bigendian);
break;
}
return x;
@@ -131,6 +126,14 @@ namespace BizHawk.MultiClient
return 0; //fail
}
+ private int MakeWord(int addr, bool endian)
+ {
+ if (endian)
+ return Domain.PeekByte(addr) + (Domain.PeekByte(addr + 1) * 255);
+ else
+ return (Domain.PeekByte(addr) * 255) + Domain.PeekByte(addr + 1);
+ }
+
public void ResetScrollBar()
{
vScrollBar1.Value = 0;