Beispiel #1
0
def saveAllToMemoryModel():
    global hexes
    #print 'saveeeee : '+str(hexes)
    curAddrInt = int(parsehelper.getStartAddress(), 16)
    for x in hexes:
        #x has the data
        mem.storeWordToMemory(curAddrInt, x)
        curAddrInt += 4
Beispiel #2
0
def saveAllToMemoryModel():
    global hexes
    #print 'saveeeee : '+str(hexes)
    curAddrInt=int(parsehelper.getStartAddress(),16)
    for x in hexes:
        #x has the data
        mem.storeWordToMemory(curAddrInt, x)
        curAddrInt+=4
Beispiel #3
0
def checkIfValidBreakPoint(givenHexString):
    startAdd = parsehelper.getStartAddress()
    length = parsehelper.getNumOfInst()
    givenHexInt = int(givenHexString, 16)
    startAddInt = int(startAdd, 16)
    if (givenHexInt - startAddInt) % 4 == 0:
        if (givenHexInt - startAddInt) / 4 < length:
            return True
    return False
Beispiel #4
0
def checkIfValidBreakPoint(givenHexString):
    startAdd=parsehelper.getStartAddress()
    length=parsehelper.getNumOfInst()
    givenHexInt=int(givenHexString, 16)
    startAddInt=int(startAdd, 16)
    if (givenHexInt-startAddInt)%4 == 0:
        if(givenHexInt-startAddInt)/4 < length:
            return True
    return False
def parseDataSection(filename):
    #return
    global hexes
    hexes=parsehelper.return_parsed_section(filename, '.data')
    if hexes:
        print 'Data section exists'
        setStartAddress(parsehelper.getStartAddress())
        setNumOfData(parsehelper.getNumOfInst())
        #print hexes
        #print getStartAddress()
        saveAllToMemoryModel()
Beispiel #6
0
def parseDataSection(filename):
    #return
    global hexes
    hexes = parsehelper.return_parsed_section(filename, '.data')
    if hexes:
        print 'Data section exists'
        setStartAddress(parsehelper.getStartAddress())
        setNumOfData(parsehelper.getNumOfInst())
        #print hexes
        #print getStartAddress()
        saveAllToMemoryModel()
Beispiel #7
0
def startInteraction():
    flag = True
    initBkPoint()
    setPC(parsehelper.getPC())
    #print getPC()
    #print getCurrentInstNumber()
    print '------------------------------------'
    print 'The entry address for execution is: ' + hex(parsehelper.getPC())
    print 'The starting address of .text section is: ' + parsehelper.getStartAddress()
    print "Debug mode started. Type 'help' for list of options."
    while flag:
        print '------------------------------------'
        print '(debug) : ',
        x=raw_input()
        x=x.strip().lower()
        if x=='exit':
            flag=False
        else:
            parseCommand(x)
Beispiel #8
0
def startInteraction():
    flag = True
    initBkPoint()
    setPC(parsehelper.getPC())
    #print getPC()
    #print getCurrentInstNumber()
    print '------------------------------------'
    print 'The entry address for execution is: ' + hex(parsehelper.getPC())
    print 'The starting address of .text section is: ' + parsehelper.getStartAddress(
    )
    print "Debug mode started. Type 'help' for list of options."
    while flag:
        print '------------------------------------'
        print '(debug) : ',
        x = raw_input()
        x = x.strip().lower()
        if x == 'exit':
            flag = False
        else:
            parseCommand(x)
Beispiel #9
0
def getCurrentInstNumber():  #starts at index 0
    prog_counter = getPC()
    start = int(parsehelper.getStartAddress(), 16)
    return int((prog_counter - start) / 4)
Beispiel #10
0
def getInstFromValidHexString(givenHexString):  #starts at index 0
    startAdd = parsehelper.getStartAddress()
    givenHexInt = int(givenHexString, 16)
    startAddInt = int(startAdd, 16)
    return int((givenHexInt - startAddInt) / 4)
Beispiel #11
0
def getInstFromValidHexString(givenHexString): #starts at index 0
    startAdd=parsehelper.getStartAddress()
    givenHexInt=int(givenHexString, 16)
    startAddInt=int(startAdd, 16)
    return int((givenHexInt-startAddInt)/4)
Beispiel #12
0
def getCurrentInstNumber(): #starts at index 0
    prog_counter=getPC()
    start=int(parsehelper.getStartAddress(),16)
    return int((prog_counter-start)/4)