Tektronix hex format

From Wikipedia, the free encyclopedia

Tektronix hex
Filename extension
.tek[1]

Tektronix hex format[2] (TEK HEX[2]) and Extended Tektronix hex format[2] (EXT TEK HEX or XTEK[2]) / Extended Tektronix Object Format[3] are ASCII-based hexadecimal file formats, created by Tektronix, for conveying binary information for applications like programming microcontrollers, EPROMs, and other kinds of chips.

Each line of a Tektronix hex file starts with a slash (/) character,[2] whereas extended Tektronix hex files start with a percent (%) character.[2][3]

Tektronix hex format[edit]

A line consists of four parts, excluding the initial '/' character:[1]

  1. Address — 4 character (2 byte) field containing the address where the data is to be loaded into memory. This limits the address to a maximum value of FFFF16.
  2. Byte count — 2 character (1 byte) field containing the length of the data fields.
  3. Prefix checksum — 2 character (1 byte) field containing the checksum of the prefix. The prefix checksum is the 8-bit sum of the four-bit hexadecimal value of the six digits that make up the address and byte count.
  4. Data— contains the data to be transferred, followed by a 2 character (1 byte) checksum. The data checksum is the 8-bit sum, modulo 256, of the 4-bit hexadecimal values of the digits that make up the data bytes.[4][2]

Extended Tektronix hex format[edit]

A line consists of five parts, excluding the initial '%' character:

  1. Record Length — 2 character (1 byte) field that specifies the number of characters (not bytes) in the record, excluding the percent sign.[2][3]
  2. Type — 1 character field, specifies whether the record is data (6) or termination (8).[3] (6 record contains data, placed at the address specified. 8 termination record: The address field may optionally contain the address of the instruction to which control is passed; there is no data field.)
  3. Checksum — 2 hex digits (1 byte, represents the sum of all the nibbles on the line, excluding the checksum itself.[3]
  4. Address — 2 to N character field. The first character is how many characters are to follow for this field. The remaining characters contains the address that specifies where the data is to be loaded into memory. For example, if the first character is 8, then the following 8 characters should specify the address for a total of 9 characters in this field.
  5. Data — contains the executable code, memory-loadable data or descriptive information to be transferred.

See also[edit]

References[edit]

  1. ^ a b "AR#476 PROMGen - Description of PROM/EEPROM file formats: MCS, EXO, HEX, and others". Xilinx. 2010-03-08. Tektronix Hexdecimal - File Format Code 86. Archived from the original on 2020-03-03. Retrieved 2020-03-03.
  2. ^ a b c d e f g h "Tektronix Hex (TEX HEX) / Extended Tektronix Hex (XTEK)". Generating PROM Programming Files. San Jose, California, USA: Cypress Semiconductor Corporation. April 1994. pp. 1, 4–5. Archived from the original on 2020-03-01. Retrieved 2020-03-01. (11 pages)
  3. ^ a b c d e "12.15.4 Extended Tektronix Object Format (--tektronix Option)". TMS320C28x Assembly Language Tools - User's Guide (PDF). v19.6.0.STS. Dallas, Texas, USA: Texas Instruments Incorporated. June 2019 [August 2001]. p. 316. SPRU513S. Archived (PDF) from the original on 2020-03-01. Retrieved 2020-03-01. [1]
  4. ^ Hennig-Roleff, Werner (1993-02-01) [1988]. "HEX.DOC: Tektronix - HEX Format". SIM51. 1.04 (in German). Archived from the original on 2017-08-11. Retrieved 2021-12-08. (NB. This is an older version of SIM51, the software and documentation was maintained at least up to 1995.)

Further reading[edit]

External links[edit]

  • SRecord is a collection of tools for manipulating hex format files, including both Tektronix formats