Welcome, guest | Sign In | My Account | Store | Cart
def findCloseAddress (ramMapFile, reqAddress):
       
"""
        Find similar address in file
        """

       
from sys import maxint as MAXINT
       
        fd
= open (ramMapFile, 'r')
       
        foundLine    
= ""
        smallestDiff
= MAXINT
       
       
for line in fd:
               
if "SYMBOL TABLE:" in line :
                       
break

       
for line in fd:
                linePart
= line.split()
               
if len(linePart) > 0:
                        currAddress
= int(linePart[0], 16)
                        diff        
= reqAddress - currAddress
                       
if diff < smallestDiff and diff >= 0:                  
                                smallestDiff
= diff
                                foundLine
= ''.join(line)

       
print "\nRequired Address : 0x%x" % reqAddress
       
print "\nClosest Line :\n%s"      % foundLine
       
print "\nDifference : 0x%x (%d instructions)"  % (smallestDiff,  smallestDiff / 4)      

       
if __name__ == "__main__":
                mapFile
= r"C:\default\ram.map"                

                reqAddress
= 0xffffffff803130cc
               
                findCloseAddress
(mapFile, reqAddress)

               
               
               
               

History