Index: /trunk/BNC/RTCM3/rtcm3torinex.cpp
===================================================================
--- /trunk/BNC/RTCM3/rtcm3torinex.cpp	(revision 326)
+++ /trunk/BNC/RTCM3/rtcm3torinex.cpp	(revision 327)
@@ -1,5 +1,5 @@
 /*
   Converter for RTCM3 data to RINEX.
-  $Id: rtcm3torinex.c,v 1.10 2006/11/15 12:31:31 stoecker Exp $
+  $Id: rtcm3torinex.c,v 1.11 2006/11/21 08:27:35 stoecker Exp $
   Copyright (C) 2005-2006 by Dirk Stoecker <stoecker@euronik.eu>
 
@@ -51,5 +51,5 @@
 
 /* CVS revision and version */
-static char revisionstr[] = "$Revision: 1.10 $";
+static char revisionstr[] = "$Revision: 1.11 $";
 
 static uint32_t CRC24(long size, const unsigned char *buf)
@@ -303,5 +303,5 @@
           }
           GETBITS(l1range, 24);
-          if(l1range != 0x80000)
+          if((l1range&((1<<24)-1)) != 0x80000)
           {
             gnss->dataflags[num] |= c;
@@ -309,5 +309,5 @@
           }
           GETBITSSIGN(i, 20);
-          if(i != 0x80000)
+          if((i&((1<<20)-1)) != 0x80000)
           {
             gnss->dataflags[num] |= l;
@@ -356,5 +356,5 @@
             }
             GETBITSSIGN(i,14);
-            if(i != 0x2000)
+            if((i&((1<<14)-1)) != 0x2000)
             {
               gnss->dataflags[num] |= c;
@@ -363,5 +363,5 @@
             }
             GETBITSSIGN(i,20);
-            if(i != 0x80000)
+            if((i&((1<<20)-1)) != 0x80000)
             {
               gnss->dataflags[num] |= l;
@@ -446,54 +446,96 @@
         {
           int sv, code, l1range, c,l,s,ce,le,se,amb=0;
+          int freq;
 
           GETBITS(sv, 6)
-          if(!sv || sv > 24)
-          {
-            --num; --gnss->numsats;
+          gnss->satellites[num] = sv-1 + PRN_GLONASS_START;
+          /* L1 */
+          GETBITS(code, 1)
+          GETBITS(freq, 5)
+          if(code)
+          {
+            c = GNSSDF_P1DATA;  ce = GNSSENTRY_P1DATA;
+            l = GNSSDF_L1PDATA; le = GNSSENTRY_L1PDATA;
+            s = GNSSDF_S1PDATA; se = GNSSENTRY_S1PDATA;
           }
           else
           {
-            int freq;
-            gnss->satellites[num] = sv-1 + PRN_GLONASS_START;
-            /* L1 */
-            GETBITS(code, 1)
-            GETBITS(freq, 5)
+            c = GNSSDF_C1DATA;  ce = GNSSENTRY_C1DATA;
+            l = GNSSDF_L1CDATA; le = GNSSENTRY_L1CDATA;
+            s = GNSSDF_S1CDATA; se = GNSSENTRY_S1CDATA;
+          }
+          GETBITS(l1range, 25)
+          if((l1range&((1<<25)-1)) != 0x80000)
+          {
+            gnss->dataflags[num] |= c;
+            gnss->measdata[num][ce] = l1range*0.02;
+          }
+          GETBITSSIGN(i, 20)
+          if((i&((1<<20)-1)) != 0x80000)
+          {
+            gnss->dataflags[num] |= l;
+            gnss->measdata[num][le] = l1range*0.02+i*0.0005;
+          }
+          GETBITS(i, 7)
+          lastlockl1[sv] = i;
+          if(handle->lastlockl1[sv] > i)
+            gnss->dataflags[num] |= GNSSDF_LOCKLOSSL1;
+          if(type == 1010 || type == 1012)
+          {
+            GETBITS(amb,7)
+            if(amb && (gnss->dataflags[num] & c))
+            {
+              gnss->measdata[num][ce] += amb*599584.916;
+              gnss->measdata[num][le] += amb*599584.916;
+              ++wasamb;
+            }
+            GETBITS(i, 8)
+            if(i)
+            {
+              gnss->dataflags[num] |= s;
+              gnss->measdata[num][se] = i*0.25;
+              i /= 4*4;
+              if(i > 9) i = 9;
+              else if(i < 1) i = 1;
+              gnss->snrL1[num] = i;
+            }
+          }
+          gnss->measdata[num][le] /= GLO_WAVELENGTH_L1(freq-7);
+          if(type == 1011 || type == 1012)
+          {
+            /* L2 */
+            GETBITS(code,2)
             if(code)
             {
-              c = GNSSDF_P1DATA;  ce = GNSSENTRY_P1DATA;
-              l = GNSSDF_L1PDATA; le = GNSSENTRY_L1PDATA;
-              s = GNSSDF_S1PDATA; se = GNSSENTRY_S1PDATA;
+              c = GNSSDF_P2DATA;  ce = GNSSENTRY_P2DATA;
+              l = GNSSDF_L2PDATA; le = GNSSENTRY_L2PDATA;
+              s = GNSSDF_S2PDATA; se = GNSSENTRY_S2PDATA;
             }
             else
             {
-              c = GNSSDF_C1DATA;  ce = GNSSENTRY_C1DATA;
-              l = GNSSDF_L1CDATA; le = GNSSENTRY_L1CDATA;
-              s = GNSSDF_S1CDATA; se = GNSSENTRY_S1CDATA;
-            }
-            GETBITS(l1range, 25)
-            if(l1range != 0x80000)
+              c = GNSSDF_C2DATA;  ce = GNSSENTRY_C2DATA;
+              l = GNSSDF_L2CDATA; le = GNSSENTRY_L2CDATA;
+              s = GNSSDF_S2CDATA; se = GNSSENTRY_S2CDATA;
+            }
+            GETBITSSIGN(i,14)
+            if((i&((1<<14)-1)) != 0x2000)
             {
               gnss->dataflags[num] |= c;
-              gnss->measdata[num][ce] = l1range*0.02;
-            }
-            GETBITSSIGN(i, 20)
-            if(i != 0x80000)
+              gnss->measdata[num][ce] = l1range*0.02+i*0.02
+              +amb*599584.916;
+            }
+            GETBITSSIGN(i,20)
+            if((i&((1<<20)-1)) != 0x80000)
             {
               gnss->dataflags[num] |= l;
-              gnss->measdata[num][le] = l1range*0.02+i*0.0005;
-            }
-            GETBITS(i, 7)
-            lastlockl1[sv] = i;
-            if(handle->lastlockl1[sv] > i)
-              gnss->dataflags[num] |= GNSSDF_LOCKLOSSL1;
-            if(type == 1010 || type == 1012)
-            {
-              GETBITS(amb,7)
-              if(amb && (gnss->dataflags[num] & c))
-              {
-                gnss->measdata[num][ce] += amb*599584.916;
-                gnss->measdata[num][le] += amb*599584.916;
-                ++wasamb;
-              }
+              gnss->measdata[num][le] = l1range*0.02+i*0.0005
+              +amb*599584.915;
+            }
+            GETBITS(i,7)
+            lastlockl2[sv] = i;
+            if(handle->lastlockl2[sv] > i)
+              gnss->dataflags[num] |= GNSSDF_LOCKLOSSL2;
+            if(type == 1012)
+            {
               GETBITS(i, 8)
               if(i)
@@ -504,57 +546,12 @@
                 if(i > 9) i = 9;
                 else if(i < 1) i = 1;
-                gnss->snrL1[num] = i;
+                gnss->snrL2[num] = i;
               }
             }
-            gnss->measdata[num][le] /= GLO_WAVELENGTH_L1(freq-7);
-            if(type == 1011 || type == 1012)
-            {
-              /* L2 */
-              GETBITS(code,2)
-              if(code)
-              {
-                c = GNSSDF_P2DATA;  ce = GNSSENTRY_P2DATA;
-                l = GNSSDF_L2PDATA; le = GNSSENTRY_L2PDATA;
-                s = GNSSDF_S2PDATA; se = GNSSENTRY_S2PDATA;
-              }
-              else
-              {
-                c = GNSSDF_C2DATA;  ce = GNSSENTRY_C2DATA;
-                l = GNSSDF_L2CDATA; le = GNSSENTRY_L2CDATA;
-                s = GNSSDF_S2CDATA; se = GNSSENTRY_S2CDATA;
-              }
-              GETBITSSIGN(i,14)
-              if(i != 0x2000)
-              {
-                gnss->dataflags[num] |= c;
-                gnss->measdata[num][ce] = l1range*0.02+i*0.02
-                +amb*599584.916;
-              }
-              GETBITSSIGN(i,20)
-              if(i != 0x80000)
-              {
-                gnss->dataflags[num] |= l;
-                gnss->measdata[num][le] = l1range*0.02+i*0.0005
-                +amb*599584.915;
-              }
-              GETBITS(i,7)
-              lastlockl2[sv] = i;
-              if(handle->lastlockl2[sv] > i)
-                gnss->dataflags[num] |= GNSSDF_LOCKLOSSL2;
-              if(type == 1012)
-              {
-                GETBITS(i, 8)
-                if(i)
-                {
-                  gnss->dataflags[num] |= s;
-                  gnss->measdata[num][se] = i*0.25;
-                  i /= 4*4;
-                  if(i > 9) i = 9;
-                  else if(i < 1) i = 1;
-                  gnss->snrL2[num] = i;
-                }
-              }
-              gnss->measdata[num][le] /= GLO_WAVELENGTH_L2(freq-7);
-            }
+            gnss->measdata[num][le] /= GLO_WAVELENGTH_L2(freq-7);
+          }
+          if(!sv || sv > 24)
+          {
+            --num; --gnss->numsats;
           }
         }
@@ -992,5 +989,5 @@
 
 #ifndef NO_RTCM3_MAIN
-static char datestr[]     = "$Date: 2006/11/15 12:31:31 $";
+static char datestr[]     = "$Date: 2006/11/21 08:27:35 $";
 
 /* The string, which is send as agent in HTTP request */
Index: /trunk/BNC/bnchelp.html
===================================================================
--- /trunk/BNC/bnchelp.html	(revision 326)
+++ /trunk/BNC/bnchelp.html	(revision 327)
@@ -23,5 +23,5 @@
 <br>
 
-<a name="purpose">
+<p><a name="purpose">
 <p><h3>A - Purpose</h3></p>
 
@@ -46,5 +46,5 @@
 </p>
 <p>
-<a name="options">
+<p><a name="options">
 <p><h3>B - Options</h3></p>
 <p>
@@ -76,5 +76,5 @@
 </p>
 
-<a name="file">
+<p><a name="file">
 <p><h4>B - 1. File</h4></p>
 
@@ -95,5 +95,5 @@
 </p>
 
-<a name="help">
+<p><a name="help">
 <p><h4>B - 2. Help</h4></p>
 
@@ -112,5 +112,5 @@
 </p>
 
-<a name="proxy">
+<p><a name="proxy">
 <p><h4>B - 3. Proxy - mandatory if BNC is operated in a protected LAN</h4></p>
 
@@ -121,5 +121,5 @@
 </p>
 
-<a name="output"> <p><h4>B - 4. Synchronized Output</h4></p>
+<p><a name="output"> <p><h4>B - 4. Synchronized Output</h4></p>
 <p>
 BNC lets you output synchronized observations epoch by epoch. This output is made available in a plain ASCII format and in a binary format. The output comprises the following observations if available:</p>
@@ -129,5 +129,5 @@
 In case an observation is unavailable, its value is set to zero '0.000'.
 </p>
-<a name="wait">
+<p><a name="wait">
 <p><h4>B - 4.1 Wait for Full Epoch - optional</h4></p>
 <p>
@@ -138,5 +138,5 @@
 </p> 
 
-<a name="ascii">
+<p><a name="ascii">
 <p><h4>B - 4.2 ASCII Output File - optional</h4></p>
 <p>
@@ -144,5 +144,5 @@
 </p>
 
-<a name="binary">
+<p><a name="binary">
 <p><h4>B - 4.3 Port for Binary Output - optional</h4></p>
 <p>
@@ -182,5 +182,5 @@
 </pre>
 
-<a name="rinex">
+<p><a name="rinex">
 <p><h4>B - 5. RINEX</h4></p>
 <p>
@@ -217,5 +217,5 @@
 </p>
 
-<a name="rnxpath">
+<p><a name="rnxpath">
 <p><h4>B - 5.1 RINEX Directory - optional</h4></p>
 <p>
@@ -223,5 +223,5 @@
 </p> 
 
-<a name="rnxscript">
+<p><a name="rnxscript">
 <p><h4>B - 5.2 RINEX Script - optional</h4></p>
 <p>
@@ -229,5 +229,5 @@
 </p> 
 
-<a name="rnxinterval">
+<p><a name="rnxinterval">
 <p><h4>B - 5.3 RINEX File Interval - mandatory if 'RINEX directory' set</h4></p>
 <p>
@@ -235,5 +235,5 @@
 </p> 
 
-<a name="rnxsample">
+<p><a name="rnxsample">
 <p><h4>B - 5.4 RINEX Sampling - mandatory if 'RINEX directory' set </h4></p>
 <p>
@@ -241,5 +241,5 @@
 </p> 
 
-<a name="rnxskeleton">
+<p><a name="rnxskeleton">
 <p><h4>B - 5.5 RINEX Skeleton Extension - optional</h4></p>
 <p>
@@ -293,5 +293,5 @@
 <p> 
 
-<a name="rnxappend">
+<p><a name="rnxappend">
 <p><h4>B - 5.6 Append Files</h4></p>
 <p>
@@ -299,5 +299,5 @@
 </p> 
 
-<a name="mountpoints">
+<p><a name="mountpoints">
 <p><h4>B - 6. Mountpoints</h4></p>
 <p>
@@ -305,5 +305,5 @@
 </p> 
 
-<a name="AddMounts">
+<p><a name="AddMounts">
 <p><h4>B - 6.1 Add Mountpoints</h4></p>
 <p>
@@ -311,5 +311,5 @@
 </p> 
 
-<a name="HostPort">
+<p><a name="HostPort">
 <p><h4>B - 6.2 Broadcaster Host and Port - mandatory</h4></p>
 <p>
@@ -317,5 +317,5 @@
 </p> 
 
-<a name="account">
+<p><a name="account">
 <p><h4>B - 6.3 Broadcaster User and Password - mandatory for protected streams</h4></p>
 <p>
@@ -323,5 +323,5 @@
 </p> 
 
-<a name="GetTable">
+<p><a name="GetTable">
 <p><h4>B - 6.4 Get Table</h4></p>
 <p>
@@ -332,10 +332,10 @@
 </p> 
 
-<a name="delete">
+<p><a name="delete">
 <p><h4>B - 6.5 Delete Mountpoints</h4></p>
 <p>
 To delete a stream shown under 'Mountpoints' in the main window, select it by mouse click and hit 'Delete Mountpoints'. For a simultaneous deletion of several streams highlight them using +Shift and +Ctrl.</p>
 
-<a name="edit">
+<p><a name="edit">
 <p><h4>B - 6.6 Edit Mountpoints</h4></p>
 <p>
@@ -343,5 +343,5 @@
 </p> 
 
-<a name="log">
+<p><a name="log">
 <p><h4>B - 7. Log - optional</h4></p>
 <p>
@@ -349,5 +349,5 @@
 </p>
 
-<a name="start">
+<p><a name="start">
 <p><h4>B - 8. Start</h4></p>
 <p>
@@ -355,5 +355,5 @@
 </p> 
 
-<a name="stop">
+<p><a name="stop">
 <p><h4>B - 9. Stop</h4></p>
 <p>
@@ -361,5 +361,5 @@
 </p> 
 
-<a name="nw">
+<p><a name="nw">
 <p><h4>B - 10. No Window - optional</h4></p>
 <p>
@@ -370,5 +370,5 @@
 </p> 
 <br>
-<a name="limits">
+<p><a name="limits">
 <p><h3>C - Limitations</h3></p>
 <ul>
@@ -407,5 +407,6 @@
 <br>
 </ul>
-<a name="authors">
+<p>
+<p><a name="authors">
 <p><h3>D - Authors</h3></p>
 <p>
@@ -428,5 +429,5 @@
 <br>
 
-<a name="links">
+<p><a name="links">
 <p><h3>E - Links</h3></p>
 <table>
@@ -441,5 +442,5 @@
 <br>
 
-<a name="annex">
+<p><a name="annex">
 <p><h3>F - Annex</h3></p>
 <p>
@@ -454,5 +455,5 @@
 <br>
 
-<a name="ntrip">
+<p><a name="ntrip">
 <p><h4>F - 1. NTRIP</h4></p>
 
@@ -480,5 +481,5 @@
 </p>
 
-<a name="source">
+<p><a name="source">
 <p><h4>F - 1.1 Source-table</h4></p>
 
@@ -497,5 +498,5 @@
 </p>
 
-<a name="rtcm">
+<p><a name="rtcm">
 <p><h4>F - 2. RTCM</h4></p>
 
@@ -507,5 +508,5 @@
 <br>
 
-<a name="rtcm2">
+<p><a name="rtcm2">
 <p><h4>F - 2.1 RTCM Version 2.x</h4></p>
 <p>
@@ -540,5 +541,5 @@
 </ul>
 
-<a name="rtcm3">
+<p><a name="rtcm3">
 <p><h4>F - 2.2 RTCM Version 3</h4></p>
 <p>
@@ -569,5 +570,5 @@
 </ul>
 
-<a name="rtigs">
+<p><a name="rtigs">
 <p><h4>F - 3. RTIGS</h4></p>
 <p>
@@ -623,5 +624,5 @@
 </p>
 
-<a name="soc">
+<p><a name="soc">
 <p><h4>F - 3.1 SOC</h4></p>
 <p>
Index: /trunk/BNC/bncwindow.cpp
===================================================================
--- /trunk/BNC/bncwindow.cpp	(revision 326)
+++ /trunk/BNC/bncwindow.cpp	(revision 327)
@@ -60,5 +60,5 @@
     "decoder,bytes").split(",");
 
-  setMinimumSize(60*ww, 80*ww);
+  setMinimumSize(60*ww, 60*ww);
   setWindowTitle(tr("BKG Ntrip Client (BNC), Version 1.0b"));
 
