]> defiant.homedns.org Git - pyshared.git/blobdiff - bootloader.py
simple_kalman: rename variable in test for something more meaningful
[pyshared.git] / bootloader.py
index 04370cd8b30a6eafc5d3c345a6fbcd2e9ea5730e..a23828710b81a6a9c650ac28d7533a40c8bbc735 100755 (executable)
@@ -92,7 +92,6 @@ class bootloader:
                                self.boot_addr = int(data.encode("hex"), 16)
                        elif typ == 1: # End of File Record
                                print "Addr (rest) 0x%x" % buf_addr
-                               buf_addr+=self.pagesize
                                diff = self.pagesize-len(buf)
                                buf+=chr(0xff)*diff # fill with 0xff
                                handle(buf_addr, buf[:self.pagesize])
@@ -133,8 +132,6 @@ class bootloader:
                t1 = time()
                self.compare(filename)
                print "Time: %.1fs" % (time() - t1)
-               print "Jump:"
-               self.jump(self.boot_addr)
 
        def write(self, s):
                dev = i2c(self.i2c_addr)
@@ -179,9 +176,12 @@ if __name__ == "__main__":
        usage = "usage: %prog [options] addr [ihex]"
        parser = OptionParser(usage=usage)
        parser.add_option("-b", "--start-bootloader", action="store_true", dest="bToBoot", default=False, help="Start Bootloader")
+       parser.add_option("-j", "--jump", action="store_true", dest="bJump", default=False, help="Jump to Program")
 
        (options, args) = parser.parse_args()
-       if len(args) > 0:
+       if not args:
+               print "Missing Address"
+       else:
                addr = int(args[0], 16)
                if options.bToBoot:
                        to_bootloader(addr)
@@ -189,3 +189,6 @@ if __name__ == "__main__":
                loader = bootloader(addr)
                if len(args) > 1:
                        loader.load(args[1])
+               if options.bJump:
+                       print "Jump to Program"
+                       loader.jump(0x0)