223 lines
11 KiB
C
223 lines
11 KiB
C
#if !defined(__FIL_Pub_h__)
|
|
#define __FIL_Pub_h__
|
|
|
|
/******************************************/
|
|
#if _MSC_VER >= 1000
|
|
#pragma once
|
|
#endif /* _MSC_VER >= 1000 */
|
|
/******************************************/
|
|
|
|
#include "CPA_Expt.h"
|
|
|
|
#undef EXTERN
|
|
#undef extern
|
|
#if !defined(D_FIL_Globals)
|
|
#define EXTERN extern
|
|
#define D_FIL_Globals
|
|
#else
|
|
#define EXTERN
|
|
#endif /* D_FIL_Globals */
|
|
|
|
|
|
#define GF_FORMAT_RGB_565 0xa
|
|
#define GF_FORMAT_ARGB_1555 0xb
|
|
#define GF_FORMAT_ARGB_4444 0xc
|
|
#define GF_FORMAT_PALETTE 0x5
|
|
#define GF_VERSION 1
|
|
|
|
#if defined(__cplusplus)
|
|
extern "C"
|
|
{
|
|
#endif /* __cplusplus */
|
|
|
|
typedef struct FIL_tdstFileNameListElement_ *FIL_tdxHandleToFileNameListElement;
|
|
typedef struct FIL_tdstFileNameList_ *FIL_tdxHandleToFileNameList;
|
|
typedef struct FIL_tdstConcatFileElement_ *FIL_tdxHandleToConcatFileElement;
|
|
typedef struct FIL_tdstConcatFile_ *FIL_tdxHandleToConcatFile;
|
|
typedef struct FIL_tdstFileInConcatFile_ *FIL_tdxHandleToFileInConcatFile;
|
|
|
|
LST2_M_DynamicUseListOf(FIL_tdxHandleToFileNameListElement);
|
|
|
|
#if defined(D_FIL_StructureDefine)
|
|
typedef struct FIL_tdstFileNameListElement_
|
|
{
|
|
LST2_M_DynamicElementDeclaration(FIL_tdxHandleToFileNameListElement)
|
|
char *szFileName;
|
|
} FIL_tdstFileNameListElement_;
|
|
|
|
typedef struct FIL_tdstFileNameList_
|
|
{
|
|
LST2_M_DynamicAnchorDeclaration(FIL_tdxHandleToFileNameListElement) hFileNameListAnchor;
|
|
} FIL_tdstFileNameList;
|
|
|
|
typedef struct FIL_tdstConcatFileElement_
|
|
{
|
|
char *p_szFileName;
|
|
long lPathNumber; /**** -1 : No path (current path) ****/
|
|
long lOffset;
|
|
unsigned long ulFileLength;
|
|
unsigned long ulXorCode;
|
|
unsigned long ulCheckSum;
|
|
} FIL_tdstConcatFileElement;
|
|
|
|
typedef struct FIL_tdstConcatFile_
|
|
{
|
|
FILE *p_stFile;
|
|
|
|
unsigned long ulNumberOfPath;
|
|
unsigned long ulNumberOfFile;
|
|
unsigned char bUseXorCode;
|
|
unsigned char bUseCheckSum;
|
|
|
|
unsigned char ucPathXorCode;
|
|
unsigned char ucPathCheckSum;
|
|
char **d_szPathList;
|
|
|
|
FIL_tdstConcatFileElement *d_stConcatFileElement;
|
|
} FIL_tdstConcatFile;
|
|
|
|
typedef struct FIL_tdstFileInConcatFile_
|
|
{
|
|
unsigned char bUseConcatFile;
|
|
FILE *p_stFile;
|
|
|
|
unsigned long ulFileActualSeek;
|
|
unsigned long ulFileEndSeek;
|
|
unsigned long ulFileXorCode;
|
|
unsigned long ulFileCheckSum;
|
|
|
|
unsigned long ulCacheSeek;
|
|
unsigned long ulCacheSize;
|
|
unsigned long ulCacheCheckSum;
|
|
unsigned char *p_ucCache;
|
|
} FIL_tdstFileInConcatFile;
|
|
|
|
|
|
#endif /* D_FIL_StructureDefine */
|
|
|
|
typedef struct FIL_tdstFileHeader_
|
|
{
|
|
unsigned long ulWidth;
|
|
unsigned long ulHeight;
|
|
unsigned long ulImageSize;
|
|
long lChromakeyIndex;
|
|
unsigned short uwNbColorInPalette; /*uwPaletteSize; */
|
|
unsigned char ucBpcInPalette; /*ucPaletteEntrySize; */
|
|
unsigned char ucBpp; /*ucNumberOfBits*/
|
|
unsigned char ucRLECode;
|
|
unsigned char ucRed;
|
|
unsigned char ucGreen;
|
|
unsigned char ucBlue;
|
|
unsigned char ucFormat;
|
|
unsigned char ucVersion;
|
|
} FIL_tdstFileHeader;
|
|
|
|
/* Oliv' - Portage v15*/
|
|
#ifndef U64
|
|
#pragma pack(push,1)
|
|
#endif
|
|
/* EndOfOliv'*/
|
|
|
|
typedef struct FIL_tdstRealGFFileHeader_
|
|
{
|
|
unsigned long ulFormat;
|
|
unsigned long ulWidth;
|
|
unsigned long ulHeight;
|
|
unsigned char ucBpp;
|
|
unsigned char ucRLECode;
|
|
} FIL_tdstRealGFFileHeader;
|
|
|
|
typedef struct FIL_tdstGF_
|
|
{
|
|
struct FIL_tdstFileHeader_ stFileHeader;
|
|
unsigned char *p_ucBitMap;
|
|
unsigned char *p_ucPalette;
|
|
} FIL_tdstGF;
|
|
|
|
/* Oliv' - Portage v15*/
|
|
#ifndef U64
|
|
#pragma pack(pop)
|
|
#endif
|
|
/* EndOfOliv'*/
|
|
|
|
|
|
#if !defined(U64)
|
|
EXTERN CPA_EXPORT void FIL_fn_vFirstInit(void);
|
|
EXTERN CPA_EXPORT void FIL_fn_vDisplayInformationError(unsigned char bValue);
|
|
|
|
/**** Files management ****/
|
|
EXTERN CPA_EXPORT unsigned long FIL_fn_ulGetFileSize(char *_szFileName);
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bDestroyFileOrDirectory(char *_szFileName);
|
|
EXTERN CPA_EXPORT FIL_tdxHandleToFileNameList FIL_fn_hSearchFile(char *_szFileName,unsigned long ulAttrib);
|
|
EXTERN CPA_EXPORT FIL_tdxHandleToFileNameList FIL_fn_hSearchRecurseFile(char *_szFileName,unsigned long ulAttrib);
|
|
EXTERN CPA_EXPORT void FIL_fn_vContinueSearchRecurseFile(char *_szFileName,unsigned long ulAttrib,FIL_tdxHandleToFileNameList hFileNameList);
|
|
EXTERN CPA_EXPORT void FIL_fn_vDestroySearchedFile(FIL_tdxHandleToFileNameList _hFileNameList);
|
|
EXTERN CPA_EXPORT void FIL_fn_vDestroyOnElementInFileNameList(FIL_tdxHandleToFileNameListElement hFileNameListElement);
|
|
EXTERN CPA_EXPORT unsigned long FIL_fn_ulGetNumberOfFiles(FIL_tdxHandleToFileNameList hHandleToFileNameList);
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bIsFileExist(char *_szFileName);
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bValidatePath(char *_p_szStartPath, char *_p_szFileName);
|
|
EXTERN CPA_EXPORT unsigned long FIL_fn_ulGetFileSize(char *_szFileName);
|
|
|
|
/**** Concat files ****/
|
|
EXTERN CPA_EXPORT FIL_tdxHandleToConcatFile FIL_fn_hCreateConcatFileHandle(unsigned long ulNumberOfPath,unsigned long ulNumberOfFiles);
|
|
EXTERN CPA_EXPORT void fn_vDestroyConcatFileHandle(FIL_tdxHandleToConcatFile hConcatFile);
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bSetConcatPathElement(FIL_tdxHandleToConcatFile hConcatFile,unsigned long ulPathNumber,char *p_szPathName);
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bSetConcatFileElement(FIL_tdxHandleToConcatFile hConcatFile,unsigned long ulFileNumber,char *p_szFileName);
|
|
EXTERN CPA_EXPORT void FIL_fn_vBuildConcatCompleteFileName(char *szCompleteFilename,FIL_tdxHandleToConcatFile hConcatFile,unsigned long ulIndex);
|
|
EXTERN CPA_EXPORT FIL_tdxHandleToConcatFile FIL_fn_vOpenConcatFile(char *p_szFilename);
|
|
EXTERN CPA_EXPORT void FIL_fn_vCloseConcatFile(FIL_tdxHandleToConcatFile *hConcatFile);
|
|
EXTERN CPA_EXPORT FIL_tdxHandleToFileInConcatFile FIL_fn_hOpenFileInConcatFile(FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFilename);
|
|
EXTERN CPA_EXPORT void FIL_fn_vCloseFileInConcatFile(FIL_tdxHandleToFileInConcatFile *hHandleToFile);
|
|
EXTERN CPA_EXPORT long FIL_fn_lReadFileInConcatFile(void *p_vBuffer,long lSize,long lNumber,FIL_tdxHandleToFileInConcatFile hHandleToFile);
|
|
|
|
/**** BMP pictures files ****/
|
|
EXTERN CPA_EXPORT void FIL_fn_vSaveBMPInFile(char *p_szFileName,unsigned char *p_ucSource,unsigned long ulWidth,unsigned long ulHeight,unsigned char ucNumberOfBytesInFile,unsigned char ucNumberOfBytesInSource);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPInformationFromFile(char *p_szPath,char *p_szFileName,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPFromFileWithInvertPicture(char *p_szPath,char *p_szFileName,FIL_tdstGF *_p_stHeader);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPFromFileWithoutInvertPicture(char *p_szPath,char *p_szFileName,unsigned char **pp_ucDest,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPInformationFromConcatFile(FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPFromConcatFileWithInvertPicture(FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName,unsigned char **pp_ucDest,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadBMPFromConcatFileWithoutInvertPicture(FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName,unsigned char **pp_ucDest,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vFreeBMP(unsigned char **pp_ucMemory);
|
|
EXTERN CPA_EXPORT void FIL_fn_vInvertBMP(unsigned char *p_ucDest,unsigned char ucNumberOfBytesInDest,unsigned long ulWidth,unsigned long ulHeight);
|
|
|
|
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGASaveInFile (char *p_szFileName, unsigned char ucNumberOfBytesInFile,FIL_tdstGF *_p_stSource);
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadInformationFromFile (char *p_szPath,char *p_szFileName, FIL_tdstGF *_p_stHeader );
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadInformationFromConcatFile (FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName, FIL_tdstGF *_p_stHeader);
|
|
#ifndef RETAIL
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadFromFileWithInvertPicture (char *p_szPath,char *p_szFileName, FIL_tdstGF *_p_stHeader );
|
|
#endif
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadFromFileWithoutInvertPicture (char *p_szPath, char *p_szFileName, FIL_tdstGF *_p_stHeader);
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadFromConcatFileWithInvertPicture (FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName, FIL_tdstGF *_p_stHeader );
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGALoadFromConcatFileWithoutInvertPicture(FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName, FIL_tdstGF *_p_stHeader );
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGAInvert (FIL_tdstGF *_p_stHeader );
|
|
|
|
EXTERN CPA_EXPORT void FIL_fn_vTGAFree (unsigned char **pp_ucMemory);
|
|
|
|
/**** GF pictures files ****/
|
|
EXTERN CPA_EXPORT void FIL_fn_vSaveGFInFile(char *p_szFileName, unsigned char ucNumberOfBytesInSource, FIL_tdstGF *_p_stSrcGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFInformationFromFile(char *p_szPath, char *p_szFileName, ACP_tdxBool *p_bTextureInPalette, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFFromFileWithInvertPicture(char *p_szPath, char *p_szFileName,FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFFromFileWithoutInvertPicture(char *p_szPath, char *p_szFileName, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vOldLoadGFInformationFromConcatFile(FIL_tdxHandleToConcatFile hConcatFile, char *p_szPath, char *p_szFileName, ACP_tdxBool *p_bTextureInPalette, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFInformationFromConcatFile(FIL_tdxHandleToConcatFile hConcatFile, char *p_szPath, char *p_szFileName, ACP_tdxBool *p_bTextureInPalette, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFFromConcatFileWithInvertPicture(FIL_tdxHandleToConcatFile hConcatFile, char *p_szPath, char *p_szFileName, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vLoadGFFromConcatFileWithoutInvertPicture(FIL_tdxHandleToConcatFile hConcatFile, char *p_szPath, char *p_szFileName, FIL_tdstGF *_p_stGF);
|
|
EXTERN CPA_EXPORT void FIL_fn_vInvertGF( unsigned char *p_ucDest, unsigned char ucNumberOfBytesInDest, unsigned long ulWidth, unsigned long ulHeight);
|
|
EXTERN CPA_EXPORT void FIL_fn_vInitGlobalHandleToFileInConcatFile(void);
|
|
EXTERN CPA_EXPORT void FIL_fn_vFreeGlobalHandleToFileInConcatFile(void);
|
|
EXTERN CPA_EXPORT void FIL_fn_vGFLoadInformationFromConcatFile(FIL_tdxHandleToConcatFile hConcatFile, char *p_szPath, char *p_szFileName, FIL_tdstGF *_p_stGF);
|
|
|
|
|
|
EXTERN CPA_EXPORT unsigned char FIL_fn_bIsValidPath(char *_szFileName);
|
|
|
|
/*EXTERN CPA_EXPORT void FIL_fn_vLoadGFFromConcatFileWithoutInvertPicture (FIL_tdxHandleToConcatFile hConcatFile,char *p_szPath,char *p_szFileName,unsigned char **pp_ucDest,unsigned char *p_ucNumberOfBytesInDest,unsigned long *p_ulWidth,unsigned long *p_ulHeight);*/
|
|
#endif /* U64 */
|
|
|
|
#if defined(__cplusplus)
|
|
}
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* __FIL_Pub_h__ */
|