diff --git a/TL866_Updater/QT/Dumper.bin b/TL866_Updater/QT/Dumper.bin new file mode 100755 index 0000000..c2b4dd7 Binary files /dev/null and b/TL866_Updater/QT/Dumper.bin differ diff --git a/TL866_Updater/QT/firmware.cpp b/TL866_Updater/QT/firmware.cpp index 3a6f012..508e2bb 100644 --- a/TL866_Updater/QT/firmware.cpp +++ b/TL866_Updater/QT/firmware.cpp @@ -235,17 +235,21 @@ void Firmware::encrypt_serial(unsigned char *key, const unsigned char *firmware) { int i,index=0x0A; unsigned char o1,o2; - + ushort crc16; CRC crc; //compute the right crc16. The last two bytes in the info table is the crc16 in little-endian order and must be max. 0x1FFF, otherwise the decryption will be wrong. - while(crc.crc16(key,BLOCK_SIZE-2, 0) >0x1FFF)//a little brute-force method to match the required CRC; + //a little brute-force method to match the required CRC; + do { for(i=32;i 0x1FFF); key[BLOCK_SIZE-2]=(crc16 & 0xff); key[BLOCK_SIZE-1]=(crc16 >> 8); diff --git a/TL866_Updater/QT/firmware.h b/TL866_Updater/QT/firmware.h index 168b7a9..7e578ec 100644 --- a/TL866_Updater/QT/firmware.h +++ b/TL866_Updater/QT/firmware.h @@ -61,6 +61,10 @@ public: uchar device_code[8]; uchar serial_number[24]; uchar hardware_version; + uchar b0; + uchar b1; + uchar b2; + uchar b3; }TL866_REPORT; diff --git a/TL866_Updater/QT/firmwareA.bin b/TL866_Updater/QT/firmwareA.bin old mode 100644 new mode 100755 index 4053aaf..145d7af Binary files a/TL866_Updater/QT/firmwareA.bin and b/TL866_Updater/QT/firmwareA.bin differ diff --git a/TL866_Updater/QT/firmwareCS.bin b/TL866_Updater/QT/firmwareCS.bin old mode 100644 new mode 100755 index ca728a3..607f178 Binary files a/TL866_Updater/QT/firmwareCS.bin and b/TL866_Updater/QT/firmwareCS.bin differ