beautypg.com

Macro invocation, Local macro labels, Macro invocation local macro labels – Zilog EZ80F916 User Manual

Page 240

background image

UM014423-0607

ZiLOG Developer Studio II

eZ80Acclaim!

®

User Manual

220

val_part1 equ 55h

val_part2 equ 33h

The assembly is:

value macro par1, par2

DB par1&_&par2

macend

value val,part1

value val,part2

The generated listing file is:

A 9 value val,part1

000000 55 A+ 9 DB val_part1

A+ 9 macend

A 10 value val,part2

000001 33 A+ 10 DB val_part2

A+ 10 macend

Macro Invocation

A macro is invoked by specifying the macro name, and following the name with the
desired arguments. Use commas to separate the arguments.

Syntax

<macroname>[<arg>[(,<arg>)]...]

Example

add3 A,B,C

This macro invocation causes registers B and C to be added, and the result stored in regis-
ter A.

Local Macro Labels

Local macro labels allow labels to be used within multiple macro expansions without
duplication. When used within the body of a macro, symbols preceded by two dollar signs
(

$$

) are considered local to the scope of the macro and therefore are guaranteed to be

unique. The two dollars signs are replaced by an underscore followed by a macro invoca-
tion number.

Syntax

$$

<label>

This manual is related to the following products: