]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/workspace_tools/dev/intel_hex_utils.py
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / workspace_tools / dev / intel_hex_utils.py
1 from intelhex import IntelHex
2 from cStringIO import StringIO
3
4
5 def sections(h):
6     start, last_address = None, None
7     for a in h.addresses():
8         if last_address is None:
9             start, last_address = a, a
10             continue
11
12         if a > last_address + 1:
13             yield (start, last_address)
14             start = a
15
16         last_address = a
17
18     if start:
19         yield (start, last_address)
20
21
22 def print_sections(h):
23     for s in sections(h):
24         print "[0x%08X - 0x%08X]" % s
25
26
27 def decode(record):
28     h = IntelHex()
29     f = StringIO(record)
30     h.loadhex(f)
31     h.dump()