/* Prototypes for functions defined in
library.c
 */

extern SHORT OSVersion;

extern LONG LibErr;

void _CXBRK(int );

LONG __asm __saveds __UserLibInit(register __a6 struct Library * );

void __asm __saveds __UserLibCleanup(register __a6 struct Library * );

LONG __asm __saveds LIBXFA_LibErr(void);

extern struct Screen * XFA_PackScr;

extern struct BitMap * XFA_PackBM;

extern struct BitMap * XFA_PackBM0;

extern struct BitMap * XFA_PackBM1;

extern struct Mem * XFA_DFrame;

extern struct Mem * XFA_Sound;

extern LONG XFA_NumFrames;

extern LONG XFA_PackMode;

extern void * XFA_PackBuf;

extern struct XFA_Head XFA_Head;

extern struct XFA_CMap XFA_CMap;

extern struct Screen * XFA_PlayScr0;

extern struct Screen * XFA_PlayScr1;

void DestroyBitMap(struct BitMap * );

void DestroyPubBitMap(struct BitMap * );

struct BitMap * CreatePubBitMap(SHORT , SHORT , SHORT , SHORT );

struct BitMap * CreateBitMap(SHORT , SHORT , SHORT , SHORT );

void ClearBitMap(struct BitMap * );

void CopyBitMap(struct BitMap * , struct BitMap * );

UBYTE * PutCode(UBYTE * , UBYTE , BOOL );

UBYTE * RunLenght_W(UWORD * , UBYTE * , LONG , BOOL );

UBYTE * PutSkip_W(LONG , UBYTE * , BOOL );

UBYTE * RunLenght_L(ULONG * , UBYTE * , LONG , BOOL );

UBYTE * PutSkip_L(LONG , UBYTE * , BOOL );

LONG __asm __saveds LIBXFA_PackMem_W(register __a0 UWORD * , register __a1 UWORD * , register __a2 UBYTE * , register __d0 LONG , register __d1 BOOL );

LONG __asm __saveds LIBXFA_PackMem_L(register __a0 ULONG * , register __a1 ULONG * , register __a2 UBYTE * , register __d0 LONG , register __d1 BOOL );

LONG __asm __saveds LIBXFA_UnPackBitMap(register __a0 struct BitMap * , register __a1 void * );

LONG __asm __saveds LIBXFA_PackBitMap(register __a0 struct BitMap * , register __a1 struct BitMap * , register __a2 void * , register __d0 BOOL );

BOOL PackDFrame(struct BitMap * , struct BitMap * , struct Mem * );

BOOL __asm __saveds LIBXFA_OpenPackStuff(void);

void __asm __saveds LIBXFA_ClosePackStuff(register __d0 LONG );

void ClearRaster(LONG );

void __asm __saveds LIBXFA_PosOnFrame(register __d0 LONG );

BOOL __asm __saveds LIBXFA_PutFrame(register __d0 LONG );

BOOL PutCloseFrame(LONG );

BOOL __asm __saveds LIBXFA_PutSkip(register __d0 LONG );

BOOL __asm __saveds LIBXFA_IsSkip(register __d0 LONG );

BOOL __asm __saveds LIBXFA_PutSeqFrame(register __d0 LONG );

extern struct BitMap DisplayBM0;

extern struct BitMap DisplayBM1;

extern struct BitMap * XFA_PlayBM0;

extern struct BitMap * XFA_PlayBM1;

extern struct SimpleSprite NullSprite;

void SetDisplayBitMaps(struct BitMap * , struct BitMap * );

SHORT ScreenModulo(struct Screen * );

BOOL StartLaceScreen(struct Screen * );

void EndLaceScreen(struct Screen * );

ULONG WBModeID(void);

BOOL __asm __saveds LIBXFA_OpenPlayStuff(register __d0 BOOL );

void __asm __saveds LIBXFA_ClosePlayStuff(void);

BOOL __asm __saveds LIBXFA_Play(register __d0 BOOL , register __d1 BOOL , register __d2 BOOL );

struct XFA_Head * __asm __saveds LIBXFA_HeadPtr(void);

struct XFA_CMap * __asm __saveds LIBXFA_CMapPtr(void);

void InitXFAHead(struct XFA_Head * );

void InitXFACMap(struct XFA_CMap * );

void __asm __saveds LIBXFA_UseHead(register __a0 struct XFA_Head * );

void __asm __saveds LIBXFA_UseCMap(register __a0 struct Screen * , register __a1 struct XFA_CMap * );

void GetRGB(struct Screen * , SHORT , struct rgb * );

void SetRGB(struct Screen * , SHORT , struct rgb * );

void IFFClose(struct IFFHandle * );

struct IFFHandle * IFFWrite(char * );

struct IFFHandle * IFFRead(char * );

LONG __asm __saveds LIBXFA_SaveAnim(register __a0 char * );

LONG __asm __saveds LIBXFA_LoadAnim(register __a0 char * , register __a1 struct XFA_Head * , register __a2 struct XFA_CMap * , register __d0 BOOL );

struct IFFHandle * __asm __saveds LIBXFA_OpenRead(register __a0 char * , register __a1 struct XFA_Head * , register __a2 struct XFA_CMap * );

LONG __asm __saveds LIBXFA_ReadFrame(register __a0 struct IFFHandle * , register __a1 struct Mem * );

void __asm __saveds LIBXFA_CloseRead(register __a0 struct IFFHandle * );

LONG __asm __saveds LIBXFA_SaveScreen(register __a0 struct Screen * , register __a1 char * );

void __asm __saveds LIBXFA_SetPack(register __a0 struct Screen * , register __d0 LONG );

void __asm __saveds LIBXFA_SetFramesArray(register __a0 struct Mem * , register __d0 LONG );

struct Mem * __asm __saveds LIBXFA_AllocFrames(register __d0 LONG );

void __asm __saveds LIBXFA_FreeFrames(void);

void __asm __saveds LIBXFA_FreeFrame(register __a0 struct Mem * );

void __asm __saveds LIBXFA_FreeAnim(void);

LONG __asm __saveds LIBXFA_AnimMem(void);

LONG __asm __saveds LIBXFA_AnimFrames(void);

LONG __asm __saveds LIBXFA_GetPackMode(void);

void __asm __saveds LIBXFA_ChangePackBitMap(register __a0 struct BitMap * );

