Disclaimer:
I am not associated with Timex in any way, OTHER than wanting to use their
datalink watch on a civilized OS (read: Unix).  All this info has been
discovered by watching the behavior of the FREELY AVAILABLE software
found on the Timex WWW server.   (http://www.timex.com)

All of this information is from Karl Hakimian, who actualy went out and
bought one of the model 150 watches, and solved the CRC problem.

The new protocol is very similar to the old protocol, only it sends two
8 bit words per frame, to double to transfer speed.

The two words per frame makes odd length packets slightly odder.  The 
MS software seems to send a garbage byte.  The watch ignores it.

The CRC function is CRC-16, applied to bytes 0 to the byte before the
first CRC byte.  The high 8 bits of the CRC-16 are sent first.

First, read the description of the first protocol.  They both use the
same packet format.  The new protocol has additional packet types.

Initial version packet: 
type START1 0x20 - same as old protocol, only higher number
 0: 0
 1: 0
 2: 3

Data descriptor packet
Type 0x90 - Replaces type START2 0x60 from old protocol
 0: 0x01 Sub type. 1 == anniversaries, phone lists, etc., 2 == wrist app, 3 ==
         melodies
 1: Number of data packets (type 0x91) to follow

 2-n: depends on sub type.

Data packet
Type 0x91 - Replaces type DATA1 0x20 from old protocol
depends on the type 0x90 preceedeing it

Time packet
Type 0x32 - Replaces type 0x30 of old protocol
 0: 1 or 2 (timezone being set)
 1: seconds
 2: hours
 3: minutes
 4: month
 5: day
 6: year
 7: First letter of timezone name
 8: Second letter of timezone name
 9: Third letter of timezone name
10: 5 ?
11: 1 (12 hour format) 2 (24 hour format)
12: 0 ?

Alarm packet
Type 0x50 - Same as old protocol, except bytes 3,4
 0: Alarm # 1-5
 1: Hour
 2: Minute
 3: 0 ?
 4: 0 ?
 5: Label char 1
 6: Label char 2
 7: Label char 3
 8: Label char 4
 9: Label char 5
10: Label char 6
11: Label char 7
12: Label char 8
13: 0 silent alarm, 1 audible.