S-RECORD INFORMATION
M68CPU32BUG REV 1
A-2
Each record may be terminated with a CR/LF/NULL. Additionally, an S-record may have an
initial field to accommodate other data such as line numbers generated by some time-sharing
systems. An S-record file is a normal ASCII text file in the operating system in which it resides.
Accuracy of transmission is ensured by the record length (byte count) and checksum fields.
A.3 S-RECORD TYPES
Eight types of S-records have been defined to accommodate the several needs of the encoding,
transportation and decoding functions. The various Motorola upload, download and other records
transportation control programs, as well as cross assemblers, linkers and other file-creating or
debugging programs, utilize only those S-records which serve the purpose of the program. For
specific information on which S-records are supported by a particular program, the user’s manual
for the program must be consulted. CPU32Bug supports S0, S1, S2, S3, S7, S8, and S9 records.
An S-record format module may contain S-records of the following types:
S0
The header record for each block of S-records, The code/data.field may contain any descriptive
information identifying the following block of S-records. The address field is normally zeros.
S1
A record containing code/data and the 2-byte address at which the code/data is to reside.
S2
A record containing code/data and the 3-byte address at which the code/data is to reside.
S3
A record containing code/data and the 4-byte address at which the code/data is to reside.
S5
A record containing the number of S1, S2, and S3 records transmitted in a particular block. This
count appears in the address field. There is no code/data field.
S7
A termination record for a block of S3 records, The address field may optionally contain the 4-
byte address of the instruction to which control is passed. There is no code/data field.
S8
A termination record for a block of S2 records. The address field may optionally contain the 3-
byte address of the instruction to which control is passed. There is no code/data field.
S9
A termination record for a block of S1 records. The address field may optionally contain the 2-
byte address of the instruction to which control is passed. If not specified, the first entry point
specification encountered in the object module input will be used. There is no code/data field.
Only one termination record is used for each block of S-records. S7 and S8 records are usually
used only when control is to be passed to a 3 or 4 byte address. Normally, only one header record
is used, although it is possible for multiple header records to occur.