From 255faae452fa32f82c5a0efa16701987a71872ea Mon Sep 17 00:00:00 2001 From: itsme Date: Tue, 13 Jul 2021 16:00:08 +0200 Subject: updated table definition layout. and added several flag bit values. --- docs/cronos-research.md | 55 ++++++++++++++++++++++++++++--------------------- 1 file changed, 31 insertions(+), 24 deletions(-) diff --git a/docs/cronos-research.md b/docs/cronos-research.md index 1ebedf4..6f8cd4f 100644 --- a/docs/cronos-research.md +++ b/docs/cronos-research.md @@ -182,30 +182,37 @@ the `Base000` entry contains the record number for the table definition of the f ## table definitions - uint8 version uint16 unk1 - uint16 unk2 - uint16 unk3 - uint32 unk4 - uint32 unk5 + union { + uint8 shortversion; // 1 + uint16 version; // >1 + } + uint8 somelen; // 5 or 9 + struct { + uint8 unk4 + uint32 unk5 // not there when 'somelen'==5 + uint32 tableid + } Name tablename - Name unk6 + Name abbreviation uint32 unk7 uint32 nrfields array { uint16 entrysize -- total nr of bytes in this entry. - uint16 fieldtype 0 = sysnum, 1 = number, 2 = text, 4 = date, 5 = time, 6 = often notes or fotos (binary?), 18 = "Access Level" + uint16 fieldtype // see below uint32 fieldindex ?? Name fieldname - uint32 - uint8 + uint32 flags + uint8 alwaysone // maybe the 'minvalue' uint32 fieldindex ?? - uint32 fieldsize - uint32 ? + uint32 fieldsize // max fieldsize + uint32 unk4 ... + followed by remaining unknown bytes } fields[nrfields] + followed by remaining unknown bytes ... ## field types @@ -231,19 +238,19 @@ Other unassigned values in the table entry definition are * номер в записи = number in the record * Длина Поля = Field size * Flags: - * Множественное = Multiple - * Информативное = Informative - * Некорректируемое = Uncorrectable - * поиск на вводе = input search - * симбольное = symbolic - * Лемматизировать = Lemmatize - * поиск по значениям = search by values - * замена непустого значения = replacement of a non-empty value - * замена значения = value replacement - * автозаполнения = autocomplete - * корневая связь = root connection - * допускать дубли = allow doubles - * обязательное = obligatory + * (0x2000) Множественное = Multiple + * (0x0800) Информативное = Informative + * (0x0040) Некорректируемое = Uncorrectable + * (0x1000) поиск на вводе = input search + * (?) симбольное = symbolic + * (?) Лемматизировать = Lemmatize + * (?) поиск по значениям = search by values + * (0x0200) замена непустого значения = replacement of a non-empty value + * (0x0100) замена значения = value replacement + * (0x0004) автозаполнения = autocomplete + * (?) корневая связь = root connection + * (?) допускать дубли = allow doubles + * (0x0002) обязательное = obligatory ## compressed records -- cgit v1.2.3