X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fao_gps_skytraq.c;h=ef581349ad75fe6ccc3c5c1ac5474abb988f4a42;hb=5481082b18226a0de6b377215b3b330bdbc4a6c6;hp=bf192f28e4f0f0e4d8a0eef3e0fcaa688b328ba5;hpb=b0d7e3f9c9322542e9b649bb6ad7f7e5bb99dffa;p=fw%2Faltos diff --git a/src/ao_gps_skytraq.c b/src/ao_gps_skytraq.c index bf192f28..ef581349 100644 --- a/src/ao_gps_skytraq.c +++ b/src/ao_gps_skytraq.c @@ -271,7 +271,15 @@ ao_gps(void) __reentrant ao_gps_next.flags |= i; ao_gps_lexchar(); - ao_gps_skip_field(); /* Horizontal dilution */ + ao_gps_next.hdop = ao_gps_decimal(0xff); + if (ao_gps_next.hdop <= 50) { + ao_gps_next.hdop = (uint8_t) 5 * ao_gps_next.hdop; + if (ao_gps_char == '.') + ao_gps_next.hdop = (ao_gps_next.hdop + + ((uint8_t) ao_gps_decimal(1) >> 1)); + } else + ao_gps_next.hdop = 255; + ao_gps_skip_field(); ao_gps_next.altitude = ao_gps_decimal(0xff); ao_gps_skip_field(); /* skip any fractional portion */