MCPcopy Create free account
hub / github.com/qilingframework/qiling / parse_line

Method parse_line

qiling/loader/mcu.py:36–54  ·  view source on GitHub ↗
(self, line)

Source from the content-addressed store, hash-verified

34 self.segments.append((begin, stream))
35
36 def parse_line(self, line):
37 if len(line) < 9:
38 return
39
40 desc = line[7: 9]
41 size = int(line[1: 3], 16)
42
43 addr = bytes.fromhex(line[3: 7])
44 data = bytes.fromhex(line[9: 9 + size * 2])
45
46 if desc == '00': # Data
47 offset = int.from_bytes(addr, byteorder='big')
48 self.mem.append((self.base + offset, data))
49
50 elif desc == '02': # Extended Segment Address
51 self.base = int.from_bytes(data, byteorder='big') * 0x10
52
53 elif desc == '04': # Extended Linear Address
54 self.base = int.from_bytes(data, byteorder='big') * 0x10000
55
56
57class QlLoaderMCU(QlLoader):

Callers 1

__init__Method · 0.95

Calls 1

appendMethod · 0.45

Tested by

no test coverage detected