srec_ascii_hex - Ascii‐Hex file format
This format is also known as the AsciiSpaceHex or AsciiHexSpace
format. If you know who invented this format, please let me know. If
you have a better or more complete description, I’d like to know that,
The file starts with a start‐of‐text (STX or Control‐B) character
(0x02). Everything before the STX is ignored.
Each data byte is represented as 2 hexadecimal characters, followd by
an "execution character". The default execution character is a space,
although many programs which write this format omit the space character
immediately preceeding end‐of‐line.
The address for data bytes is set by using a sequence of $Annnn,
characters, where nnnn is the 4‐character ascii representation of the
address. The comma is required. There is no need for an address
record unless there are gaps. Implicitly, the file starts a address 0
if no address is set before the first data byte.
The file ends with an end‐of‐text (ETX or Control‐C) character (0x03).
Everything following the ETX is ignored.
It is also possible to specify a running 16‐bit checksum using a
sequence of $Snnnn, characters, although this usually appears after the
ETX character and is thus often ignored.
In addition to a space character, the execution character can also be
percent (%) called "ascii‐hex‐percent" format, apostrophe (’) or comma
(,) called "ascii‐hex‐comma" format. The file must use the same
execution character throughout.
If the execution character is a comma, the address and checksum
commands are terminated by a dot (.) rather than a comma (,).
In general, binary data will expand in sized by approximately 3.0 times
when represented with this format.
Here is an example ascii‐hex file. It contains the data “Hello,
World[rq] to be loaded at address 0x1000.
48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 0A ^C
srec_cat version 1.55
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
2007, 2008, 2009, 2010 Peter Miller
The srec_cat program comes with ABSOLUTELY NO WARRANTY; for details use
the ’srec_cat -VERSion License’ command. This is free software and you
are welcome to redistribute it under certain conditions; for details
use the ’srec_cat -VERSion License’ command.
Peter Miller E‐Mail: email@example.com
/\/\* WWW: http://miller.emu.id.au/pmiller/