home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / misc / emu / AROSdev.lha / AROS / rom / exec / sendio.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-01-10  |  2.0 KB  |  90 lines

  1. /*
  2.     (C) 1995-96 AROS - The Amiga Replacement OS
  3.     $Id: sendio.c,v 1.9 1997/01/10 04:10:13 ldp Exp $
  4.     $Log: sendio.c,v $
  5.     Revision 1.9  1997/01/10 04:10:13  ldp
  6.     New try at AROS_LVO_CALL?NR macros
  7.  
  8.     Revision 1.8  1997/01/07 12:29:09  digulla
  9.     Removed AROS_LVO_CALL*NR() macros
  10.  
  11.     Revision 1.7  1997/01/01 03:46:16  ldp
  12.     Committed Amiga native (support) code
  13.  
  14.     Changed clib to proto
  15.  
  16.     Revision 1.6  1996/12/10 13:51:53  aros
  17.     Moved all #include's in the first column so makedepend can see it.
  18.  
  19.     Revision 1.5  1996/10/24 15:50:57  aros
  20.     Use the official AROS macros over the __AROS versions.
  21.  
  22.     Revision 1.4  1996/08/13 13:56:08  digulla
  23.     Replaced AROS_LA by AROS_LHA
  24.     Replaced some AROS_LH*I by AROS_LH*
  25.     Sorted and added includes
  26.  
  27.     Revision 1.3  1996/08/01 17:41:19  digulla
  28.     Added standard header for all files
  29.  
  30.     Desc:
  31.     Lang: english
  32. */
  33. #include <exec/execbase.h>
  34. #include <exec/io.h>
  35. #include <aros/libcall.h>
  36. #include <proto/exec.h>
  37.  
  38. /*****************************************************************************
  39.  
  40.     NAME */
  41.  
  42.     AROS_LH1(void, SendIO,
  43.  
  44. /*  SYNOPSIS */
  45.     AROS_LHA(struct IORequest *, iORequest, A1),
  46.  
  47. /*  LOCATION */
  48.     struct ExecBase *, SysBase, 77, Exec)
  49.  
  50. /*  FUNCTION
  51.     Start an asynchronous I/O request by calling the device's BeginIO()
  52.     vector. After sending the messages asynchronously you can wait for
  53.     the message to be replied at the I/O reply port.
  54.  
  55.     INPUTS
  56.     iORequest - Pointer to iorequest structure.
  57.  
  58.     RESULT
  59.  
  60.     NOTES
  61.  
  62.     EXAMPLE
  63.  
  64.     BUGS
  65.  
  66.     SEE ALSO
  67.     OpenDevice(), CloseDevice(), DoIO(), CheckIO(), AbortIO(), WaitIO()
  68.  
  69.     INTERNALS
  70.  
  71.     HISTORY
  72.  
  73. ******************************************************************************/
  74. {
  75.     AROS_LIBFUNC_INIT
  76.  
  77.     /* Prepare the message. Don't set quick bit. */
  78.     iORequest->io_Flags=0;
  79.     iORequest->io_Message.mn_Node.ln_Type=0;
  80.  
  81.     /* Call BeginIO() vector */
  82.     AROS_LVO_CALL1NR(
  83.     AROS_LCA(struct IORequest *,iORequest,A1),
  84.     struct Device *,iORequest->io_Device,5,
  85.     );
  86.  
  87.     AROS_LIBFUNC_EXIT
  88. } /* SendIO */
  89.  
  90.