-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfoit.hexpat
70 lines (61 loc) · 978 Bytes
/
foit.hexpat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
struct ByteString
{
u8 length;
char value[length];
};
struct ShortString
{
u16 length;
char value[length];
};
struct BGRA
{
u8 blue;
u8 green;
u8 red;
u8 alpha;
};
struct Palette
{
u32 header;
u16 count;
BGRA colors[count];
u8 footer[10];
};
struct ColorGroup
{
u8 start;
u8 end;
u8 extra1;
u8 extra2;
ByteString name;
};
struct ColorGroups
{
u8 count;
ColorGroup groups[count];
};
struct Header
{
u32 id;
u32 int1;
u8 byte1_length;
if(int1 != 9)
{
u8 byte2;
u8 byte1_arr[byte1_length];
u8 byte3_arr[12];
u16 palFilesCount;
ByteString palFiles[palFilesCount];
}
ByteString name;
ShortString spt;
u16 short1;
u32 int2;
u32 int3;
u8 byte4;
u16 palCount;
};
Header header @ $;
Palette pals[header.palCount] @ $;
ColorGroups groups @ $;