A register holds the number of parameters. IX points to each parameter. IX+0/IX+1 is the last parameter. This happens because each parameter in order is pushed onto the stack and IX then points to the last parameter pushed. Each parameter is a 16-bit value.
If a parameter is a string, then IX holds the 16-bit value is an address of a "the string descriptor which point to a 3 byte block". The first byte of the string descriptor is the length. The next 2 bytes are an address that point to the string in memory.
With the help of the variable container "@" it is also possible to get a result from an invoked mc-code back to basic.
<br> <br>
== Entering BASIC programs ==
A maximum of 255 characters can be entered for a single BASIC line.
| INPUT
|-
| &a4
| KEY
|-
|-
| &b5
| ON SQ
|-
| &b6
*The &ff code is used as a prefix for more keywords. See the table below for the list of keywords using this prefix.
*&e2,&e8 and &e9 are not used
*&7c ("|") is a character prefix used to identify a an RSX command. e.g. "|DIR".
An RSX is encoded in a BASIC program using the following structure:
|}
*This token identifies a integer (16-bit) number. The two bytes following this token is the number, stored low byte then high byte. e.g. &191a,&2d,&00 represents the integer number "&002d"="45".
*This token (&0B) is changed at run-time to &0D
*This token identifies a integer variable. 02,00,00,var name offset to number in program setup when program RUN. The variable name is stored directly, with bit 7 of the last character set.