Hi 2 all
First sorry about my english, I not using it very often.
Does anyone know how exactly the CRC16-checksum in DCT4 is calculated ? I will explain a little more detailed using the NPM-10_dp_v_6.0_mcusw_8.12.exe. There is a file called npm10tmo.bin which contains binary data, in this case a GIF from T-Mobile. Then the npm10tmm.fms, where we find something like
ITEM......NoSubItems=0......Name="t-mobile.gif"......DateModified=24-6-2003 2:28:10......SizeOfData=4590......Itemtype=131077......Copyrighted=0......System=0......ReadOnly=0......Hidden=0......ZeroDataSize=0......CRC16Checksum=55357.......
OK, if you extract the GIF-File (starting from 4749 4638 to 003B) you will see that the size matches 4590.
I you now try to calculate the standard CRC16, you will get 8495 or F3DE (CCITT). But the definition says CRC16Checksum = 55357 which is D83D. Also by trying to initialize to all 1's instead of 0's, Reverse the bits or other methods I can't calculate the same checksum.
May it be posible that there is another polynom in use ? Does anyone know about that ?
The purpose of all is not only to change startup-graphics, also to manipulate other kind of data. Here in Paraguay we use normally software from Cingular and a few more, so I search a way for Nokia DCT4-Phones to change some settings for the local providers. So I will have the software itself modified and do not need to touch the phone again after loading the software. I found some (header-)informations in the .ucp-Files like about File-length and others, but the problem with the checksum is not solved yet.




Reply With Quote
Bookmarks