© 2000 Ubicom, Inc. All rights reserved. - 19 - www.ubicom.com SX IrDA Virtual Peripheral Implementation AN16 No indication is given when a frame has been sent. The
lmp2appTxValid  or  lmp2appTxError  handlers  will
not  be  called  until  the  remote  station  responds  with  an
acknowledge. This poses a problem in that data can be
received before the transmitted data has been acknowl-
edged  and  so  transmitted  data  may  need  to  be  resent
after more data has been received. Normally if the trans-
mitted data is not-acknowledged then the reply will be a
S frame thus no data would have been sent, however it is
still possible to receive data followed by a transmit not-
acknowledge if a frame is lost.
For solid bi-directional data flow the events will occur in
the following order:
lmp2app Tx  CommStart lmp2app Tx  CommData * n (up to 62) lmp2app Rx CommData * n (up to 62) lmp2app Tx  CommValid/Error lmp2app Rx CommValid/Error lmp2app Tx  CommStart etc. If the connection is terminated or times-out while there is
unconfirmed data then the appropriate error message will
be passed.
3.5.2   Discovery The XID discovery process can be initiated by the appli-
cation layer by calling DiscoveryRequest.The applica-
tion should call the lap layer in the following way:
...
page
app2lapDiscoveryRequest ;Set page bits for call call app2lapDiscoveryRequest ;call lap layer bank ApplicationBank ;change to correct local bank ... The  request  will  be  accepted  if  there  is  no  connection
and  there  has  been  no  IR  detected  in  the  past  500ms.
Acceptance  will  be  indicated  by  z  being  returned  false
and refusal by z being returned true. The XID Information
field will not be passed to the application layer but will be
displayed out the debug port if the ShowXIDInfo debug
has been enabled.