Go to the first, previous, next, last section, table of contents.

Special syntactic markers

GASP recognizes a few special markers: to delimit comments, to continue a statement on the next line, to separate symbols from other characters, and to copy text to the output literally. (One other special marker, `\@', works only within macro definitions; see section Defining your own directives.)

The trailing part of any GASP source line may be a comment. A comment begins with the first unquoted comment character (`!' by default), or an escaped or doubled comment character (`\!' or `!!' by default), and extends to the end of a line. You can specify what comment character to use with the `-c' option (see section Command Line Options). The two kinds of comment markers lead to slightly different treatment:

!
A single, un-escaped comment character generates an assembly comment in the GASP output. GASP evaluates any preprocessor variables (macro arguments, or variables defined with .ASSIGNA or .ASSIGNC) present. For example, a macro that begins like this
        .MACRO  SUM FROM=0, TO=9
        ! \FROM \TO
issues as the first line of output a comment that records the values you used to call the macro.
\!
!!
Either an escaped comment character, or a double comment character, marks a GASP source comment. GASP does not copy such comments to the assembly output.

To continue a statement on the next line of the file, begin the second line with the character `+'.

Occasionally you may want to prevent GASP from preprocessing some particular bit of text. To copy literally from the GASP source to its output, place `\(' before the string to copy, and `)' at the end. For example, write `\(\!)' if you need the characters `\!' in your assembly output.

To separate a preprocessor variable from text to appear immediately after its value, write a single quote ('). For example, `.SDATA "\P'1"' writes a string built by concatenating the value of P and the digit `1'. (You cannot achieve this by writing just `\P1', since `P1' is itself a valid name for a preprocessor variable.)


Go to the first, previous, next, last section, table of contents.