summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Towns <aj@erisian.com.au>2010-11-21 16:08:37 +1000
committerAnthony Towns <aj@erisian.com.au>2010-11-21 16:08:37 +1000
commitec47bc93a487614714a752cb30ec9fe3d8f72929 (patch)
tree62796004aca74e1cbf5ed5ddffd9188bde4b98c1
parent0393830f85da5efc96bbdf0d9769b66019c34b33 (diff)
parente7954c820763f80e993f9f822e837725cf36af84 (diff)
Merge branch 'buttonbox' of git://git.gag.com/fw/altos into buttonbox
-rw-r--r--ao-tools/altosui/AltosEepromIterable.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/ao-tools/altosui/AltosEepromIterable.java b/ao-tools/altosui/AltosEepromIterable.java
index fc683321..f8e6d7e5 100644
--- a/ao-tools/altosui/AltosEepromIterable.java
+++ b/ao-tools/altosui/AltosEepromIterable.java
@@ -309,6 +309,12 @@ public class AltosEepromIterable extends AltosRecordIterable {
int flags = (good.b >> 8);
int seconds = hour * 3600 + minute * 60 + second;
+ /* Make sure this looks like a good GPS value */
+ if ((flags & Altos.AO_GPS_NUM_SAT_MASK) >> Altos.AO_GPS_NUM_SAT_SHIFT < 4)
+ flags = (flags & ~Altos.AO_GPS_NUM_SAT_MASK) | (4 << Altos.AO_GPS_NUM_SAT_SHIFT);
+ flags |= Altos.AO_GPS_RUNNING;
+ flags |= Altos.AO_GPS_VALID;
+
int new_seconds = seconds + diff;
if (new_seconds < 0)
new_seconds += 24 * 3600;