def FileReader(filename): if filename.lower().endswith(".hex") or filename.lower().endswith(".ihex"): f = IntelHex(filename) fdata = f.tobinarray(0) fsize = f.maxaddr() - f.minaddr() elif filename.lower().endswith(".bin"): f = open(filename, "rb") fdata = bytearray(f.read()) fsize = len(fdata) f.close() else: raise IOError("Unknown file extension for file %s" % filename) return fdata, fsize