Subject: Formats
#include "standard-types.hsl"
#pragma byteorder(big_endian)
typedef struct BNK
{
DWORD FileDataSectionOffset;
char Unknown[4]; //Probably Version
byte CompressFileData; //I'm pretty sure this is a bool for compressing the file data
DWORD CompressedTableSize;
DWORD DecompressedTableSize;
char CompressedTable[CompressedTableSize];
} BNK;
typedef struct FileEntry
{
DWORD NameLength ;
char FileName[NameLength];
DWORD FileStartOffset;
DWORD FileSize;
} FileEntry;
typedef struct CompressedFileEntry
{
DWORD NameLength ;
char FileName[NameLength];
DWORD FileStartOffset;
DWORD DecompressedFileSize;
DWORD CompressedFileSize;
DWORD Count; //Compressed Chunks. 32k padded?
DWORD DecompressedSizes[Count];
} CompressedFileEntry;
typedef struct FileTable
{
DWORD FileCount;
FileEntry Files[FileCount];
}FileTable;
typedef struct ADB
{
char Header[12]; //LhCoMpReSsEd always
DWORD Unknown; //number of files?
} ADB;
typedef struct ADBEntry
{
DWORD sizeDecompressed;
DWORD sizeCompressed;
} ADBEntry;
#pragma byteorder(big_endian)
typedef struct BNK
{
DWORD FileDataSectionOffset;
char Unknown[4]; //Probably Version
byte CompressFileData; //I'm pretty sure this is a bool for compressing the file data
DWORD CompressedTableSize;
DWORD DecompressedTableSize;
char CompressedTable[CompressedTableSize];
} BNK;
typedef struct FileEntry
{
DWORD NameLength ;
char FileName[NameLength];
DWORD FileStartOffset;
DWORD FileSize;
} FileEntry;
typedef struct CompressedFileEntry
{
DWORD NameLength ;
char FileName[NameLength];
DWORD FileStartOffset;
DWORD DecompressedFileSize;
DWORD CompressedFileSize;
DWORD Count; //Compressed Chunks. 32k padded?
DWORD DecompressedSizes[Count];
} CompressedFileEntry;
typedef struct FileTable
{
DWORD FileCount;
FileEntry Files[FileCount];
}FileTable;
typedef struct ADB
{
char Header[12]; //LhCoMpReSsEd always
DWORD Unknown; //number of files?
} ADB;
typedef struct ADBEntry
{
DWORD sizeDecompressed;
DWORD sizeCompressed;
} ADBEntry;
Apathy Cannot Inspire.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.
Ambivalence cannot lead.
Loved me. Feared me.
Changed me. Killed me.
Anything would be something.
But nothing is worst of all.