Hexeditor - stringbuilder for a slight speedup
This commit is contained in:
parent
c05a8770c4
commit
cce572f0c8
|
@ -117,7 +117,7 @@ namespace BizHawk.MultiClient
|
|||
}
|
||||
PatternView.pattern.UnlockBits(bmpdata);
|
||||
PatternView.Refresh();
|
||||
|
||||
/*
|
||||
int SpriteNum, TileNum, Attr, MemAddr;
|
||||
|
||||
//Sprite Viewer
|
||||
|
@ -142,6 +142,7 @@ namespace BizHawk.MultiClient
|
|||
}
|
||||
}
|
||||
}
|
||||
* */
|
||||
}
|
||||
|
||||
public unsafe void UpdateValues()
|
||||
|
|
|
@ -43,8 +43,8 @@ namespace BizHawk.MultiClient
|
|||
this.MouseClick += new System.Windows.Forms.MouseEventHandler(this.MemoryViewer_MouseClick);
|
||||
this.vScrollBar1 = new VScrollBar();
|
||||
Point n = new Point(this.Size);
|
||||
this.vScrollBar1.Location = new System.Drawing.Point(n.X-16, n.Y-this.Height+7);
|
||||
this.vScrollBar1.Height = this.Height-8;
|
||||
this.vScrollBar1.Location = new System.Drawing.Point(n.X - 16, n.Y - this.Height + 7);
|
||||
this.vScrollBar1.Height = this.Height - 8;
|
||||
this.vScrollBar1.Width = 16;
|
||||
this.vScrollBar1.Visible = true;
|
||||
this.vScrollBar1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
|
@ -109,7 +109,7 @@ namespace BizHawk.MultiClient
|
|||
|
||||
private void MemoryViewer_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
|
||||
{
|
||||
if (!InputValidate.IsValidHexNumber( ((char)e.KeyCode).ToString()))
|
||||
if (!InputValidate.IsValidHexNumber(((char)e.KeyCode).ToString()))
|
||||
{
|
||||
e.Handled = true;
|
||||
return;
|
||||
|
@ -153,16 +153,19 @@ namespace BizHawk.MultiClient
|
|||
int rowX = 8;
|
||||
int rowY = 16;
|
||||
int rowYoffset = 20;
|
||||
string rowStr = "";
|
||||
|
||||
|
||||
StringBuilder rowStr = new StringBuilder();
|
||||
|
||||
int addr = 0;
|
||||
addrOffset = (GetNumDigits(Domain.Size) % 4) * 9 ;
|
||||
addrOffset = (GetNumDigits(Domain.Size) % 4) * 9;
|
||||
g.DrawLine(new Pen(regBrush), this.Left + 38 + addrOffset, this.Top, this.Left + 38 + addrOffset, this.Bottom - 40);
|
||||
g.DrawLine(new Pen(regBrush), this.Left, 34, this.Right - 16, 34);
|
||||
|
||||
if (addressHighlighted >= 0 && IsVisible(addressHighlighted))
|
||||
{
|
||||
int left = ((addressHighlighted % 16) * 25) + 56 + addrOffset -(addressHighlighted % 4);
|
||||
int top = (((addressHighlighted / 16)-vScrollBar1.Value) * 16) + 36;
|
||||
int left = ((addressHighlighted % 16) * 25) + 56 + addrOffset - (addressHighlighted % 4);
|
||||
int top = (((addressHighlighted / 16) - vScrollBar1.Value) * 16) + 36;
|
||||
Rectangle rect = new Rectangle(left, top, 25, 16);
|
||||
g.DrawRectangle(new Pen(highlightBrush), rect);
|
||||
g.FillRectangle(highlightBrush, rect);
|
||||
|
@ -171,7 +174,7 @@ namespace BizHawk.MultiClient
|
|||
for (int i = 0; i < RowsVisible; i++)
|
||||
{
|
||||
row = i + vScrollBar1.Value;
|
||||
rowStr = String.Format("{0:X" + GetNumDigits(Domain.Size) + "}", row * 16) + " ";
|
||||
rowStr.Append(String.Format("{0:X" + GetNumDigits(Domain.Size) + "}", row * 16) + " ");
|
||||
switch (DataSize)
|
||||
{
|
||||
default:
|
||||
|
@ -181,16 +184,16 @@ namespace BizHawk.MultiClient
|
|||
{
|
||||
addr = (row * 16) + j;
|
||||
if (addr < Domain.Size)
|
||||
rowStr += String.Format("{0:X2}", Domain.PeekByte(addr)) + " ";
|
||||
rowStr.Append(String.Format("{0:X2}", Domain.PeekByte(addr)) + " ");
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
Header = " 0 2 4 6 8 A C E";
|
||||
for (int j = 0; j < 16; j+=2)
|
||||
for (int j = 0; j < 16; j += 2)
|
||||
{
|
||||
addr = (row * 16) + j;
|
||||
if (addr < Domain.Size)
|
||||
rowStr += String.Format("{0:X4}", MakeValue(addr, DataSize, BigEndian)) + " ";
|
||||
rowStr.Append(String.Format("{0:X4}", MakeValue(addr, DataSize, BigEndian)) + " ");
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
|
@ -199,7 +202,7 @@ namespace BizHawk.MultiClient
|
|||
{
|
||||
addr = (row * 16) + j;
|
||||
if (addr < Domain.Size)
|
||||
rowStr += String.Format("{0:X8}", MakeValue(addr, DataSize, BigEndian)) + " ";
|
||||
rowStr.Append(String.Format("{0:X8}", MakeValue(addr, DataSize, BigEndian)) + " ");
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -207,7 +210,7 @@ namespace BizHawk.MultiClient
|
|||
g.DrawString(Domain.Name, font, regBrush, new Point(1, 1));
|
||||
g.DrawString(Header, font, regBrush, new Point(rowX + addrOffset, rowY));
|
||||
if (row * 16 < Domain.Size)
|
||||
g.DrawString(rowStr, font, regBrush, new Point(rowX, (rowY * (i + 1)) + rowYoffset));
|
||||
g.DrawString(rowStr.ToString(), font, regBrush, new Point(rowX, (rowY * (i + 1)) + rowYoffset));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue