Labels - ksherlock/merlin-wiki GitHub Wiki
Maximum label length is 13 characters (26 for Merlin 16). A label begins with a character >= :
($3a
) and subsequent characters must be >= 0
($30
). Note: ;
($3b
) is in the valid label character range. However, it may not be the first character (since ;
will treated as a comment character) and can not be used for labels passed to a macro (or PMC / VAR) (since ;
will be treated as the separator character).
@
has a special meaning with the LUP pseudo op.
Within a macro, ]1
- ]8
refer to the macro parameters. ]0
, the number of parameters, was added in Merlin 16.
Local labels begin with a :
and are "attached" to the most recent global label.
Variables begin with a ]
and may be redefined. Only backward references are allowed.
Merlin 16:
- indirect long (eg,
lda [$00],y
) address mode was added; a leading[
or trailing]
is therefore no longer allowed. -
]0
macro variable added.
Merlin 16+
-
{
}
was added for algebraic expressions; a leading{
or trailing}
is therefore no longer allowed. -
<
>
=
#
were added as operators;<
=
>
are therefore no longer allowed in identifiers.