Discussion:
[Bitpim-devel] Code for TM520
Chris Poon
2004-03-10 00:43:39 UTC
Permalink
I know it has been expired while I was busy with other things, but I have
tested the code for writing out the phonebook. The only problem I have is
that I can't change the speed dial of an existing entry - I can move its
association to a different number within the same entry, and I can create
new speed dial entry, just couldn't move an existing one. There must be some
sort of magic done because the serial doesn't change when I perform the same
operation right on the phone (changing the speed dial). I think we just need
to put a few phone-specific hooks in the getphonebook and savephonebook
function in order to move those into com_lg and make them common routines.

Seems that the pim/index.dat is more a checksum of the last 7 digits of each
phone number rather than an actual index. Ran into a few speed bumps testing
but I think the code is good to go except for moving speed dial.
Roger Binns
2004-03-10 04:33:42 UTC
Permalink
Post by Chris Poon
Seems that the pim/index.dat is more a checksum of the last 7 digits of each
phone number rather than an actual index. Ran into a few speed bumps testing
but I think the code is good to go except for moving speed dial.
Here is how the VX4400/VX6000 do it (and probably later models as well).

pim/pbentry.dat

This contains information about all the entries with a fixed size
record. It doesn't however contain any phone numbers.

pim/pbnumber.dat

This contains all the phone numbers. I haven't looked too deeply
into the format, and can't really tell if it uses fixed or variable
length records. The actual phone numbers are stored as binary
coded decimal, with a nibble of 'e' marking the end of the
number. For example the number (123) 555-9812 is stored like
this in hex: 12 35 55 98 12 e0

pim/pbspeed.dat

This contains space for 100 speed dial numbers (2 bytes per number)
and indexes into pbnumber.dat in some way I haven't determined.

Roger

Loading...