From: hadaq <hadaq>
Date: Thu, 28 Aug 2003 13:10:07 +0000 (+0000)
Subject: Removed unnessecary files
X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=752e77d9f4a98481b3f73cbdd4d29259354d7333;p=daqdata.git

Removed unnessecary files
---

diff --git a/hadaq/hwrich.c b/hadaq/hwrich.c
deleted file mode 100644
index dd1279c..0000000
--- a/hadaq/hwrich.c
+++ /dev/null
@@ -1,183 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwrich.c,v 6.40 2003-05-14 13:54:43 muench Exp $";
-
-#define _POSIX_C_SOURCE 199309L
-#include <unistd.h>
-
-#include <assert.h>
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <syslog.h>
-
-#include <allParam.h>
-#include "subevt.h"
-#include "hwrace.h"
-
-struct HardwareS {
-	size_t maxSubEvtSize;
-	int nRaces;
-	HwRace **race;
-};
-
-#include "hardware.h"
-
-size_t Hardware_maxSubEvtSize(const Hardware *my)
-{
-	return my->maxSubEvtSize;
-}
-
-int Hardware_inSpill(const Hardware *my)
-{
-	return 0;
-}
-
-Hardware *newHardware(const char *subsystem)
-{
-	Hardware *my;
-	Param paramS, *param = &paramS;
-	int i;
-	const char *ss;
-	char cardsS[PARAM_MAX_ARRAY_LEN][PARAM_MAX_VALUE_LEN];
-	char *cards[PARAM_MAX_ARRAY_LEN];
-	int nCards;
-
-	for (i = 0; i < PARAM_MAX_ARRAY_LEN; i++) {
-		cards[i] = cardsS[i];
-	}
-
-	if (strcmp(subsystem, "unknown") == 0) {
-		ss = "rich0";
-		syslog(LOG_NOTICE, "Subsystem not set, defaulting to %s", ss);
-	} else {
-		ss = subsystem;
-	}
-
-	if (0 > conSetupParam(param, getenv("DAQ_SETUP"))) {
-		syslog(LOG_ERR, "Construction of parameter source failed: %s", strerror(errno));
-		return NULL;
-	}
-	if (0 > getCards(param, ss, "race", &nCards, cards)) {
-		syslog(LOG_ERR, "Retrieval of card list failed");
-		return NULL;
-	}
-	my = malloc(sizeof(Hardware));
-	my->race = malloc(nCards * sizeof(HwRace *));
-	my->nRaces = nCards;
-
-	my->maxSubEvtSize = SubEvt_hdrSize() + (my->nRaces * 2500 * sizeof(uint32_t));
-
-	for (i = 0; i < my->nRaces; i++) {
-		my->race[i] = malloc(sizeof(HwRace));
-		if (0 > conHwRace(my->race[i], cards[i], param)) {
-			syslog(LOG_ERR, "Construction of card %s failed:%s", cards[i], strerror(errno));
-			return NULL;
-		}
-	}
-
-	desParam(param);
-	return my;
-}
-
-void deleteHardware(Hardware *my)
-{
-	int i;
-
-	for (i = 0; i < my->nRaces; i++) {
-		desHwRace(my->race[i]);
-		free(my->race[i]);
-	}
-	free(my->race);
-	free(my);
-}
-
-void Hardware_waitForTrigger(Hardware *my, void *subEvt)
-{
-	int i;
-
-	for (i = 0; i < my->nRaces; i++) {
-		if (HwRace_isEmpty(my->race[i])) {
-			HwRace_requestBuffer(my->race[i]);
-#ifndef NDEBUG
-			syslog(LOG_DEBUG, "%d buffer requested", i);
-#endif
-		}
-	}
-
-	for (i = 0; i < my->nRaces; i++) {
-		if (HwRace_isBufRequested(my->race[i])) {
-			HwRace_getEndOfData(my->race[i]);
-		}
-	}
-}
-
-void Hardware_readout(Hardware *my, void *partEvt)
-{
-	int i;
-	int firstRace = -1;
-	void *subEvt = SubEvt_data(partEvt);
-	static unsigned long trigNr = 0;
-	unsigned trigTag;
-	int dataError;
-	int nErr;
-	uint32_t errList[32];
-
-
-	/* init partial event, necessary for  SubEvt_next() */
-	SubEvt_setDecoding(partEvt, SubEvtDecoding_SubEvts);
-	dataError = 0;
-	SubEvt_setId(partEvt, 0);
-
-	nErr = 0;
-
-	/* read all races, check for common trigger tag */
-	for (i = 0; i < my->nRaces; i++) {
-		if (HwRace_readSubEvt(my->race[i], subEvt) == 0) {
-			if (SubEvt_dataError(subEvt)) {
-				errList[nErr++] = SubEvt_id(subEvt);
-				dataError = 1;
-			} else {
-				if (firstRace < 0) {
-					trigTag = SubEvt_trigNr(subEvt) & 0xff;
-					firstRace = i;
-				} else {
-					if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) {
-						dataError = 1;
-						syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x",
-							   my->race[i]->name, trigTag, firstRace, SubEvt_trigNr(subEvt));
-					}
-				}
-			}
-			subEvt = SubEvt_next(partEvt, subEvt);
-		}
-	}
-
-	if (nErr > 0) {
-		int i;
-		uint32_t *data = SubEvt_data(subEvt);
-
-		SubEvt_setSize(subEvt, SubEvt_hdrSize() + (nErr + 1) * 4);
-		SubEvt_setDecoding(subEvt, SubEvtDecoding_32bitData);
-		SubEvt_setId(subEvt, 600);
-		SubEvt_setTrigNr(subEvt, trigTag);
-
-		*data++ = nErr;
-		for (i = 0; i < nErr; i++) {
-			*data++ = errList[i];
-		}
-		subEvt = SubEvt_next(partEvt, subEvt);
-	}
-	if (dataError) {
-		SubEvt_setDataError(partEvt);
-	}
-	SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag);
-	SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt);
-
-	trigNr++;
-
-	assert(SubEvt_size(partEvt) <= my->maxSubEvtSize);
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "partEvt: %s", SubEvt_2charP(partEvt));
-#endif
-}
diff --git a/hadaq/hwsam.c b/hadaq/hwsam.c
deleted file mode 100644
index b43983b..0000000
--- a/hadaq/hwsam.c
+++ /dev/null
@@ -1,136 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwsam.c,v 6.19 2003-05-14 13:54:44 muench Exp $";
-
-#include <assert.h>
-#include <string.h>
-
-#include <syslog.h>
-
-#include <stdint.h>
-#include <stdlib.h>
-
-#include <lvme.h>
-
-#include <allParam.h>
-
-#include "subevt.h"
-#include "sam_defs.h"
-#include "hwsam.h"
-#define SAM_BUFOFFSET 8
-#define SAM_BUFSIZE 0x4000
-
-int conHwSam(HwSam *my, const char *name, const Param *param)
-{
-	unsigned long cardBase;
-	int paramWasFound;
-	int i;
-
-	assert(my != NULL);
-
-	strcpy(my->name, name);
-
-	Param_getInt(param, my->name, "cardbase", &paramWasFound, &cardBase);
-	if (!paramWasFound) {
-		syslog(LOG_WARNING,
-			   "Parameter %s(%s) not found, default = 0", my->name, "cardbase");
-		cardBase = 0;
-	}
-	my->cram = malloc(sizeof(LVme));
-	if (0 > conLVme(my->cram, cardBase, 0x10000L, 0x09, 0x0, 4)) {
-		syslog(LOG_ERR, "HwSam on %p not found", cardBase);
-		return -1;
-	}
-	my->regs = malloc(sizeof(LVme));
-	if (0 > conLVme(my->regs, cardBase, 0x10000L, 0x09, 0x4, 4)) {
-		syslog(LOG_ERR, "HwSam on %p not found", cardBase);
-		return -1;
-	}
-	my->bankRequested = LVme_tstBitL(my->cram, CRR, 0);	/* assumes that init is done by Sam */
-	if (my->bankRequested == 1) {
-		syslog(LOG_ERR, "HwSam readout bit = 1, should be 0, intialization bug");
-	}
-	my->currAddr = SAM_BUFSIZE;
-	my->endOfData = 0;
-
-	return 0;
-}
-
-void desHwSam(HwSam *my)
-{
-	desLVme(my->regs);
-	desLVme(my->cram);
-}
-
-void HwSam_requestBuffer(HwSam *my)
-{
-	int i;
-
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "requestBuffer in");
-#endif
-	i = my->bankRequested == 1 ? 0 : 1;
-	do {
-		if (i == 1) {
-			LVme_setBitL(my->cram, CRR, 0);
-		} else {
-			LVme_clrBitL(my->cram, CRR, 0);
-		}
-	} while (LVme_tstBitL(my->cram, CRR, 0) != i);
-
-	my->bankRequested = i;
-	my->currAddr = SAM_BUFSIZE * i + SAM_BUFOFFSET;
-
-	/* to indicate a buffer request state which is cleared by getEndOfData */
-	my->endOfData = 0;
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "requestBuffer out");
-#endif
-}
-
-void HwSam_getEndOfData(HwSam *my)
-{
-	/* CAUTION this ist just for clearing  buffer request state,
-	if also makes the being always empty in HwSam_isEmpty which makes
-	hwmdc.c working by coincidence */
-
-	my->endOfData = 1;
-}
-
-/* Subevent Header + some data */
-#define SAM_NODATASIZE 16
-int HwSam_readSubEvt(HwSam *my, void *subEvt)
-{
-	uint32_t *data = (uint32_t *) subEvt;
-	int lastAddr;
-	int currAddr = my->currAddr;
-	int size;
-
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "readSubEvt in");
-	syslog(LOG_DEBUG, "currAddr: 0x%08x", currAddr);
-#endif
-	size = LVme_getL(my->cram, currAddr);
-	lastAddr = currAddr + size;
-
-	if (size > SAM_BUFSIZE - SAM_BUFOFFSET) {
-		syslog(LOG_CRIT, "subEvt throw away : %d, %d", size, SAM_BUFSIZE - SAM_BUFOFFSET);
-		/* damaged data, no repair possible, skip subevent*/
-		return -1;
-	}
-	if (size <= SAM_NODATASIZE) {
-		/* skip dataless subevent */
-		return 1;
-	}
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "readSubEvt subevt: %s", SubEvt_2charP(subEvt));
-#endif
-	/* copy one sub evt from Sam to memory */
-	*data++ = size;
-	while ((currAddr += 4) < lastAddr) {
-		*data++ = LVme_getL(my->cram, currAddr);
-	}
-
-#ifndef NDEBUG
-	syslog(LOG_DEBUG, "readSubEvt out");
-#endif
-	return 0;
-}
diff --git a/hadaq/hwship.c b/hadaq/hwship.c
deleted file mode 100644
index 214e474..0000000
--- a/hadaq/hwship.c
+++ /dev/null
@@ -1,240 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwship.c,v 6.30 2003-05-14 13:54:44 muench Exp $";
-
-#define _POSIX_C_SOURCE 199309L
-#include <unistd.h>
-
-#include <assert.h>
-#include <errno.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <syslog.h>
-#include <time.h>
-
-#include <allParam.h>
-#include <lvme.h>
-
-#include "subevt.h"
-#include "ipc_basis.h"
-#include "hwship.h"
-
-static void toDbgBuf(HwShip *my)
-{
-	int i;
-
-	/* copy one sub evt from RC to memory */
-	for (i = 0; i < my->dbgBufLen; i++) {
-		my->dbgBuf[my->currDbgBuf][i] = LVme_getL(my->lvme, LVL2_OFFSET + i * sizeof(LVme_L));
-	}
-	my->currDbgBuf = (my->currDbgBuf + 1 < my->nDbgBufs) ? my->currDbgBuf + 1 : 0;
-}
-
-static void dumpDbgBufs(const HwShip *my)
-{
-	int i, j, bufNr;
-	FILE *f;
-	char n[512];
-
-	strcpy(n, my->name);
-	strcat(n, ".dump");
-
-	f = fopen(n, "w");
-	assert(f != NULL);
-
-	for (j = 0, bufNr = my->currDbgBuf; j < my->nDbgBufs; j++, bufNr = (bufNr + 1 < my->nDbgBufs) ? bufNr + 1 : 0) {
-		for (i = 0; i < my->dbgBufLen; i++) {
-			if (i % 4 == 0) {	/* newline and the offset in the subEvt */
-				fprintf(f, "\n%08x:", i * sizeof(uint32_t));
-			}
-			fprintf(f, "  0x%08x", my->dbgBuf[bufNr][i]);
-		}
-		fputc('\n', f);
-	}
-
-	fclose(f);
-}
-
-int conHwShip(HwShip *my, const char *name, const Param *param)
-{
-	unsigned long cardBase;
-	int paramWasFound;
-
-	assert(my != NULL);
-
-	strcpy(my->name, name);
-
-	Param_getInt(param, my->name, "cardbase", &paramWasFound, &cardBase);
-	if (!paramWasFound) {
-		syslog(LOG_ERR, "Parameter %s(cardbase) not found", my->name);
-		return -1;
-	}
-	my->cardBase = cardBase;	/* BUGBUG see header */
-	my->lvme = malloc(sizeof(LVme));
-	if (0 > conLVme(my->lvme, cardBase, 0x400000UL, 0x39UL, LVL2_OFFSET, 4)) {
-		syslog(LOG_ERR, "%s on %p not found", my->name, cardBase);
-		return -1;
-	}
-	/* Select VME-accessible register of LVL2-controller */
-	LVme_setW(my->lvme, LVL2_SEL_VMEREG, LVL2_SELMEM_VMEREG);
-
-	my->currAddr = 0x7fffffff;
-	my->endOfData = 0;
-
-
-	my->dbgBufLen = sizeof(uint16_t) * LVL2_SIZE / sizeof(uint32_t);
-	my->nDbgBufs = 3;
-	my->dbgBuf[0] = my->dbgBuf0;
-	my->dbgBuf[1] = my->dbgBuf1;
-	my->dbgBuf[2] = my->dbgBuf2;
-	my->currDbgBuf = 0;
-	my->isDoomed = 0;
-
-	return 0;
-}
-
-void desHwShip(HwShip *my)
-{
-	desLVme(my->lvme);
-	free(my->lvme);
-}
-
-void HwShip_requestBuffer(HwShip *my)
-{
-	int i;
-
-	syslog(LOG_DEBUG, "wait for data");
-	while ((LVme_getL(my->lvme, LVL2_ACCESS_VMEREG) >> 16 & 0xffff) <= 2) {
-#if 1
-		struct timespec tS, *t = &tS;
-		t->tv_sec = 0;
-		t->tv_nsec = 020000000;
-		nanosleep(t, NULL);
-#endif
-	}
-	syslog(LOG_DEBUG, "data available");
-	i = my->bankRequested == 1 ? 0 : 1;
-	LVme_setL(my->lvme, LVL2_ACCESS_VMEREG, i);
-
-	assert(i == LVme_tstBitL(my->lvme, LVL2_ACCESS_VMEREG, 6));
-	my->bankRequested = i;
-	my->currAddr = LVL2_OFFSET + 0x4;
-
-	/* to indicate a buffer request state which is cleared by getEndOfData */
-	my->endOfData = 0;
-}
-
-void HwShip_getEndOfData(HwShip *my)
-{
-	void toDbgBuf(HwShip *my);
-	my->endOfData = LVme_getL(my->lvme, LVL2_OFFSET) - 2 + LVL2_OFFSET;
-#ifdef SHIP_DEBUG
-	toDbgBuf(my);
-#endif
-}
-
-int HwShip_readSubEvt(HwShip *my, void *subEvt)
-{
-	int readSubEvtR;
-	unsigned long size;
-	unsigned long lastAddr;
-
-	assert(my->bankRequested == bankConfirmed(my));
-	assert(my->endOfData > 0);
-	assert(my->endOfData <= LVL2_OFFSET + sizeof(uint16_t) * LVL2_SIZE);
-
-	size = LVme_getL(my->lvme, my->currAddr);
-	lastAddr = my->currAddr + size;
-
-#ifndef SHIP_DEBUG
-	assert(size <= HwShip_maxSubEvtSize(my));
-#else
-	if (my->isDoomed) {
-		dumpDbgBufs(my);
-		syslog(LOG_EMERG, "%s: was doomed in previous buffer, dump buffer again and abort", my->name);
-		abort();
-	}
-	if (size >= HwShip_maxSubEvtSize(my)) {
-		dumpDbgBufs(my);
-		syslog(LOG_EMERG, "%s: corrupted subEvt, dump buffer and try one more", my->name);
-		my->currAddr = my->endOfData;
-		my->isDoomed = 1;
-		SubEvt_setDecoding(subEvt, 0x00020001);
-		SubEvt_setSize(subEvt, 0x10);
-		SubEvt_setId(subEvt, 399 | 0x80000000);
-		SubEvt_setTrigNr(subEvt, 0);
-		return 0;
-	}
-#endif
-
-	if (size <= HwShip_minSubEvtSize(my)) {
-		my->currAddr = lastAddr;
-		readSubEvtR = 1;
-		syslog(LOG_DEBUG, "subEvt: empty, skipped");
-	} else {
-		uint32_t *data = (uint32_t *) subEvt;
-
-		/* copy one sub evt from RC to memory */
-		while (my->currAddr < lastAddr) {
-			*data++ = LVme_getL(my->lvme, my->currAddr);
-			my->currAddr += 4;
-		}
-		readSubEvtR = 0;
-#ifndef NDEBUG
-		syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt));
-#endif
-	}
-
-	return readSubEvtR;
-}
-
-int HwShip_fillLBmaChain(HwShip *my, LBma *lbma, unsigned long virtOff)
-{
-	int fillLBmeChainR;
-	unsigned long size;
-	unsigned long lastAddr;
-
-	assert(my->bankRequested == bankConfirmed(my));
-	assert(my->endOfData > 0);
-	assert(my->endOfData <= LVL2_OFFSET + sizeof(uint16_t) * LVL2_SIZE);
-
-	size = LVme_getL(my->lvme, my->currAddr);
-	lastAddr = my->currAddr + size;
-
-#ifndef SHIP_DEBUG
-	assert(size <= HwShip_maxSubEvtSize(my));
-#else
-	if (my->isDoomed) {
-		dumpDbgBufs(my);
-		syslog(LOG_EMERG, "%s: was doomed in previous buffer, dump buffer again and abort", my->name);
-		abort();
-	}
-	if (size >= HwShip_maxSubEvtSize(my)) {
-		dumpDbgBufs(my);
-		syslog(LOG_EMERG, "%s: corrupted subEvt, dump buffer and try one more", my->name);
-		my->currAddr = my->endOfData;
-		my->isDoomed = 1;
-		SubEvt_setDecoding(subEvt, 0x00020001);
-		SubEvt_setSize(subEvt, 0x10);
-		SubEvt_setId(subEvt, 399 | 0x80000000);
-		SubEvt_setTrigNr(subEvt, 0);
-		return 0;
-	}
-#endif
-
-	if (size <= HwShip_minSubEvtSize(my)) {
-		fillLBmeChainR = 0;
-	} else {
-		if (0 > LBma_readChain(lbma, virtOff, my->currAddr + my->cardBase, size / 4, 0x3bUL)) {
-			fillLBmeChainR = -1;
-		} else {
-#ifndef NDEBUG
-			syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(LVme_getPtrL(my->lvme, my->currAddr)));
-#endif
-			fillLBmeChainR = size;
-		}
-	}
-	my->currAddr = lastAddr;
-
-	return fillLBmeChainR;
-}
diff --git a/hadaq/hwship.h b/hadaq/hwship.h
deleted file mode 100644
index e72827b..0000000
--- a/hadaq/hwship.h
+++ /dev/null
@@ -1,72 +0,0 @@
-
-#ifndef HwShip_H
-#define HwShip_H
-
-#undef SHIP_DEBUG
-
-#include <lvme.h>
-
-#include <allParam.h>
-#include "ipc_basis.h"
-
-typedef struct HwShipS {
-	char name[12];
-	LVme *lvme;
-	unsigned long cardBase;		/* BUGBUG workaround for stupid lvme design */
-	unsigned long currAddr;
-	int endOfData;
-	int bankRequested;
-	int currDbgBuf;
-	uint32_t dbgBuf0[sizeof(uint16_t) * LVL2_SIZE / sizeof(uint32_t)];
-	uint32_t dbgBuf1[sizeof(uint16_t) * LVL2_SIZE / sizeof(uint32_t)];
-	uint32_t dbgBuf2[sizeof(uint16_t) * LVL2_SIZE / sizeof(uint32_t)];
-	size_t dbgBufLen;
-	uint32_t *dbgBuf[3];
-	int nDbgBufs;
-	int isDoomed;
-}
-
-HwShip;
-
-
-int conHwShip(HwShip *my, const char *name, const Param *param);
-void desHwShip(HwShip *my);
-
-static size_t HwShip_minSubEvtSize(const HwShip *my)
-{
-	return 16;
-}
-
-static size_t HwShip_maxSubEvtSize(const HwShip *my)
-{
-	return 3088;
-}
-
-void HwShip_requestBuffer(HwShip *my);
-
-static int HwShip_isEmpty(HwShip *my)
-{
-	return my->currAddr >= my->endOfData;
-}
-
-int HwShip_readSubEvt(HwShip *my, void *subEvt);
-
-static int HwShip_isBufRequested(HwShip *my)
-{
-	return my->endOfData == 0;
-}
-
-void HwShip_getEndOfData(HwShip *my);
-
-static int bankConfirmed(HwShip *my)
-{
-	return LVme_tstBitL(my->lvme, LVL2_ACCESS_VMEREG, 7);
-}
-
-static int HwShip_isBusy(HwShip *my)
-{
-	return my->bankRequested != bankConfirmed(my);
-}
-
-int HwShip_fillLBmaChain(HwShip *my, LBma *lbma, unsigned long virtOff);
-#endif
diff --git a/hadaq/hwshow.c b/hadaq/hwshow.c
deleted file mode 100644
index a81904b..0000000
--- a/hadaq/hwshow.c
+++ /dev/null
@@ -1,267 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwshow.c,v 6.36 2003-06-16 08:26:38 muench Exp $";
-
-#define SHIP_BLT
-
-#define _POSIX_C_SOURCE 199309L
-#include <unistd.h>
-
-#include <assert.h>
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <syslog.h>
-
-#include <allParam.h>
-#include <lvme.h>
-#include "subevt.h"
-#include "hwship.h"
-
-struct HardwareS {
-	size_t maxSubEvtSize;
-	int nShips;
-	HwShip **ship;
-#ifdef SHIP_BLT
-	LBma *lbma;
-	LVme_L *buf;
-#endif
-};
-
-#include "hardware.h"
-
-size_t Hardware_maxSubEvtSize(const Hardware *my)
-{
-	return my->maxSubEvtSize;
-}
-
-int Hardware_inSpill(const Hardware *my)
-{
-	return 0;
-}
-
-Hardware *newHardware(const char *subsystem)
-{
-	Hardware *my;
-	Param paramS, *param = &paramS;
-	int i;
-	const char *ss;
-	char cardsS[PARAM_MAX_ARRAY_LEN][PARAM_MAX_VALUE_LEN];
-	char *cards[PARAM_MAX_ARRAY_LEN];
-	int nCards;
-
-	for (i = 0; i < PARAM_MAX_ARRAY_LEN; i++) {
-		cards[i] = cardsS[i];
-	}
-
-	if (strcmp(subsystem, "unknown") == 0) {
-		ss = "show";
-		syslog(LOG_NOTICE, "Subsystem not set, defaulting to %s", ss);
-	} else {
-		ss = subsystem;
-	}
-
-	if (0 > conSetupParam(param, getenv("DAQ_SETUP"))) {
-		syslog(LOG_ERR, "Construction of parameter source failed: %s", strerror(errno));
-		return NULL;
-	}
-	if (0 > getCards(param, ss, "ipc", &nCards, cards)) {
-		syslog(LOG_ERR, "Retrieval of card list failed");
-		return NULL;
-	}
-	my = malloc(sizeof(Hardware));
-	my->ship = malloc(nCards * sizeof(HwShip *));
-	my->nShips = nCards;
-
-	my->maxSubEvtSize = SubEvt_hdrSize();
-
-	for (i = 0; i < my->nShips; i++) {
-		my->ship[i] = malloc(sizeof(HwShip));
-		if (0 > conHwShip(my->ship[i], cards[i], param)) {
-			syslog(LOG_ERR, "Construction of card %s failed:%s", cards[i], strerror(errno));
-			return NULL;
-		}
-		my->maxSubEvtSize += HwShip_maxSubEvtSize(my->ship[i]);
-	}
-
-#ifdef SHIP_BLT
-	my->lbma = malloc(sizeof(LBma));
-	if (0 > conLBma(my->lbma, 0, Hardware_maxSubEvtSize(my), 0x3b)) {
-		syslog(LOG_ERR, "%s:%d:%s", __FILE__, __LINE__, strerror(errno));
-		return NULL;
-	}
-	my->buf = LBma_getPtrL(my->lbma, 0);
-#endif
-
-	desParam(param);
-	return my;
-}
-
-void deleteHardware(Hardware *my)
-{
-	int i;
-
-#ifdef SHIP_BLT
-	desLBma(my->lbma);
-	free(my->lbma);
-#endif
-	for (i = 0; i < my->nShips; i++) {
-		desHwShip(my->ship[i]);
-		free(my->ship[i]);
-	}
-
-	free(my->ship);
-	free(my);
-}
-
-void Hardware_waitForTrigger(Hardware *my, void *subEvt)
-{
-	int i;
-	int nRequests = 0;
-	int nPoll = 0;
-	const int nPollMax = 60 / my->nShips;
-
-	for (i = 0; i < my->nShips; i++) {
-		if (HwShip_isEmpty(my->ship[i])) {
-			HwShip_requestBuffer(my->ship[i]);
-			++nRequests;
-		}
-	}
-
-	do {
-		for (i = 0; i < my->nShips; i++) {
-			if (HwShip_isBufRequested(my->ship[i])) {
-				if (!HwShip_isBusy(my->ship[i])) {
-					HwShip_getEndOfData(my->ship[i]);
-					--nRequests;
-				}
-			}
-		}
-#if 1
-/*
-* This sleep prevents a tight loop which stops work on real
-* time systems if the priority of readout is not lowered.
-* When not using the sleep use option -p -2 for daq_readout.
-*/
-		if (nRequests == my->nShips && nPoll++ >= nPollMax) {
-			struct timespec tS, *t = &tS;
-			t->tv_sec = 0;
-			t->tv_nsec = 020000000;
-			nanosleep(t, NULL);
-		}
-#endif
-	} while (nRequests);
-}
-
-#ifdef SHIP_BLT
-void Hardware_readout(Hardware *my, void *partEvt)
-{
-	static unsigned long trigNr = 0;
-
-	int i;
-	void *subEvt;
-	int dataError;
-	unsigned trigTag;
-	unsigned long offset;
-
-	/* prepare BMA chain by scanning all VME cards */
-	if (0 > LBma_resetChain(my->lbma)) {
-		syslog(LOG_ERR, "%s:%d:%s", __FILE__, __LINE__, strerror(errno));
-	}
-	offset = 0;
-	for (i = 0; i < my->nShips; i++) {
-		int size;
-
-		size = HwShip_fillLBmaChain(my->ship[i], my->lbma, offset);
-		if (size > 0) {
-			offset += size + 0x7 & ~0x7;
-		}
-	}
-	assert(SubEvt_hdrSize() + offset <= Hardware_maxSubEvtSize(my));
-
-	/* read data via VME */
-	if (0 > LBma_startChain(my->lbma)) {
-		syslog(LOG_ERR, "%s:%d:%s", __FILE__, __LINE__, strerror(errno));
-	}
-	if (0 > LBma_waitChain(my->lbma)) {
-		syslog(LOG_ERR, "%s:%d:%s", __FILE__, __LINE__, strerror(errno));
-	}
-	memcpy(SubEvt_data(partEvt), my->buf, offset);
-
-	/* check consistency and fill crate event header */
-	SubEvt_setSize(partEvt, SubEvt_hdrSize() + offset);
-	SubEvt_setDecoding(partEvt, SubEvtDecoding_SubEvts);
-	dataError = 0;
-	trigTag = 0x100;
-	for (subEvt = SubEvt_data(partEvt); subEvt < SubEvt_end(partEvt); subEvt = SubEvt_next(partEvt, subEvt)) {
-		if (SubEvt_dataError(subEvt)) {
-			dataError = 1;
-		}
-		if (trigTag > 0xff) {
-			trigTag = SubEvt_trigNr(subEvt) & 0xff;
-		} else {
-			if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) {
-				dataError = 1;
-				syslog(LOG_ERR, "(%s)Trigger tag mismatch: 0x%08x != 0x%08x", my->ship[i]->name, trigTag, SubEvt_trigNr(subEvt));
-			}
-		}
-	}
-	SubEvt_setId(partEvt, 0);
-	if (dataError) {
-		SubEvt_setDataError(partEvt);
-	}
-	SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag);
-
-	trigNr++;
-
-	syslog(LOG_DEBUG, "partEvt: %s", SubEvt_2charP(partEvt));
-}
-
-#else
-void Hardware_readout(Hardware *my, void *partEvt)
-{
-	int i;
-	int firstShip = -1;
-	void *subEvt = SubEvt_data(partEvt);
-	static unsigned long trigNr = 0;
-	unsigned trigTag;
-	int dataError;
-
-	/* init partial event, necessary for  SubEvt_next() */
-	SubEvt_setDecoding(partEvt, SubEvtDecoding_SubEvts);
-	dataError = 0;
-	SubEvt_setId(partEvt, 0);
-
-	/* read all ships, check for common trigger tag */
-	for (i = 0; i < my->nShips; i++) {
-		if (HwShip_readSubEvt(my->ship[i], subEvt) == 0) {
-			if (SubEvt_dataError(subEvt)) {
-				dataError = 1;
-			}
-			if (firstShip < 0) {
-				trigTag = SubEvt_trigNr(subEvt) & 0xff;
-				firstShip = i;
-			} else {
-				if (trigTag != (SubEvt_trigNr(subEvt) & 0xff)) {
-					dataError = 1;
-					syslog(LOG_ERR,
-						   "(%s)Trigger tag mismatch: 0x%08x (%d) != 0x%08x",
-						   my->ship[i]->name, trigTag, firstShip, SubEvt_trigNr(subEvt));
-				}
-			}
-			subEvt = SubEvt_next(partEvt, subEvt);
-		}
-	}
-
-	if (dataError) {
-		SubEvt_setDataError(partEvt);
-	}
-	SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag);
-	SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt);
-	trigNr++;
-
-	assert(SubEvt_size(partEvt) <= Hardware_maxSubEvtSize(my));
-	syslog(LOG_DEBUG, "partEvt: %s", SubEvt_2charP(partEvt));
-}
-
-#endif
diff --git a/hadaq/hwsoft.c b/hadaq/hwsoft.c
deleted file mode 100644
index c70ef2f..0000000
--- a/hadaq/hwsoft.c
+++ /dev/null
@@ -1,173 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwsoft.c,v 6.29 2003-05-14 13:54:44 muench Exp $";
-
-
-#define _POSIX_C_SOURCE 199309L
-#include <unistd.h>
-#include <stdlib.h>
-
-#include <sys/time.h>
-
-#include <allParam.h>
-
-#include "subevt.h"
-
-struct HardwareS {
-	size_t maxSubEvtSize;
-};
-
-#include "hardware.h"
-
-size_t Hardware_maxSubEvtSize(const Hardware *my)
-{
-	return my->maxSubEvtSize;
-}
-
-#include <syslog.h>
-
-#include <stdint.h>
-
-
-int Hardware_inSpill(const Hardware *my)
-{
-	return 0;
-}
-
-Hardware *newHardware(void)
-{
-	Hardware *my;
-	Param *param;
-	int paramWasFound;
-	unsigned long size;
-
-	my = malloc(sizeof(Hardware));
-	my->maxSubEvtSize = 2 * SubEvt_hdrSize() + 5004 * sizeof(uint32_t);
-
-	param = malloc(sizeof(Param));
-	conSetupParam(param, getenv("DAQ_SETUP"));
-	Param_getInt(param, "soft", "size", &paramWasFound, &size);
-	if (!paramWasFound) {
-		syslog(LOG_WARNING,
-			   "Parameter %s(%s) not found, defaulting to 0", "soft", "size");
-		size = 0;
-	}
-	desParam(param);
-	return my;
-}
-
-void deleteHardware(Hardware *my)
-{
-	free(my);
-}
-
-void Hardware_waitForTrigger(Hardware *my, void *partEvt)
-{
-#if 0
-	struct timespec tS, *t = &tS;
-
-	t->tv_sec = 0;
-	t->tv_nsec = 100000000;
-	nanosleep(t, NULL);
-#endif
-}
-
-void readoutTrig(void *subEvt)
-{
-	uint32_t *data;
-	uint32_t *first;
-	static uint8_t trigTag;
-	size_t size;
-
-	SubEvt_setDecoding(subEvt, SubEvtDecoding_32bitData);
-
-	data = SubEvt_data(subEvt);
-	first = data;
-
-	if (trigTag % 2 == 0) {
-		*data++ = 0x1;
-	} else {
-		*data++ = 0x2;
-	}
-
-	SubEvt_setSize(subEvt, (char *) data - (char *) subEvt);
-	SubEvt_setId(subEvt, SubEvtId_trigCode);
-	SubEvt_setTrigNr(subEvt, trigTag);
-	syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt));
-
-	trigTag++;
-}
-
-void readoutSoft(void *subEvt)
-{
-	uint32_t *data;
-	uint32_t *first;
-	static uint8_t trigTag;
-	uint32_t id;
-	size_t size;
-
-	SubEvt_setDecoding(subEvt, SubEvtDecoding_32bitData);
-
-	data = SubEvt_data(subEvt);
-	first = data;
-
-	*data++ = 0x55aa00FF;
-	*data++ = 0x55aa00FF;
-	*data++ = 0x55aa00FF;
-#if 1
-	data += (int) ((1000.0 * rand()) / RAND_MAX);
-	data += (int) ((1000.0 * rand()) / RAND_MAX);
-	data += (int) ((1000.0 * rand()) / RAND_MAX);
-	data += (int) ((1000.0 * rand()) / RAND_MAX);
-	data += (int) ((1000.0 * rand()) / RAND_MAX);
-#endif
-
-	size = (char *) data - (char *) subEvt;
-	id = SubEvtId_test1;
-#if 1
-	if (size > 5000) {
-		size = 5000;
-		id |= 0x80000000;
-	}
-#endif
-	SubEvt_setSize(subEvt, size);
-	SubEvt_setId(subEvt, id);
-	SubEvt_setTrigNr(subEvt, trigTag);
-	syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt));
-
-	trigTag++;
-}
-
-void Hardware_readout(Hardware *my, void *partEvt)
-{
-	void *subEvt = SubEvt_data(partEvt);
-	static uint32_t trigNr;
-	static uint8_t trigTag;
-	uint8_t trigCode;
-	int err = 0;
-
-	SubEvt_setDecoding(partEvt, SubEvtDecoding_SubEvts);
-
-	readoutTrig(subEvt);
-	if (SubEvt_dataError(subEvt)) {
-		err = 1;
-	}
-	if (trigTag > SubEvt_trigNr(subEvt)) {
-		trigNr++;
-	}
-	trigTag = SubEvt_trigNr(subEvt);
-	trigCode = SubEvt_dataValue(subEvt, 0);
-	subEvt = SubEvt_next(partEvt, subEvt);
-
-	readoutSoft(subEvt);
-	if (SubEvt_dataError(subEvt)) {
-		err = 1;
-	}
-	subEvt = SubEvt_next(partEvt, subEvt);
-
-	SubEvt_setId(partEvt, trigCode);
-	if (err) {
-		SubEvt_setDataError(partEvt);
-	}
-	SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt);
-	SubEvt_setTrigNr(partEvt, (trigNr << 8) | trigTag);
-	syslog(LOG_DEBUG, "partEvt: %s", SubEvt_2charP(partEvt));
-}
diff --git a/hadaq/hwtip.c b/hadaq/hwtip.c
deleted file mode 100644
index 4b180c0..0000000
--- a/hadaq/hwtip.c
+++ /dev/null
@@ -1,308 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwtip.c,v 1.35 2003-07-09 16:21:03 hadaq Exp $";
-
-#include <assert.h>
-#include <string.h>
-#include <signal.h>
-
-#include <sys/time.h>
-#include <syslog.h>
-
-#include <stdint.h>
-#include <stdlib.h>
-
-#include <lvme.h>
-
-#include <allParam.h>
-
-#include "hwtip.h"
-
-
-#define min(x,y)    ( (x>y) ? y : x )
-#define max(x,y)    ( (x>y) ? x : y )
-
-
-/* undef if you don't want PRINTOUT if there was an error in the tdc data, mt*/
-#define BUFFER_PRINTOUT_ENABLED
-
-static int ourVmeAccessOK;
-
-void sigbusHandler(int sig)
-{
-	struct timespec tS, *t = &tS;
-
-	ourVmeAccessOK = 0;
-	t->tv_sec = 0;
-	t->tv_nsec = 20000000;
-	nanosleep(t, NULL);
-}
-
-
-#define TIP_BUFSIZE 0x40000
-int conHwTip(HwTip *my, const char *name, const Param *param)
-{
-	unsigned long cardBase;
-	int paramWasFound;
-	int i;
-
-	assert(my != NULL);
-
-	signal(SIGBUS, sigbusHandler);
-	strcpy(my->name, name);
-
-	Param_getInt(param, my->name, "cardbase", &paramWasFound, &cardBase);
-	if (!paramWasFound) {
-		syslog(LOG_WARNING, "Parameter %s(%s) not found, default = 0", my->name, "cardbase");
-		cardBase = 0;
-	}
-	syslog(LOG_INFO, "conc cardbase %.8x", cardBase);
-
-	my->lvme = (LVme *) malloc(sizeof(LVme));
-	if (0 > conLVme(my->lvme, cardBase, 0x3000000UL, 0x09UL, 0, 0)) {
-		syslog(LOG_ERR, "HwTip on %p not found", cardBase);
-		return -1;
-	}
-	my->currAddr = 0x7fffffff;	/* start at the end */
-	my->bankRequested = 1;		/* of the empty bank */
-	my->endOfData = 0;
-	my->daqRq = _LVL2_PIPE2_RQ;
-	my->daqGr = _LVL2_PIPE2_GR;
-	my->fifo = MEMBASE + TIP_BUFSIZE;
-
-	return 0;
-}
-
-void desHwTip(HwTip *my)
-{
-	desLVme(my->lvme);
-	signal(SIGBUS, SIG_DFL);
-}
-
-void HwTip_requestBuffer(HwTip *my)
-{
-
-	LVme_clrBitL(my->lvme, CONFIG1BASE + CFG_MASTER_CONTROL, my->daqRq);
-
-	while (LVme_tstBitL(my->lvme, CONFIG1BASE + CFG_MASTER_STATUS, my->daqGr)) {
-#if 1
-		struct timespec tS, *t = &tS;
-		t->tv_sec = 0;
-		t->tv_nsec = 20000000;
-		nanosleep(t, NULL);
-#endif
-	}
-	if (my->bankRequested == 0) {
-		my->bankRequested = 1;
-		my->daqRq = _LVL2_PIPE2_RQ;
-		my->daqGr = _LVL2_PIPE2_GR;
-		my->fifo = MEMBASE + TIP_BUFSIZE;
-	} else {
-		my->bankRequested = 0;
-		my->daqRq = _LVL2_PIPE1_RQ;
-		my->daqGr = _LVL2_PIPE1_GR;
-		my->fifo = MEMBASE;
-	}
-
-	LVme_setBitL(my->lvme, CONFIG1BASE + CFG_MASTER_CONTROL, my->daqRq);
-
-	my->currAddr = my->fifo + 0x4;
-}
-
-
-
-
-int HwTip_readSubEvt(HwTip *my, void *subEvt)
-{
-
-#define SUBHEADER_STATE      (1)
-#define TDC_HEADER_STATE     (2)
-#define TDC_DATA_STATE       (3)
-#define TDC_TRAILER_STATE    (4)
-#define LATCH_STATE          (5)
-#define IGNORE_ALL_STATE     (6)
-
-
-	uint32_t *data = (uint32_t *) subEvt;
-	unsigned long currAddr = my->currAddr;
-	unsigned long header;
-	int size;
-	int byteSize;
-	int statusWord, crateNumber = 0xff;
-	int foundCBLTTrailerFlag = 0;
-	int foundCBLTHeaderFlag = 0;
-	int errorFlag = 0;
-	int calEvtFlag = 0;
-	unsigned long dataWord;
-	unsigned long tdcCounter = 0;
-	unsigned long tdcEventCounter, trigTag, evtC, subEvtHeader;
-	int arrayCounter = 0, i;
-	unsigned long presentState;
-
-#ifdef BUFFER_PRINTOUT_ENABLED
-	unsigned long tempArray[500];
-#endif
-	char str[200], buff[200];
-	unsigned long lastGeo = 0, currentGeo;
-	unsigned long lastCrate = 0;
-
-	header = LVme_getL(my->lvme, currAddr);
-	size = header & 0xfff;
-	byteSize = size << 2;
-
-	my->currAddr += byteSize;
-
-	if (byteSize > (TIP_BUFSIZE - my->currAddr + my->fifo)) {
-		syslog(LOG_ERR, "size too large! size: %.8x ", size);
-		size = (TIP_BUFSIZE - my->currAddr + my->fifo) >> 2;
-		header &= 0x80000000;
-	}
-	trigTag = ((header >> 16) & 0xff);
-
-	calEvtFlag = ((header >> 24) & 0xf) != 0x9;
-
-	presentState = TDC_HEADER_STATE;
-
-	/* copy one sub evt from RC to memory */
-	while (--size) {
-
-		/* *data++ = LVme_getL(my->lvme, currAddr+=4); */
-		dataWord = LVme_getL(my->lvme, currAddr += 4);
-		*data++ = dataWord;
-#ifdef BUFFER_PRINTOUT_ENABLED
-		tempArray[arrayCounter++] = dataWord;
-#endif
-
-		statusWord = ((dataWord >> 24) & 0x6);
-
-
-		if (presentState == TDC_DATA_STATE) {
-			if (statusWord == 4) {
-				/* Trailer */
-				presentState = TDC_TRAILER_STATE;
-			}
-		}
-
-		if (presentState == TDC_HEADER_STATE) {
-			if (statusWord == 0) {
-				/* Ingo TIP Header */
-				presentState = SUBHEADER_STATE;
-			}
-		}
-
-		switch (presentState) {
-		case SUBHEADER_STATE:
-			presentState = IGNORE_ALL_STATE;
-
-			break;
-		case TDC_HEADER_STATE:
-			tdcCounter++;
-			crateNumber = ((dataWord >> 16) & 0xff);
-
-			if (lastCrate == 0) {
-				lastCrate = crateNumber;
-			}
-
-			if (lastCrate != crateNumber) {
-				/* reset last Geo, if change of crate */
-				lastGeo = 0;
-			}
-
-			if (statusWord != 2) {
-				syslog(LOG_ERR, "status word of tdc not 2, for header it should be 2, header: %.8x, data: %.8x", header, dataWord);
-				errorFlag = 1;
-			}
-			if (foundCBLTHeaderFlag == 1) {
-				syslog(LOG_ERR, "header: %.8x, at least two headers came without a trailer,  data: %.8x", header, dataWord);
-				errorFlag = 1;
-			}
-
-			currentGeo = (dataWord >> 27) & 0x1f;
-
-			if (lastGeo == 0) {
-				lastGeo = currentGeo - 1;
-			}
-			if (lastGeo >= currentGeo) {
-				syslog(LOG_ERR,
-					   "header: %.8x, Geo not incremental, crate: %d data: %.8x, lastGeo %d, currentGeo %d",
-					   header, crateNumber, dataWord, lastGeo, currentGeo);
-				errorFlag = 1;
-			}
-
-			foundCBLTHeaderFlag = 1;
-
-			presentState = TDC_DATA_STATE;
-			break;
-
-
-		case TDC_DATA_STATE:
-			/* data word, nothing to do..., but check for trailer */
-			break;
-
-		case TDC_TRAILER_STATE:
-			tdcEventCounter = dataWord & 0xffffff;
-			foundCBLTTrailerFlag = 1;
-			if (foundCBLTTrailerFlag == 1 && foundCBLTHeaderFlag == 0) {
-				syslog(LOG_ERR, "header: %.8x, trailer came before header! data: %.8x", header, dataWord);
-				errorFlag = 1;
-			}
-			evtC = (tdcEventCounter & 0xff);
-
-			if ((tdcEventCounter & 0xff) != trigTag) {
-				/* if(  (max(evtC, trigTag) - min(evtC, trigTag) >=2) && (max(evtC, trigTag) - min(evtC, trigTag) <= 0xfe )) { */
-				syslog(LOG_ERR,
-					   "header: %.8x, crate: %d, tdc_num: %d, tag (%.8x) != EvtCounter (%.8x), dataWord: %.8x ",
-					   header, crateNumber, tdcCounter, trigTag, tdcEventCounter, dataWord);
-				errorFlag = 1;
-			}
-
-			foundCBLTTrailerFlag = 0;
-			foundCBLTHeaderFlag = 0;
-
-			presentState = TDC_HEADER_STATE;
-			break;
-
-		case LATCH_STATE:
-
-			break;
-
-		case IGNORE_ALL_STATE:
-			break;
-
-		}						/* End switch */
-
-
-
-		/* TEST COUNTER */
-#if 0
-		if ((dataWord & 0xf) != 0) {
-			syslog(LOG_ERR, "TEST: %.8x != 1", dataWord);
-			errorFlag = 1;
-		}
-#endif
-
-
-	}
-
-
-
-
-#ifdef BUFFER_PRINTOUT_ENABLED
-	if (errorFlag) {
-		str[0] = 0;
-		for (i = 0; i < arrayCounter; i++) {
-			sprintf(buff, "%.8x   ", tempArray[i]);
-			strcpy((char *) ((unsigned int) str + strlen(str)), buff);
-			if (((i + 1) % 4) == 0) {
-				syslog(LOG_ERR, str);
-				str[0] = 0;
-			}
-		}
-		if ((i % 4)) {
-			syslog(LOG_ERR, str);
-			str[0] = 0;
-		}
-	}
-#endif
-
-	return header;
-
-}
diff --git a/hadaq/hwtrig.c b/hadaq/hwtrig.c
deleted file mode 100644
index 00b4c38..0000000
--- a/hadaq/hwtrig.c
+++ /dev/null
@@ -1,285 +0,0 @@
-static char *rcsId = "$Header: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/hwtrig.c,v 6.38 2003-07-09 16:13:09 hadaq Exp $";
-
-#define _POSIX_C_SOURCE 199309L
-#include <unistd.h>
-
-#include <assert.h>
-#include <errno.h>
-#include <stdint.h>
-#include <stdlib.h>
-#include <string.h>
-#include <syslog.h>
-#include <time.h>
-
-#include <allParam.h>
-#include <lvme.h>
-
-#include "subevt.h"
-#include "hardware.h"
-
-#include "hwtip.h"
-
-/* Number of TOF crates */
-#define NCRATES 1
-
-#define MU_EVT_COUNT    0x0e8014UL
-#define MU_FIFO         0x0000UL
-#define MU_FIFO_STATUS  0x0008UL
-
-struct HardwareS {
-	LVme *lvme0;
-	LVme *lvme4;
-	LVme *lvme6;
-	LVme_L evtCount;
-	LVme_L old_evtCount;
-	HwTip *tip;
-	size_t maxSubEvtSize;
-	int nConcs;
-};
-
-size_t Hardware_maxSubEvtSize(const Hardware *my)
-{
-	return my->maxSubEvtSize;
-}
-
-int Hardware_inSpill(const Hardware *my)
-{
-	return 0;
-}
-
-Hardware *newHardware(const char *subsystem)
-{
-	Hardware *my;
-	Param paramS, *param = &paramS;
-	int i;
-	const char *ss;
-	char cardsS[PARAM_MAX_ARRAY_LEN][PARAM_MAX_VALUE_LEN];
-	char *cards[PARAM_MAX_ARRAY_LEN];
-	char mu[PARAM_MAX_VALUE_LEN];
-	char conc[PARAM_MAX_VALUE_LEN];
-	int nCards;
-	unsigned long cardBase;
-	int paramWasFound;
-
-	for (i = 0; i < PARAM_MAX_ARRAY_LEN; i++) {
-		cards[i] = cardsS[i];
-	}
-
-	if (strcmp(subsystem, "unknown") == 0) {
-		ss = "trigconc";
-		syslog(LOG_NOTICE, "Subsystem not set, defaulting to %s", ss);
-	} else {
-		ss = subsystem;
-	}
-
-	if (0 > conSetupParam(param, getenv("DAQ_SETUP"))) {
-		syslog(LOG_ERR, "Construction of parameter source failed: %s", strerror(errno));
-		return NULL;
-	}
-	if (0 > getCards(param, ss, "mu", &nCards, cards)) {
-		syslog(LOG_ERR, "Retrieval of card list failed");
-		return NULL;
-	}
-	strcpy(mu, cards[0]);
-	if (0 > getCards(param, ss, "tip", &nCards, cards)) {
-		syslog(LOG_ERR, "Retrieval of card list failed");
-		return NULL;
-	}
-	strcpy(conc, cards[0]);
-
-	my = malloc(sizeof(Hardware));
-	my->maxSubEvtSize = (SubEvt_hdrSize() + 2 * 500 * sizeof(uint16_t))	/* MU */
-		+(NCRATES * (SubEvt_hdrSize() + 620 * sizeof(uint32_t)));	/* CONC */
-	my->nConcs = nCards;
-
-	my->evtCount = 0;
-	my->old_evtCount = 0;
-
-	Param_getInt(param, mu, "cardbase", &paramWasFound, &cardBase);
-	if (!paramWasFound) {
-		syslog(LOG_ERR, "Parameter %s(cardbase) not found, default = 0", mu);
-		return NULL;
-	}
-	syslog(LOG_INFO, "MU cardbase %.8x", cardBase);
-
-	my->lvme0 = malloc(sizeof(LVme));
-	if (0 > conLVme(my->lvme0, cardBase, 0x100000UL, 0x09UL, 0, 0)) {
-		syslog(LOG_ERR, "MU on %p not found", cardBase);
-		return NULL;
-	}
-	my->lvme4 = malloc(sizeof(LVme));
-	if (0 > conLVme(my->lvme4, cardBase + 0x4000000, 0x10000UL, 0x09UL, 0, 0)) {
-		syslog(LOG_ERR, "MU on %p not found", cardBase);
-		return NULL;
-	}
-	my->lvme6 = malloc(sizeof(LVme));
-	if (0 > conLVme(my->lvme6, cardBase + 0x6000000, 0x10000UL, 0x09UL, 0, 0)) {
-		syslog(LOG_ERR, "MU on %p not found", cardBase);
-		return NULL;
-	}
-	if (my->nConcs > 0) {
-		my->tip = malloc(sizeof(HwTip));
-		if (0 > conHwTip(my->tip, conc, param)) {
-			syslog(LOG_ERR, "Construction of card %s failed:%s", conc, strerror(errno));
-			return NULL;
-		}
-	}
-	desParam(param);
-	return my;
-}
-
-void deleteHardware(Hardware *my)
-{
-	if (my->nConcs > 0) {
-		desHwTip(my->tip);
-		free(my->tip);
-	}
-	desLVme(my->lvme6);
-	free(my->lvme6);
-	desLVme(my->lvme4);
-	free(my->lvme4);
-	desLVme(my->lvme0);
-	free(my->lvme0);
-	free(my);
-}
-
-void Hardware_waitForTrigger(Hardware *my, void *partEvt)
-{
-
-	syslog(LOG_DEBUG, "check if MU is ready");
-	/*
-	   only read the Matching Unit Count register, when all pending
-	   events are processed. This is recommended, because it is very
-	   "expensive" to read from an Sharc Register in the Matching Unit.
-	 */
-
-	if (my->evtCount == my->old_evtCount) {
-		while ((my->old_evtCount = LVme_getL(my->lvme0, MU_EVT_COUNT)) == my->evtCount) {
-			/* wait for some time for not disturbing the DSP */
-			struct timespec tS, *t = &tS;
-			t->tv_sec = 0;
-			t->tv_nsec = 20000000UL;
-			nanosleep(t, NULL);
-
-		}
-		syslog(LOG_DEBUG, "evtCount: %d, oldEvtCount: %d", my->evtCount, my->old_evtCount);
-	}
-	my->evtCount++;
-
-	if (my->nConcs > 0) {
-		syslog(LOG_DEBUG, "check if CONC is ready");
-
-		if (HwTip_isEmpty(my->tip)) {
-			HwTip_requestBuffer(my->tip);
-			while (HwTip_isBusy(my->tip)) {
-				/* wait for some time for not disturbing the DSP */
-				struct timespec tS, *t = &tS;
-				t->tv_sec = 0;
-				t->tv_nsec = 20000000UL;
-				nanosleep(t, NULL);
-			}
-			HwTip_getEndOfData(my->tip);
-		}
-	}
-}
-
-int readoutTrig(Hardware *my, void *subEvt)
-{
-	uint32_t *header = (uint32_t *) subEvt;
-	uint16_t *data;
-	uint16_t *dataEnd;
-
-	if (!((LVme_getW(my->lvme6, MU_FIFO_STATUS) >> 3) & 0x1)) {
-		LVme_getW(my->lvme4, MU_FIFO);
-	}
-	/*
-	   old MU assumes its 16 bit words get expanded to 32 Bit.
-	   This is not the case, see SubEvt_setDecoding(..)
-	 */
-	*header = ((LVme_getW(my->lvme4, MU_FIFO) & 0xffff) >> 1) + 8;
-	/*
-	   *header contains subevent size in char's.
-	   It is added to the pointer to evt begin.
-	 */
-	dataEnd = (uint16_t *) ((uint32_t) header + *header);
-
-	*++header = LVme_getW(my->lvme4, MU_FIFO) & 0xffff;
-	*++header = LVme_getW(my->lvme4, MU_FIFO) & 0xffff;
-	*++header = LVme_getW(my->lvme4, MU_FIFO) & 0xffff;
-	SubEvt_setDecoding(subEvt, SubEvtDecoding_16bitData);
-
-	data = (uint16_t *) ++header;
-
-	while (data < dataEnd) {
-		*data++ = (uint16_t) LVme_getW(my->lvme4, MU_FIFO);
-	}
-
-	syslog(LOG_DEBUG, "subEvt: %s", SubEvt_2charP(subEvt));
-
-	/* return trigger code = first MU data word */
-	return *(uint16_t *) header;
-}
-
-void Hardware_readout(Hardware *my, void *partEvt)
-{
-	void *subEvt = SubEvt_data(partEvt);
-	static unsigned long trigNr = 0;
-	unsigned trigTag;
-	int trigCode;
-	int i;
-	int dataError;
-
-	SubEvt_setDecoding(partEvt, SubEvtDecoding_SubEvts);
-	dataError = 0;
-
-	syslog(LOG_DEBUG, "read out MU");
-	trigCode = readoutTrig(my, subEvt);
-	if (SubEvt_dataError(subEvt)) {
-		dataError = 1;
-	}
-	SubEvt_setId(partEvt, trigCode);
-	trigTag = SubEvt_trigNr(subEvt) & 0xff;
-
-	subEvt = SubEvt_next(partEvt, subEvt);
-
-	if (my->nConcs > 0) {
-		uint32_t *data = SubEvt_data(subEvt);
-		int header;
-		uint32_t *subEvtInfo;
-
-		syslog(LOG_DEBUG, "read out CONC");
-		SubEvt_setDecoding(subEvt, SubEvtDecoding_32bitData);
-		SubEvt_setId(subEvt, 0x19c);
-		SubEvt_setTrigNr(subEvt, trigTag);
-
-		subEvtInfo = data++;	/* leave space for an info word */
-
-		for (i = 0; i < NCRATES; i++) {
-			header = HwTip_readSubEvt(my->tip, data);
-			if (SubEvt_dataError(subEvt)) {
-				dataError = 1;
-			}
-			if (trigTag != ((header >> 16) & 0xff)) {
-				dataError = 1;
-				syslog(LOG_ERR, "(%s)Trigger tag mismatch: (crate: %d) 0x%08x (MU) != 0x%08x",
-					   my->tip->name, i, trigTag, (header >> 16) & 0xff);
-			}
-			data += (header & 0xfff) - 1;
-		}
-
-		*subEvtInfo = (header >> 16) | ((trigCode << 12) & 0xff000);
-		SubEvt_setSize(subEvt, (char *) data - (char *) subEvt);
-
-		subEvt = SubEvt_next(partEvt, subEvt);
-	}
-	if (dataError) {
-		SubEvt_setDataError(partEvt);
-	}
-	SubEvt_setTrigNr(partEvt, trigNr << 8 | trigTag);
-	SubEvt_setSize(partEvt, (char *) subEvt - (char *) partEvt);
-	trigNr++;
-
-	assert(SubEvt_size(partEvt) <= my->maxSubEvtSize);
-
-	syslog(LOG_DEBUG, "partEvt: %s", SubEvt_2charP(partEvt));
-}
diff --git a/hadaq/sam_defs.h b/hadaq/sam_defs.h
deleted file mode 100644
index b283f8c..0000000
--- a/hadaq/sam_defs.h
+++ /dev/null
@@ -1,10 +0,0 @@
-
-#ifndef SAM_DEFS_H
-#define SAM_DEFS_H
-
-#define VMSR  0x8004
-#define KSR   0x0004
-#define CRAM  0x0000
-#define CRR   0x8000
-
-#endif
diff --git a/hadaq/tof_defs.h b/hadaq/tof_defs.h
deleted file mode 100644
index 501156c..0000000
--- a/hadaq/tof_defs.h
+++ /dev/null
@@ -1,194 +0,0 @@
-
-/****	Headerfile for TOF-IPU registers */
-/****	created: E.Lins 13-Jan-2000 */
-
-/* $Id: tof_defs.h,v 1.6 2003-05-14 13:54:46 muench Exp $ */
-/* $Source: /misc/hadesprojects/daq/cvsroot/eventbuilder/hadaq/Attic/tof_defs.h,v $ */
-
-
-/****************************************************************/
-
-/* Onboard components base addresses... */
-
-/* the DSPs */
-#define SHARC1BASE	0x01000000
-#define SHARC2BASE	0x01200000
-#define SHARC3BASE	0x01400000
-#define SHARC4BASE	0x01600000
-#define SHARC5BASE	0x01800000
-#define SHARC6BASE	0x01a00000
-
-/* the other stuff */
-#define MEMBASE		0x02000000
-#define MEMTOP          0x020f9fff
-
-#define SCV64BASE	0x02400000
-#define DISPBASE	0x02500000
-#define STATUSBASE	0x02600000
-#define FIFOBASE        0x02700000
-#define LINKBASE        0x02800000
-
-
-
-/****************************************************************/
-
-/* special purpose area in internal memory */
-/* DSP#1 */
-#define CONFIG1BASE            (SHARC1BASE + 0x000a0000)
-#define CONFIG2BASE            (SHARC2BASE + 0x000a0000)
-#define CONFIG3BASE            (SHARC3BASE + 0x000a0000)
-#define CONFIG4BASE            (SHARC4BASE + 0x000a0000)
-#define CONFIG5BASE            (SHARC5BASE + 0x000a0000)
-#define CONFIG6BASE            (SHARC5BASE + 0x000a0000)
-
-/* register offsets (32bit words) in configbase area */
-#define CFG_MASTER_CONTROL    0x0000
-#define _START_TIP            0
-#define _LVL2_TRIG_ACTIVE     1
-#define _LVL2_LINK_ACTIVE     2
-#define _MU_LINK_ACTIVE       3
-#define _LVL2_PIPE1_RQ        4
-#define _LVL2_PIPE2_RQ        5
-
-#define CFG_MASTER_STATUS     0x0004
-#define _LVL1_PIPE_FULL       0
-#define _LVL2_PIPE1_FULL      1
-#define _LVL2_PIPE2_FULL      2
-#define _LVL2_PIPE            3
-#define _LVL2_PIPE1_GR        4
-#define _LVL2_PIPE2_GR        5
-
-#define CFG_DEBUG_CONTROL     0x0008
-#define _DEBUG_DUMP           3
-
-#define CFG_LVL1_PIPE_SIZE    0x000c
-
-#define CFG_T_BEGIN_RUN       0x0010
-#define CFG_T_END_RUN         0x0014
-#define CFG_T_SPILL_ON        0x0018
-#define CFG_T_SPILL_OFF       0x001c
-
-#define CFG_TOTAL_EVENTS      0x0020
-
-
-/* number of vme modules to be rout */
-#define CFG_NOF_MODULES       0x002c
-
-/* declaration of vme modules toread out starts here */
-#define CFG_VME_MODULES       0x0030
-/* one vme module is described with ... words */
-#define CFG_SOURCE_ADDRESS    0x0
-#define CFG_BLT_FLAG          0x4
-#define CFG_CYCLE_COUNT       0x8
-#define CFG_DUMMY_WORD        0xc
-
-/* special purpose areas in external memory */
-
-#define SNIFF1BASE       (MEMBASE + 0x000fa000)
-#define SNIFF1TOP        (MEMBASE + 0x000faf00)
-#define SNIFF2BASE       (MEMBASE + 0x000fb000)
-#define SNIFF2TOP        (MEMBASE + 0x000fbf00)
-#define SNIFF3BASE       (MEMBASE + 0x000fc000)
-#define SNIFF3TOP        (MEMBASE + 0x000fcf00)
-#define SNIFF4BASE       (MEMBASE + 0x000fd000)
-#define SNIFF4TOP        (MEMBASE + 0x000fdf00)
-#define SNIFF5BASE       (MEMBASE + 0x000fe000)
-#define SNIFF5TOP        (MEMBASE + 0x000fef00)
-#define SNIFF6BASE       (MEMBASE + 0x000ff000)
-#define SNIFF6TOP        (MEMBASE + 0x000fff00)
-
-/****************************************************************/
-
-
-
-#define LVL1_PIPE_BASE     0x00000000
-
-
-/* define bits of the XILINX internal status register STATUSBASE */
-
-#define _KBERR              0
-#define _KHALT              1
-#define _VMEINT             2
-
-#define _XGP1               4
-#define _XGP2               5
-#define _XGP3               6
-#define _XGSR               7
-
-#define _START_MU           8
-#define _FIFOFULL           9
-#define _ADDRESSMATCH       10
-#define _KSIZE1             11
-
-
-
-/* define the BUSYs */
-#define _LVL1_BUSY          4
-#define _LVL2_BUSY          5
-
-
-
-/* TUNDRA internal registers */
-
-#define DMALAR          0x00
-#define DMAVAR          0x04
-#define DMATC           0x08
-#define DCSR            0x0c
-#define VMEBAR          0x10
-#define RXDATA          0x14
-#define RXADDR          0x18
-#define RXCTL           0x1c
-#define BUSSEL          0x20
-#define IVECT           0x24
-#define APBR            0x28
-#define TXDATA          0x2c
-#define TXADDR          0x30
-#define TXCTL           0x34
-#define LMFIFO          0x38
-#define MODE            0x3c
-#define SA64BAR         0x40
-#define MA64BAR         0x44
-#define LAG             0x48
-#define DMAVTC          0x4c
-
-#define STAT0           0x80
-#define STAT1           0x84
-#define GENCTL          0x88
-#define VINT            0x8c
-#define VREQ            0x90
-#define VARB            0x94
-#define ID              0x98
-#define CTL2            0x9c
-#define I7S             0xa0
-#define LIS             0xa4
-#define I7E             0xa8
-#define LIE             0xac
-#define VIE             0xb0
-#define IC10            0xb4
-#define IC32            0xb8
-#define IC54            0xbc
-#define MISC            0xc0
-#define DLCT            0xc4
-#define DLST1           0xc8
-#define DLST2           0xcc
-#define DLST3           0xd0
-#define MBOX0           0xd4
-#define MBOX1           0xd8
-#define MBOX2           0xdc
-#define MBOX3           0xe0
-
-/* DISPLAY registers */
-
-#define DIGIT1		0x0c
-#define DIGIT2		0x08
-#define DIGIT3		0x04
-#define DIGIT4		0x00
-
-/* Trigger Codes */
-
-#define T_NORMAL	0x01
-#define T_BEGIN		0x02
-#define T_END		0x03
-#define T_CALIB		0x04
-#define T_SPILLON	0x05
-#define T_SPILLOFF	0x06