diff options
author | itsme <itsme@xs4all.nl> | 2021-07-13 16:00:08 +0200 |
---|---|---|
committer | itsme <itsme@xs4all.nl> | 2021-07-13 16:00:08 +0200 |
commit | 255faae452fa32f82c5a0efa16701987a71872ea (patch) | |
tree | acecabf2692882f09f5afc17c97aa80dfdde7afb /docs/cronos-research.md | |
parent | f61b66c9a3e50b46f762f17ebd32b3a01a2a54ce (diff) |
updated table definition layout. and added several flag bit values.
Diffstat (limited to 'docs/cronos-research.md')
-rw-r--r-- | docs/cronos-research.md | 55 |
1 files 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 | |||
182 | 182 | ||
183 | ## table definitions | 183 | ## table definitions |
184 | 184 | ||
185 | uint8 version | ||
186 | uint16 unk1 | 185 | uint16 unk1 |
187 | uint16 unk2 | 186 | union { |
188 | uint16 unk3 | 187 | uint8 shortversion; // 1 |
189 | uint32 unk4 | 188 | uint16 version; // >1 |
190 | uint32 unk5 | 189 | } |
190 | uint8 somelen; // 5 or 9 | ||
191 | struct { | ||
192 | uint8 unk4 | ||
193 | uint32 unk5 // not there when 'somelen'==5 | ||
194 | uint32 tableid | ||
195 | } | ||
191 | Name tablename | 196 | Name tablename |
192 | Name unk6 | 197 | Name abbreviation |
193 | uint32 unk7 | 198 | uint32 unk7 |
194 | uint32 nrfields | 199 | uint32 nrfields |
195 | 200 | ||
196 | array { | 201 | array { |
197 | uint16 entrysize -- total nr of bytes in this entry. | 202 | uint16 entrysize -- total nr of bytes in this entry. |
198 | uint16 fieldtype 0 = sysnum, 1 = number, 2 = text, 4 = date, 5 = time, 6 = often notes or fotos (binary?), 18 = "Access Level" | 203 | uint16 fieldtype // see below |
199 | uint32 fieldindex ?? | 204 | uint32 fieldindex ?? |
200 | Name fieldname | 205 | Name fieldname |
201 | uint32 | 206 | uint32 flags |
202 | uint8 | 207 | uint8 alwaysone // maybe the 'minvalue' |
203 | uint32 fieldindex ?? | 208 | uint32 fieldindex ?? |
204 | uint32 fieldsize | 209 | uint32 fieldsize // max fieldsize |
205 | uint32 ? | 210 | uint32 unk4 |
206 | ... | 211 | ... |
212 | followed by remaining unknown bytes | ||
207 | } fields[nrfields] | 213 | } fields[nrfields] |
208 | 214 | ||
215 | followed by remaining unknown bytes | ||
209 | ... | 216 | ... |
210 | 217 | ||
211 | ## field types | 218 | ## field types |
@@ -231,19 +238,19 @@ Other unassigned values in the table entry definition are | |||
231 | * номер в записи = number in the record | 238 | * номер в записи = number in the record |
232 | * Длина Поля = Field size | 239 | * Длина Поля = Field size |
233 | * Flags: | 240 | * Flags: |
234 | * Множественное = Multiple | 241 | * (0x2000) Множественное = Multiple |
235 | * Информативное = Informative | 242 | * (0x0800) Информативное = Informative |
236 | * Некорректируемое = Uncorrectable | 243 | * (0x0040) Некорректируемое = Uncorrectable |
237 | * поиск на вводе = input search | 244 | * (0x1000) поиск на вводе = input search |
238 | * симбольное = symbolic | 245 | * (?) симбольное = symbolic |
239 | * Лемматизировать = Lemmatize | 246 | * (?) Лемматизировать = Lemmatize |
240 | * поиск по значениям = search by values | 247 | * (?) поиск по значениям = search by values |
241 | * замена непустого значения = replacement of a non-empty value | 248 | * (0x0200) замена непустого значения = replacement of a non-empty value |
242 | * замена значения = value replacement | 249 | * (0x0100) замена значения = value replacement |
243 | * автозаполнения = autocomplete | 250 | * (0x0004) автозаполнения = autocomplete |
244 | * корневая связь = root connection | 251 | * (?) корневая связь = root connection |
245 | * допускать дубли = allow doubles | 252 | * (?) допускать дубли = allow doubles |
246 | * обязательное = obligatory | 253 | * (0x0002) обязательное = obligatory |
247 | 254 | ||
248 | ## compressed records | 255 | ## compressed records |
249 | 256 | ||