home *** CD-ROM | disk | FTP | other *** search
-
- /* spobject.h
- - Include File for ST.spobject -
- (c) 1993-94 by Andreas R. Kleinert
- Last changes : 17.07.1994
- */
-
- #ifndef SPOBJECT_H
- #define SPOBJECT_H
-
- #ifndef SUPERPLAY_SUPERPLAYBASE_H
- #include <superplay/superplaybase.h>
- #endif /* SUPERPLAY_SUPERPLAYBASE_H */
-
- #ifndef SPOBJECTS_SPOBJECTBASE_H
- #include <spobjects/spobjectbase.h>
- #endif /* SPOBJECTS_SPOBJECTBASE_H
-
- #ifndef INTUITION_INTUITIONBASE_H
- #include <intuition/intuitionbase.h>
- #endif /* INTUITION_INTUITIONBASE_H */
-
- #ifndef EXEC_MEMORY_H
- #include <exec/memory.h>
- #endif /* EXEC_MEMORY_H */
-
- #ifndef EXEC_LISTS_H
- #include <exec/lists.h>
- #endif /* EXEC_LISTS_H */
-
- #ifndef EXEC_INTERRUPTS_H
- #include <exec/interrupts.h>
- #endif /* EXEC_INTERRUPTS_H */
-
- #ifndef LIBRARIES_IFFPARSE_H
- #include <libraries/iffparse.h> /* for MAKE_ID macro : I'm lazy ... */
- #endif /* LIBRARIES_IFFPARSE_H */
-
- #include <libraries/xpk.h>
- #include <libraries/ppbase.h>
-
- #include <proto/exec.h>
- #include <proto/dos.h>
- #include <proto/intuition.h>
- #include <proto/utility.h>
-
- #include <proto/powerpacker.h>
-
- #include "SP_MemSubs.h"
- #include "SP_SampleListSubs.h"
- #include "st.h"
-
-
- /* macros */
-
- #define ID_PP20 MAKE_ID('P','P','2','0')
- #define ID_XPKF MAKE_ID('X','P','K','F')
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_SuperVisor.c : Functions * */
- /* * * */
- /* *************************************************** */
-
- extern struct SPObjectHandle * __saveds __asm SPO_AllocHandle( register __a1 APTR future_a1);
- extern void __saveds __asm SPO_FreeHandle( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
- extern void __saveds __asm SPO_StopReplay( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
- extern void __saveds __asm SPO_FreeResources( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_WriteSubs.c : ... * */
- /* * * */
- /* *************************************************** */
-
- extern ULONG __saveds __asm SPO_Write( register __a1 struct SPObjectHandle *SPObjectHandle_a1,
- register __a2 struct SPObjectBase *SPO_SourceBase,
- register __a3 struct SPObjectHandle *source_handle);
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_InfoSubs.c : ... * */
- /* * * */
- /* *************************************************** */
-
- /* PUBLIC functions (high level) */
-
- extern ULONG __saveds __asm SPO_FileInfoRequest( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 struct Window *window, register __a3 ULONG future);
- extern ULONG __saveds __asm SPO_CheckFileType(register __a1 BPTR handle, register __a2 UBYTE *filename, register __a3 APTR future);
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_ChangeSubs.c : ... * */
- /* * * */
- /* *************************************************** */
-
- extern ULONG __saveds __asm SPO_SetAccessMode( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __d1 ULONG mode);
- extern ULONG __saveds __asm SPO_SetWriteSubType( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future);
- extern ULONG __saveds __asm SPO_SetReadName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *readname, register __a3 APTR future);
- extern ULONG __saveds __asm SPO_SetWriteName( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 char *writename, register __a3 APTR future);
- extern ULONG __saveds __asm SPO_SetReqIOWindow( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 struct Window *ReqIOWindow);
- extern ULONG __saveds __asm SPO_GetSampleBuffer( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 UBYTE **buffer, register __a3 ULONG *buffersize);
- extern ULONG __saveds __asm SPO_GetSampleInfo( register __a1 struct SPObjectHandle *SPObjectHandle_a1, register __a2 ULONG *samplesPerSec, register __a3 ULONG *volume, register __d1 APTR future);
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_PlaySubs.c : ... * */
- /* * * */
- /* *************************************************** */
-
- /* Global Variables for SP_Player.a */
-
- extern APTR ST_Module;
- extern ULONG ST_Len;
- extern ULONG ST_RunState;
-
- extern ULONG __saveds __asm SPO_Read( register __a1 struct SPObjectHandle *SPObjectHandle);
- extern ULONG __saveds __asm SPO_StartReplay( register __a1 struct SPObjectHandle *SPObjectHandle);
- extern ULONG __saveds __asm SPO_ContinueReplay( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
- extern ULONG __saveds __asm SPO_FastForward( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
- extern ULONG __saveds __asm SPO_FastBackward( register __a1 struct SPObjectHandle *SPObjectHandle_a1);
-
-
- /* *************************************************** */
- /* * * */
- /* * SP_Player.a : ... * */
- /* * * */
- /* *************************************************** */
-
- extern void __asm __saveds ST_UnLoadModule(void);
- extern void __asm __saveds ST_Start(void);
- extern void __asm __saveds ST_Stop(void);
- extern long __asm __saveds ST_IsPlaying(void);
-
-
- /* *************************************************** */
- /* * * */
- /* * Additional Base Declarations * */
- /* * * */
- /* *************************************************** */
-
- extern struct SPObjectBase *SPObjectBase;
-
- extern struct ExecBase *SysBase;
- extern struct DosLibrary *DOSBase;
- extern struct IntuitionBase *IntuitionBase;
- extern struct Library *UtilityBase;
- extern struct XpkBase *XpkBase;
-
-
- /* structures for File-Handling */
-
- struct SPObjectHandle /* STRICTLY PRIVATE */
- {
- BPTR ah_filehandle_source;
- BPTR ah_filehandle_dest;
-
- char *ah_ReadName;
- char *ah_WriteName;
-
- struct Window *ah_ReqIOWindow;
-
- ULONG ah_FileType; /* SP_FILETYPE_ ... */
- ULONG ah_Type; /* SP_SUBTYPE_ ... */
- ULONG ah_WriteMode; /* SP_SUBTYPE_ ... */
- ULONG ah_Medium; /* SPO_MEDIUM_ ... */
-
- struct AIM_MemList *ah_ramhandle;
-
- APTR ah_STModule;
- ULONG ah_STLen;
- ULONG ah_STRunState;
-
- struct SPO_SampleList *ah_SampleList;
- };
-
- struct STSPObjectBase
- {
- struct SPObjectBase spb_SPObjectBase;
-
- APTR spb_SegList; /* private part of Base Data */
- APTR spb_SysBase;
- APTR spb_DOSBase;
- APTR spb_IntuitionBase;
- APTR spb_XpkBase;
- APTR spb_PPBase;
-
- ULONG spb_ChannelsUsed;
- };
-
- #endif /* SPOBJECT_H */
-