Langue: en

Version: SRecord (fedora - 01/12/10)

Section: 5 (Format de fichier)


srec_ascii_hex - Ascii[hy]Hex file format


This format is also known as the Ascii[hy]Space[hy]Hex or Ascii[hy]Hex[hy]Space 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, too.

The file starts with a start[hy]of[hy]text (STX or Control[hy]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[hy]of[hy]line.

The address for data bytes is set by using a sequence of CW]$ACI]nnnnCW], characters, where nnnn is the 4[hy]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[hy]of[hy]text (ETX or Control[hy]C) character (0x03). Everything following the ETX is ignored.

It is also possible to specify a running 16[hy]bit checksum using a sequence of CW]$SCI]nnnnCW], characters, although this usually appears after the ETX character and is thus often ignored.

Variant Forms

In addition to a space character, the execution character can also be percent (%) called "ascii[hy]hex[hy]percent" format, apostrophe (') or comma (,) called "ascii[hy]hex[hy]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 (,).

Size Multiplier

In general, binary data will expand in sized by approximately 3.0 times when represented with this format.


Here is an example ascii[hy]hex file. It contains the data [lq]Hello, World[rq] to be loaded at address 0x1000.
 ^B $A1000,
 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[hy]Mail:
/\/\* WWW: