Execute Macro
by index:
\i O E byte::macro_index
Parameter |
Type |
Range |
Description |
macro_index |
word |
0 ... max. macro index |
index of the macro to be executed |
by name:
\i O E by_name::macro_name
Parameter |
Type |
Range |
Description |
macro_name |
by_name |
ASCII chars (0x01 .. 0xFF) |
0-terminated macro name |
Executes (calls) the macro specified by macro_index or macro_name. Macros executed with this command will be interrupted by a new command sent via any interface as well as touch and keyboard events.
Note
- If the macro does not exist or one of the called commands returns an error, [NACK] is returned.
- When the macro is fully executed, an [ACK] is sent. When called within another macro, execution returns to and continues processing the calling macro.
- When addressing by index, the macro offset (see Set Macro Offset) is taken into account.
- When addressing by name, the macro prefix (refer to Set Macro Name Prefix) and suffix (refer to Set Macro Name Suffix) are taken into account.
- Macros can call other macros, as long as the maximum nesting level is not exhausted. If a macro is executed within another macro ("nested"), the calling macro is resumed after the position where the macro was called once the called macro is finished.
- For building endless loops, use the Jump to Macro command to jump to the beginning of the current macro instead of using the Execute Macro command (this would overflow the macro stack and an error would be reported).
Example
\iOE\D1
\iOE\mMACRO\0
Executes the macro with index 1 and macro "MACRO".
See also:
Macro Related Commands
Execute Protected Macro
Jump to Macro
Set Macro Offset
Set Macro Name Prefix
Set Macro Name Suffix
Copyright © demmel products gmbh. All rights reserved.