summaryrefslogtreecommitdiff
path: root/driver_rtcm3.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2009-03-03 23:41:31 +0000
committerEric S. Raymond <esr@thyrsus.com>2009-03-03 23:41:31 +0000
commit1cdaf167f312d116b315200c60a0c3ab372c722c (patch)
treeaf97a0f40b23822807fc2d9c0f5d8c5aad3c1690 /driver_rtcm3.c
parent68c2b4e25d5c7b0a497aceae594819fdb1ac769c (diff)
downloadgpsd-1cdaf167f312d116b315200c60a0c3ab372c722c.tar.gz
One more RTCM3 message.
Diffstat (limited to 'driver_rtcm3.c')
-rw-r--r--driver_rtcm3.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/driver_rtcm3.c b/driver_rtcm3.c
index 7bf62f85..37a0df32 100644
--- a/driver_rtcm3.c
+++ b/driver_rtcm3.c
@@ -290,6 +290,13 @@ void rtcm3_unpack(/*@out@*/struct rtcm3_t *rtcm, char *buf)
break;
case 1029:
+ rtcm->rtcmtypes.rtcm3_1029.msgnum = (unsigned short)ugrab(12);
+ rtcm->rtcmtypes.rtcm3_1029.station_id = (unsigned short)ugrab(12);
+ rtcm->rtcmtypes.rtcm3_1029.mjd = (unsigned short)ugrab(16);
+ rtcm->rtcmtypes.rtcm3_1029.sod = (unsigned short)ugrab(17);
+ rtcm->rtcmtypes.rtcm3_1029.len = (unsigned long)ugrab(7);
+ n = rtcm->rtcmtypes.rtcm3_1029.unicode_units = (unsigned long)ugrab(8);
+ (void)memcpy(rtcm->rtcmtypes.rtcm3_1029.text, buf+9, n);
break;
}
#undef sgrab
@@ -487,6 +494,18 @@ void rtcm3_dump(struct rtcm3_t *rtcm, FILE *fp)
break;
case 1029:
+ (void)fprintf(fp,
+ " station_id=%u, seq=%u, mjd=%u sec=%u len=%u units=%u msg=%s\n",
+ rtcm->rtcmtypes.rtcm3_1029.station_id,
+ rtcm->rtcmtypes.rtcm3_1029.msgnum,
+ rtcm->rtcmtypes.rtcm3_1029.mjd,
+ rtcm->rtcmtypes.rtcm3_1029.sod,
+ rtcm->rtcmtypes.rtcm3_1029.len,
+ rtcm->rtcmtypes.rtcm3_1029.unicode_units,
+ rtcm->rtcmtypes.rtcm3_1029.text);
+ break;
+
+ default:
(void)fprintf(fp, " Unknown content\n");
break;
}