Index: /trunk/FACT++/src/smartfact.cc
===================================================================
--- /trunk/FACT++/src/smartfact.cc	(revision 14352)
+++ /trunk/FACT++/src/smartfact.cc	(revision 14353)
@@ -440,5 +440,5 @@
     int32_t   fControlScriptDepth;
 
-    uint32_t  fMcpConfigurationState;   // For consistency
+     int32_t  fMcpConfigurationState;   // For consistency
      int64_t  fMcpConfigurationMaxTime;
      int64_t  fMcpConfigurationMaxEvents;
@@ -705,4 +705,6 @@
             return GetCurrentState();
 
+        cout << d.GetQoS() << ": " << d.GetText() << endl;
+
         if (d.GetQoS()==90)
             HandleControlMessageImp(d);
@@ -716,5 +718,8 @@
             return;
 
-        if (d.GetQoS()==-2 && fDimControl.scriptdepth==0)
+        // [0] DimControl::kReady (Idle)
+        // [1] DimControl::kLoad
+        // [2] DimControl::kStarted
+        if (d.GetQoS()==1 && fDimControl.scriptdepth==0)
             fControlMessageHist.clear();
 
@@ -722,8 +727,8 @@
         // if the dimctrl is still in state -3
         if (fDimControl.last.second!=DimState::kOffline &&
-            d.GetQoS()==-3 && fDimControl.scriptdepth==0)
+            d.GetQoS()==0 && fDimControl.scriptdepth==0)
             SetAudio("ding");
 
-        if (d.GetQoS()>=0)
+        if (d.GetQoS()>=2)
             return;
 
@@ -2313,5 +2318,5 @@
 
         out.str("");
-        out << Header(now) << '\t' << (fErrorList.size()>0) << '\t' << (fDimControl.state()>-3) << '\n';
+        out << Header(now) << '\t' << (fErrorList.size()>0) << '\t' << (fDimControl.state()>0) << '\n';
         out << setprecision(3);
         out << HTML::kWhite << '\t';
@@ -2326,5 +2331,5 @@
 
         out.str("");
-        out << Header(now) << '\t' << (fErrorList.size()>0) << '\t' << (fDimControl.state()>-3) << '\n';
+        out << Header(now) << '\t' << (fErrorList.size()>0) << '\t' << (fDimControl.state()>0) << '\n';
         out << setprecision(3);
 
