Hex Editor - implement 4 byte view, and add the all important icon!
This commit is contained in:
parent
9b496b872f
commit
b798ce1d88
|
@ -28,6 +28,7 @@
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(HexEditor));
|
||||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||||
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.dumpToFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.dumpToFileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
@ -43,8 +44,8 @@
|
||||||
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.restoreWindowSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.autoloadToolStripMenuItem = 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.enToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
|
this.MemoryViewer = new BizHawk.MultiClient.MemoryViewer();
|
||||||
this.menuStrip1.SuspendLayout();
|
this.menuStrip1.SuspendLayout();
|
||||||
this.SuspendLayout();
|
this.SuspendLayout();
|
||||||
//
|
//
|
||||||
|
@ -120,21 +121,21 @@
|
||||||
// byteToolStripMenuItem
|
// byteToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.byteToolStripMenuItem.Name = "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.Text = "1 Byte";
|
||||||
this.byteToolStripMenuItem.Click += new System.EventHandler(this.byteToolStripMenuItem_Click);
|
this.byteToolStripMenuItem.Click += new System.EventHandler(this.byteToolStripMenuItem_Click);
|
||||||
//
|
//
|
||||||
// byteToolStripMenuItem1
|
// byteToolStripMenuItem1
|
||||||
//
|
//
|
||||||
this.byteToolStripMenuItem1.Name = "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.Text = "2 Byte";
|
||||||
this.byteToolStripMenuItem1.Click += new System.EventHandler(this.byteToolStripMenuItem1_Click);
|
this.byteToolStripMenuItem1.Click += new System.EventHandler(this.byteToolStripMenuItem1_Click);
|
||||||
//
|
//
|
||||||
// byteToolStripMenuItem2
|
// byteToolStripMenuItem2
|
||||||
//
|
//
|
||||||
this.byteToolStripMenuItem2.Name = "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.Text = "4 Byte";
|
||||||
this.byteToolStripMenuItem2.Click += new System.EventHandler(this.byteToolStripMenuItem2_Click);
|
this.byteToolStripMenuItem2.Click += new System.EventHandler(this.byteToolStripMenuItem2_Click);
|
||||||
//
|
//
|
||||||
|
@ -168,6 +169,13 @@
|
||||||
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
|
this.autoloadToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
|
||||||
this.autoloadToolStripMenuItem.Text = "Auto-load";
|
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
|
// MemoryViewer
|
||||||
//
|
//
|
||||||
this.MemoryViewer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
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.TabStop = false;
|
||||||
this.MemoryViewer.Text = "RAM";
|
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
|
// HexEditor
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
|
@ -194,6 +195,7 @@
|
||||||
this.ClientSize = new System.Drawing.Size(531, 344);
|
this.ClientSize = new System.Drawing.Size(531, 344);
|
||||||
this.Controls.Add(this.MemoryViewer);
|
this.Controls.Add(this.MemoryViewer);
|
||||||
this.Controls.Add(this.menuStrip1);
|
this.Controls.Add(this.menuStrip1);
|
||||||
|
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||||
this.MainMenuStrip = this.menuStrip1;
|
this.MainMenuStrip = this.menuStrip1;
|
||||||
this.Name = "HexEditor";
|
this.Name = "HexEditor";
|
||||||
this.Text = "HexEditor";
|
this.Text = "HexEditor";
|
||||||
|
|
|
@ -120,4 +120,29 @@
|
||||||
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>17, 17</value>
|
<value>17, 17</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
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==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -84,6 +84,13 @@ namespace BizHawk.MultiClient
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 4:
|
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;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -106,23 +113,11 @@ namespace BizHawk.MultiClient
|
||||||
x = Domain.PeekByte(addr);
|
x = Domain.PeekByte(addr);
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (Bigendian)
|
x = MakeWord(addr, Bigendian);
|
||||||
{
|
|
||||||
x = Domain.PeekByte(addr) + (Domain.PeekByte(addr + 1) * 255);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
x = (Domain.PeekByte(addr) * 255) + Domain.PeekByte(addr + 1);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 4:
|
||||||
if (Bigendian)
|
x = (MakeWord(addr, Bigendian) * 65536) +
|
||||||
{
|
MakeWord(addr + 2, Bigendian);
|
||||||
//TODO
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return x;
|
return x;
|
||||||
|
@ -131,6 +126,14 @@ namespace BizHawk.MultiClient
|
||||||
return 0; //fail
|
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()
|
public void ResetScrollBar()
|
||||||
{
|
{
|
||||||
vScrollBar1.Value = 0;
|
vScrollBar1.Value = 0;
|
||||||
|
|
Loading…
Reference in New Issue