Hexfile manipulation

>>> from ppci.format.hexfile import HexFile
>>> h = HexFile()
>>> h.add_region(0, bytes([1, 2, 3]))
>>> h.add_region(0x100, 'Hello world of hex'.encode('utf8'))
>>> h
Hexfile containing 21 bytes
>>> h.dump()
Hexfile containing 21 bytes
Region at 0x00000000 of 3 bytes
00000000  01 02 03                                         ...
Region at 0x00000100 of 18 bytes
00000100  48 65 6c 6c 6f 20 77 6f 72 6c 64 20 6f 66 20 68  Hello.world.of.h
00000110  65 78                                            ex

Reference

Module to work with intel hex files.

This module can be used to work with intel hexfiles.

class ppci.format.hexfile.HexFile

Represents an intel hexfile

add_region(address, data)

Add a chunk of data at the given address

dump(contents=False)

Print info about this hexfile

static load(open_file)

Load a hexfile from file

save(f)

Save hexfile to file-like object

write_hex_line(line)

Write a single hexfile line

exception ppci.format.hexfile.HexFileException

Exception raised when hexfile handling fails

class ppci.format.hexfile.HexFileRegion(address, data=b'')

A continuous region of data starting at some address

add_data(data)

Add data to this region

end_address

End address for this region

size

The size of this region

class ppci.format.hexfile.HexLine(address, typ, data=b'')

A single line in a hexfile

classmethod from_line(line: str)

Parses a hexfile line into three parts

to_line() → str

Create an ascii hex line