LIO_RecvData Function (ROM Call 0x5B)

link.h

unsigned short LIO_RecvData (void *dest, unsigned long size, unsigned long WaitDelay);

Receives data from the link interface.

LIO_RecvData reads size bytes through the link interface, and stores received bytes at the address dest. This functions calls repeatedly OSReadLinkBlock function as many times as necessary to receive wanted amount of data. Parameter WaitDelay is the maximal allowed waiting time: if no data is received during WaitDelay timer ticks (one timer tick is 1/20 seconds by default), the reading fails. When WaitDelay is set to zero, this means "waiting forever". Anyway, this operation may be interrupted by pressing ON key. LIO_RecvData returns zero if the operation was successful, else returns a non-zero value (this value describes the type of the error, but I am not sure about the concrete meaning of particular values).

Note: This functions registers LIO_TIMER for measuring the time. See OSRegisterTimer for more info.


Uses: OSReadLinkBlock, OSLinkReset, off, OSClearBreak, OSFreeTimer, OSRegisterTimer, OSTimerExpired, OSTimerRestart, ROM Call 0x46E
Used by: LIO_Get, LIO_Receive, LIO_Send, LIO_SendProduct, OSCheckSilentLink, OSLinkCmd, handleVarLinkKey, LIO_SendIdList