srec_trs80(5)

πŸ’– NAME πŸ’–

okay bestie, this is srec_trs80(5) β€” the Radio Shack TRS‐80 object file format specification, and it lives in the File Formats Manual. No cap, this page is the whole spec vibe. πŸŽ€

✨ DESCRIPTION ✨

okay so here’s the tea: this document describes the binary object file format for the Z80‐based Radio Shack TRS‐80 microcomputers, such as the Model I, II, III, 4, 4D, and 4P. It’s generated by the disk‐based Assembler/Editor, and it’s used for TRS‐DOS program files. πŸ’Ύβœ¨

The object file is blocked into records, and each record contains the record type, length, and payload data. For Data and End of File records, the payload starts with two bytes of address in little‐endian format. There are four main types of records that are defined. The record types are:

  • Data Record
  • End of File Record with Execution Transfer
  • End of File Record without Execution Transfer
  • Comment
  • Start Linear Address Record (32‐bit format only)

🌟 General Record Format 🌟

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Record  β”‚ Record  β”‚ Load    β”‚ Data    β”‚
β”‚ Type    β”‚ Length  β”‚ Address β”‚         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸŽ€ Record Type.

Each record begins with a single byte Record Type field, and that field specifies the record type of this record. The Record Type field is what you use to interpret the remaining information within the record. This field is one byte, represented as two hexadecimal characters. The encoding for all the current record types is:

  • 1 β€” Data Record
  • 2 β€” End of File Record with Execution Transfer
  • 3 β€” End of File Record without Execution Transfer
  • 5 β€” Comment Record

🧚 Record Length

Each record has a single byte Record Length field, and it specifies the number of bytes of information or data that follows the Record Length field of the record. The maximum value of the Record Length field is hexadecimal FF or 255. In the case of Data Records only, Record Length byte values of zero to two are considered to be lengths of 256 to 258, respectively. Numbers stay exact, periodt. πŸ”’

🌈 Address

Data and End records have a two‐byte Address field in little‐endian byte order. For Data records, this is the starting address at which to load the remaining payload of the record. In End records, this is the address for the start of execution of the file, or zero if not applicable.

πŸ¦‹ Data

Each record has a variable length Data field, and it consists of zero or more bytes. The interpretation of this field depends on the Record Type field. That’s the vibe check. πŸ’…

πŸ“š REFERENCE πŸ“š

This information comes from the "Program Files" section of the TRSDOS‐II Reference Manual, Tandy Corporation, 1982. That’s the source, bestie. 🫢

  • srec_cat version 1.65
  • Copyright (C) 1998... 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. πŸ’€βœ¨

πŸ’Œ MAINTAINER πŸ’Œ

  • Scott Finneran β€” E‐Mail: scottfinneran@yahoo.com.au
  • Peter Miller β€” E‐Mail: pmiller@opensource.org.au

and that’s the footer moment, bestie: Reference Manual Β· SRecord Β· srec_trs80(5) β€” bye, love u, go read the specs πŸ’–βœ¨

πŸ“¦ where this page comes from