Index: /trunk/BNC/bncmodel.cpp
===================================================================
--- /trunk/BNC/bncmodel.cpp	(revision 2123)
+++ /trunk/BNC/bncmodel.cpp	(revision 2124)
@@ -172,4 +172,5 @@
 
   if (epoData->size() < MINOBS) {
+    _log += "\nNot enough data";
     return failure;
   }
@@ -399,4 +400,6 @@
 t_irc bncModel::update(t_epoData* epoData) {
 
+  _log = "Precise Point Positioning";
+
   SymmetricMatrix QQsav;
   ColumnVector    dx;
@@ -410,8 +413,12 @@
     // -----------------
     if (cmpBancroft(epoData) != success) {
+      _log += "\nBancroft failed";
+      emit newMessage(_log, false);
       return failure;
     }
 
     if (epoData->size() < MINOBS) {
+      _log += "\nNot enough data";
+      emit newMessage(_log, false);
       return failure;
     }
@@ -482,28 +489,43 @@
   // Set Solution Vector
   // -------------------
+  ostringstream str1;
+  str1.setf(ios::fixed);
   QVectorIterator<bncParam*> itPar(_params);
   while (itPar.hasNext()) {
     bncParam* par = itPar.next();
     par->xx += dx(par->index);
-  }
+    if      (par->type == bncParam::RECCLK) {
+      str1 << "\n    clk = " << setw(6) << setprecision(3) << par->xx 
+           << " +- " << setw(6) << setprecision(3) 
+           << sqrt(_QQ(par->index,par->index));
+    }
+    else if (par->type == bncParam::AMB_L3) {
+      str1 << "\n    amb " << par->prn.toAscii().data() << " = "
+           << setw(6) << setprecision(3) << par->xx 
+           << " +- " << setw(6) << setprecision(3) 
+           << sqrt(_QQ(par->index,par->index));
+    }
+  }
+  _log += str1.str().c_str();
 
   // Message (both log file and screen)
   // ----------------------------------
-  ostringstream str;
-  str.setf(ios::fixed);
-  str << "    PPP " << _staID.data() << " " 
-      << epoData->tt.timestr(1) << " " << epoData->size() << " " 
-      << setw(14) << setprecision(3) << x()            << " +- "
-      << setw(6)  << setprecision(3) << sqrt(_QQ(1,1)) << " "
-      << setw(14) << setprecision(3) << y()            << " +- "
-      << setw(6)  << setprecision(3) << sqrt(_QQ(2,2)) << " "
-      << setw(14) << setprecision(3) << z()            << " +- "
-      << setw(6)  << setprecision(3) << sqrt(_QQ(3,3));
+  ostringstream str2;
+  str2.setf(ios::fixed);
+  str2 << "    PPP " << _staID.data() << " " 
+       << epoData->tt.timestr(1) << " " << epoData->size() << " " 
+       << setw(14) << setprecision(3) << x()            << " +- "
+       << setw(6)  << setprecision(3) << sqrt(_QQ(1,1)) << " "
+       << setw(14) << setprecision(3) << y()            << " +- "
+       << setw(6)  << setprecision(3) << sqrt(_QQ(2,2)) << " "
+       << setw(14) << setprecision(3) << z()            << " +- "
+       << setw(6)  << setprecision(3) << sqrt(_QQ(3,3));
   if (_estTropo) {
-    str << "    " << setw(6) << setprecision(3) << trp() << " +- "
-        << setw(6)  << setprecision(3) << sqrt(_QQ(5,5));
-  }
-
-  emit newMessage(QString(str.str().c_str()).toAscii(), true);
+    str2 << "    " << setw(6) << setprecision(3) << trp() << " +- "
+         << setw(6)  << setprecision(3) << sqrt(_QQ(5,5));
+  }
+
+  emit newMessage(_log, false);
+  emit newMessage(QByteArray(str2.str().c_str()), true);
 
   return success;
@@ -548,7 +570,6 @@
     _QQ = QQsav;
 
-    QByteArray msg = "Outlier Code " + prn.toAscii() + " " 
-                   + QByteArray::number(vvMaxCode, 'f', 3);
-    emit newMessage(msg, true);
+    _log += "\nOutlier Code " + prn.toAscii() + " " 
+            + QByteArray::number(vvMaxCode, 'f', 3);
 
     return 1;
@@ -561,7 +582,6 @@
     _QQ = QQsav;
 
-    QByteArray msg = "Outlier Phase " + prn.toAscii() + " " 
-                   + QByteArray::number(vvMaxPhase, 'f', 3);
-    emit newMessage(msg, true);
+    _log += "\nOutlier Phase " + prn.toAscii() + " " 
+          + QByteArray::number(vvMaxPhase, 'f', 3);
 
     return 1;
Index: /trunk/BNC/bncmodel.h
===================================================================
--- /trunk/BNC/bncmodel.h	(revision 2123)
+++ /trunk/BNC/bncmodel.h	(revision 2124)
@@ -82,4 +82,5 @@
   bool               _usePhase;
   bool               _estTropo;
+  QByteArray         _log;
 };
 
