English
Language : 

45111 Datasheet, PDF (63/184 Pages) List of Unclassifed Manufacturers – 14-DAY MONEY BACK GUARANTEE
7 The SASM Assembler
7.4.2 The ENDM Directive
The ENDM directive takes the form:
ENDM
It simply marks the end of the macro declaration.
7.4.3 The EXITM Directive
The EXITM directive takes the form
EXITM
If assembled, it causes an invocation to stop interpolating lines of the macro body at this point. This is
sometimes useful when building complex macros. In most cases, the EXITM directive should be placed
within an IF, IFDEF, or IFNDEF structure.
7.4.4 The LOCAL Directive
The syntax for the LOCAL directive is
LOCAL
<label>[, <label>]…
It declares the labels named after the directive as private symbols. Private symbols are available only
inside a macro body. These symbols are private to each invocation of the particular macro and cannot
be referenced outside of the macro body.
The private symbol is used within a macro body just like any other label. Each time the macro is
invoked, SASM will assign each private symbol a unique name of the form ??0001, ??0002, ??0003, and
so forth. The unique name will appear in the listing file in place of all uses of the text of the private
symbol.
All LOCAL directives must appear immediately after the MACRO directive and before the first actual
line of the macro body.
7.4.5 The EXPAND and NOEXPAND Directives
The EXPAND and NOEXPAND directives specify how to handle macro calls for the purposes of list
generation. If a list file is needed that has no macro mnemonics expanded, simply place the noexpand
directive above the first macro call. The expand and noexpand directives can be used as often as desired
and will only affect the code below them. For example, if source code referenced two macros, M1 and
M2, and a list file was needed with only the M1 macro expanded, the expand/noexpand directives
might be used as follows:
SX-Key/Blitz Development System Manual 2.0 • Parallax, Inc. • Page 63