summaryrefslogtreecommitdiff
path: root/subframe.c
diff options
context:
space:
mode:
authorGary E. Miller <gem@rellim.com>2012-05-09 15:51:21 -0700
committerGary E. Miller <gem@rellim.com>2012-05-09 15:51:21 -0700
commit7e29e8c143a7a80053199f701c078e252432b213 (patch)
tree184fabd46dfb938a1da106803ba085555b4dc96d /subframe.c
parent4cc8cd5d6afb739bdb9db191ca3b4fe8a1043746 (diff)
downloadgpsd-7e29e8c143a7a80053199f701c078e252432b213.tar.gz
Fix numerous typos in the subframe decoder
Patch by: Alexey Illarionov <littlesavage@orionet.ru>
Diffstat (limited to 'subframe.c')
-rw-r--r--subframe.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/subframe.c b/subframe.c
index 87eda3c0..a670a27c 100644
--- a/subframe.c
+++ b/subframe.c
@@ -668,10 +668,10 @@ gps_mask_t gpsd_interpret_subframe(struct gps_device_t *session,
sv = -1;
/* current leap seconds */
- subp->sub4_18.alpha0 = (int8_t)((words[2] >> 16) & 0x0000FF);
+ subp->sub4_18.alpha0 = (int8_t)((words[2] >> 8) & 0x0000FF);
subp->sub4_18.d_alpha0 = pow(2.0, -30) * (int)subp->sub4_18.alpha0;
- subp->sub4_18.alpha1 = (int8_t)((words[2] >> 8) & 0x0000FF);
- subp->sub4_18.d_alpha1 = pow(2.0, -27) * (int)subp->sub4_18.alpha2;
+ subp->sub4_18.alpha1 = (int8_t)((words[2] >> 0) & 0x0000FF);
+ subp->sub4_18.d_alpha1 = pow(2.0, -27) * (int)subp->sub4_18.alpha1;
subp->sub4_18.alpha2 = (int8_t)((words[3] >> 16) & 0x0000FF);
subp->sub4_18.d_alpha2 = pow(2.0, -24) * (int)subp->sub4_18.alpha2;
subp->sub4_18.alpha3 = (int8_t)((words[3] >> 8) & 0x0000FF);
@@ -680,7 +680,7 @@ gps_mask_t gpsd_interpret_subframe(struct gps_device_t *session,
subp->sub4_18.beta0 = (int8_t)((words[3] >> 0) & 0x0000FF);
subp->sub4_18.d_beta0 = pow(2.0, 11) * (int)subp->sub4_18.beta0;
subp->sub4_18.beta1 = (int8_t)((words[4] >> 16) & 0x0000FF);
- subp->sub4_18.d_beta1 = pow(2.0, 14) * (int)subp->sub4_18.beta2;
+ subp->sub4_18.d_beta1 = pow(2.0, 14) * (int)subp->sub4_18.beta1;
subp->sub4_18.beta2 = (int8_t)((words[4] >> 8) & 0x0000FF);
subp->sub4_18.d_beta2 = pow(2.0, 16) * (int)subp->sub4_18.beta2;
subp->sub4_18.beta3 = (int8_t)((words[4] >> 0) & 0x0000FF);
@@ -691,13 +691,13 @@ gps_mask_t gpsd_interpret_subframe(struct gps_device_t *session,
subp->sub4_18.d_A1 = pow(2.0,-50) * subp->sub4_18.A1;
subp->sub4_18.A0 = (int32_t)((words[6] >> 0) & 0xFFFFFF);
subp->sub4_18.A0 <<= 8;
- subp->sub4_18.A0 |= ((words[7] >> 16) & 0x00FFFF);
+ subp->sub4_18.A0 |= ((words[7] >> 16) & 0x0000FF);
subp->sub4_18.d_A0 = pow(2.0,-30) * subp->sub4_18.A0;
/* careful WN is 10 bits, but WNt is 8 bits! */
/* WNt (Week Number of LSF) */
subp->sub4_18.tot = ((words[7] >> 8) & 0x0000FF);
- subp->sub4_18.d_tot = pow(2.0,12) * subp->sub4_18.d_tot;
+ subp->sub4_18.d_tot = pow(2.0,12) * subp->sub4_18.tot;
subp->sub4_18.WNt = ((words[7] >> 0) & 0x0000FF);
subp->sub4_18.leap = (int8_t)((words[8] >> 16) & 0x0000FF);
subp->sub4_18.WNlsf = ((words[8] >> 8) & 0x0000FF);