'Print out debugging information.'

def dbg_print(self, indent=0):

    lst = []
    more_data = False
    for (i, addr) in enumerate(self.mem.iterkeys()):
        lst.append(addr)
        if (i >= 20):
            more_data = True
            break
    for addr in sorted(lst):
        data = self.mem[addr]
        if isinstance(data, SimMemoryObject):
            memobj = data
            print ('%s%xh:    (%s)[%d]' % (('    ' * indent), addr, memobj, (addr - memobj.base)))
        else:
            print ('%s%xh:    <default    data>' % (('    ' * indent), addr))
    if more_data:
        print ('%s...' % ('    ' * indent))
