1srec_trs80(5) File Formats Manual srec_trs80(5)
2
3
4
6 srec_trs80 - Radio Shack TRS‐80 object file format specification
7
9 This document describes the binary object file format for the Z80‐based
10 Radio Shack TRS‐80 microcomputers, such as the Model I, II, III, 4, 4D,
11 and 4P. The binary format is generated by the disk‐based Assem‐
12 bler/Editor, and used for TRS‐DOS program files.
13
14 The object file is blocked into records, each of which contains the
15 record type, length, and payload data. For Data and End of File
16 records, the payload starts with two bytes of address in little‐endian
17 format. There are four main types of records that are defined. The
18 record types are:
19
20 · Data Record
21
22 · End of File Record with Execution Transfer
23
24 · End of File Record without Execution Transfer
25
26 · Comment
27
28 · Start Linear Address Record (32‐bit format only)
29
30 General Record Format
31 ┌────────┬─────────┬─────────┬─────────┐
32 │Record │ Record │ Load │ Data │
33 │Type │ Length │ Address │ │
34 └────────┴─────────┴─────────┴─────────┘
35 Record Type.
36 Each record begins with a single byte Record Type field which
37 specifies the record type of this record. The Record Type
38 field is used to interpret the remaining information within the
39 record. This field is one byte, represented as two hexadecimal
40 characters. The encoding for all the current record types are:
41
42 1 Data Record
43
44 2 End of File Record with Execution Transfer
45
46 3 End of File Record without Execution Transfer
47
48 5 Comment Record
49
50 Record Length
51 Each record has a single byte Record Length field which speci‐
52 fies the number of bytes of information or data which follows
53 the Record Length field of the record. The maximum value of
54 the Record Length field is hexadecimal “FF” or 255. In the
55 case of Data Records only, Record Length byte values of zero to
56 two are considered to be lengths of 256 to 258, respectively.
57
58 Address Data and End records have a two‐byte Address field in little‐
59 endian byte order. For Data records, this is the starting
60 address at which to load the remaining payload of the record.
61 In End records, this is the address for the start of execution
62 of the file, or zero if not applicable.
63
64 Data Each record has a variable length Data field, it consists of
65 zero or more bytes. The interpretation of this field depends
66 on the Record Type field.
67
69 This information comes from the "Program Files" section of TRSDOS‐II
70 Reference Manual, Tandy Corporation, 1982.
71
73 srec_cat version 1.64
74 Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
75 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Peter Miller
76
77 The srec_cat program comes with ABSOLUTELY NO WARRANTY; for details use
78 the 'srec_cat -VERSion License' command. This is free software and you
79 are welcome to redistribute it under certain conditions; for details
80 use the 'srec_cat -VERSion License' command.
81
83 Scott Finneran E‐Mail: scottfinneran@yahoo.com.au
84 Peter Miller E‐Mail: pmiller@opensource.org.au
85
86
87
88Reference Manual SRecord srec_trs80(5)