t = 0
#r = row number, s=strip number, t=tile number
print "Generating mem_test"

for t in range(0, gf.TILES):
    for s in range(0, gf.STRIPS):
        d_wordH = range(gf.DROWS)  #initialise a new data word array
        a_wordH = range(gf.DROWS)  #initialise a new answer word array

        #Generate data, instructions and answers and write instructions to files
        for r in range(0, gf.IROWS):  #Write a row in a strip in a tile

            #Generate random values:
            var1 = random.randrange(0, 17179869183)
            #var1= r
            var1H = gf.roach_word(var1)
            var2 = random.randrange(0, 17179869183)
            #var2= r+5
            var2H = gf.roach_word(var2)
            d_wordH[r] = "Address %d:" % (r) + var1H
            d_wordH[r +
                    (gf.DROWS / 2)] = "Address %d:" % (r +
                                                       (gf.DROWS / 2)) + var2H

            #Generate answers
            answer = str(hex(var1 - var2))
            answer = answer[2:]
            while len(answer) != 16:
                answer = '0' + answer
            a_wordH[r] = "Address %d:" % (r) + answer
            a_wordH[r + (gf.DROWS / 2)] = "Address %d:" % (
zA =a[2] #Array of handles on answer files: zA[tile][strip]
r=0;s=0;t=0; #r = row number, s=strip number, t=tile number
print "Generating mem_test"

for t in range(0,gf.TILES):
		for s in range(0,gf.STRIPS):
				d_wordH=range(gf.DROWS)	#initialise a new data word array
				a_wordH=range(gf.DROWS)	#initialise a new answer word array

				#Generate data, instructions and answers and write instructions to files
				for r in range(0,gf.IROWS):	#Write a row in a strip in a tile
						
						#Generate random values:
						var1= random.randrange(0,17179869183)
						#var1= r
						var1H =gf.roach_word(var1)
						var2=random.randrange(0,17179869183)
						#var2= r+5
						var2H= gf.roach_word(var2)
						d_wordH[r] = "Address %d:" %(r) + var1H
						d_wordH[r+(gf.DROWS/2)] = "Address %d:" %(r+(gf.DROWS/2)) + var2H
						
						answer = str(hex(var1+var2))
						answer = answer[2:]
						while len(answer) != 16:
								answer = '0'+answer
						a_wordH[r] = "Address %d:" %(r) + answer	
						a_wordH[r+(gf.DROWS/2)] = "Address %d:" %(r+(gf.DROWS/2)) + answer	#Writing the same answer to both operand addresses, this way reading form and writing to every address are tested

						#Generate instruction
						opcode	= add