Motorola S-Records use the file extension S (for example, file4.s
).
Similar to Intel HEX, Motorola S-records use ASCII files, hex characters, and records to specify memory content. For more information about this format, search the web for several examples of the Motorola S-record description document. The RAM Content Manager uses only the S1 through S3 record types and ignores other record types.
The key difference between Intel HEX and Motorola S-record types is the record format, along with the extra error-checking features incorporated into Motorola S.
In both formats, memory content is specified by providing a starting address and a data set. The upper bits of the data set are loaded into the starting address and leftovers overflow into the adjacent addresses until the entire data set is used.
The Motorola S-record is composed of six fields and arranged as follows:
Stllaaaa[dd...]cc
Where:
S
is the start code
of every Motorola S-record.t
is the record type
that defines the data field.ll
is the byte count
of the data field.aaaa
is a 16-bit
address of the beginning of the memory position for the data. Address is big
Endian.[dd...]
is a
sequence of n bytes of the data where n is equivalent to what was
specified in the ll
field.cc
is the checksum of count, address, and data. The following is an
example of a Motorola S-record:
S10a0000112233445566778899FFFA