Entry | |
---|---|
R0 | Pointer to error block |
R1 | “ABEX” (&58454241) If Return code |
R2 | Return code |
R3 | Pointer to module name |
Exit | |
---|---|
Never returns |
The purpose of this call is to pass control over to the most recent exit handler, and kill the module as pass by R3.
This SWI provides the same functionality as OS_Exit but in addition kills the module as passed by R3.
If R1 = “ABEX”, and 0 \<= R2 \<= Sys$RCLimit, then Sys$ReturnCode is set to R2.
If R1 = “ABEX” and R2 is outside this range, then Sys$ReturnCode is still set to R2, and a garbled error message issued (0 is used at the pointer to an error block). This is a very long lived OS bug.