/[RomCheater]/trunk/RomCheater/Docking/MemorySearch/NotInRangeComparer.cs
ViewVC logotype

Diff of /trunk/RomCheater/Docking/MemorySearch/NotInRangeComparer.cs

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

revision 407 by william, Wed Jun 20 10:51:25 2012 UTC revision 408 by william, Thu Jun 21 18:10:21 2012 UTC
# Line 3  using System.Collections.Generic; Line 3  using System.Collections.Generic;
3  using System.Linq;  using System.Linq;
4  using System.Text;  using System.Text;
5  using System.IO;  using System.IO;
6    using Sojaner.MemoryScanner.MemoryProviers;
7    using RomCheater.PluginFramework.Interfaces;
8    
9  namespace RomCheater.Docking.MemorySearch  namespace RomCheater.Docking.MemorySearch
10  {  {
# Line 14  namespace RomCheater.Docking.MemorySearc Line 16  namespace RomCheater.Docking.MemorySearc
16          }          }
17    
18          #region IRangeComparer<object> Members          #region IRangeComparer<object> Members
19          public bool Compare(object Start, object End, SearchDataTypes bitsize, bool unsigned, BinaryReader r)          public bool Compare(object Start, object End, SearchDataTypes bitsize, bool unsigned, IAcceptsProcessAndConfig pconfig)
20          {          {
21              //reader.BaseStream.Seek(this.Address, SeekOrigin.Begin);              //reader.BaseStream.Seek(this.Address, SeekOrigin.Begin);
22    
# Line 26  namespace RomCheater.Docking.MemorySearc Line 28  namespace RomCheater.Docking.MemorySearc
28              {              {
29                  if (unsigned)                  if (unsigned)
30                  {                  {
31                      lookup_value = new DataTypeConverter(r.ReadByte());                      byte val = 0;
32                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
33                        lookup_value = new DataTypeConverter(val);                    
34                      if (lookup_value.ToByte() < (byte)start_value || lookup_value.ToByte() > (byte)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToByte() < (byte)start_value || lookup_value.ToByte() > (byte)end_value) { this.Value = lookup_value.Value; return true; }
35                  }                  }
36                  else                  else
37                  {                  {
38                      lookup_value = new DataTypeConverter(r.ReadSByte());                      sbyte val = 0;
39                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
40                        lookup_value = new DataTypeConverter(val);  
41                      if (lookup_value.ToSByte() < (sbyte)start_value || lookup_value.ToSByte() > (sbyte)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToSByte() < (sbyte)start_value || lookup_value.ToSByte() > (sbyte)end_value) { this.Value = lookup_value.Value; return true; }
42                  }                  }
43              }              }
# Line 39  namespace RomCheater.Docking.MemorySearc Line 45  namespace RomCheater.Docking.MemorySearc
45              {              {
46                  if (unsigned)                  if (unsigned)
47                  {                  {
48                      lookup_value = new DataTypeConverter(r.ReadUInt16());                      ushort val = 0;
49                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
50                        lookup_value = new DataTypeConverter(val);  
51                      if (lookup_value.ToUInt16() < (ushort)start_value || lookup_value.ToUInt16() > (ushort)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToUInt16() < (ushort)start_value || lookup_value.ToUInt16() > (ushort)end_value) { this.Value = lookup_value.Value; return true; }
52                  }                  }
53                  else                  else
54                  {                  {
55                      lookup_value = new DataTypeConverter(r.ReadInt16());                      short val = 0;
56                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
57                        lookup_value = new DataTypeConverter(val);  
58                      if (lookup_value.ToInt16() < (short)start_value || lookup_value.ToInt16() > (short)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToInt16() < (short)start_value || lookup_value.ToInt16() > (short)end_value) { this.Value = lookup_value.Value; return true; }
59                  }                  }
60              }              }
# Line 52  namespace RomCheater.Docking.MemorySearc Line 62  namespace RomCheater.Docking.MemorySearc
62              {              {
63                  if (unsigned)                  if (unsigned)
64                  {                  {
65                      lookup_value = new DataTypeConverter(r.ReadUInt32());                      uint val = 0;
66                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
67                        lookup_value = new DataTypeConverter(val);  
68                      if (lookup_value.ToUInt32() < (uint)start_value || lookup_value.ToUInt32() > (uint)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToUInt32() < (uint)start_value || lookup_value.ToUInt32() > (uint)end_value) { this.Value = lookup_value.Value; return true; }
69                  }                  }
70                  else                  else
71                  {                  {
72                      lookup_value = new DataTypeConverter(r.ReadInt32());                      int val = 0;
73                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
74                        lookup_value = new DataTypeConverter(val);  
75                      if (lookup_value.ToInt32() < (int)start_value || lookup_value.ToInt32() > (int)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToInt32() < (int)start_value || lookup_value.ToInt32() > (int)end_value) { this.Value = lookup_value.Value; return true; }
76                  }                  }
77              }              }
# Line 65  namespace RomCheater.Docking.MemorySearc Line 79  namespace RomCheater.Docking.MemorySearc
79              {              {
80                  if (unsigned)                  if (unsigned)
81                  {                  {
82                      lookup_value = new DataTypeConverter(r.ReadUInt64());                      ulong val = 0;
83                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
84                        lookup_value = new DataTypeConverter(val);  
85                      if (lookup_value.ToUInt64() < (ulong)start_value || lookup_value.ToUInt64() > (ulong)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToUInt64() < (ulong)start_value || lookup_value.ToUInt64() > (ulong)end_value) { this.Value = lookup_value.Value; return true; }
86                  }                  }
87                  else                  else
88                  {                  {
89                      lookup_value = new DataTypeConverter(r.ReadInt64());                      long val = 0;
90                        using (GenericMemoryProvider gmp = new GenericMemoryProvider(pconfig)) { gmp.OpenProvider(); gmp.ReadMemory(Address, out val); gmp.CloseProvider(); }
91                        lookup_value = new DataTypeConverter(val);  
92                      if (lookup_value.ToInt64() < (long)start_value || lookup_value.ToInt64() > (long)end_value) { this.Value = lookup_value.Value; return true; }                      if (lookup_value.ToInt64() < (long)start_value || lookup_value.ToInt64() > (long)end_value) { this.Value = lookup_value.Value; return true; }
93                  }                  }
94              }              }

Legend:
Removed from v.407  
changed lines
  Added in v.408

  ViewVC Help
Powered by ViewVC 1.1.22