Streets and Trips GPS Update Interval


Here's how to change the 15 second update interval on Streets & Trips 2001-2003
Please note that Streets & Trips 2004 does not need this hack. They finally changed it to do 1 second updates.
Also check out AGPS Advanced GPS addon for Microsoft Mappoint
(This screenshot shows the default 15 second value at offset 0x23baa for the 2003 version)
The following are newsgroup postings found on google.
Don't email me with dumb questions, they are not my posts.


From: Tom DeVille
Subject: Re: Any update for S&T 2003?
Newsgroups: sci.geo.satellite-nav
Date: 2002-10-28 21:45:52 PST

1. XVI32 can be downloaded from:
http://www.chmaas.handshake.de/delphi/freeware/xvi32/xvi32.htm
2. Once downloaded, unzip the "XVI32.ZIP" and put the 10 files into a folder
(such as C:\Program Files\XVI32) per the instructions on the above page.

3. Make a backup copy of the Streets & Trips executable file "STREETS.EXE"

4. Run XVI32.EXE and open up STREETS.EXE for hex editing from within XVI32.

5. Go to XVI32 menu item "Search > Find" and enter the following into the
"Hex String" box:
98 3A 00 00 53 57 6A

6. Click OK and see if it finds the starting point for that hex string
("98") is found and highlighted.  If so you are in luck.

7. Change the two hex words "98 3A" to "E8 03" by typing E8 and then 03.

8. Save the changes to file STREETS.EXE and close XVI32.  Then run Streets &
Trips and check to see if you get the 1 second update.

Note:
The "E8 03" is word reversed hex value "03E8" which is decimal value "1000"
(1000 milliseconds).  The "98 3A" is word reversed for hex value "3A98"
which is decimal value "15000" (15000 milliseconds).  If you want something
more than 1 second, then use the applicable hex value of milliseconds in
byte reversed order.

Tom DeVille


From: Tom DeVille
Subject: Re: Can someone point me to the 15-second Streets and trips hack? Thanks!!
Newsgroups: sci.geo.satellite-nav
Date: 2002-11-06 19:18:41 PST

The numbers for one-half second are "F4 01"

However, it probably won't do much for you unless your GPS updates more than
once a second.

Here is the scheme of things:
Take the number of seconds and multiply by 1000 to get milleseconds.
Convert the milleseconds from decimal to hex.
Put the second 2 hex bytes in front of the first 2 hex bytes ("Big Endian"
format).
For example:
15 sec => 15000 ms => 3A 98 => 98 3A
1.024 sec => 1024 ms > 04 00 => 00 04
1 sec => 1000 ms => 03 E8 => E8 03
0.512 sec => 512 ms => 02 00 => 00 20
0.5 sec => 500 ms => 01 F4 => F4 01

By the way, there is a lot of interest in this patch.  Those of us who use
it owe thanks to the person who originated it.  From my records, I believe
it was John Galvin who came up with it at least a year and a half ago.
Somebody else wrote a simple program to apply the patch automatically.  He
put the patch program on his web site until some guys in dark glasses told
him he would be in big trouble if he didn't stop that.  So now we have to
deal with hex editors, hex bytes, and Big vs Little Endians.  We also owe
some thanks to the programmers of S&T/AR who basically have not changed the
code sustantially over the past 3 or 4 versions so that you can still search
for the correct place to change.

Tom DeVille