Assembler Listing File Format
Listing File Commentary
D-2
DSP ASSEMBLER REFERENCE MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
lines) have been shifted right to make room for line numbers and constant or data value
displays, as for example with the group of equates beginning on line 12.
On line 19 an
INCLUDE
directive causes the source input to be switched to a file named
SIN16.ASM in the FFTLIB subdirectory. This usage of
INCLUDE
is provided for illustrative
purposes, since the previous
MACLIB
declaration makes it unnecessary. By line 20 the
input stream has changed to the new file; the first line of the new file is the definition line
for a macro that will initialize the FFT sine and cosine tables in X and Y memory. Notice
the lower case
‘m
’ to the right of the line number on line 21 and following. This indicates
that a macro definition is in progress; the lines are not assembled but are retained for mac-
ro expansion later.
At line 41 the
ENDM
directive is encountered, as well as the end of the included macro
file. The source input reverts to the original file, the next line of which is an invocation of
the macro (SIN16) just defined. Since the
MEX
option was not specified, the macro ex-
pansion does not appear in the listing. However, on the next non-empty source line, the
OPT
directive is used again to turn on printing of macro expansions and turn off the dis-
play of macro definitions (
NOMD
).
Line 68 of the listing contains an
ORG
directive which sets up the initial value of the runt-
ime location counter to $200. The memory space and counter value are shown to the right
of the line number column. If an overlay had been defined here (see Chapter 4), the load
memory space and location counter would appear to the right of the runtime space and
counter value. The line numbers then skip to line 151 which contains a call to the macro
DITFFT. The macro was not defined in this source file but its definition was read from an
external file in a macro library directory as specified by the prior
MACLIB
directive. The
skipped line numbers represent that definition, which does not appear due to the previ-
ously given
NOMD
option.
Line 203 illustrates several listing features of the Assembler. The plus sign (
+
) to the right
of the line number column indicates a macro expansion in progress. The next field is the
memory space and location counter value, followed by the encoded instruction. The mne-
monic and operand fields are spread out for easier reading. The ‘00000227’ by itself on
line 204 is the loop address for the
DO
loop; it is stored in the second instruction word and
represents one less than the address of the label _end_pass.
On page 7 there are two errors reported in the listing. Error messages contain the listing
line number, the source file name and the source line number where the error occurred,
a severity level (WARNING, ERROR, or FATAL), and the message text. In addition, the
error message may contain extra information indicating erroneous symbols or the field
(Label, Opcode, Operand, Opcode 2, Operand 2, X Move, Y Move) where the error oc-
curred. Page 8 is the end of the source statement listing. After the
END
directive at line
232, the Assembler reports the total number of errors and warnings it encountered during
the assembly process.
After the source listing, the Assembler records other information encountered during as-
sembly. On page 9 the names of the two macros used in the program are listed, along
with their definition lines in the source listing. If any sections had been declared in the pro-
F
Freescale Semiconductor, Inc.
n
.