User manual
Assembler directives ST Assembler-Linker
66/89 Doc ID 11392 Rev 4
Table 48. #IFLAB
Purpose Conditional on argument being a label.
Format #IFLAB <arg>
Description
This directive works just like #IF except it tests that its argument is a valid, predefined
label.
Example
check MACRO param1
#IFLAB param1
%OUT “LABEL”
#ENDIF
MEND
See also #IF2, #ELSE, #IF, #END
Table 49. #INCLUDE
Purpose Insert external source code file.
Format #INCLUDE “<filename>”
Description
INCLUDE files are source code files in the same format as normal modules but with
two important differences: the first line usually reserved for the processor name is like
any other source line, and they have no END directive. They are used to contain
#DEFINE and macro definitions that may be used by many different modules in your
program.
Instead of having each module declare its own set of #DEFINE and macro definitions,
each module just includes the contents of the same #INCLUDE file. The assembler
goes off to the named INCLUDE file and assembles this file before returning to the line
after the #INCLUDE directive in the former source code file.
The benefit is that any alterations made to a macro must be done once, in the include
file; but you'll still have to reassemble all modules referring to the changed entry.
NOTE that the filename must be inside double-quotes.
Example
st7/
#include “defst7.h”
...
END
See also
Table 50. INTEL
Purpose Force Intel-style radix specifier.
Format INTEL
Description
The Intel style:
0ABh Hexadecimal
17o or 17q Octal
100b Binary
17 Decimal (default)
$ Current program counter
This directive forces the Intel format to be required during the assembly.