示例#1
0
 public void M68kps_brab()
 {
     var rdr = CreateImageReader(
         Address.Ptr32(0x00100000),
         0x4E75, 0x60FC, 0x4E75);
     var items = new M68kPointerScanner(rdr, new HashSet<uint> { 0x00100000u }, PointerScannerFlags.Jumps).ToArray();
     Assert.AreEqual(1, items.Length);
     Assert.AreEqual(0x00100002u, items[0]);
 }
示例#2
0
        public void M68kps_bsrb()
        {
            var rdr = CreateImageReader(
                Address.Ptr32(0x00100000),
                0x4E75, 0x61FC);
            var items = new M68kPointerScanner(rdr, new HashSet <uint> {
                0x00100000u
            }, PointerScannerFlags.Calls).ToArray();

            Assert.AreEqual(1, items.Length);
            Assert.AreEqual(0x00100002u, items[0]);
        }
示例#3
0
        public void M68kps_FindPointer_Flat32()
        {
            var rdr = CreateImageReader(
                Address.Ptr32(0x00100000),
                0x2222, 0x0010, 0x0008);
            var items = new M68kPointerScanner(rdr, new HashSet <uint> {
                0x00100008u
            }, PointerScannerFlags.Pointers).ToArray();

            Assert.AreEqual(1, items.Length);
            Assert.AreEqual(0x00100002u, items[0]);
        }
示例#4
0
        public void M68kps_jmpl()
        {
            var rdr = CreateImageReader(
                Address.Ptr32(0x00100),
                0x4e75, 0x4EF9, 0x0000, 0x0100);
            var items = new M68kPointerScanner(rdr, new HashSet <uint> {
                0x00100
            }, PointerScannerFlags.Jumps).ToArray();

            Assert.AreEqual(1, items.Length);
            Assert.AreEqual(0x00102u, items[0]);
        }
        public void M68kps_jsrw()
        {
            var rdr = CreateImageReader(
                Address.Ptr32(0x00000100),
                0x4EB8, 0x0108, 0x4E75, 0x4E71, 0x4E75);
            var items = new M68kPointerScanner(rdr, new HashSet<uint> { 0x00108u }, PointerScannerFlags.Calls).ToArray();

            Assert.AreEqual(1, items.Length);
            Assert.AreEqual(0x00100u, items[0]);
        }
 public void M68kps_FindPointer_Flat32()
 {
     var rdr = CreateImageReader(
         Address.Ptr32(0x00100000),
         0x2222, 0x0010, 0x0008);
     var items = new M68kPointerScanner(rdr, new HashSet<uint> { 0x00100008u }, PointerScannerFlags.Pointers).ToArray();
     Assert.AreEqual(1, items.Length);
     Assert.AreEqual(0x00100002u, items[0]);
 }