mirror of https://github.com/x64dbg/btparser
59 lines
1.4 KiB
Plaintext
59 lines
1.4 KiB
Plaintext
|
//--------------------------------------
|
||
|
//--- 010 Editor v2.1.3 Binary Template
|
||
|
//
|
||
|
// File:
|
||
|
// Author:
|
||
|
// Revision:
|
||
|
// Purpose:
|
||
|
//--------------------------------------
|
||
|
|
||
|
string yearFrom1900 (char yy)
|
||
|
{
|
||
|
string s;
|
||
|
SPrintf(s, "%d", 1900 + yy);
|
||
|
return s;
|
||
|
}
|
||
|
|
||
|
struct DBF {
|
||
|
struct HEADER {
|
||
|
char version;
|
||
|
struct DATE_OF_LAST_UPDATE {
|
||
|
char yy <read=yearFrom1900,format=decimal>;
|
||
|
char mm <format=decimal>;
|
||
|
char dd <format=decimal>;
|
||
|
} DateOfLastUpdate;
|
||
|
int numberOfRecords;
|
||
|
short lengthOfHeaderStructure;
|
||
|
short lengthOfEachRecord;
|
||
|
char reserved[2];
|
||
|
char incompleteTrasaction <format=decimal>;
|
||
|
char encryptionFlag <format=decimal>;
|
||
|
int freeRecordThread;
|
||
|
int reserved1[2];
|
||
|
char mdxFlag <format=decimal>;
|
||
|
char languageDriver <format=decimal>;
|
||
|
short reserved2;
|
||
|
} header;
|
||
|
struct FIELD {
|
||
|
char fieldName[11];
|
||
|
char fieldType;
|
||
|
int fieldDataAddress;
|
||
|
char fieldLength <format=decimal>;
|
||
|
char decimalCount <format=decimal>;
|
||
|
short reserved;
|
||
|
char workAreaId <format=decimal>;
|
||
|
short reserved1;
|
||
|
char flags <format=hex>;
|
||
|
char reserved2[7];
|
||
|
char indexFieldFlag <format=decimal>;
|
||
|
} field[(header.lengthOfHeaderStructure-33)/sizeof(struct FIELD)];
|
||
|
char Terminator <format=hex>;
|
||
|
struct RECORD {
|
||
|
char deletedFlag;
|
||
|
char fields[header.lengthOfEachRecord-1];
|
||
|
} record [ header.numberOfRecords ] <optimize=false>;
|
||
|
} dbf <optimize=false>;
|
||
|
|
||
|
|
||
|
|
||
|
|