home *** CD-ROM | disk | FTP | other *** search
-
- #include <exec/types.h>
- #include <exec/memory.h>
- #include <dos/dos.h>
- #include <dos/dosextens.h>
-
- #include <clib/asyncio_protos.h>
- #include <clib/exec_protos.h>
- #include <clib/dos_protos.h>
-
- #include <pragmas/exec_sysbase_pragmas.h>
- #include <pragmas/dos_pragmas.h>
-
- #include <string.h>
-
-
- /*****************************************************************************/
-
-
- #ifdef ASIO_SHARED_LIB
-
- #ifdef _DCC
-
- #define LibCall __geta4
- #define _REG(x) __ ## x
- #define _ASM
- #define _ARGS __regargs
-
- #else
-
- #ifdef __GNUC__
-
- #define LibCall
- #define _REG(x)
- #define _ASM
-
- #else /* __SASC */
-
- #define LibCall __saveds
- #define _REG(x) register __ ## x
- #define _ASM __asm
-
- #endif /* __GNUC__ */
-
- #endif /* _DCC */
-
- #else /* ASIO_SHARED_LIB */
-
- #define LibCall
-
- #endif /* ASIO_SHARED_LIB */
-
-
- /*****************************************************************************/
-
-
- #ifndef ASIO_NOEXTERNALS
- extern struct DosLibrary *DOSBase;
- extern struct ExecBase *SysBase;
- #endif
-
- #ifdef ASIO_SHARED_LIB
- extern struct ExecBase *SysBase;
- extern struct Library *UtilityBase;
- extern struct DosLibrary *DOSBase;
- #endif
-
-
- /*****************************************************************************/
-
-
- /* this macro lets us long-align structures on the stack */
- #define D_S(type,name) char a_##name[sizeof(type)+3]; \
- type *name = (type *)((LONG)(a_##name+3) & ~3);
-
-
- /*****************************************************************************/
-
-
- #ifdef ASIO_NOEXTERNALS
- AsyncFile *
- AS_OpenAsyncFH( BPTR handle, OpenModes mode, LONG bufferSize, BOOL closeIt, struct ExecBase *SysBase, struct DosLibrary *DOSBase );
- #else
- AsyncFile *
- AS_OpenAsyncFH( BPTR handle, OpenModes mode, LONG bufferSize, BOOL closeIt );
- #endif
- VOID AS_SendPacket( AsyncFile *file, APTR arg2 );
- LONG AS_WaitPacket( AsyncFile *file );
- VOID AS_RequeuePacket( AsyncFile *file );
- VOID AS_RecordSyncFailure( AsyncFile *file );
-
-