]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
7 bit event counter encountered overflow, look on 16bit word counter
authorhades <hades>
Thu, 10 May 2001 13:04:25 +0000 (13:04 +0000)
committerhades <hades>
Thu, 10 May 2001 13:04:25 +0000 (13:04 +0000)
instead.

hadaq/Makefile
hadaq/hwship.c

index 79433bb39b61d7990b18d73006e7759e6985fac2..06a1ed24f4c896294b08a6d94296db565ae20337 100644 (file)
@@ -11,7 +11,7 @@
 # $ . makeenv LYNXOS TOF
 # $ . makeenv UNIX SOFT
 
-COPTS = -g -UNDEBUG
+COPTS = -O3 -finline-functions -DNDEBUG
 CFLAGS = $(COPTS) $(INCLUDES) $(DEFINES)
 
 DAQCTRL_OBJS = daqctrl.o daq_lib.o \
index a25dba2d751dcde77b3916a8a2cb852455332594..2db1f9ccc93e32c70bb0c8544101f9d6a595b0a6 100644 (file)
@@ -1,4 +1,4 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.14 2001-04-12 09:56:24 hades Exp $";
+static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.15 2001-05-10 13:04:25 hades Exp $";
 
 #include <assert.h>
 #include <string.h>
@@ -18,14 +18,14 @@ static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hada
 static int bankRequested(HwShip *my) {
        UInt2 val;
 
-       val = LVme_tstBitW(my->lvme, LVL2_STAT_READ, 6);
+       val = LVme_tstBitL(my->lvme, LVL2_STAT_READ, 6);
        return val;
 }
 
 static int bankConfirmed(HwShip *my) {
        UInt2 val;
 
-       val = LVme_tstBitW(my->lvme, LVL2_STAT_READ, 8);
+       val = LVme_tstBitL(my->lvme, LVL2_STAT_READ, 8);
        return val;
 }
 
@@ -33,62 +33,6 @@ static int endOfData(HwShip *my) {
        return (LVme_getL(my->lvme, LVL2_OFFSET) - 2 + LVL2_OFFSET);
 }
 
-static void standbyMode(HwShip *my) {
-#if 0
-       LVme_setW(my->lvme, ID_CTR_ACCESS_ON, 0);
-       LVme_setW(my->lvme, ID_CTR_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, ID_CTR_SW_TO_LUT12, 0);
-       LVme_setW(my->lvme, LUT_CTR_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, ID_CTR_SW_TO_LUT34, 0);
-       LVme_setW(my->lvme, LUT_CTR_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, ID_CTR_ACCESS_OFF, 0);
-       LVme_setW(my->lvme, PEDAS_ACCESS_ON, 0);
-       LVme_setW(my->lvme, PEDAS_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, PEDAS_ACCESS_OFF, 0);
-       LVme_setW(my->lvme, RC1_ACCESS_ON, 0);
-       LVme_setW(my->lvme, RC1_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, RC1_ACCESS_OFF, 0);
-       LVme_setW(my->lvme, LVL2_ACCESS_ON, 0);
-       LVme_setW(my->lvme, LVL2_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, LVL2_ACCESS_OFF, 0);
-       LVme_setW(my->lvme, RC3_ACCESS_ON, 0);
-       LVme_setW(my->lvme, RC3_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, RC3_ACCESS_OFF, 0);
-       LVme_setW(my->lvme, ADDON_ACCESS_ON, 0);
-       LVme_setW(my->lvme, ADDON_STANDBY_MODE, 0);
-       LVme_setW(my->lvme, ADDON_ACCESS_OFF, 0);
-#endif
-}
-
-static void acquireMode(HwShip *my) {
-#if 0
-       LVme_setW(my->lvme, ID_CTR_ACCESS_ON,  0);
-       LVme_setW(my->lvme, ID_CTR_STANDBY_MODE,  0);
-       LVme_setW(my->lvme, ID_CTR_SW_TO_LUT12,  0);
-       LVme_setW(my->lvme, LUT_CTR_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, ID_CTR_SW_TO_LUT34,  0);
-       LVme_setW(my->lvme, LUT_CTR_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, ID_CTR_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, RC1_ACCESS_ON,  0);
-       LVme_setW(my->lvme, RC1_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, RC1_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, PEDAS_ACCESS_ON,  0);
-       LVme_setW(my->lvme, PEDAS_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, PEDAS_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, LVL2_ACCESS_ON,  0);
-       LVme_setW(my->lvme, LVL2_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, LVL2_STAT_WRITE,  ZEROSUP);
-       LVme_setW(my->lvme, LVL2_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, RC3_ACCESS_ON,  0);
-       LVme_setW(my->lvme, RC3_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, RC3_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, ADDON_ACCESS_ON,  0);
-       LVme_setW(my->lvme, ADDON_SHOWER_MODE,  0);
-       LVme_setW(my->lvme, ADDON_ACCESS_OFF,  0);
-       LVme_setW(my->lvme, LVL2_ACCESS_ON, 0);
-#endif
-}
-
 int conHwShip(HwShip * my, const char *name, const Param *param)
 {
   unsigned long cardBase;
@@ -114,32 +58,22 @@ int conHwShip(HwShip * my, const char *name, const Param *param)
   my->trigNr = 0;
   my->currAddr = 0xffffffff; /* behind end of memory */
 
-  standbyMode(my);
-  acquireMode(my);
   return 0;
 }
 
 void desHwShip(HwShip * my)
 {
-  standbyMode(my);
   desLVme(my->lvme);
 }
 
 void HwShip_requestBuffer(HwShip *my) {
   int i;
 
-#if 0
-  if (my->oldBankConfirmed == bankConfirmed(my)) {
-    msglog(LOG_ERR, "same bank twice: 0x%02x\n", my->oldBankConfirmed);
-  }
-  my->oldBankConfirmed = bankConfirmed(my);
-#endif
-
 #ifndef NDEBUG
   msglog(LOG_DEBUG, "wait for data\n");
 #endif
-  while ((LVme_getW(my->lvme, LVL2_STAT_READ) >> 9 & 0x7f) == 0) {
-#if 1
+  while ((LVme_getL(my->lvme, LVL2_STAT_READ) >> 16 & 0xffff) <= 2) {
+#if 0
                        struct timespec tS, *t = &tS;
                        t->tv_sec = 0;
                        t->tv_nsec = 020000000;
@@ -148,7 +82,7 @@ void HwShip_requestBuffer(HwShip *my) {
   }
 #ifndef NDEBUG
   msglog(LOG_DEBUG,
-    "%d evts available\n", LVme_getW(my->lvme, LVL2_STAT_READ) >> 9 & 0x7f);
+    "%d evts available\n", LVme_getL(my->lvme, LVL2_STAT_READ) >> 9 & 0x7f);
 #endif
   i = bankRequested(my) == 1 ? 0 : 1;
   LVme_setW(my->lvme, LVL2_STAT_WRITE, (i << 1) | ZEROSUP);