Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.


Artifact ID: ebbf7d828cf03aa3f3a279ee6a37706bb90da386
Page Name:binconvert
Date: 2017-11-29 01:33:33
Original User: erikj
Parent: b5022e2e06845d2e09b5f45b6e9bc5ec4aa60d4b


This package is in the late stages of development testing, and is available for general use. As of version 0.2.1, Intel Hex, SREC, & TI Text formats are all tested and appear to be working. Rawbin has not yet been verified.

Your feedback and bug reports are appreciated.


Binconvert is a Tcl package that reads & writes EEPROM memory files in multiple formats (Motorola S-REC, Intel Hex, TI Txt, raw binary). Within Tcl, the information in the files is available for use as a Segment List, i.e. a list of segments in startAddress/dataList pairs. The binconvert structure and interface have hooks for adding new formats transparently, without having to modify the package or release information about private formats.


Binconvert is written for use with the pycco documentation generator in a literate programming style. Generated documentation can be found here for the main engine and here for all files.


Download the teacup file to your local system. From a command line in that directory:

teacup install

NOTE: I have not released this package in teacup format yet. To use, download all files into a directory in your TCLLIBPATH. I plan to generate an initial teacup file once I've tested the final format.

Example usage

set segmentlist [binconvert readfile srec inputFile.S28]
set newsegmentlist [process_bin_data $segmentlist]
binconvert writefile i16hex $newsegmentlist outputFile.hex

Extending to New Formats

Binconvert is written in a modular way that allows easy extension to new formats. If you create a format driver for a publicly-documented format, I encourage you to submit it to be added to the base package. But even if your format is proprietary, you can easily extend binconvert to read and write that format in exactly the same way as any supported format, using the provided interface.