<commit_before>About
*****
The Intel HEX file format widely used in microprocessors and microcontrollers 
area as the de-facto standard for representation of code for programming 
microelectronic devices.

This work implements an **intelhex** Python library to read, write, 
create from scratch and manipulate data from HEX (also known as Intel HEX) 
file format. These operations are provided by ``IntelHex`` class.

The distribution package also includes several convenience Python scripts
to do basic tasks that utilize this library. The ``bin2hex.py`` script 
converts binary data to HEX, and the ``hex2bin.py`` works the other direction. 
``hex2dump.py`` converts data from HEX to a hexdump which is useful for
inspecting data, and ``hexmerge.py`` merges multiple HEX files into one.
In addition you can try to inspect differences between 2 HEX files with
``hexdiff.py`` utility which uses dump output similar to ``hex2dump.py``.

You can find IntelHex library on PyPI:

https://pypi.python.org/pypi/IntelHex

on Launchpad:

https://launchpad.net/intelhex

on GitHub:

https://github.com/bialix/intelhex


Motivation
~~~~~~~~~~
This work was partially inspired by SRecord_ software in that moment
when I've stuck with its limitations and unintuitive behavior.

So I've made this library and related tools which gives me 
full control over data and HEX file creation.

.. _SRecord: http://srecord.sourceforge.net/<commit_msg>update docs: more on motivation :-)<commit_after>About
*****
The Intel HEX file format widely used in microprocessors and microcontrollers 
area as the de-facto standard for representation of code for programming 
microelectronic devices.

This work implements an **intelhex** Python library to read, write, 
create from scratch and manipulate data from HEX (also known as Intel HEX) 
file format. These operations are provided by ``IntelHex`` class.

The distribution package also includes several convenience Python scripts
to do basic tasks that utilize this library. The ``bin2hex.py`` script 
converts binary data to HEX, and the ``hex2bin.py`` works the other direction. 
``hex2dump.py`` converts data from HEX to a hexdump which is useful for
inspecting data, and ``hexmerge.py`` merges multiple HEX files into one.
In addition you can try to inspect differences between 2 HEX files with
``hexdiff.py`` utility which uses dump output similar to ``hex2dump.py``.

You can find IntelHex library on PyPI:

https://pypi.python.org/pypi/IntelHex

on Launchpad:

https://launchpad.net/intelhex

on GitHub:

https://github.com/bialix/intelhex


Motivation
~~~~~~~~~~
This work was partially inspired by SRecord_ software in that moment
when I've stuck with its limitations and unintuitive behavior.

So I've made this library and related tools which gives me 
full control over data and HEX file creation.
Not the best reason to start yet another project. 
But, as you probably know, nothing is better than scratch our own itches, 
especially if you want to re-implement something 
in your favorite programming language.

Over the years it turned out my small python library was very useful 
for many people, and allowed them not only create utilities to manipulate
with HEX files, but also create custom bootloaders for their devices.

I started to write this library in 2005, and now 10 years later it's still
alive and useful to other developers. That keeps me working on improving
this code, even though I don't work on embedding systems for some time.

If you find IntelHex library useful - please, send me email 
and tell a bit about how you're using it and in which projects/areas.
That not only satisfy my curiosity but also helps me to keep working 
on this project.

.. _SRecord: http://srecord.sourceforge.net/
{'fraction_non_alphanumeric': 0.06213333333333333, 'fraction_numerical': 0.004266666666666667, 'mean_word_length': 4.581845238095238, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1514972', 'n_tokens_mistral': 1024, 'n_tokens_neox': 965, 'n_words': 531}