Jump to content

Erase the T9 Dictionary


Guest marauderz

Recommended Posts

Guest gvr

This is going to make things much easier :D

I'm fed up of having to edit and postpone a msg each time I want to use a word thats not in the T9 and to be able to use the word again!!

Link to comment
Share on other sites

Guest dreamweavel

Dunna if anyone else gets this but i still sort of lose the T9 dictionary daily :cry: i copy it back to my PC from my phone (E200 with ROM upgrade), edit it and get a checksum error but i can resave it, copy it back to my phone and it works OK :shock:

It's a bit of a pain cos the T9 monitor has already backed up the knackered version to /my docs by this point so i can't just manually copy it back but have to wait til i get back home... :?

I've tried allsorts but can't seem to ruin it on demand, it just happens sometimes but always gives the checksum error in editor... I guess this means that when it's not working its not 0 bytes or the monitor wouldn't copy it back to /my docs.

Might it be poss to get the monitor to check for checksum error as well as the 0 bytes?

Link to comment
Share on other sites

Guest echolock

I've recently started getting this problem as well. I've tried stopping the monitor during the backup/restore and then restarting it, to no avail. Is the monitor restoring a dodgy backup?

Link to comment
Share on other sites

Guest Pagemakers

Anybody managed to enter more that 100 words into the T9 editor program? As soon as I hit 100 words the editor crashes when it saves.

Link to comment
Share on other sites

Guest stevekay

In response to the problem of the edited file not being what you expected, make sure that any other applications are not running (especially SMS(Inbox) ) as they tend to save the T9 file on exit from what they have in memory.

Best way to kill all apps is to run SP Task Manager, press 1 and then # and confirm. Then copy the mst9.udb file back to the phone (or use the latest version of T9 Editor).

Hope this helps,

Steve

Link to comment
Share on other sites

Guest Pagemakers
Anybody managed to enter more that 100 words into the T9 editor program?  As soon as I hit 100 words the editor crashes when it saves.

Disregard this. I was still using version 1 which is available on page 1 of this topic. Version 1.5a which is also available in this topic works fine.

Link to comment
Share on other sites

Guest abdllatif

I don't manage to get more than 270 words inside the file. More words results in a failure, the file does backup de other file in the My Documents folder, for example on 277 words. But the file in de system folder only has 246 words in it or so afterwards.

I also notice that if I ad double words manually with the T9 Editor on the computer, the program doesn't recognize similar words, and does actually ad them. In the past (other version) the file did recognize them.

Also if I safe I see writing words to file 1.....to 270 and after that padding file 1......to 199 what is the difference here?

Just trying to learn the program, still happy with it though.....

THX....

Link to comment
Share on other sites

Guest gothi

Nice work Steve, care to share your findings of the mst9.udb format? :)

I manged to figure this much out in an hour or so, however I'll not be happy until I know for sure what the unknown sections do (even if I can change them without aparent harm)

mst9.udb format:

Header


area	length	data


0x00	2	0x1000 (length of file)


0x02	2	checksum (Checksum-16 from 0x06 to end of Last word then + 1000)


0x04	2	unknown (amount of times T9 dictionary added to/accessed?) value increased by 1 each time word was added to dictionary during tests. Altering had little effect


0x06	2	0x000F (constant as far as I can tell)


0x08	2	number of words in dictionary (hex)




Word


area	length	data


0x00	2	unknown! (changing had little effect during limited testing)


0x02	2	length of word - 1 (n = length of word)


0x04	n	Word in Unicode  

if you could fill in the blanks and make any corrections that would be great!

Link to comment
Share on other sites

Guest stevekay

Close....

The first checksum is actually everything added together except for the checksum itself and the 2nd checksum (0x04).

If this first checksum is incorrectly calculated, then the first app on the phone that uses the dictionary will wipe it out!!!

The 2nd checksum is the sum of all the 'source' identifiers (I think that's what it is for, but not sure - word area 0x00) divided by 8 and then subtract double the number of words.

However, it is the 2nd 'checksum' that causes the most grief in that I have seen some weird values in this against each word (0x00) that knock out the theory. In this case I am basically setting the value to 0x20 for normal words and 0x30 for words with punctuation.

I've still no idea how the T9AW.udb files work but they do seem over complicated when they only have 1K to play with...

Steve

Link to comment
Share on other sites

Guest gothi

Thanks for the info :)

I've just checked my file now and your description of the second checksum is spot on however I'm now confused as to the results I received last night during tests, I'll have to wait til I get home and go over the files again :lol:

I've just tried a checksum-16 on the entire file (00'ing both checksums beforehand) and the result doesn't match, were you doing anything special with the first 2 bytes or am I being an idiot? :lol:

I can still create a vaild checksum using my method, but would like to know how you create yours :lol:

Am I correct in assuming that 0x00 of the Word structure is a descriptor of some sort? I'm not entirely sure how or what tho :D

Link to comment
Share on other sites

Guest stevekay

The first checksum is quite straight forward - is it the 2nd one you are having trouble with?

If it is the first one then make sure that if the value exceeds 65536 that you subtract that from it.

If it is the second one, check your values for the 'descriptor' field (0x00 of each word) and see if you ahve any values that don't divide wholly by 8. If you do, then I basically substituted a new value (0x20 or 0x30 - see last post) and used my calculated checksum. It seems to work !!!

Best of luck...

Link to comment
Share on other sites

Guest Jandy
I have updated all my T9 apps after converting the editor from VB .NET to VC++ .NET.

The ZIP file contains SP T9 Editor.exe for the PC (requires .NET framework) and T9Monitor.ARM.CAB for the phone.

Hiya, What is the .NET framework? Might this be why the T9 Editor.exe won't open for me? On Win Xp 32bit ed'n. Using an MPx200 on Orange (SP 2002)

Thanks

Link to comment
Share on other sites

Guest gothi

I've attached two images (ignore the words, I was adding ones I knew the T9 didn't have as standard), t9a is the result of a checksum-16 (16 bit count, adds all the bytes, initial value = 0x0000) using my method (add 1000 to the checksum result to get the correct value for the file)

t9b is the result of what I understand your explanation to do (00 makes no difference in a checksum-16 calculation so I've used it to mask out the checksums) and as you can see the value is wrong

Could you explain what you are doing, as I can create a valid checksum with my method but not with what I understand yours to be :) Am I misunderstanding your explanation? (I'm pretty sure I am)

[edit]

The can download the .net frameword from Windows Update if I remember correctly :lol:

t9b.gif

t9a.gif

Link to comment
Share on other sites

Guest gothi

Most usefull Steve, thankyou :)

You appear to be doing exactly what I'm doing, I thought you meant you were doing a full Checksum-16 on the actual file as opposed to the values contained within.

As you can see the checksum on the file fails because the size value (4096/0x1000) is reversed throwing off the calculation (just explaining it all so that anyone who stumbles on this topic understands what caused my confusion) :lol:

Link to comment
Share on other sites

Guest gothi

Aha! I now know what the 0x00 of Word is :)

For the last 5 minutes I've sent myself the same message using the same word in my T9 user dictionary.

I started by deleting the existing file so I had a blank slate to work with...

1st message (and word addition to user DB) value: 0x18 (24)

2nd message value: 0x20 (32)

3rd message value: 0x28 (40)

4th message value: 0x30 (48)

5th message value: 0x38 (56)

6th message (two words, existing word and new user DB addition):

value of word 1: 0x48 (72)

value of word 2: 0x18 (24)

7th message (original word only)

value of word 1: 0x50 (80)

value of word 2: 0x18 (24)

8th message (two words, orginial word and new user DB addition)

value of word 1: 0x60 (96)

value of word 2: 0x18 (24)

value of word 3: 0x18 (24)

I'm now 100% convinced that this value is a representaton of the word or dictionary's use and it is safe to use any value divisible by 8 for it but obviously a new word should have the value 0x18 :)

I intend to experimant with this value to work out why the first word gained 16 when I used it and added a new word :)

[edit]

Results of a quick experiment (* denotes that it is a new word to the dictionary):

-word added-

*word 1: 0x018 (24)

-word 1 used, 2 new words added-

word 1: 0x028 (40)

*word 2: 0x18 (24)

*word 3: 0x18 (24)

-words 1, 2 and 3 used, 4 new words added-

word 1: 0x40 (64)

word 2: 0x30 (48)

word 3: 0x30 (48)

*word 4: 0x18 (24)

*word 5: 0x18 (24)

*word 6: 0x18 (24)

*word 7: 0x18 (24)

-word 3 used, 1 new word added-

word 1: 0x40 (64)

word 2: 0x30 (48)

word 3: 0x48 (72)

word 4: 0x18 (24)

word 5: 0x18 (24)

word 6: 0x18 (24)

word 7: 0x18 (24)

*word 8: 0x18 (24)

Link to comment
Share on other sites

  • 3 weeks later...
Guest Pagemakers

What the latest version of T9 editor? 1.5a?

Anyway to fix the dulpicate entry of words and to list them in alpabetical order?

Link to comment
Share on other sites

  • 5 months later...

old post sorry for bumping this up..but would there be a chance that this could be edited to work for a p900 ericsson?

i can submit my t9.udb file if it would help

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.