Index: trunk/BNC/rinex/rnxobsfile.cpp
===================================================================
--- trunk/BNC/rinex/rnxobsfile.cpp	(revision 3965)
+++ trunk/BNC/rinex/rnxobsfile.cpp	(revision 3966)
@@ -812,16 +812,28 @@
   for (unsigned iSat = 0; iSat < epo->rnxSat.size(); iSat++) {
     const t_rnxSat& rnxSat = epo->rnxSat[iSat];
-    for (unsigned iType = 0; iType < rnxSat.obs.size(); iType++) {
-      if (iType > 0 && iType % 5 == 0) {
+    for (unsigned iTypeOld = 0; iTypeOld < rnxSat.obs.size(); iTypeOld++) {
+
+      int iTypeNew;
+      if   (_trafo == trafoNone) {
+        iTypeNew = iTypeOld;
+      }
+      else {
+        iTypeNew = _indexMap3to2[rnxSat.satSys][iTypeOld];
+        if (iTypeNew == -1) {
+          continue;
+        }
+      }
+
+      if (iTypeNew > 0 && iTypeNew % 5 == 0) {
         *_stream << endl;
       }
-      if (rnxSat.obs[iType] == 0.0) {
+      if (rnxSat.obs[iTypeNew] == 0.0) {
         *_stream << QString().leftJustified(16);
       }
       else {
         *_stream << QString("%1%2%3")
-          .arg(rnxSat.obs[iType], 14, 'f', 3)
-          .arg(rnxSat.lli[iType],1)
-          .arg(rnxSat.snr[iType],1);
+          .arg(rnxSat.obs[iTypeNew], 14, 'f', 3)
+          .arg(rnxSat.lli[iTypeNew],1)
+          .arg(rnxSat.snr[iTypeNew],1);
       }
     }
