/[RomCheater]/trunk/RomCheater/Docking/FloatingRamDumperDialog.cs
ViewVC logotype

Diff of /trunk/RomCheater/Docking/FloatingRamDumperDialog.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 164 by william, Mon May 28 07:49:48 2012 UTC revision 168 by william, Mon May 28 08:32:18 2012 UTC
# Line 75  namespace RomCheater.Docking Line 75  namespace RomCheater.Docking
75              switch (dumpSize)              switch (dumpSize)
76              {              {
77                  case DumpSize.Bytes:                  case DumpSize.Bytes:
78                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1.0 + start) - BYTE_CORRECTION_VALUE;                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1.0 + (double)start) + BYTE_CORRECTION_VALUE;
79                      txtEnd.Value = end;                      txtEnd.Value = end;
80                      break;                      break;
81                  case DumpSize.KiloBytes:                  case DumpSize.KiloBytes:
82                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000.0 + start) - BYTE_CORRECTION_VALUE;                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000.0 + (double)start) + BYTE_CORRECTION_VALUE;
83                      txtEnd.Value = end;                      txtEnd.Value = end;
84                      break;                      break;
85                  case DumpSize.MegaBytes:                  case DumpSize.MegaBytes:
86                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000000.0 + start) - BYTE_CORRECTION_VALUE;                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000000.0 + (double)start) + BYTE_CORRECTION_VALUE;
87                      txtEnd.Value = end;                      txtEnd.Value = end;
88                      break;                      break;
89                  case DumpSize.GigaBytes:                  case DumpSize.GigaBytes:
90                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000000000.0 + start) - BYTE_CORRECTION_VALUE;                      end = (ulong)(Convert.ToDouble(txtDumpSize.Text) * 1000000000.0 + (double)start) + BYTE_CORRECTION_VALUE;
91                      txtEnd.Value = end;                      txtEnd.Value = end;
92                      break;                      break;
93              }              }
# Line 158  namespace RomCheater.Docking Line 158  namespace RomCheater.Docking
158          private void DumpRam(ulong start, ulong end, string filename)          private void DumpRam(ulong start, ulong end, string filename)
159          {          {
160              uint byte_count = (uint)(end - start);              uint byte_count = (uint)(end - start);
161                string arch = ProcessorAssemblyArchitecture.GetProcessorArchitecture(typeof(FloatingRamDumperDialog).Assembly);
162              //string arch = ProcessorAssemblyArchitecture.GetProcessorArchitecture(typeof(FloatingRamDumperDialog).Assembly);              if (arch == ProcessorAssemblyArchitecture.x86)
163              //if (arch == ProcessorAssemblyArchitecture.x86)              {
164              //{                  // intptr is 4 bytes on x86
165                  if (end > int.MaxValue)                  if (end > int.MaxValue)
166                      logger.Warn.WriteLine("Warning: DumpRam(): ending address is greater than 0x{0:x8} and we are running x86, this will exceed the ", int.MaxValue);                                      logger.Warn.WriteLine("Warning: DumpRam(): ending address is greater than 0x{0:x8} and we are running x86, this will exceed the max value for IntPtr", int.MaxValue);
167              //}              }
168              //else if (arch == ProcessorAssemblyArchitecture.x64)              else if (arch == ProcessorAssemblyArchitecture.x64)
169              //{              {
170              //}                  // inptr is 8 bytes on x64
171              //else                  if (end > uint.MaxValue)
172              //{                      logger.Warn.WriteLine("Warning: DumpRam(): ending address is greater than 0x{0:x8} and we are running x64, this will exceed the max value for UIntPtr", int.MaxValue);
173              //    // don't know              }
174              //}              else
175                {
176                    throw new InvalidProgramException(string.Format("Unexcepted processor aritecture: expected x86 or x64 but we have: {0}", arch));
177                }
178              DumpRam(start, byte_count, filename);              DumpRam(start, byte_count, filename);
179          }          }
180          private void DumpRam(ulong start, uint count, string filename)          private void DumpRam(ulong start, uint count, string filename)

Legend:
Removed from v.164  
changed lines
  Added in v.168

  ViewVC Help
Powered by ViewVC 1.1.22