6-30 The Development Library
ll!
! ff!B!S!hh!
! S!B•!
! BS=4!
•!
ll!
+!=5EEEBM!:YL!=452=!4LS6=4!
H><:EBM!325:EBM!
BS=4!
•!
Note that it is your responsibility to destroy the local environment using ABND and that MASD does not handle
multiple level of definition of local variables, nor it is destroying the current environment, even if ABND is used.
Variables defined this way will be valid until a new set of variables are defined.
Defines
If the instruction matches a define, the correct code is inserted (see the
!4<76=< instruction)
Labels
If the instruction matches the name of a constant or a label, the value of the said constant or label is inserted (if you
insert a label, be sure to know what you are doing and to be in absolute mode).
extable
If the instruction matches an entry in the extable (see appropriate section at the end of this document) the value
associated with this entry is used.
452!!!!Will produce RR3V8!
Note: Using an external table is much faster than using constants. On the other hand, constants are project
dependent, which is not the case of an external table.
Tokens
Then, the following instructions are tested:
ll!
Program prologue $02D9D
• or <=4! List, Program or Algebraic end $0312B
f!
List prologue $02A74
h!
List end $0312B
MB:K6T!
Algebraic matrix object
DPMSLE6O!
Algebraic prologue $02AB8
5=6:!
Unit prolog $02ADA
72:KH!W&kGZp$Gp!
flash pointer from constant
72:K!%$G|!w$un)!
flash pointer from value
g!&Zp!
System Binary of cst value, given in hexadecimal. If there is no spaces between
the
g and the cst, MASD will try, if possible to use the internally defined
system binary
2:K!&Zp!
Address.!2:K!a<HO7 generates 7OH<a.
BO2:K!&Zp3!&ZpH!
Extended pointer with given hexadecimal values for the address and switch
address
KLM2:KH!ˆ?ut%„G$o
)!
XLIB object from constant
KLM2:K!Et%=!L%^=!
XLIB object from value
{!j)$u!
Real number
{{!j)$u!
Long real number
O{!j)$u3!j)$uH!
Complex number
O{{!j)$u3!j)$uH!
Long complex number
IdddI!
Character string. Special characters can be included by typing ‹ and the ASCII
value on two hexadecimal characters. \ can be inserted by typing \\
J6=:!()&to$uw$un)!
Integer
64!G$o)!
Global name (see I for info on character encoding)
EBM!G$o)!
Local name (see I for info on character encoding)
:B>!&yjZ!
Tagged object