Пример #1
0
        private void DumpTypedData(SegmentMap map, ImageMapItem item, Formatter stm)
        {
            ImageSegment segment;

            if (!map.TryFindSegment(item.Address, out segment) || segment.MemoryArea == null)
            {
                return;
            }
            stm.Write(Block.GenerateName(item.Address));
            stm.Write("\t");

            var rdr = arch.CreateImageReader(segment.MemoryArea, item.Address);

            item.DataType.Accept(new TypedDataDumper(rdr, item.Size, stm));
        }
Пример #2
0
        private void WriteLabel(Address addr, Formatter w)
        {
            if (program.ImageSymbols.TryGetValue(addr, out var sym) &&
                !string.IsNullOrEmpty(sym.Name))
            {
                w.Write(sym.Name);
                w.Write("\t\t; {0}", addr);

                w.WriteLine();
            }
            else
            {
                w.Write(Block.GenerateName(addr));
            }
            w.Write("\t");
        }