Exiting a macro, Labels, E the – Zilog ZUSBOPTS User Manual
Page 278: Section on, Rmation, see the
Labels
UM017105-0511
250
Zilog Developer Studio II – ZNEO™
User Manual
LD ARG0,ARG1
ELSE
LD ARG0,ARG2
ENDIF
ENDMACRO MISSING_ARG
Invocation
MISSING_ARG R1, ,R2 ; missing second arg
Result
LD R1,R2
IFMA
refers to argument numbers that are one based (that is, the first argument is numbered
one).
Exiting a Macro
The
MACEXIT
directive is used to immediately exit a macro. No further processing is per-
formed. However, the assembler checks for proper
if
-
then
conditional directives. A
MACEXIT
directive is normally used to terminate a recursive macro.
The following example is a recursive macro that demonstrates using
MACEXIT
to termi-
nate the macro.
Example
RECURS_MAC: MACRO ARG1,ARG2
IF ARG1==0
MACEXIT
ELSE
RECURS_MAC ARG1-1, ARG2
DB ARG2
ENDIF
ENDMACRO RECURS_MAC
RECURS_MAC 1, ’a’
Labels
Labels are considered symbolic representations of memory locations and can be used to
reference such memory locations within an expression. Labels can be anonymous, local,
imported or exported by directive, and be contained within a defined space, as described
below.
Note: