User manual

Assembler directives ST Assembler-Linker
56/89 Doc ID 11392 Rev 4
A.2 Directives
Table 20. .BELL
Purpose Ring bell on console.
Format .BELL
Description
This directive simply rings the bell at the console; it can be used to signal the end of
pass-1 or pass-2 with #IF1 or #IF2. This directive does not generate assembly code or
data.
Example .BELL
See also
Table 21. BYTE
Purpose Define byte in object code.
Format BYTE <exp or “string”>,[,<exp or “string”>...]
Description
This directive forces the byte(s) in its argument list into the object code at the current
address. The argument may be composed of complex expressions, which may even
include external labels. If the argument was an expression and had a value greater
than 255 then the lower 8 bits of the expression are used and no errors are generated.
String argument(s) must be surrounded by double quotes: theses are translated into
ASCII and processed byte by byte. It is generally used for defining data tables.
Synonymous with STRING and DC.B.
Example
BYTE 1,2,3 ; generates 01,02,03
BYTE “HELLO” ; generates 48,45,4C,4C,4F
BYTE “HELLO”,0 ; generates 48,45,4C,4C,4F,00
See also DC.B, STRING, WORD, LONG, DC.W, DC.L
Table 22. BYTES
Purpose Label type definition where type = byte.
Format BYTES
Description
When a label is defined, 4 separate attributes are defined with it: scope (internally or
externally defined), value (actual numerical value of the label), relativity (absolute or
relative), and length, (BYTE, WORD and LONG).
All of these attributes, except length, are defined explicitly before or at the definition.
You can force the label to be a certain length by giving a dot suffix, e.g. 'label.b' forces
it to be byte length.
You may also define a default state for label length: labels are created to this length
unless otherwise forced with a suffix. The default is set to WORD at the start of the
assembly, but may be changed by BYTES, WORDS or LONGS to the appropriate
length.
Example
BYTES
lab1 EQU 5 ; byte length for lab1
See also LONGS, WORDS