diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/cronos-research.md | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/docs/cronos-research.md b/docs/cronos-research.md index 4cc4da0..64e2d51 100644 --- a/docs/cronos-research.md +++ b/docs/cronos-research.md | |||
@@ -60,7 +60,14 @@ where size can be 0xffffffff (probably to indicate a free/deleted block) some si | |||
60 | large records start with plaintext: { uint32 offset, uint32 size? } | 60 | large records start with plaintext: { uint32 offset, uint32 size? } |
61 | followed by data obfuscated with 'shift==0' | 61 | followed by data obfuscated with 'shift==0' |
62 | 62 | ||
63 | The old description would also assume 12 byte reference blocks but a packed struct | 63 | If the .dat file has a version of 01.03 or later, the corresponding .tad file looks like this: |
64 | |||
65 | uint32_t offset | ||
66 | uint32_t size // with flag in upper bit, 0 -> large record | ||
67 | uint32_t checksum // but sometimes just 0x00000000, 0x00000001 or 0x00000002 | ||
68 | uint32_t unknownn // mostly 0 | ||
69 | |||
70 | The old description would also assume 12 byte reference blocks but a packed struct, probably if the CroFile version is 01.01. | ||
64 | 71 | ||
65 | uint32_t offset1 | 72 | uint32_t offset1 |
66 | uint16_t size1 | 73 | uint16_t size1 |