Eldos Solid File System ST XFS
Jump to navigation
Jump to search
Back to index | Edit this page
ST, XFS
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
// Eldos Solid File System
// ST, XFS file format
// header
2 bytes (uint16) - unknown // 12
2 bytes (char) - magic // NW
num_of_entries *
{
2 bytes (uint16) - entry type // 33 - directory info structure
// 32 - any other structure with data?
// 0 - end structure or nothing
}
x bytes - padding
// file system info?
2 bytes (char) - magic // NW
2 bytes - nulls
2 bytes - unknown // 1
8 bytes - nulls
4 bytes - next line characters // \x0D\x00\x0A\x00
124 bytes (char) - storage logo name // default is "SolFS for Windows (c) EldoS Corporation\n"
5 bytes - nulls
4 bytes (uint32) - unknown // 4
4 bytes (uint32) - unknown // 260, 516, 1028, 1540 or 2308
4 bytes (uint32) - unknown // 256, 1792, 4608, 12288 or 12800
93 bytes - unknown
4 bytes (uint32) - some CRC value // e.g. \x95\xAF\x25\x3B
x bytes - padding
// unknown structure
4 bytes (uint32) - entry type // 32
4 bytes (uint32) - entry ID // e.g. 2
68-102 bytes - unknown
x bytes - padding
// Note: data ends right after this structure
// when there are no files and no directories in the XFS/ST file.
// Note: First directory is always root,
// then there are sructures for all sub-directories in the filesystem.
num_of_directories *
{
// directory info structure
4 bytes (uint32) - entry type // 33
4 bytes (uint32) - entry ID // e.g. 7
24 bytes - unknown
num_of_files_in_directory *
{
8 bytes - unknown
4 bytes (uint32) - directory or file attributes // e.g. 257 - file + hidden
// e.g. 2 - directory
4 bytes (uint32) - directory or file name length
4 bytes - nulls
44 bytes (char) - directory or file name // e.g. "DIR_2" or "text3.txt"
}
num_of_files_in_directory *
{
// file data structure
4 bytes (uint32) - entry type // 32
4 bytes (uint32) - entry ID // e.g. 8
44 bytes - unknown
8 bytes (double) - creation time
8 bytes (double) - modification time
8 bytes (double) - last access time
4 bytes (uint32) - file size
16 bytes - unknown
x bytes - file data
x bytes - padding
}
}
num_of_directories *
{
// end structure
4 bytes (uint32) - entry type // 0
4 bytes (uint32) - entry ID // e.g. 17
x bytes - padding
}
MultiEx BMS Script
Not written yet.
Attributes
This file format supports storing informmation about directory and file attributes.
Below tables lists all attributes names and values.
| Attribute name | Value (Hex) | Value (Dec) |
|---|---|---|
| File | 0x01 | 1 |
| Directory | 0x02 | 2 |
| Compressed | 0x08 | 8 |
| Encrypted | 0x10 | 16 |
| SymLink | 0x20 | 32 |
| ReadOnly | 0x40 | 64 |
| Archive | 0x80 | 128 |
| Hidden | 0x100 | 256 |
| System | 0x200 | 512 |
| Temporary | 0x400 | 1024 |
| DeleteOnClose | 0x800 | 2048 |
| Reserved0 | 0x1000 | 4096 |
| Reserved1 | 0x2000 | 8192 |
| Reserved2 | 0x4000 | 16384 |
| Reserved3 | 0x8000 | 32768 |
| UserDefined | 0xFFFF0000 | 4294901760 |
| AnyFile | 0xFFFFFFFF | 4294967295 |
Notes and Comments
- This is format used by Eldos Solid File System.
- Files can be encrypted with AES and compressed with ZLIB. Whole archive may be encrypted with AES. Custom encryption is also supported.
- Padding size depends on page size which can be set to 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 or 65536 bytes.
Games
List of games using this file format:
- Rakion
- Rakion Chaos Force
Compatible Programs
See Also