Repository navigation
.gmd
Synthlight edited this page May 7, 2020
·
3 revisions
//------------------------------------------------
//--- 010 Editor v10.0 Binary Template
// Authors: FusionR (aka Fusion86)
// File Mask: *.gmd
//------------------------------------------------
typedef struct {
uint32 magic; // 0x00444d47, "GMD\00"
uint32 version;
uint32 lang_id;
uint32 unknown1;
uint32 unknown2;
uint32 key_count;
uint32 string_count;
uint32 key_block_size;
uint32 string_block_size;
uint32 name_size;
char name[name_size+1]; // null byte terminated string
} GmdHeader;
typedef struct {
uint32 string_index;
int32 hash_key_2x; // signed_crc32(key_value + key_value)
int32 hash_key_3x; // signed_crc32(key_value + key_value + key_value)
uint32 pad; // always 0xCDCDCDCD
uint64 key_offset;
uint64 bucket_index;
} GmdInfoEntry;
GmdHeader header;
GmdInfoEntry info_entries[header.key_count];
uint64 buckets[256];
char key_block[header.key_block_size];
char string_block[header.string_block_size];