Homepage

Software
- JWindowsScheduler
- EPGScheduler
- Locosys GT-31/BGT-31 Tools
- Wintec 201 Tools
- Wintec 201 Fileformat
- WebCheck
Programmierung
- Python Codeschnipsel
Fremdsoftware
- Java System Toolkit

Portierungen

Fotografie

Fotos

Kontakt

Wintec 201 Fileformat

C structs

The C structs were provided by the Time Machine X programmer Al - Lai.
His email address can be found in the Time Machine X help dialog.

TK1 Header

typedef struct {
        char pHeader[16];//="WintecLogFormat"; //16
        float f32LogVersion;                   //20
        float f32SWVersion;                    //24
        float f32HWVersion;                    //28
        unsigned short u16FlashID;             //30
        unsigned short u16DataLength;          //32
        unsigned long u32HowManyData;          //36
        unsigned char u8HowManyCheckSumAtLast; //37
        unsigned char u8Reserver;              //38
        unsigned short u16Reserver;            //40
        char pDeviceName1[20];                 //60
        char pDeviceName2[20];                 //80
        char pDeviceName3[40];                 //120
        char pLocalTimeOfReading[20];          //140
        unsigned int u32StartTrackInfoStructAddressForSeek; //144
        unsigned int u32TrackNumber;           //148
        char pResever1[876];                   //1024
};

TK1 Footer Entry

typedef struct {
        unsigned long u32Track;                       //8Bytes
        unsigned long u32TrackStartSeekFromFileStart; //8Bytes
        unsigned long u32PointNumber;                 //8Bytes
        unsigned long u32Seconds;                     //8Bytes
        double distance;                              //8Bytes
};

TK2 Header

typedef struct {
        char pHeader[16];//="WintecLogTk2";   //16
        float f32LogVersion;                  //20
        float f32SWVersion;                   //24
        float f32HWVersion;                   //28
        unsigned short u16FlashID;            //30
        char pDeviceName1[20];                //50
        char pDeviceName2[20];                //70
        char pDeviceName3[40];                //110
        char pLocalTimeOfReading[20];         //130
        //------ Tk2 New --------------------------------
        char TrackDescription[300];           //430
        char ZoneIndex;                       //431  // 1 or -1
        unsigned char ZoneHour;               //432
        unsigned char ZoneMinite;             //433
        char pTimeToFirstPoint[27];           //460
        unsigned int TotalPoint;              //464
        unsigned int TotalTime_s;             //468
        unsigned int TotalDistance_m;         //472
        unsigned int NumberOfPushToLog;       //476
        //------------------------------------------------
        char pResever1[548];                  //1024
};

TK3 Header

typedef struct {
        char pHeader[16];//="WintecLogTk3";   //16
        float f32LogVersion;                  //20
        float f32SWVersion;                   //24
        float f32HWVersion;                   //28
        unsigned short u16FlashID;            //30
        char pDeviceName1[20];                //50
        char pDeviceName2[20];                //70
        char pDeviceName3[40];                //110
        char pLocalTimeOfReading[20];         //130
        //------ Tk2 New --------------------------------
        char Description[300];                //429
        char ZoneIndex;                       //430
        unsigned char ZoneHour;               //431
        unsigned char ZoneMinite;             //432
        char pTimeToFirstPoint[30];           //462
        char pTimeToLastPoint[30];            //492
        unsigned int NumberOfPushToLog;       //496
        //------------------------------------------------
        char pResever1[527];                  //1024
};


Reverse engineering notes

Here are my results of reverse engineering the Wintec 201 file formats.

TK3 Header

00000000: 5769 6e74 6563 4c6f 6754 6b33 0000 0000  WintecLogTk3.... 00-0f: "WintecLogTk3" + 4 * 0x00
00000010: 0000 803f 0000 803f 0000 803f 41bf 5742  ...?...?...?A.WB 10-1D: Konstant. 1E-30: Gerätebezeichnung
00000020: 5432 3031 0000 0000 0000 0000 0000 0000  T201............
00000030: 0000 0000 0000 0000 0000 0000 0000 0000  ................ 32-44: Geräteinfo
00000040: 0000 0000 0000 5959 4d4d 3132 3334 3536  ......YYMM123456 46-53: Seriennummer
00000050: 3738 3930 0000 0000 0000 0000 0000 0000  7890............
00000060: 0000 0000 0000 0000 0000 0000 0000 3230  ..............20 6E-80: Datum Export (aus .TK1 übernommen)
00000070: 3037 5f30 355f 3237 5f32 313a 3337 3a30  07_05_27_21:37:0
00000080: 3700 4400 6900 6500 7300 2000 6900 7300  7.D.i.e.s. .i.s. 82-1ab: Beschreibung (2 Bytes/Buchstaben) 1ac-1ad: 0x00
00000090: 7400 2000 6500 6900 6e00 2000 6200 6500  t. .e.i.n. .b.e.
000000a0: 7300 6f00 6e00 6400 6500 7200 7300 2000  s.o.n.d.e.r.s. .
000000b0: 6c00 6100 6e00 6700 6500 7200 2000 5400  l.a.n.g.e.r. .T.
000000c0: 6500 7800 7400 2000 7500 6d00 2000 7a00  e.x.t. .u.m. .z.
000000d0: 7500 2000 7300 6500 6800 6500 6e00 2c00  u. .s.e.h.e.n.,.
000000e0: 2000 6f00 6200 2000 6500 7300 2000 6800   .o.b. .e.s. .h.
000000f0: 6900 6500 7200 2000 6500 6900 6e00 6500  i.e.r. .e.i.n.e.
00000100: 2000 4700 7200 6500 6e00 7a00 6500 2000   .G.r.e.n.z.e. .
00000110: 6700 6900 6200 7400 2e00 2e00 2e00 2e00  g.i.b.t.........
00000120: 2000 6400 6100 7300 2000 6b00 6100 6e00   .d.a.s. .k.a.n.
00000130: 6e00 2000 6400 6f00 6300 6800 2000 6e00  n. .d.o.c.h. .n.
00000140: 6900 6300 6800 7400 2000 6100 6c00 6c00  i.c.h.t. .a.l.l.
00000150: 6500 7300 2000 6900 6e00 2000 6400 6500  e.s. .i.n. .d.e.
00000160: 6e00 2000 4800 6500 6100 6400 6500 7200  n. .H.e.a.d.e.r.
00000170: 2000 7000 6100 7300 7300 6500 6e00 2c00   .p.a.s.s.e.n.,.
00000180: 2000 6f00 6400 6500 7200 3f00 2000 6100   .o.d.e.r.?. .a.
00000190: 7300 6400 6600 6100 7300 6400 6600 6100  s.d.f.a.s.d.f.a.
000001a0: 7300 6400 6600 6100 7300 6600 0000 0100  s.d.f.a.s.f..... 01ae: FF=TZ < CET; 01=TZ>=CET 01af: Diff. zu CET Bsp: CET+2 = 0102 CET-3 = ff03 CET = 0100
000001b0: 0032 3030 372d 3035 2d32 3654 3134 3a31  .2007-05-26T14:1 01b1-01ca: Datum erster Trackpunkt
000001c0: 333a 3531 5a2b 3031 3a30 3000 0000 0032  3:51Z+01:00....2 01cf-01e8: Datum letzter Trackpunkt
000001d0: 3030 372d 3035 2d32 3654 3134 3a32 353a  007-05-26T14:25:
000001e0: 3330 5a2b 3031 3a30 3000 0000 0010 0000  30Z+01:00....... 01ed-01f0: Anzahl Trackpunkte

TK2 Header:

00000000: 5769 6e74 6563 4c6f 6754 6b32 0000 0000  WintecLogTk2.... 00-0f: "WintecLogTk2" + 4 * 0x00
00000010: 0000 803f 0000 803f 0000 803f 41bf 5742  ...?...?...?A.WB 10-1D: Konstant. 1E-30: Gerätebezeichnung
00000020: 5432 3031 5f53 5369 3132 3334 3536 3738  T201_SSi12345678
00000030: 3900 5349 3233 3435 3637 3839 3031 3233  9.SI234567890123 32-44: Geräteinfo
00000040: 3435 3637 3800 5959 4d4d 3132 3334 3536  45678.YYMM123456 46-53: Seriennummer
00000050: 3738 3930 0000 0000 0000 0000 0000 0000  7890............
00000060: 0000 0000 0000 0000 0000 0000 0000 3230  ..............20 6E-80: Datum Export (aus .TK1 übernommen)
00000070: 3037 5f30 375f 3036 5f32 313a 3438 3a33  07_07_06_21:48:3
00000080: 3100 0000 0000 0000 0000 0000 0000 0000  1............... 82-1ab: Beschreibung (2 Bytes/Buchstaben) 1ac-1ad: 0x00
00000090: 0000 0000 0000 0000 0000 0000 0000 0000  ................ 
000000a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000f0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000100: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000110: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000120: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000130: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000140: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000150: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000160: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000170: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000180: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000190: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000001a0: 0000 0000 0000 0000 0000 0000 0000 0101  ................ 01ae: FF=TZ < CET; 01=TZ>=CET 01af: Diff. zu CET Bsp: CET+2 = 0102 CET-3 = ff03 CET = 0100
000001b0: 0032 3030 372d 3037 2d30 3654 3136 3a34  .2007-07-06T16:4 01b1-01ca: Datum erster Trackpunkt
000001c0: 323a 3335 5a2b 3031 3a30 3000 0902 0000  2:35Z+01:00..... 01cc-01cf: Anzahl Trackpunkte
000001d0: 3c13 0000 f91e 0000 0000 0000 0000 0000  <............... 01d0-01d3: Fahrzeit in Sekunden 01d4-01d7: Tracklänge 01d8-01db: Anzahl Push to Log

TK1 Header:

00000000: 5769 6e74 6563 4c6f 6746 6f72 6d61 7400  WintecLogFormat. 00-0f: "WintecLogFormat" + 0x00
00000010: 0000 803f 0000 803f 0000 803f 41bf 1000  ...?...?...?A... (Konstant)
00000020: c803 0000 0000 0000 5742 5432 3031 5f53  ........WBT201_S 20-23: Anzahl Trackpunkte. 28-3A: Gerätebezeichnung
00000030: 5369 3132 3334 3536 3738 3900 5349 3233  Si123456789.SI23 3C-4E: Geräteinfo
00000040: 3435 3637 3839 3031 3233 3435 3637 3800  456789012345678.
00000050: 5959 4d4d 3132 3334 3536 3738 3930 0000  YYMM1234567890.. 50-5D: Seriennummer
00000060: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000070: 0000 0000 0000 0000 3230 3037 5f30 355f  ........2007_05_ 78-8B: Datum + 0x00
00000080: 3233 5f31 333a 3336 3a35 3700 b065 0000  23_13:36:57..e.. 8C-8F: Position Footer
00000090: 0d00 0000 0000 0000 0000 0000 0000 0000  ................ 90-93: Anzahl Tracks
                                                                    -03ff: Alles 0x00

TK1 Footer Entry:

Pro Track 24 Bytes.
0x00-0x03: Tracknummer
0x04-0x07: Offset 1. Track
0x08-0x0B: Anzahl Trackpunkte
0x0C-0x0F: Länge Fahrzeit in Sekunden
0x10-0x17: Gesamte Tracklänge als Double





Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /www/htdocs/v080712/php/notes.inc:73 Stack trace: #0 /www/htdocs/v080712/soft/python/wintec_201_fileformat.html(320): note_footer('e', 'soft/python/win...', NULL, NULL, NULL, NULL, NULL) #1 {main} thrown in /www/htdocs/v080712/php/notes.inc on line 73