Everything

fsnd_dtq

ifsnd_dtq

Outline
Forced send to data queue.
C format
 ER      fsnd_dtq ( ID dtqid, VP_INT data );

Assembly format
 MOVW    DE, !LOWW(_data+0x00002)
 MOVW    BC, !LOWW(_data)
 MOV     A,  #dtqid
 CALL    !!_fsnd_dtq
 
 MOVW    DE, !LOWW(_data+0x00002)
 MOVW    BC, !LOWW(_data)
 MOV     A,  #dtqid
 CALL    !!_ifsnd_dtq

Parameter(s)
I/O
Parameter
Description
I
 ID      dtqid;
ID number of the data queue to which the data element is sent.
I
 VP_INT  data;
Data element to be sent to the data queue.

Explanation
These service calls write data specified by parameter data to the data queue area of the data queue specified by parameter dtqid.
If there is no available space for writing data in the data queue area of the target data queue when either of these service calls is issued, the service call overwrites data to the area with the oldest data that was written.
If a task has been queued to the reception wait queue of the target data queue when this service call is issued, this service call does not write data but transfers the data to the task. As a result, the task is unlinked from the reception wait queue and moves from the WAITING state (data reception wait state) to the READY state, or from the WAITING-SUSPENDED state to the SUSPENDED state.
Return value
Macro
Value
Description
E_OK
0
Normal completion.