diff --git a/app/convbin/bcc/_convbin.cbproj b/app/convbin/bcc/_convbin.cbproj index 488eedda7f8388389bec7630b33e030f41f3a2c0..9bf4898728dc6df734f99065bb28ea0c86aa548f 100644 --- a/app/convbin/bcc/_convbin.cbproj +++ b/app/convbin/bcc/_convbin.cbproj @@ -5,7 +5,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>None</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Console</AppType> diff --git a/app/pos2kml/bcc/_pos2kml.cbproj b/app/pos2kml/bcc/_pos2kml.cbproj index 04eb6526bf014135e3cba5e819bc1ca04607593c..7bebe1b7181286b8961cdf1c91dd99cf9cc8ca48 100644 --- a/app/pos2kml/bcc/_pos2kml.cbproj +++ b/app/pos2kml/bcc/_pos2kml.cbproj @@ -5,7 +5,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>None</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Console</AppType> diff --git a/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj b/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj index cbb71b7763f6798a936fb8c42fb66fc66b74b8b6..9c8748709b1aa9addb4096f9ad44d2d5503a23cf 100644 --- a/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj +++ b/app/rnx2rtkp/bcc/_rnx2rtkp.cbproj @@ -5,7 +5,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>None</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Console</AppType> diff --git a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj b/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj index 53d45af4a18ffa03bb1587979ecae6ee8e6244b6..3d8e7f98245079644b904add8cc8d4af4b419bbc 100644 --- a/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj +++ b/app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj @@ -5,7 +5,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>None</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win64</Platform> <TargetedPlatforms>3</TargetedPlatforms> <AppType>Console</AppType> diff --git a/app/rtkconv/rtkconv.cbproj b/app/rtkconv/rtkconv.cbproj index 56cce9c95769d4db4c19242b8bffc919f817c18e..5462fdedb1fa37bd7e5d277cb5791728ec3d0e1a 100644 --- a/app/rtkconv/rtkconv.cbproj +++ b/app/rtkconv/rtkconv.cbproj @@ -53,15 +53,6 @@ <Base>true</Base> </PropertyGroup> <PropertyGroup Condition="'$(Base)'!=''"> - <UsingDelphiRTL>true</UsingDelphiRTL> - <ILINK_LinkwithRegEx>false</ILINK_LinkwithRegEx> - <ILINK_LinkwithMidas>false</ILINK_LinkwithMidas> - <ILINK_LinkwithZLib>false</ILINK_LinkwithZLib> - <ILINK_LinkwithSQL>false</ILINK_LinkwithSQL> - <ILINK_LinkwithIndy>false</ILINK_LinkwithIndy> - <ILINK_LinkwithSQLite>false</ILINK_LinkwithSQLite> - <ILINK_LinkwithIntebaseTogo>false</ILINK_LinkwithIntebaseTogo> - <SanitizedProjectName>rtkconv</SanitizedProjectName> <IncludePath>..\..\src\rcv\;..\appcmn\;..\..\src\;$(IncludePath)</IncludePath> <ILINK_LibraryPath>..\..\src\rcv\;..\appcmn\;..\..\src\;$(ILINK_LibraryPath)</ILINK_LibraryPath> <BCC_waus>false</BCC_waus> @@ -73,10 +64,11 @@ <Icon_MainIcon>rtkconv_Icon.ico</Icon_MainIcon> <DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys> + <UsingDelphiRTL>true</UsingDelphiRTL> <VerInfo_Locale>1041</VerInfo_Locale> <TASM_IncludePath>..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(TASM_IncludePath)</TASM_IncludePath> <DCC_ObjPath>..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ObjPath)</DCC_ObjPath> - <PackageImports>vclx.bpi;vcl.bpi;$(PackageImports)</PackageImports> + <PackageImports>vclx.bpi;vcl.bpi;rtl.bpi;dbrtl.bpi;vcldb.bpi;$(PackageImports)</PackageImports> <ILINK_AppType>Windows</ILINK_AppType> <BRCC_IncludePath>..\appcmn;..\rtkpost;..\..\src\rcv;$(BDS)\include;$(BDS)\include\vcl;..\..\src;$(BRCC_IncludePath)</BRCC_IncludePath> <BCC_PCHWithExternalTypeFiles>false</BCC_PCHWithExternalTypeFiles> @@ -89,26 +81,27 @@ <DCC_ResourcePath>..\..\extlex;..\..\qzslex;..\appcmn;..\rtkpost;..\..\src\rcv;..\..\src;D:\proj\rtklib_2.1\app\rtkconv;$(DCC_ResourcePath)</DCC_ResourcePath> <DCC_CBuilderOutput>JPHNE</DCC_CBuilderOutput> <BCC_IncludePath>..\appcmn;..\rtkpost;..\..\src;$(BDS)\include;$(BCC_IncludePath)</BCC_IncludePath> + <SanitizedProjectName>rtkconv</SanitizedProjectName> </PropertyGroup> <PropertyGroup Condition="'$(Base_Win32)'!=''"> - <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> - <OutputExt>exe</OutputExt> - <TASM_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NFREQ=4;$(TASM_Defines)</TASM_Defines> - <BCC_UserSuppliedOptions> -tWM</BCC_UserSuppliedOptions> - <BRCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=4;$(BRCC_Defines)</BRCC_Defines> - <BCC_Defines>WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;ENAIRN;NEXOBS=3;NFREQ=4;$(BCC_Defines)</BCC_Defines> <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace> <IncludePath>$(BDSINCLUDE)\windows\vcl;$(IncludePath)</IncludePath> <VerInfo_Locale>1033</VerInfo_Locale> <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> + <BCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=3;$(BCC_Defines)</BCC_Defines> + <BRCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=3;$(BRCC_Defines)</BRCC_Defines> + <TASM_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=3;$(TASM_Defines)</TASM_Defines> + <BCC_UserSuppliedOptions> -tWM</BCC_UserSuppliedOptions> + <OutputExt>exe</OutputExt> + <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> <UWP_CppLogo44>$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png</UWP_CppLogo44> <UWP_CppLogo150>$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png</UWP_CppLogo150> </PropertyGroup> <PropertyGroup Condition="'$(Base_Win64)'!=''"> - <TASM_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=4;$(TASM_Defines)</TASM_Defines> - <BRCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=4;$(BRCC_Defines)</BRCC_Defines> - <BCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=4;$(BCC_Defines)</BCC_Defines> + <BCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;ENACMP;NEXOBS=3;NFREQ=3;$(BCC_Defines)</BCC_Defines> + <BRCC_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=3;$(BRCC_Defines)</BRCC_Defines> + <TASM_Defines>_RTLDLL;WIN32;TRACE;ENAGLO;ENAGAL;ENAQZS;NEXOBS=3;NFREQ=3;$(TASM_Defines)</TASM_Defines> <UWP_CppLogo44>$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_44.png</UWP_CppLogo44> <UWP_CppLogo150>$(BDS)\bin\Artwork\Windows\UWP\cppreg_UwpDefault_150.png</UWP_CppLogo150> </PropertyGroup> @@ -127,13 +120,13 @@ <TASM_DisplaySourceLines>true</TASM_DisplaySourceLines> </PropertyGroup> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> - <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> - <BCC_UserSuppliedOptions> -tWM -k</BCC_UserSuppliedOptions> - <BCC_Defines>_DEBUG;$(BCC_Defines);$(BCC_Defines)</BCC_Defines> <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <LinkPackageStatics>rtl.lib;vcl.lib;vclx.lib</LinkPackageStatics> <VerInfo_Locale>1033</VerInfo_Locale> + <BCC_Defines>_DEBUG;$(BCC_Defines);$(BCC_Defines)</BCC_Defines> + <BCC_UserSuppliedOptions> -tWM -k</BCC_UserSuppliedOptions> + <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> </PropertyGroup> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <BCC_Defines>_DEBUG;$(BCC_Defines);$(BCC_Defines)</BCC_Defines> @@ -144,12 +137,12 @@ <BCC_OptimizeForSpeed>true</BCC_OptimizeForSpeed> </PropertyGroup> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> - <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> - <BCC_UserSuppliedOptions> -tWM -r</BCC_UserSuppliedOptions> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File> <VerInfo_Locale>1033</VerInfo_Locale> <LinkPackageStatics>rtl.lib;vcl.lib;vclx.lib</LinkPackageStatics> + <BCC_UserSuppliedOptions> -tWM -r</BCC_UserSuppliedOptions> + <AppEnableRuntimeThemes>true</AppEnableRuntimeThemes> <BT_BuildType>Debug</BT_BuildType> </PropertyGroup> <ItemGroup> @@ -248,10 +241,7 @@ <BuildOrder>33</BuildOrder> </CppCompile> <CppCompile Include="..\..\src\rcv\cmr.c"> - <BuildOrder>38</BuildOrder> - </CppCompile> - <CppCompile Include="..\..\src\rcv\comnav.c"> - <BuildOrder>40</BuildOrder> + <BuildOrder>37</BuildOrder> </CppCompile> <CppCompile Include="..\..\src\rcv\crescent.c"> <BuildOrder>20</BuildOrder> @@ -279,7 +269,7 @@ <BuildOrder>37</BuildOrder> </CppCompile> <CppCompile Include="..\..\src\rcv\septentrio.c"> - <BuildOrder>35</BuildOrder> + <BuildOrder>39</BuildOrder> </CppCompile> <CppCompile Include="..\..\src\rcv\skytraq.c"> <BuildOrder>4</BuildOrder> @@ -289,8 +279,12 @@ <BuildOrder>5</BuildOrder> <BuildOrder>15</BuildOrder> </CppCompile> + <CppCompile Include="..\..\src\rcv\comnav.c"> + <BuildOrder>5</BuildOrder> + <BuildOrder>15</BuildOrder> + </CppCompile> <CppCompile Include="..\..\src\rcv\tersus.c"> - <BuildOrder>39</BuildOrder> + <BuildOrder>38</BuildOrder> </CppCompile> <CppCompile Include="..\..\src\rcv\ublox.c"> <BuildOrder>16</BuildOrder> @@ -327,11 +321,11 @@ <FormResources Include="codeopt.dfm"/> <FormResources Include="convmain.dfm"/> <FormResources Include="convopt.dfm"/> + <FormResources Include="..\appcmn\viewer.dfm"/> <FormResources Include="..\appcmn\aboutdlg.dfm"/> <FormResources Include="..\appcmn\confdlg.dfm"/> <FormResources Include="..\appcmn\keydlg.dfm"/> <FormResources Include="..\appcmn\timedlg.dfm"/> - <FormResources Include="..\appcmn\viewer.dfm"/> <FormResources Include="startdlg.dfm"/> <BuildConfiguration Include="Release"> <Key>Cfg_2</Key> @@ -398,10 +392,7 @@ <Parameters Name="LoadAllSymbols">True</Parameters> <Parameters Name="LoadUnspecifiedSymbols">False</Parameters> </Parameters> - <Excluded_Packages> - <Excluded_Packages Name="$(BDSBIN)\bcboffice2k250.bpl">Embarcadero C++Builder Office 2000 Servers Package</Excluded_Packages> - <Excluded_Packages Name="$(BDSBIN)\bcbofficexp250.bpl">Embarcadero C++Builder Office XP Servers Package</Excluded_Packages> - </Excluded_Packages> + <Excluded_Packages/> <ProjectProperties> <ProjectProperties Name="AutoShowDeps">False</ProjectProperties> <ProjectProperties Name="ManagePaths">True</ProjectProperties> @@ -417,31 +408,67 @@ <Platform value="Win64">False</Platform> </Platforms> <Deployment Version="3"> - <DeployFile LocalName="..\..\src\rcv\rcvlex.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\ublox.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\ublox.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\cmr.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\qzslex.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\novatel.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rinex.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rtkcmn.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\cmr.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\pntpos.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="Debug_Build\rtkconv.exe" Configuration="Debug" Class="ProjectOutput"> + <Platform Name="Win32"> + <RemoteName>rtkconv.exe</RemoteName> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\ephemeris.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\nvs.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rtcm2.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\ionex.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\swiftnav.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> @@ -453,207 +480,351 @@ <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin\cc32250mt.dll" Class="DependencyModule"> + <DeployFile LocalName="..\..\src\rcv\skytraq.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="Debug_Build\rtkconv.exe" Configuration="Debug" Class="ProjectOutput"> + <DeployFile LocalName="..\..\src\rcv\rcvlex.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\skytraq.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rtkcmn.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rtcm3e.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\sbas.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(UsingDelphiRTL)'=='true'" LocalName="$(BDS)\bin\borlndmm.dll" Class="DependencyModule"> + <Platform Name="Win32"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\septentrio.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(DynamicRTL)'=='true'" LocalName="$(BDS)\Redist\osx32\libcgstl.dylib" Class="DependencyModule"> + <Platform Name="OSX32"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rtcm2.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rtcm.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="Release_Build\rtkconv.exe" Configuration="Release" Class="ProjectOutput"> <Platform Name="Win32"> <RemoteName>rtkconv.exe</RemoteName> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="rtkconv.res" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\nvs.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\pntpos.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\javad.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\novatel.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\ephemeris.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\binex.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin\cc32250.dll" Class="DependencyModule"> + <Platform Name="Win32"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin64\cc64250.dll" Class="DependencyModule"> + <Platform Name="Win64"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\rt17.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rtkcmn.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\rcvlex.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\tersus.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\binex.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\swiftnav.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\qzslex.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\skytraq.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rinex.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcvraw.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rtcm3.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\septentrio.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="rtkconv.res" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\preceph.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\ublox.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin\cc32c250mt.dll" Class="DependencyModule"> + <DeployFile LocalName="..\..\src\rinex.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin\cc32c250.dll" Class="DependencyModule"> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin\cc32250mt.dll" Class="DependencyModule"> <Platform Name="Win32"> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true'" LocalName="$(BDS)\Redist\osx32\libcgcrtl.dylib" Class="DependencyModule"> - <Platform Name="OSX32"> + <DeployFile LocalName="..\..\src\rtcm3e.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(UsingDelphiRTL)'=='true'" LocalName="$(BDS)\bin64\borlndmm.dll" Class="DependencyModule"> - <Platform Name="Win64"> + <DeployFile LocalName="..\..\src\convrnx.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(UsingDelphiRTL)'=='true'" LocalName="$(BDS)\bin\borlndmm.dll" Class="DependencyModule"> + <DeployFile LocalName="rtkconv.res" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rtcm3e.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\novatel.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true'" LocalName="$(BDS)\Redist\osx32\libcgstl.dylib" Class="DependencyModule"> - <Platform Name="OSX32"> + <DeployFile LocalName="..\..\src\rcv\binex.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rtcm3.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rtcm.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\sbas.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\qzslex.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rtcm2.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\tersus.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rtcm.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\tersus.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin64\cc64250mt.dll" Class="DependencyModule"> - <Platform Name="Win64"> + <DeployFile LocalName="..\..\src\rcvraw.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\gw10.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\crescent.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\convrnx.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\cmr.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\nvs.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\gw10.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\javad.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\sbas.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\ephemeris.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcvraw.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin\cc32250.dll" Class="DependencyModule"> + <DeployFile LocalName="..\..\src\rcv\septentrio.c" Configuration="Debug" Class="ProjectFile"> <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\crescent.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rcv\javad.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\ionex.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\preceph.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\pntpos.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="Debug_Build\rtkconv.tds" Configuration="Debug" Class="DebugSymbols"> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin\cc32c250mt.dll" Class="DependencyModule"> <Platform Name="Win32"> - <RemoteName>rtkconv.tds</RemoteName> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin64\cc64250.dll" Class="DependencyModule"> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'!='true'" LocalName="$(BDS)\bin\cc32c250.dll" Class="DependencyModule"> + <Platform Name="Win32"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(DynamicRTL)'=='true'" LocalName="$(BDS)\Redist\osx32\libcgcrtl.dylib" Class="DependencyModule"> + <Platform Name="OSX32"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(UsingDelphiRTL)'=='true'" LocalName="$(BDS)\bin64\borlndmm.dll" Class="DependencyModule"> <Platform Name="Win64"> <Overwrite>true</Overwrite> </Platform> </DeployFile> - <DeployFile LocalName="..\..\src\rcv\rt17.c" Configuration="Debug" Class="ProjectFile"> + <DeployFile LocalName="..\..\src\rtcm3.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\swiftnav.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\comnav.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\rt17.c" Configuration="Release" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile Condition="'$(DynamicRTL)'=='true' And '$(Multithreaded)'=='true'" LocalName="$(BDS)\bin64\cc64250mt.dll" Class="DependencyModule"> + <Platform Name="Win64"> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\gw10.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\convrnx.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\rcv\crescent.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\ionex.c" Configuration="Debug" Class="ProjectFile"> + <Platform Name="Win32"> + <RemoteDir>.\</RemoteDir> + <Overwrite>true</Overwrite> + </Platform> + </DeployFile> + <DeployFile LocalName="..\..\src\preceph.c" Configuration="Release" Class="ProjectFile"> <Platform Name="Win32"> <RemoteDir>.\</RemoteDir> <Overwrite>true</Overwrite> diff --git a/app/rtkconv/rtkconv.cpp b/app/rtkconv/rtkconv.cpp index 45a3bae47fc18cbf9974247f622b7f086d4c024d..25a09cdd6ac9b36feb821f8e726cf11e4e92c096 100644 --- a/app/rtkconv/rtkconv.cpp +++ b/app/rtkconv/rtkconv.cpp @@ -18,15 +18,15 @@ -USEFORM("codeopt.cpp", CodeOptDialog); USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog); -USEFORM("convopt.cpp", ConvOptDialog); +USEFORM("codeopt.cpp", CodeOptDialog); USEFORM("convmain.cpp", MainWindow); +USEFORM("convopt.cpp", ConvOptDialog); USEFORM("..\appcmn\viewer.cpp", TextViewer); -USEFORM("..\appcmn\confdlg.cpp", ConfDialog); USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog); -USEFORM("..\appcmn\timedlg.cpp", TimeDialog); +USEFORM("..\appcmn\confdlg.cpp", ConfDialog); USEFORM("..\appcmn\keydlg.cpp", KeyDialog); +USEFORM("..\appcmn\timedlg.cpp", TimeDialog); USEFORM("startdlg.cpp", StartDialog); //--------------------------------------------------------------------------- WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) diff --git a/app/rtkget/rtkget.cbproj b/app/rtkget/rtkget.cbproj index 64e5fcf032cb0c17e7afd3331ee2cd74994454ff..09a6f0c56f4c5d1634d579b823f3168cee9cfa11 100644 --- a/app/rtkget/rtkget.cbproj +++ b/app/rtkget/rtkget.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtklaunch/rtklaunch.cbproj b/app/rtklaunch/rtklaunch.cbproj index 7a0ef7df205adec128590ead683c7a25c7e6e46b..8d25855cd7a6c77d53c813e8bf2786caf8e39652 100644 --- a/app/rtklaunch/rtklaunch.cbproj +++ b/app/rtklaunch/rtklaunch.cbproj @@ -1,7 +1,7 @@ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <ProjectGuid>{B9D0F977-D158-4447-9818-D26CDBC2CE25}</ProjectGuid> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <FrameworkType>VCL</FrameworkType> <MainSource>rtklaunch.cpp</MainSource> <Base>True</Base> diff --git a/app/rtknavi/rtknavi.cbproj b/app/rtknavi/rtknavi.cbproj index f4fff16f6f846f4e44b6941bec21cb18c1eb9490..d340e2acebc1d43cbf04ae8fb9f5cafa42de886d 100644 --- a/app/rtknavi/rtknavi.cbproj +++ b/app/rtknavi/rtknavi.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtknavi_mkl/rtknavi_mkl.cbproj b/app/rtknavi_mkl/rtknavi_mkl.cbproj index 1edaf5cc79d7c9e0276467dc1a28a3711a738b54..b4d70df83081986d017fac096746f1af697c4671 100644 --- a/app/rtknavi_mkl/rtknavi_mkl.cbproj +++ b/app/rtknavi_mkl/rtknavi_mkl.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtknavi_win64/rtknavi_win64.cbproj b/app/rtknavi_win64/rtknavi_win64.cbproj index 5be69b800917b02a28d6abb8eb57cd8ea219939f..5a23dda6e986bd4ab7ef7bf92efbac0406621bd7 100644 --- a/app/rtknavi_win64/rtknavi_win64.cbproj +++ b/app/rtknavi_win64/rtknavi_win64.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>3</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtkpost/rtkpost.cbproj b/app/rtkpost/rtkpost.cbproj index 13c79de873e145f206f0b1bec798c4b8eb795475..061d9796ad62a937bcd732cb93bbd96c68263175 100644 --- a/app/rtkpost/rtkpost.cbproj +++ b/app/rtkpost/rtkpost.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtkpost_mkl/rtkpost_mkl.cbproj b/app/rtkpost_mkl/rtkpost_mkl.cbproj index 9c48b1f85b4e1ceefd067840fc3773ed08a2a42b..4a3ad0f855598e123d53021a1718e355fa5e2046 100644 --- a/app/rtkpost_mkl/rtkpost_mkl.cbproj +++ b/app/rtkpost_mkl/rtkpost_mkl.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtkpost_win64/rtkpost_win64.cbproj b/app/rtkpost_win64/rtkpost_win64.cbproj index 96222a085d6a7565535413edae7a9e4edb10f184..50517c3ba23667526da3f2eb346edbd470824909 100644 --- a/app/rtkpost_win64/rtkpost_win64.cbproj +++ b/app/rtkpost_win64/rtkpost_win64.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win64</Platform> <TargetedPlatforms>3</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/rtkrcv/gcc/rtkrcv.conf b/app/rtkrcv/gcc/rtkrcv.conf index 9d73618d4617d6aca7e53cd34981f2a0d26eb7cb..86be5a323ac84bce34d716a2cb5608a5a6f42201 100644 --- a/app/rtkrcv/gcc/rtkrcv.conf +++ b/app/rtkrcv/gcc/rtkrcv.conf @@ -5,13 +5,13 @@ console-timetype =gpst # (0:gpst,1:utc,2:jst,3:tow) console-soltype =dms # (0:dms,1:deg,2:xyz,3:enu,4:pyl) console-solflag =1 # (0:off,1:std+2:age/ratio/ns) inpstr1-type =serial # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,7:ntripcli,8:ftp,9:http) -inpstr2-type =off # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,7:ntripcli,8:ftp,9:http) +inpstr2-type =serial # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,7:ntripcli,8:ftp,9:http) inpstr3-type =off # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,7:ntripcli,8:ftp,9:http) inpstr1-path =ttyACM0:115200:8:n:1:off inpstr2-path =ttyS1:115200:8:n:1:off inpstr3-path =anonymous:passwd@cddis.gsfc.nasa.gov/gps/products/%W/igu%W%D_%hb.sp3.Z::T=-14400,21600,7200,600 inpstr1-format =ubx # (0:rtcm2,1:rtcm3,2:oem4,3:oem3,4:ubx,5:ss2,6:hemis,7:skytraq,14:sp3) -inpstr2-format =oem4 # (0:rtcm2,1:rtcm3,2:oem4,3:oem3,4:ubx,5:ss2,6:hemis,7:skytraq,14:sp3) +inpstr2-format =rtcm3 # (0:rtcm2,1:rtcm3,2:oem4,3:oem3,4:ubx,5:ss2,6:hemis,7:skytraq,14:sp3) inpstr3-format =sp3 # (0:rtcm2,1:rtcm3,2:oem4,3:oem3,4:ubx,5:ss2,6:hemis,7:skytraq,14:sp3) inpstr2-nmeareq =off # (0:off,1:latlon,2:single) inpstr2-nmealat =0 # (deg) @@ -23,7 +23,7 @@ outstr2-path =sol2_%Y%m%d%h%M.pos outstr1-format =llh # (0:llh,1:xyz,2:enu,3:nmea) outstr2-format =nmea # (0:llh,1:xyz,2:enu,3:nmea) logstr1-type =file # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,6:ntripsvr) -logstr2-type =off # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,6:ntripsvr) +logstr2-type =file # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,6:ntripsvr) logstr3-type =off # (0:off,1:serial,2:file,3:tcpsvr,4:tcpcli,6:ntripsvr) logstr1-path =rov_%Y%m%d%h%M.log logstr2-path =ref_%Y%m%d%h%M.log @@ -33,14 +33,14 @@ misc-timeout =30000 # (ms) misc-reconnect =30000 # (ms) misc-nmeacycle =5000 # (ms) misc-buffsize =32768 # (bytes) -misc-navmsgsel =rover # (0:all,1:rover,1:base,2:corr) +misc-navmsgsel =all # (0:all,1:rover,1:base,2:corr) misc-startcmd = misc-stopcmd = -file-cmdfile1 =../../../data/m8t_5hz_usb.cmd +file-cmdfile1 =#../../../data/m8t_5hz_usb.cmd file-cmdfile2 = # ../../../data/oem4_raw_1hz.cmd file-cmdfile3 = -pos1-posmode =single # (0:single,1:dgps,2:kinematic,3:static,4:movingbase,5:fixed,6:ppp-kine,7:ppp-static) -pos1-frequency =l1 # (1:l1,2:l1+l2,3:l1+l2+l5) +pos1-posmode =kinematic # (0:single,1:dgps,2:kinematic,3:static,4:movingbase,5:fixed,6:ppp-kine,7:ppp-static) +pos1-frequency =l1+l2 # (1:l1,2:l1+l2,3:l1+l2+l5) pos1-soltype =forward # (0:forward,1:backward,2:combined) pos1-elmask =15 # (deg) pos1-snrmask =off # (dBHz) @@ -101,7 +101,7 @@ ant1-anttype = ant1-antdele =0 # (m) ant1-antdeln =0 # (m) ant1-antdelu =0 # (m) -ant2-postype =llh # (0:llh,1:xyz,2:single,3:posfile,4:rinexhead,5:rtcm) +ant2-postype =single # (0:llh,1:xyz,2:single,3:posfile,4:rinexhead,5:rtcm) ant2-pos1 =0 # (deg|m) ant2-pos2 =0 # (deg|m) ant2-pos3 =0 # (m|m) @@ -109,6 +109,8 @@ ant2-anttype = ant2-antdele =0 # (m) ant2-antdeln =0 # (m) ant2-antdelu =0 # (m) +ant2-maxaveep =1 +ant2-initrst =on # (0:off,1:on) misc-timeinterp =off # (0:off,1:on) misc-sbasatsel =0 # (0:all) file-satantfile =#../../../data/igs05.atx diff --git a/app/rtkvideo/rtkvideo.cbproj b/app/rtkvideo/rtkvideo.cbproj index 37902cfba89814d4bcbf7cd700d97a34755b1474..745c469c3224784dde2f411cad061faaff967b4f 100644 --- a/app/rtkvideo/rtkvideo.cbproj +++ b/app/rtkvideo/rtkvideo.cbproj @@ -1,7 +1,7 @@ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <ProjectGuid>{284EF51A-2EC2-4D7F-BEC9-FE9B7CBDD2EF}</ProjectGuid> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <FrameworkType>FMX</FrameworkType> <MainSource>rtkvideo.cpp</MainSource> <Base>True</Base> diff --git a/app/rtkvplayer/rtkvplayer.cbproj b/app/rtkvplayer/rtkvplayer.cbproj index 5b5eb2906b0c79acec789fa6d3acf9310d2075ff..e45bb41c391521d8327767aaef9463a59f681129 100644 --- a/app/rtkvplayer/rtkvplayer.cbproj +++ b/app/rtkvplayer/rtkvplayer.cbproj @@ -1,7 +1,7 @@ <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <ProjectGuid>{668024AB-0C9C-452E-BAC8-27CF7B85E2F4}</ProjectGuid> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <FrameworkType>FMX</FrameworkType> <MainSource>rtkvplayer.cpp</MainSource> <Base>True</Base> diff --git a/app/srctblbrows/srctblbrows.cbproj b/app/srctblbrows/srctblbrows.cbproj index 2366d8ca6fdcf95f8abf0a3b5b773209084cf6d6..3d412c20cdcddf4f61bdbc3c789587ebc1e6880e 100644 --- a/app/srctblbrows/srctblbrows.cbproj +++ b/app/srctblbrows/srctblbrows.cbproj @@ -6,7 +6,7 @@ <Base>True</Base> <Config Condition="'$(Config)'==''">Release</Config> <FrameworkType>VCL</FrameworkType> - <ProjectVersion>18.2</ProjectVersion> + <ProjectVersion>18.4</ProjectVersion> <Platform Condition="'$(Platform)'==''">Win32</Platform> <TargetedPlatforms>1</TargetedPlatforms> <AppType>Application</AppType> diff --git a/app/str2str/gcc/makefile b/app/str2str/gcc/makefile index 90a9d902e8f05792274d01f3f7fe1870da27689b..c68225fd447d612ee924e43b3ac87efcc24649a7 100644 --- a/app/str2str/gcc/makefile +++ b/app/str2str/gcc/makefile @@ -76,7 +76,7 @@ cmr.o : $(SRC)/rcv/cmr.c $(CC) -c $(CFLAGS) $(SRC)/rcv/cmr.c tersus.o : $(SRC)/rcv/tersus.c $(CC) -c $(CFLAGS) $(SRC)/rcv/tersus.c -comnav.o : $(SRC)/rcv/tersus.c +comnav.o : $(SRC)/rcv/comnav.c $(CC) -c $(CFLAGS) $(SRC)/rcv/comnav.c str2str.o : $(SRC)/rtklib.h diff --git a/src/postpos.c b/src/postpos.c index 8a651f4a700741b6194406667b4122a3583b4ac9..47efdf69cea7363557391f95edeb0395b8200016 100644 --- a/src/postpos.c +++ b/src/postpos.c @@ -1123,7 +1123,11 @@ static int execses(gtime_t ts, gtime_t te, double ti, const prcopt_t *popt, } } /* read obs and nav data */ - if (!readobsnav(ts,te,ti,infile,index,n,&popt_,&obss,&navs,stas)) return 0; + if (!readobsnav(ts,te,ti,infile,index,n,&popt_,&obss,&navs,stas)) { + /* free obs and nav data */ + freeobsnav(&obss, &navs); + return 0; + } /* read dcb parameters */ if (*fopt->dcb) { diff --git a/src/rcv/ublox.c b/src/rcv/ublox.c index 884e8068234f186c5db52690efa5f3b271d4d4c0..76deb64505d32360bd863dc86089d28c7af68bfd 100644 --- a/src/rcv/ublox.c +++ b/src/rcv/ublox.c @@ -59,6 +59,9 @@ * 2017/06/10 1.24 output half-cycle-subtracted flag * 2018/10/09 1.25 support ZED-F9P according to [5] * beidou C17 is handled as GEO (navigation D2). +* 2018/11/05 1.26 fix problem on missing QZSS L2C signal +* save signal in obs data by signal index +* suppress warning for cnav in ubx-rxm-sfrbx *-----------------------------------------------------------------------------*/ #include "rtklib.h" @@ -66,6 +69,8 @@ #define UBXSYNC2 0x62 /* ubx message sync code 2 */ #define UBXCFG 0x06 /* ubx message cfg-??? */ +#define PREAMB_CNAV 0x8B /* cnav preamble */ + #define ID_NAVSOL 0x0106 /* ubx message id: nav solution info */ #define ID_NAVTIME 0x0120 /* ubx message id: nav time gps */ #define ID_RXMRAW 0x0210 /* ubx message id: raw measurement data */ @@ -152,31 +157,66 @@ static int ubx_sys(int gnssid) /* ubx sigid to signal ([5] Appendix B) --------------------------------------*/ static int ubx_sig(int sys, int sigid) { - if (sys == SYS_GPS || sys == SYS_QZS) { + if (sys == SYS_GPS) { if (sigid == 0) return CODE_L1C; /* L1C/A */ if (sigid == 3) return CODE_L2L; /* L2CL */ if (sigid == 4) return CODE_L2M; /* L2CM */ } + else if (sys == SYS_GLO) { + if (sigid == 0) return CODE_L1C; /* G1C/A (GLO L1 OF) */ + if (sigid == 2) return CODE_L2C; /* G2C/A (GLO L2 OF) */ + } else if (sys == SYS_GAL) { if (sigid == 0) return CODE_L1C; /* E1C */ if (sigid == 1) return CODE_L1B; /* E1B */ if (sigid == 5) return CODE_L7I; /* E5bI */ if (sigid == 6) return CODE_L7Q; /* E5bQ */ } + else if (sys == SYS_QZS) { + if (sigid == 0) return CODE_L1C; /* L1C/A */ + if (sigid == 5) return CODE_L2L; /* L2CL (not specified in [5]) */ + } else if (sys == SYS_CMP) { if (sigid == 0) return CODE_L2I; /* B1I D1 (rinex 3.03) */ if (sigid == 1) return CODE_L2I; /* B1I D2 (rinex 3.03) */ if (sigid == 2) return CODE_L7I; /* B2I D1 */ if (sigid == 3) return CODE_L7I; /* B2I D2 */ } + else if (sys == SYS_SBS) { + return CODE_L1C; /* L1C/A (not in [5]) */ + } + return CODE_NONE; +} +/* signal index in obs data --------------------------------------------------*/ +static int sig_idx(int sys, int code) +{ + if (sys == SYS_GPS) { + if (code==CODE_L1C) return 1; + if (code==CODE_L2L) return 2; + if (code==CODE_L2M) return 2; + } else if (sys == SYS_GLO) { - if (sigid == 0) return CODE_L1C; /* G1C/A (GLO L1 OF) */ - if (sigid == 2) return CODE_L2C; /* G2C/A (GLO L2 OF) */ + if (code==CODE_L1C) return 1; + if (code==CODE_L2C) return 2; + } + else if (sys == SYS_GAL) { + if (code==CODE_L1C) return 1; + if (code==CODE_L1B) return 1; + if (code==CODE_L7Q) return 2; + if (code==CODE_L7I) return 2; + } + else if (sys == SYS_QZS) { + if (code==CODE_L1C) return 1; + if (code==CODE_L2L) return 2; + } + else if (sys == SYS_CMP) { + if (code==CODE_L1I||code==CODE_L2I) return 1; + if (code==CODE_L7I) return 2; } else if (sys == SYS_SBS) { - return CODE_L1C; /* L1C/A */ + if (code==CODE_L1C) return 1; } - return CODE_NONE; + return 0; } /* freq index to frequency ---------------------------------------------------*/ static double sig_freq(int sys, int f, int fcn) @@ -285,7 +325,7 @@ static int decode_rxmrawx(raw_t *raw) { gtime_t time; unsigned char *p=raw->buff+6; - char *q; + char *q,tstr[64]; double tow,P,L,D,tn,tadj=0.0,toff=0.0; int i,j,k,f,sys,prn,sat,code,slip,halfv,halfc,LLI,n=0,std_slip=0; int week,nmeas,ver,gnss,svid,sigid,frqid,lockt,cn0,cpstd,prstd,tstat; @@ -312,8 +352,9 @@ static int decode_rxmrawx(raw_t *raw) time=gpst2time(week,tow); if (raw->outtype) { + time2str(time,tstr,2); sprintf(raw->msgtype,"UBX RXM-RAWX (%4d): time=%s nmeas=%d ver=%d", - raw->len,time_str(time,2),nmeas,ver); + raw->len,tstr,nmeas,ver); } /* time tag adjustment option (-TADJ) */ if ((q=strstr(raw->opt,"-TADJ="))) { @@ -365,10 +406,11 @@ static int decode_rxmrawx(raw_t *raw) else { code=(sys==SYS_CMP)?CODE_L2I:((sys==SYS_GAL)?CODE_L1X:CODE_L1C); } - code2obs(sys,code,&f); /* freq index */ + /* signal index in obs data */ + f=sig_idx(sys,code); - if (f==0||f>NFREQ) { - trace(2,"ubx rxmrawx signal error: sys=%2d code=%2d\n",sys,code); + if (f==0||f>NFREQ+NEXOBS) { + trace(2,"ubx rxmrawx signal error: sat=%2d sigid=%d\n",sat,sigid); continue; } /* offset by time tag adjustment */ @@ -832,11 +874,17 @@ static int decode_nav(raw_t *raw, int sat, int off) trace(2,"ubx rawsfrbx length error: sat=%d len=%d\n",sat,raw->len); return -1; } + if ((U4(p)>>24)==PREAMB_CNAV) { + trace(3,"ubx rawsfrbx cnav not supported sat=%d prn=%d\n",sat, + (U4(p)>>18)&0x3F); + return 0; + } for (i=0;i<10;i++,p+=4) words[i]=U4(p)>>6; /* 24 bits without parity */ id=(words[1]>>2)&7; if (id<1||5<id) { - trace(2,"ubx rawsfrbx subfrm id error: sat=%2d\n",sat); + trace(2,"ubx rawsfrbx subfrm id error: sat=%2d id=%d len=%d\n",sat,id, + raw->len); return -1; } for (i=0;i<10;i++) { @@ -898,6 +946,9 @@ static int decode_enav(raw_t *raw, int sat, int off) raw->subfrm[sat-1][112]|=(1<<type); if (raw->subfrm[sat-1][112]!=0x7F) return 0; + if (strstr(raw->opt,"-GALFNAV")) { + return 0; + } /* decode galileo inav ephemeris */ if (!decode_gal_inav(raw->subfrm[sat-1],&eph)) { return 0; diff --git a/src/rtcm.c b/src/rtcm.c index 5bf9fb893097403a733c7c07a66fc4f64c18422b..7642eed9d9b822fe9fb4cf185f45311aca8f6695 100644 --- a/src/rtcm.c +++ b/src/rtcm.c @@ -48,6 +48,7 @@ * crc24q() -> rtk_crc24q() * 2018/10/10 1.10 fix bug on initializing rtcm struct * add rtcm option -GALINAV, -GALFNAV +* 2018/11/05 1.11 add notes for api gen_rtcm3() *-----------------------------------------------------------------------------*/ #include "rtklib.h" @@ -347,6 +348,12 @@ extern int gen_rtcm2(rtcm_t *rtcm, int type, int sync) * int type I message type * int sync I sync flag (1:another message follows) * return : status (1:ok,0:error) +* notes : For rtcm 3 msm, the {nsat} x {nsig} in rtcm->obs should not exceed +* 64. If {nsat} x {nsig} of the input obs data exceeds 64, separate +* them to multiple ones and call gen_rtcm3() multiple times as user +* responsibility. +* ({nsat} = number of valid satellites, {nsig} = number of signals in +* the obs data) *-----------------------------------------------------------------------------*/ extern int gen_rtcm3(rtcm_t *rtcm, int type, int sync) { diff --git a/src/rtcm3.c b/src/rtcm3.c index 038e2f2bc9a8e5ec093edc271ebeeb954ac74327..82801c62d3848f544f3fc95a5ede73dcaabecc12 100644 --- a/src/rtcm3.c +++ b/src/rtcm3.c @@ -36,6 +36,7 @@ * fix problem on eph.code for galileo ephemeris * change mt for ssr 7 phase biases * add rtcm option -GALINAV, -GALFNAV +* 2018/11/05 1.20 fix problem on invalid time in message monitor *-----------------------------------------------------------------------------*/ #include "rtklib.h" @@ -220,7 +221,7 @@ static int test_staid(rtcm_t *rtcm, int staid) static int decode_head1001(rtcm_t *rtcm, int *sync) { double tow; - char *msg; + char *msg,tstr[64]; int i=24,staid,nsat,type; type=getbitu(rtcm->buff,i,12); i+=12; @@ -240,13 +241,12 @@ static int decode_head1001(rtcm_t *rtcm, int *sync) adjweek(rtcm,tow); - trace(4,"decode_head1001: time=%s nsat=%d sync=%d\n",time_str(rtcm->time,2), - nsat,*sync); + time2str(rtcm->time,tstr,2); + trace(4,"decode_head1001: time=%s nsat=%d sync=%d\n",tstr,nsat,*sync); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); - sprintf(msg," staid=%4d %s nsat=%2d sync=%d",staid, - time_str(rtcm->time,2),nsat,*sync); + sprintf(msg," staid=%4d %s nsat=%2d sync=%d",staid,tstr,nsat,*sync); } return nsat; } @@ -523,7 +523,7 @@ static int decode_type1008(rtcm_t *rtcm) static int decode_head1009(rtcm_t *rtcm, int *sync) { double tod; - char *msg; + char *msg,tstr[64]; int i=24,staid,nsat,type; type=getbitu(rtcm->buff,i,12); i+=12; @@ -543,13 +543,12 @@ static int decode_head1009(rtcm_t *rtcm, int *sync) adjday_glot(rtcm,tod); - trace(4,"decode_head1009: time=%s nsat=%d sync=%d\n",time_str(rtcm->time,2), - nsat,*sync); + time2str(rtcm->time,tstr,2); + trace(4,"decode_head1009: time=%s nsat=%d sync=%d\n",tstr,nsat,*sync); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); - sprintf(msg," staid=%4d %s nsat=%2d sync=%d",staid, - time_str(rtcm->time,2),nsat,*sync); + sprintf(msg," staid=%4d %s nsat=%2d sync=%d",staid,tstr,nsat,*sync); } return nsat; } @@ -1271,7 +1270,7 @@ static int decode_ssr1_head(rtcm_t *rtcm, int sys, int *sync, int *iod, double *udint, int *refd, int *hsize) { double tod,tow; - char *msg; + char *msg,tstr[64]; int i=24+12,nsat,udi,provid=0,solid=0,ns; ns=sys==SYS_QZS?4:6; @@ -1295,13 +1294,14 @@ static int decode_ssr1_head(rtcm_t *rtcm, int sys, int *sync, int *iod, nsat =getbitu(rtcm->buff,i,ns); i+=ns; *udint=ssrudint[udi]; + time2str(rtcm->time,tstr,2); trace(4,"decode_ssr1_head: time=%s sys=%d nsat=%d sync=%d iod=%d provid=%d solid=%d\n", - time_str(rtcm->time,2),sys,nsat,*sync,*iod,provid,solid); + tstr,sys,nsat,*sync,*iod,provid,solid); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); - sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d", - time_str(rtcm->time,2),nsat,*iod,udi,*sync); + sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d",tstr,nsat,*iod,udi, + *sync); } *hsize=i; return nsat; @@ -1311,7 +1311,7 @@ static int decode_ssr2_head(rtcm_t *rtcm, int sys, int *sync, int *iod, double *udint, int *hsize) { double tod,tow; - char *msg; + char *msg,tstr[64]; int i=24+12,nsat,udi,provid=0,solid=0,ns; ns=sys==SYS_QZS?4:6; @@ -1334,13 +1334,14 @@ static int decode_ssr2_head(rtcm_t *rtcm, int sys, int *sync, int *iod, nsat =getbitu(rtcm->buff,i,ns); i+=ns; *udint=ssrudint[udi]; + time2str(rtcm->time,tstr,2); trace(4,"decode_ssr2_head: time=%s sys=%d nsat=%d sync=%d iod=%d provid=%d solid=%d\n", - time_str(rtcm->time,2),sys,nsat,*sync,*iod,provid,solid); + tstr,sys,nsat,*sync,*iod,provid,solid); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); - sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d", - time_str(rtcm->time,2),nsat,*iod,udi,*sync); + sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d",tstr,nsat,*iod,udi, + *sync); } *hsize=i; return nsat; @@ -1651,7 +1652,7 @@ static int decode_ssr7_head(rtcm_t *rtcm, int sys, int *sync, int *iod, double *udint, int *dispe, int *mw, int *hsize) { double tod,tow; - char *msg; + char *msg,tstr[64]; int i=24+12,nsat,udi,provid=0,solid=0,ns; ns=sys==SYS_QZS?4:6; @@ -1676,13 +1677,14 @@ static int decode_ssr7_head(rtcm_t *rtcm, int sys, int *sync, int *iod, nsat =getbitu(rtcm->buff,i,ns); i+=ns; *udint=ssrudint[udi]; + time2str(rtcm->time,tstr,2); trace(4,"decode_ssr7_head: time=%s sys=%d nsat=%d sync=%d iod=%d provid=%d solid=%d\n", - time_str(rtcm->time,2),sys,nsat,*sync,*iod,provid,solid); + tstr,sys,nsat,*sync,*iod,provid,solid); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); - sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d", - time_str(rtcm->time,2),nsat,*iod,udi,*sync); + sprintf(msg," %s nsat=%2d iod=%2d udi=%2d sync=%d",tstr,nsat,*iod,udi, + *sync); } *hsize=i; return nsat; @@ -1893,7 +1895,7 @@ static int decode_msm_head(rtcm_t *rtcm, int sys, int *sync, int *iod, { msm_h_t h0={0}; double tow,tod; - char *msg; + char *msg,tstr[64]; int i=24,j,dow,mask,staid,type,ncell=0; type=getbitu(rtcm->buff,i,12); i+=12; @@ -1955,13 +1957,14 @@ static int decode_msm_head(rtcm_t *rtcm, int sys, int *sync, int *iod, } *hsize=i; + time2str(rtcm->time,tstr,2); trace(4,"decode_head_msm: time=%s sys=%d staid=%d nsat=%d nsig=%d sync=%d iod=%d ncell=%d\n", - time_str(rtcm->time,2),sys,staid,h->nsat,h->nsig,*sync,*iod,ncell); + tstr,sys,staid,h->nsat,h->nsig,*sync,*iod,ncell); if (rtcm->outtype) { msg=rtcm->msgtype+strlen(rtcm->msgtype); sprintf(msg," staid=%4d %s nsat=%2d nsig=%2d iod=%2d ncell=%2d sync=%d", - staid,time_str(rtcm->time,2),h->nsat,h->nsig,*iod,ncell,*sync); + staid,tstr,h->nsat,h->nsig,*iod,ncell,*sync); } return ncell; } diff --git a/src/rtklib.h b/src/rtklib.h index b11139a4480c201c65439bb98f8e5eb802c2ee7d..80176d7d3fd5ea8566a6cb942332201904430558 100644 --- a/src/rtklib.h +++ b/src/rtklib.h @@ -58,7 +58,7 @@ extern "C" { #define VER_RTKLIB "demo5" /* library version */ -#define PATCH_LEVEL "b30" /* patch level */ +#define PATCH_LEVEL "b31" /* patch level */ #define COPYRIGHT_RTKLIB \ "Copyright (C) 2007-2018 T.Takasu\nAll rights reserved." diff --git a/src/stream.c b/src/stream.c index 634576b3e380b4d86c85bd95d111bcd16096f340..389a00c4357592916842ec48978f460b5b745ccd 100644 --- a/src/stream.c +++ b/src/stream.c @@ -1,7 +1,7 @@ /*------------------------------------------------------------------------------ * stream.c : stream input/output functions * -* Copyright (C) 2008-2016 by T.TAKASU, All rights reserved. +* Copyright (C) 2008-2018 by T.TAKASU, All rights reserved. * * options : -DWIN32 use WIN32 API * -DSVR_REUSEADDR reuse tcp server address @@ -58,6 +58,10 @@ * 2016/09/06 1.23 fix bug on ntrip caster socket and request handling * 2016/09/27 1.24 support udp server and client * 2016/10/10 1.25 support ::P={4|8} option in path for STR_FILE +* 2018/11/05 1.26 fix bug on default playback speed (= 0) +* fix bug on file playback as slave mode +* fix bug on timeset() in gpst instead of utc +* update trace levels and buffer sizes *-----------------------------------------------------------------------------*/ #include <ctype.h> #include "rtklib.h" @@ -604,7 +608,7 @@ static int openfile_(file_t *file, gtime_t time, char *msg) file->tick_f=0; } /* adust time to read playback file */ - timeset(file->time); + timeset(gpst2utc(file->time)); } else { sprintf(tagh,"TIMETAG RTKLIB %s",VER_RTKLIB); @@ -641,7 +645,7 @@ static file_t *openfile(const char *path, int mode, char *msg) { file_t *file; gtime_t time,time0={0}; - double speed=0.0,start=0.0,swapintv=0.0; + double speed=1.0,start=0.0,swapintv=0.0; char *p; int timetag=0,size_fpos=(int)sizeof(size_t); @@ -793,10 +797,11 @@ static int readfile(file_t *file, unsigned char *buff, int nmax, char *msg) } else { /* master */ t=(unsigned int)((tickget()-file->tick)*file->speed+file->start*1000.0); + tick_master=t; } /* seek time-tag file to get next tick and file position */ - while (file->tick_n<=t) { - + while ((int)(file->tick_n-t)<=0) { + if (fread(&file->tick_n,sizeof(tick),1,file->fp_tag)<1|| fread(file->size_fpos==4?(void *)&fpos_4B:(void *)&fpos_8B, file->size_fpos,1,file->fp_tag)<1) { @@ -809,15 +814,18 @@ static int readfile(file_t *file, unsigned char *buff, int nmax, char *msg) } file->fpos_n=file->size_fpos==4?(size_t)fpos_4B:(size_t)fpos_8B; } + if (file->tick_n==(unsigned int)(-1)) { + sprintf(msg,"end"); + } + else { sprintf(msg,"T%+.1fs",(int)t*0.001); + } file->wtime = timeadd(file->time,(int)t*0.001); - timeset(timeadd(file->time,(int)file->tick_n*0.001)); + timeset(timeadd(gpst2utc(file->time),(int)file->tick_n*0.001)); if ((n=file->fpos_n-ftell(file->fp))<nmax) { nmax=n; } - - if (!file->repmode) tick_master = file->tick_n; } if (nmax>0) { nr=(int)fread(buff,1,nmax,file->fp); @@ -837,7 +845,7 @@ static int writefile(file_t *file, unsigned char *buff, int n, char *msg) double tow1,tow2,intv; size_t fpos,fpos_tmp; - tracet(3,"writefile: fp=%d n=%d\n",file->fp,n); + tracet(4,"writefile: fp=%d n=%d\n",file->fp,n); if (!file) return 0; @@ -1320,7 +1328,7 @@ static int consock(tcpcli_t *tcpcli, char *msg) sizeof(tcpcli->svr.addr)))==-1) { err=errsock(); sprintf(msg,"connect error (%d)",err); - tracet(1,"consock: connect error sock=%d err=%d\n",tcpcli->svr.sock,err); + tracet(2,"consock: connect error sock=%d err=%d\n",tcpcli->svr.sock,err); closesocket(tcpcli->svr.sock); tcpcli->svr.state=0; return 0; @@ -1330,7 +1338,7 @@ static int consock(tcpcli_t *tcpcli, char *msg) return 0; } sprintf(msg,"%s",tcpcli->svr.saddr); - tracet(2,"consock: connected sock=%d addr=%s\n",tcpcli->svr.sock,tcpcli->svr.saddr); + tracet(3,"consock: connected sock=%d addr=%s\n",tcpcli->svr.sock,tcpcli->svr.saddr); tcpcli->svr.state=2; tcpcli->svr.tact=tickget(); return 1; @@ -1348,7 +1356,7 @@ static tcpcli_t *opentcpcli(const char *path, char *msg) decodetcppath(path,tcpcli->svr.saddr,port,NULL,NULL,NULL,NULL); if (sscanf(port,"%d",&tcpcli->svr.port)<1) { sprintf(msg,"port error: %s",port); - tracet(1,"opentcp: port error port=%s\n",port); + tracet(2,"opentcp: port error port=%s\n",port); free(tcpcli); return NULL; } @@ -1400,7 +1408,7 @@ static int readtcpcli(tcpcli_t *tcpcli, unsigned char *buff, int n, char *msg) if ((nr=recv_nb(tcpcli->svr.sock,buff,n))==-1) { if ((err=errsock())) { - tracet(1,"readtcpcli: recv error sock=%d err=%d\n",tcpcli->svr.sock,err); + tracet(2,"readtcpcli: recv error sock=%d err=%d\n",tcpcli->svr.sock,err); sprintf(msg,"recv error (%d)",err); } else { @@ -1424,7 +1432,7 @@ static int writetcpcli(tcpcli_t *tcpcli, unsigned char *buff, int n, char *msg) if ((ns=send_nb(tcpcli->svr.sock,buff,n))==-1) { if ((err=errsock())) { - tracet(1,"writetcp: send error sock=%d err=%d\n",tcpcli->svr.sock,err); + tracet(2,"writetcp: send error sock=%d err=%d\n",tcpcli->svr.sock,err); sprintf(msg,"send error (%d)",err); } else { @@ -1470,7 +1478,7 @@ static int encbase64(char *str, const unsigned char *byte, int n) /* send ntrip server request -------------------------------------------------*/ static int reqntrip_s(ntrip_t *ntrip, char *msg) { - char buff[256+NTRIP_MAXSTR],*p=buff; + char buff[1024+NTRIP_MAXSTR],*p=buff; tracet(3,"reqntrip_s: state=%d\n",ntrip->state); @@ -1481,7 +1489,7 @@ static int reqntrip_s(ntrip_t *ntrip, char *msg) if (writetcpcli(ntrip->tcp,(unsigned char *)buff,p-buff,msg)!=p-buff) return 0; - tracet(2,"reqntrip_s: send request state=%d ns=%d\n",ntrip->state,p-buff); + tracet(3,"reqntrip_s: send request state=%d ns=%d\n",ntrip->state,p-buff); tracet(5,"reqntrip_s: n=%d buff=\n%s\n",p-buff,buff); ntrip->state=1; return 1; @@ -1510,7 +1518,7 @@ static int reqntrip_c(ntrip_t *ntrip, char *msg) if (writetcpcli(ntrip->tcp,(unsigned char *)buff,p-buff,msg)!=p-buff) return 0; - tracet(2,"reqntrip_c: send request state=%d ns=%d\n",ntrip->state,p-buff); + tracet(3,"reqntrip_c: send request state=%d ns=%d\n",ntrip->state,p-buff); tracet(5,"reqntrip_c: n=%d buff=\n%s\n",p-buff,buff); ntrip->state=1; return 1; @@ -1532,14 +1540,14 @@ static int rspntrip_s(ntrip_t *ntrip, char *msg) for (i=0;i<ntrip->nb;i++) *q++=*p++; ntrip->state=2; sprintf(msg,"%s/%s",ntrip->tcp->svr.saddr,ntrip->mntpnt); - tracet(2,"rspntrip_s: response ok nb=%d\n",ntrip->nb); + tracet(3,"rspntrip_s: response ok nb=%d\n",ntrip->nb); return 1; } else if ((p=strstr((char *)ntrip->buff,NTRIP_RSP_ERROR))) { /* error */ nb=ntrip->nb<MAXSTATMSG?ntrip->nb:MAXSTATMSG; strncpy(msg,(char *)ntrip->buff,nb); msg[nb]=0; if ((p=strchr(msg,'\r'))) *p='\0'; - tracet(1,"rspntrip_s: %s nb=%d\n",msg,ntrip->nb); + tracet(3,"rspntrip_s: %s nb=%d\n",msg,ntrip->nb); ntrip->nb=0; ntrip->buff[0]='\0'; ntrip->state=0; @@ -1547,7 +1555,7 @@ static int rspntrip_s(ntrip_t *ntrip, char *msg) } else if (ntrip->nb>=NTRIP_MAXRSP) { /* buffer overflow */ sprintf(msg,"response overflow"); - tracet(1,"rspntrip_s: response overflow nb=%d\n",ntrip->nb); + tracet(3,"rspntrip_s: response overflow nb=%d\n",ntrip->nb); ntrip->nb=0; ntrip->buff[0]='\0'; ntrip->state=0; @@ -1573,7 +1581,7 @@ static int rspntrip_c(ntrip_t *ntrip, char *msg) for (i=0;i<ntrip->nb;i++) *q++=*p++; ntrip->state=2; sprintf(msg,"%s/%s",ntrip->tcp->svr.saddr,ntrip->mntpnt); - tracet(2,"rspntrip_c: response ok nb=%d\n",ntrip->nb); + tracet(3,"rspntrip_c: response ok nb=%d\n",ntrip->nb); ntrip->tcp->tirecon=ticonnect; return 1; } @@ -1581,7 +1589,7 @@ static int rspntrip_c(ntrip_t *ntrip, char *msg) if (!*ntrip->mntpnt) { /* source table request */ ntrip->state=2; sprintf(msg,"source table received"); - tracet(2,"rspntrip_c: receive source table nb=%d\n",ntrip->nb); + tracet(3,"rspntrip_c: receive source table nb=%d\n",ntrip->nb); return 1; } sprintf(msg,"no mountp. reconnect..."); @@ -1596,7 +1604,7 @@ static int rspntrip_c(ntrip_t *ntrip, char *msg) else if ((p=strstr((char *)ntrip->buff,NTRIP_RSP_HTTP))) { /* http response */ if ((q=strchr(p,'\r'))) *q='\0'; else ntrip->buff[128]='\0'; strcpy(msg,p); - tracet(1,"rspntrip_s: %s nb=%d\n",msg,ntrip->nb); + tracet(3,"rspntrip_s: %s nb=%d\n",msg,ntrip->nb); ntrip->nb=0; ntrip->buff[0]='\0'; ntrip->state=0; @@ -1604,7 +1612,7 @@ static int rspntrip_c(ntrip_t *ntrip, char *msg) } else if (ntrip->nb>=NTRIP_MAXRSP) { /* buffer overflow */ sprintf(msg,"response overflow"); - tracet(1,"rspntrip_s: response overflow nb=%d\n",ntrip->nb); + tracet(2,"rspntrip_s: response overflow nb=%d\n",ntrip->nb); ntrip->nb=0; ntrip->buff[0]='\0'; ntrip->state=0; @@ -1629,7 +1637,7 @@ static int waitntrip(ntrip_t *ntrip, char *msg) if (!(ntrip->type==0?reqntrip_s(ntrip,msg):reqntrip_c(ntrip,msg))) { return 0; } - tracet(2,"waitntrip: state=%d nb=%d\n",ntrip->state,ntrip->nb); + tracet(3,"waitntrip: state=%d nb=%d\n",ntrip->state,ntrip->nb); } if (ntrip->state==1) { /* read response */ p=(char *)ntrip->buff+ntrip->nb; @@ -1679,7 +1687,7 @@ static ntrip_t *openntrip(const char *path, int type, char *msg) } /* open tcp client stream */ if (!(ntrip->tcp=opentcpcli(tpath,msg))) { - tracet(1,"openntrip: opentcp error\n"); + tracet(2,"openntrip: opentcp error\n"); free(ntrip); return NULL; } @@ -1779,7 +1787,7 @@ static ntripc_t *openntripc(const char *path, int type, char *msg) /* open tcp server stream */ if (!(ntripc->tcp=opentcpsvr(tpath,msg))) { - tracet(1,"openntripc: opentcpsvr error port=%d\n",port); + tracet(2,"openntripc: opentcpsvr error port=%d\n",port); free(ntripc); return NULL; } @@ -1848,14 +1856,14 @@ static void rsp_ntripc_c(ntripc_t *ntripc, int i) { const char *rsp1=NTRIP_RSP_UNAUTH,*rsp2=NTRIP_RSP_OK_CLI; ntripc_con_t *con=ntripc->con+i; - char url[256]="",mntpnt[256]="",proto[256]="",user[256],user_pwd[256],*p,*q; + char url[256]="",mntpnt[256]="",proto[256]="",user[513],user_pwd[256],*p,*q; tracet(3,"rspntripc_c i=%d\n",i); con->buff[con->nb]='\0'; tracet(5,"rspntripc_c: n=%d,buff=\n%s\n",con->nb,con->buff); if (con->nb>=NTRIP_MAXRSP-1) { /* buffer overflow */ - tracet(1,"rsp_ntripc_c: request buffer overflow\n"); + tracet(2,"rsp_ntripc_c: request buffer overflow\n"); discon_ntripc(ntripc,i); return; } @@ -1987,7 +1995,7 @@ static void wait_ntripc(ntripc_t *ntripc, char *msg) if ((n=recv_nb(ntripc->tcp->cli[i].sock,buff,nmax))==-1) { if ((err=errsock())) { - tracet(1,"accept_ntripc: recv error sock=%d err=%d\n", + tracet(2,"accept_ntripc: recv error sock=%d err=%d\n", ntripc->tcp->cli[i].sock,err); } discon_ntripc(ntripc,i); @@ -2021,7 +2029,7 @@ static int readntripc(ntripc_t *ntripc, unsigned char *buff, int n, char *msg) if (nr<0) { if ((err=errsock())) { - tracet(1,"readntripc: recv error i=%d sock=%d err=%d\n",i, + tracet(2,"readntripc: recv error i=%d sock=%d err=%d\n",i, ntripc->tcp->cli[i].sock,err); } discon_ntripc(ntripc,i); @@ -2056,7 +2064,7 @@ static int writentripc(ntripc_t *ntripc, unsigned char *buff, int n, char *msg) if (ns<n) { if ((err=errsock())) { - tracet(1,"writentripc: send error i=%d sock=%d err=%d\n",i, + tracet(2,"writentripc: send error i=%d sock=%d err=%d\n",i, ntripc->tcp->cli[i].sock,err); } discon_ntripc(ntripc,i); @@ -2167,7 +2175,7 @@ static udp_t *openudpsvr(const char *path, char *msg) if (sscanf(sport,"%d",&port)<1) { sprintf(msg,"port error: %s",sport); - tracet(1,"openudpsvr: port error port=%s\n",port); + tracet(2,"openudpsvr: port error port=%s\n",port); return NULL; } return genudp(0,port,"",msg); @@ -2226,7 +2234,7 @@ static udp_t *openudpcli(const char *path, char *msg) if (sscanf(sport,"%d",&port)<1) { sprintf(msg,"port error: %s",sport); - tracet(1,"openudpcli: port error port=%s\n",sport); + tracet(2,"openudpcli: port error port=%s\n",sport); return NULL; } return genudp(1,port,saddr,msg); @@ -2349,7 +2357,7 @@ static void *ftpthread(void *arg) tracet(3,"ftpthread:\n"); if (!*localdir) { - tracet(1,"no local directory\n"); + tracet(2,"no local directory\n"); ftp->error=11; ftp->state=3; return 0; @@ -2397,7 +2405,7 @@ static void *ftpthread(void *arg) /* execute download command */ if ((ret=execcmd(cmd))) { remove(local); - tracet(1,"execcmd error: cmd=%s ret=%d\n",cmd,ret); + tracet(2,"execcmd error: cmd=%s ret=%d\n",cmd,ret); ftp->error=ret; ftp->state=3; return 0; @@ -2414,7 +2422,7 @@ static void *ftpthread(void *arg) strcpy(local,tmpfile); } else { - tracet(1,"file uncompact error: %s\n",local); + tracet(2,"file uncompact error: %s\n",local); ftp->error=12; ftp->state=3; return 0; @@ -2480,7 +2488,7 @@ static int readftp(ftp_t *ftp, unsigned char *buff, int n, char *msg) #else if (pthread_create(&ftp->thread,NULL,ftpthread,ftp)) { #endif - tracet(1,"readftp: ftp thread create error\n"); + tracet(2,"readftp: ftp thread create error\n"); ftp->state=3; strcpy(msg,"ftp thread error"); return 0; @@ -3344,4 +3352,4 @@ extern void strsendcmd(stream_t *str, const char *cmd) } if (*q=='\0') break; else p=q+1; } -} +} \ No newline at end of file diff --git a/src/streamsvr.c b/src/streamsvr.c index 6533e2e33fe32a804dc31fef8a998aabfdfb2893..801351f23265ae7814fb0cc8ec2aaabbc04f8890 100644 --- a/src/streamsvr.c +++ b/src/streamsvr.c @@ -1,7 +1,7 @@ /*------------------------------------------------------------------------------ * streamsvr.c : stream server functions * -* Copyright (C) 2010-2017 by T.TAKASU, All rights reserved. +* Copyright (C) 2010-2018 by T.TAKASU, All rights reserved. * * options : -DWIN32 use WIN32 API * @@ -23,6 +23,8 @@ * fix bug on rtcm cyclic output of beidou ephemeris * 2016/10/01 1.12 change api startstrserver() * 2017/04/11 1.13 fix bug on search of next satellite in nextsat() +* 2018/11/05 1.14 update message type of beidou ephemeirs +* support multiple msm messages if nsat x nsig > 64 *-----------------------------------------------------------------------------*/ #include "rtklib.h" @@ -38,7 +40,7 @@ static int is_obsmsg(int msg) static int is_navmsg(int msg) { return msg==1019||msg==1020||msg==1044||msg==1045||msg==1046|| - msg==1047||msg==63; + msg==1042||msg==63; } /* test station info message -------------------------------------------------*/ static int is_stamsg(int msg) @@ -193,6 +195,55 @@ static void rtcm2rtcm(rtcm_t *out, const rtcm_t *rtcm, int ret, int stasel) out->nav.leaps=rtcm->nav.leaps; } } +/* write rtcm3 msm to stream -------------------------------------------------*/ +static void write_rtcm3_msm(stream_t *str, rtcm_t *out, int msg, int sync) +{ + obsd_t *data,buff[MAXOBS]; + int i,j,n,ns,sys,nobs,code,nsat=0,nsig=0,nmsg,mask[MAXCODE]={0}; + + if (1071<=msg&&msg<=1077) sys=SYS_GPS; + else if (1081<=msg&&msg<=1087) sys=SYS_GLO; + else if (1091<=msg&&msg<=1097) sys=SYS_GAL; + else if (1101<=msg&&msg<=1107) sys=SYS_SBS; + else if (1111<=msg&&msg<=1117) sys=SYS_QZS; + else if (1121<=msg&&msg<=1127) sys=SYS_CMP; + else return; + + data=out->obs.data; + nobs=out->obs.n; + + /* count number of satellites and signals */ + for (i=0;i<nobs&&i<MAXOBS;i++) { + if (satsys(data[i].sat,NULL)!=sys) continue; + nsat++; + for (j=0;j<NFREQ+NEXOBS;j++) { + if (!(code=data[i].code[j])||mask[code-1]) continue; + mask[code-1]=1; + nsig++; + } + } + if (nsig<=0||nsig>64) return; + + /* pack data to multiple messages if nsat x nsig > 64 */ + ns=64/nsig; /* max number of sats in a message */ + nmsg=(nsat-1)/ns+1; /* number of messages */ + + out->obs.data=buff; + + for (i=j=0;i<nmsg;i++) { + for (n=0;n<ns&&j<nobs&&j<MAXOBS;j++) { + if (satsys(data[j].sat,NULL)!=sys) continue; + out->obs.data[n++]=data[j]; + } + out->obs.n=n; + + if (gen_rtcm3(out,msg,i<nmsg-1?1:sync)) { + strwrite(str,out->buff,out->nbyte); + } + } + out->obs.data=data; + out->obs.n=nobs; +} /* write obs data messages ---------------------------------------------------*/ static void write_obs(gtime_t time, stream_t *str, strconv_t *conv) { @@ -209,14 +260,19 @@ static void write_obs(gtime_t time, stream_t *str, strconv_t *conv) /* generate messages */ if (conv->otype==STRFMT_RTCM2) { if (!gen_rtcm2(&conv->out,conv->msgs[i],i!=j)) continue; + + /* write messages to stream */ + strwrite(str,conv->out.buff,conv->out.nbyte); } else if (conv->otype==STRFMT_RTCM3) { + if (conv->msgs[i]<=1012) { if (!gen_rtcm3(&conv->out,conv->msgs[i],i!=j)) continue; + strwrite(str,conv->out.buff,conv->out.nbyte); + } + else { /* write rtcm3 msm to stream */ + write_rtcm3_msm(str,&conv->out,conv->msgs[i],i!=j); + } } - else continue; - - /* write messages to stream */ - strwrite(str,conv->out.buff,conv->out.nbyte); } } /* write nav data messages ---------------------------------------------------*/ @@ -252,7 +308,7 @@ static int nextsat(nav_t *nav, int sat, int msg) case 1045: case 1046: sys=SYS_GAL; p1=MINPRNGAL; p2=MAXPRNGAL; break; case 63: - case 1047: sys=SYS_CMP; p1=MINPRNCMP; p2=MAXPRNCMP; break; + case 1042: sys=SYS_CMP; p1=MINPRNCMP; p2=MAXPRNCMP; break; default: return 0; } if (satsys(sat,&p0)!=sys) return satno(sys,p1);