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.
⚠️ **GitHub.com Fallback** ⚠️