AMX 86 Procedures
K
A
DAK
293
ajsgnl ajsgnl
Purpose Signal a Task
Used by n Task n IS P n Timer Procedure n Restart Procedure n Exit Procedure
Setup AMXID taskid;
unsigned int tsignals;
unsigned long siginfo;
int status;
.
.
status = ajsgnl(taskid, tsignals, &siginfo);
AX DX BX[14..0] BX:CX=
BX[15]=0
Where taskid is the task id of the task to be signalled.
tsignals is a 15-bit mask identifying the task signals to be sent to the
specified task. Only the least significant 15 bits of tsignals (bits 0 to
14) are used. The meaning of each of these signal bits is up to you.
Set a bit to cause the corresponding task signal. Multiple task signals
can be specified in the mask. All other bits must be 0.
&siginfo is a pointer to storage for 32 bits of information about the state
of the task's 15 task signals at the instant this ajsgnl call completes.
If you are signalling only one task signal or are not interested in the
additional status returned in siginfo, replace &siginfo with
NULL (0L).
Results Interrupts are disabled and then restored to their state at the time of the
call.
Status is returned.
AEROK = Call successful
Task was waiting for one or more of these signals.
The task is no longer waiting. (See Note).
AERWAT = Warning: Task was waiting for one or more of these
signals. The task is still waiting for other
signals. (See Note).
AERWKP = Warning: Task was not waiting for any of these
signals. These signals are now pending for
the task. No signal overruns occurred.
AERNST = Invalid task id