diff --git a/utils/uf2conv.py b/utils/uf2conv.py index 2418d8e..d746e3c 100755 --- a/utils/uf2conv.py +++ b/utils/uf2conv.py @@ -38,7 +38,7 @@ def isHEX(buf): def convertFromUF2(buf): global appstartaddr - numblocks = len(buf) / 512 + numblocks = len(buf) >> 9 curraddr = None outp = "" for blockno in range(0, numblocks): @@ -46,7 +46,7 @@ def convertFromUF2(buf): block = buf[ptr:ptr + 512] hd = struct.unpack(" 0: padding -= 4 - outp += "\x00\x00\x00\x00" + outp += b"\x00\x00\x00\x00" outp += block[32 : 32 + datalen] curraddr = newaddr + datalen return outp def convertToUF2(fileContent): global familyid - datapadding = "" + datapadding = b"" while len(datapadding) < 512 - 256 - 32 - 4: - datapadding += "\x00\x00\x00\x00" - numblocks = (len(fileContent) + 255) / 256 - outp = "" + datapadding += b"\x00\x00\x00\x00" + numblocks = (len(fileContent) + 255) >> 8 + outp = b"" for blockno in range(0, numblocks): ptr = 256 * blockno chunk = fileContent[ptr:ptr + 256] @@ -89,7 +89,7 @@ def convertToUF2(fileContent): UF2_MAGIC_START0, UF2_MAGIC_START1, flags, ptr + appstartaddr, 256, blockno, numblocks, familyid) while len(chunk) < 256: - chunk += "\x00" + chunk += b"\x00" block = hd + chunk + datapadding + struct.pack("