HP 9835A Programming Manual page 128

35 series desktop computer assembly development rom
Table of Contents

Advertisement

110 Communication Between BASIC and Assembly Language
Parameter declarations have "types" just like variables. These types have to correspond to the
"types" of the arguments used in the ICALL. The declarations and their types are -
meaning integer
meaning full-precision
meaning short-precision
' : ::::. i
i"",::
meaning string
F"" I
L...
meaning a file number
In the above example, STR had to be used as the first parameter declaration because the first
argument was a string. Similarly, REL had to be the second declaration because the second
argument was a numeric expression (which is always full-precision).
When an array is to be passed, the declaration is followed by an "array identifier" -
(*).
Thus,
when arrays are involved, the declarations appear as -
meaning an integer array
meaning a full-precision array
meaning a short-precision array
meaning a string array
(File numbers do not come in arrays, so that declaration - FIL - cannot be followed by an
array identifier.)
Since the example call above uses a string array as the first argument, the corresponding
assembly language parameter declaration uses an array identifier after STR.
The parameter declarations are associated with the arguments in the ICALL in the same order.
If the types do not match when the ICALL is executed, an error occurs (number 8).
So, if the subroutine entry looks like-
SOURCE
Sor~.
LDA

Advertisement

Table of Contents
loading

Table of Contents