Showing changes from revision #1 to #2:
Added | Removed | Changed
Entry | |
---|---|
R0 | Pointer to name |
R1 | Pointer to value to set to |
R2 | Length, or -1 to delete |
R3 | Name pointer (0 for |
R4 | Variable type |
Exit | |
---|---|
R0 | Preserved |
R1 | Preserved |
R2 | Preserved |
R3 | New name pointer |
R4 | Variable type |
The purpose of this call is to write a variable value.
This SWI sets a variable’s value to that specified, or deletes the variable. The name may be wildcarded for deletion and update (using ‘*’ and ‘#’). Code variables will not be deleted unless R4 = 16. Literal strings do not need to be null terminated, as R2 is used for the length.
OS_ReadVarVal is marked as being re-entrant, which would allow it to re-enter the same code variable’s read code. No note is made about this in the PRM and the code variable example in the PRM calls OS_Byte 135 which has undefined re-entrancy!