Cooperatively requests to suspend the current running program and add a new one to the SCI program stack.
This system call should generally only be used to start programs that must temporarily perform certain operations with full control of the system without inadvertently stopping the running program at an unexpected time, as BIOS_SCI_EXECUTE would do.
This system call can only launch programs. Services and libraries cannot be launched as interrupts.
llMessageLinked(LINK_ROOT, [ident]
, "BIOS_SCI_INTERRUPT_REQUEST", [script_name]
+ "|" + [launch_parameters]
);
• target | LINK_ROOT |
• integer | [ident] |
• key | [script_name] |[launch_parameters] |
Parameter | Description |
---|---|
[ident] |
Integer. Any integer. Will be sent with BIOS_SCI_INTERRUPTED and, if the interrupt is allowed, BIOS_SCI_INTERRUPT_ALLOW, or if it times out, BIOS_SCI_INTERRUPT_TIMEOUT. Can be used to identify specific calls to the SCI, or can be left as 0 if not needed. |
[script_name] |
String. Must be the name of the LSL script in inventory to start. Must be a program. |
[launch_parameters] |
String. Must be a string up to 256 characters. Will be sent with BIOS_SCI_STARTED. Generally, this field is used to pass a file path and/or flags to the newly launched program. For example, the SCOPE console passes all text after the program file name into this field. However, there is no standard format for this field; programs may interpret it as they see fit. |