Index: /trunk/Mars/mpointing/MPointingDevCalc.cc
===================================================================
--- /trunk/Mars/mpointing/MPointingDevCalc.cc	(revision 14860)
+++ /trunk/Mars/mpointing/MPointingDevCalc.cc	(revision 14861)
@@ -742,5 +742,6 @@
     // Calculate absolute deviation
     const Double_t dev = MAstro::GetDevAbs(fReport->GetNominalZd(),
-                                           fReport->GetCurrentZd(), devaz);
+                                           fReport->GetNominalZd()-fReport->GetDevZd()/60,
+                                           devaz);
 
     // Sanity check... larger deviation are strange and ignored
Index: /trunk/Mars/mreport/MReportDrive.cc
===================================================================
--- /trunk/Mars/mreport/MReportDrive.cc	(revision 14860)
+++ /trunk/Mars/mreport/MReportDrive.cc	(revision 14861)
@@ -102,6 +102,6 @@
 Int_t MReportDrive::InterpreteFits(const std::fits &fits)
 {
-    fCurrentZd = fNominalZd + fErrorZd;
-    fCurrentAz = fNominalAz + fErrorAz;
+    fCurrentZd = fNominalZd - fErrorZd;
+    fCurrentAz = fNominalAz - fErrorAz;
 
     return kTRUE;
@@ -184,30 +184,5 @@
 Double_t MReportDrive::GetAbsError() const
 {
-    return MAstro::GetDevAbs(fNominalZd, fErrorZd, fErrorAz);
-/*
-    // For the algorithm see also MReportStarguider
-    const Double_t pzd = fNominalZd*TMath::DegToRad();
-    const Double_t azd = fErrorZd  *TMath::DegToRad();
-    const Double_t aaz = fErrorAz  *TMath::DegToRad();
-
-    const double el = TMath::Pi()/2-pzd;
-
-    const double dphi2 = aaz/2.;
-    const double cos2  = cos(dphi2)*cos(dphi2);
-    const double sin2  = sin(dphi2)*sin(dphi2);
-    const double d     = cos(azd)*cos2 - cos(2*el)*sin2;
-
-    //
-    // Original:
-    //   cos(Zd1)*cos(Zd2)+sin(Zd1)*sin(Zd2)*cos(dAz)
-    //
-    // Correct:
-    //   const double d = cos(azd)*cos2 - cos(el1+el2)*sin2;
-    //
-    // Estimated:
-    //   const double d = cos(azd)*cos2 - cos(2*el)*sin2;
-    //
-
-    return acos(d)*TMath::RadToDeg();*/
+    return MAstro::GetDevAbs(fNominalZd, fCurrentZd, fErrorAz);
 }
 
Index: /trunk/Mars/mreport/MReportStarguider.cc
===================================================================
--- /trunk/Mars/mreport/MReportStarguider.cc	(revision 14860)
+++ /trunk/Mars/mreport/MReportStarguider.cc	(revision 14861)
@@ -196,20 +196,6 @@
 Double_t MReportStarguider::GetDevAbs() const
 {
-    return MAstro::GetDevAbs(fNominalZd, fDevZd/60, fDevAz/60)*60;
-    /*
-     // For the algorithm see also MReportDrive
-     const Double_t pzd = fNominalZd * TMath::DegToRad();
-     const Double_t azd = fDevZd/60  * TMath::DegToRad();
-     const Double_t aaz = fDevAz/60  * TMath::DegToRad();
-
-     const double el = TMath::Pi()/2-pzd;
-
-     const double dphi2 = aaz/2.;
-     const double cos2  = cos(dphi2)*cos(dphi2);
-     const double sin2  = sin(dphi2)*sin(dphi2);
-     const double d     = cos(azd)*cos2 - cos(2*el)*sin2;
-
-     return acos(d)*TMath::RadToDeg()*60;
-     */
+    // Crosscheck SIGN!!!!
+    return MAstro::GetDevAbs(fNominalZd, fNominalZd-fDevZd/60, fDevAz/60)*60;
 }
 
