Index: /trunk/Mars/mraw/MRawFitsRead.cc
===================================================================
--- /trunk/Mars/mraw/MRawFitsRead.cc	(revision 11489)
+++ /trunk/Mars/mraw/MRawFitsRead.cc	(revision 11490)
@@ -47,4 +47,5 @@
 
 #include "MArrayB.h"
+#include "MArrayS.h"
 
 #include "MRawRunHeader.h"
@@ -97,5 +98,8 @@
     fRawRunHeader->SetRunType(0/*data*/);
 
-    return kTRUE;
+    return
+        fin.HasKey("NPIX") && fin.HasKey("RUNID")  &&
+        fin.HasKey("NROI") && fin.HasKey("BLDVER") &&
+        fin.HasKey("NIGHT");
 }
 
@@ -105,19 +109,25 @@
 
     MArrayB **data   = reinterpret_cast<MArrayB**>(fRawEvtData1->DataMember("fHiGainFadcSamples"));
+    MArrayS **cell   = reinterpret_cast<MArrayS**>(fRawEvtData1->DataMember("fStartCells"));
     UInt_t   *evtnum = reinterpret_cast<UInt_t*>  (fRawEvtHeader->DataMember("fDAQEvtNumber"));
 
-    if (!data || !evtnum)
+    if (!data || !cell || !evtnum)
         return kFALSE;
 
     fRawEvtData1->ResetPixels();
     fRawEvtData2->ResetPixels(0, 0);
+    fRawEvtData1->InitStartCells();
 
     if (!fin.SetRefAddress("EventNum", *evtnum))
         return kFALSE;
 
-    if (!fin.SetRefAddress("PCTime", fPCTime))
+    fPCTime.resize(2);
+    if (!fin.SetVecAddress("PCTime", fPCTime))
         return kFALSE;
 
-    if (!fin.SetPtrAddress("Data", (uint16_t*)(*data)->GetArray(), (*data)->GetSize()/2))
+    if (!fin.SetPtrAddress("Data", (int16_t*)(*data)->GetArray(), (*data)->GetSize()/2))
+        return kFALSE;
+
+    if (!fin.SetPtrAddress("StartCell", (uint16_t*)(*cell)->GetArray(), (*cell)->GetSize()))
         return kFALSE;
 
@@ -132,5 +142,7 @@
         return kFALSE;
 
-    fRawEvtTime->SetUnixTime(fPCTime, 0);
+    fRawEvtTime->SetUnixTime(fPCTime[0], fPCTime[1]);
+
+    // FIXME: Correctly sort the pixels here!
 
     fRawEvtData1->SetReadyToSave();
Index: /trunk/Mars/mraw/MRawFitsRead.h
===================================================================
--- /trunk/Mars/mraw/MRawFitsRead.h	(revision 11489)
+++ /trunk/Mars/mraw/MRawFitsRead.h	(revision 11490)
@@ -6,8 +6,10 @@
 #endif
 
+#include <vector>
+
 class MRawFitsRead : public MRawFileRead
 {
 private:
-    UInt_t   fPCTime; //! Buffer
+    std::vector<UInt_t> fPCTime; //! Buffer
 
     istream *OpenFile(const char *filename);
