From a99584a0da5546bcb5ef44e5b4e69bf1dc839f0f Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Fri, 2 Nov 2018 17:08:25 +0100 Subject: [PATCH] removed ndac from sls_detector_module and from the servers (not used), fixed setting module by eiger bug in sending number of channels --- .../eigerDetectorServer/FebControl.c | 2 +- .../eigerDetectorServer/Makefile | 2 +- .../bin/eigerDetectorServer_virtualMaster | Bin 81104 -> 81024 bytes .../bin/eigerDetectorServer_virtualSlave | Bin 81104 -> 81024 bytes .../eigerDetectorServer/gitInfo.txt | 8 +- .../eigerDetectorServer/gitInfoEiger.h | 6 +- .../slsDetectorFunctionList.c | 20 +- .../slsDetectorServer_defs.h | 14 +- .../gotthardDetectorServer/registers_g.h | 315 ------------------ .../bin/jungfrauDetectorServer_virtual | Bin 75576 -> 75496 bytes .../slsDetectorFunctionList.c | 25 +- .../slsDetectorServer_defs.h | 8 +- .../slsDetectorServer/communication_funcs.c | 41 ++- .../slsDetectorFunctionList.h | 1 - .../slsDetectorServer_funcs.c | 40 +-- .../slsDetector/slsDetector.cpp | 154 +++++---- slsDetectorSoftware/slsDetector/slsDetector.h | 10 - slsSupportLib/include/sls_detector_defs.h | 2 - 18 files changed, 113 insertions(+), 535 deletions(-) delete mode 100755 slsDetectorServers/gotthardDetectorServer/registers_g.h diff --git a/slsDetectorServers/eigerDetectorServer/FebControl.c b/slsDetectorServers/eigerDetectorServer/FebControl.c index 25d2f6a81..5adae263e 100644 --- a/slsDetectorServers/eigerDetectorServer/FebControl.c +++ b/slsDetectorServers/eigerDetectorServer/FebControl.c @@ -1020,7 +1020,7 @@ unsigned int* Feb_Control_GetTrimbits() { unsigned int Feb_Control_AddressToAll() { - FILE_LOG(logINFO, ("in Feb_Control_AddressToAll()\n")); + FILE_LOG(logDEBUG1, ("in Feb_Control_AddressToAll()\n")); diff --git a/slsDetectorServers/eigerDetectorServer/Makefile b/slsDetectorServers/eigerDetectorServer/Makefile index b76a695d8..150c3a208 100755 --- a/slsDetectorServers/eigerDetectorServer/Makefile +++ b/slsDetectorServers/eigerDetectorServer/Makefile @@ -17,7 +17,7 @@ all: clean versioning $(PROGS) #hv9m_blackfin_server boot: $(OBJS) -versioning: +versioning: @echo `tput setaf 6; ./updateGitVersion.sh; tput sgr0;` $(PROGS): $(OBJS) diff --git a/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_virtualMaster b/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_virtualMaster index 358c4c0bf5cef5d817b84077739ca8bcdf671ccf..40fcf83ef8f437dd37472fe637221d6df2ce54e8 100755 GIT binary patch literal 81024 zcmeFa33yaR)&_i8t^y(*6%@CzT^M0R1l&MW5}=`@1Y$@4*AS8pWXxvL&7!gyqO@%k zcU&j#xQwEM+MtlINF#1>XOz*%;Mi^B7#T;SqWRzVRNdRRI|=&D_kGXvKmYef=~H#8 z>YP)js!p9+?!AjV6UTS$(#5d;x*F#ij16_A3rhVWczPmFx-r7&X`~y!GmbR&Lz0Pq zR=#u{vS6z&X2BlF%fD{;*B$>xbY+Y%oxp}iNz5=TXmKYbzrBX((x1iMyr<9h= zJma)eN{db|Eh!JoJ9*xSGfqC^v?0|MLxxMeNuPNqOv)3HEIqmrqs)Erk9~mYFO0r* z?brS0?f>OPONLx@-e2?oe)zj%n12xdS?#tMVMBft{_A54T|{;EmyUu5caS)&6MR`G z_@YkmCxW)S1Nvulg8vBkj^tr??FfHZCwwpL1izvaIys%>zqu3qeVx#m&`JIiI>8?R zI&S<+{d=gB{D0^Ke;x?9Q;8s6jei~Kt+W$5X`SGkJE2qEN&aP>;Cpt0zp@kjmQMJd z(@Fk^JITMKll*UVl7B=e`QPg#f3y?)EuG+>?*#w5PWZNUl0PQ+1C2#P(h)L@Bjgu9 zusdZmGiMn2nYmf{MZPNEtdeTKuPQfdY-vTgFSlT3sn5vIpH)^-o?q=RsPgCM8~NwW z$5{Dvj!rS>*+#pb3`cMzychSLin? zD=HBwp5^m{lE11HkuqOdHCW9oDK9eSRF`Y=Kv9MYNL5x)3PDAdf@)u38A$u9$|1Q? zSy)<8?K1+^r9Piv3ujkJK9$Fkkk!(fE-NSj`zoK$m@qMO%-Hxvv^yZwnmpSm3Pr_o$9eAgmU*W(X;-Fve!1r_DS32;AI`FF;_`@9d zumj)Ufp2u+4|m|VI`FoQLVA+}f21S-b_d?_ZJFHcz#r|%A9dh==fJl(@W(jttq#1~ zfj7D&^na`a-@}1F&Vf&J;E#9U`#bO_IPh)oC+wj&l`psyeAUF5enmzL9YbwU{CC zwTyF!#aey=V!(5Zb7;kyCH@5C2Ql6x@dp_{nDIu5-_7_TjIWaTEsWD$kJU^3dd4}# zV#_6d4dWbIvBeU&F@; zegxy}^08GCKbUcL^;kXP!@kN4zI~ZDxYJv+t0g-(Gt!v;RJ!4fY-oCtAaWP{mFSre zB!$++Q6i?X4f%`i3>Ak<=@cS z4f(ynjouAkj`ntG^1j^~K;gB_=&gOn|LvvT;1*SWr!K$voJ`1T1P;nW$>>5T;LuY*B7|u4y1i{}u|tv1N}6jYl``ok%CAc; zx05blQnMrJK|ARTCcWZFT5TsC$)qP7Nn7kBgGo0zl0LMPKL4q$Ek4(h;Y%C;2J!h8 z{udknJn<7O{K2TVs_A{ipJL&EZ{ur;Kg`0PW#h|$U;gSQQS6f4EtDq*iZj6~T!!P;?1saeNgV_xqi68Hic7P{82LM!47?*W2uV>qlg zo(8MtZUwp(rlG!$==~Ue-XJ=q?qZ}L9V#-hr$(Y5{)mooIc&a+r1g}hfipn#G7t)S z_M)R3^R*DibSgx8vJmfps6&Xul@L(~5#{I*A)Z8)6(SPNp%DK7Z)kuLcPDzgA<#a^ z4++#*nBrZsI|{DBbw^3}kIE>J!O3>35wtPCSD5(NYw#@K_nZz3?hTqx6NJoDRBWY+ z4N|cORqS{byH~}IR@XEuu3`tN80T})JV3>ks+g%_3stP`8{s}r#ePsR&g&@m zFBL0Qv9DCDSjE0ju^B4%nTm0KN4bwxESIr}*rLUEtYB~is?AmjnY-fBg5J8@X{s`V zO>2l(V|GT50(P>x?>Jz0)hyU$xR&0Fp2yJqE27VT4~-i&t=;{;=;IPb=4=GK!408) zQ@%uxFg^H9ZEiMS2xCE6_dK>CdL-I$yWOyCe1(WaZv^|;0L|8Q}L$) zkY~5EC$B(9euaVqf7gaDkLc1=(>!`mQ*eX#-Cw-HmYU`+aBW>n8`_stV?c`L?cV1Y z`2HR5v3eLVJ9I~@@2#t&a|yo6EbIqO1U=E31yREle2-JcQq&|wjh=*nH@GQUO+=4S zzY}BB)#3O})m3KjuNlFu${??T&KjC*#T|vQ55*;qh^MK386uHr-oM-0qG`gjCfdEG z)#th{4Ppcv=~k?GhHgben@#Qwsyyh~iqc!{cF0%cfQUr*1G!i)5NJ3UWmV&?P=!Fz z(`Xm^gDM0>B>MKZDD*z8Y{TJpp+Z$Cj6z|%(7&k?K}4eWvQRw>ooE*tq6)1-o>g|C zMpXz1jDHs5eA94>UFZi&67;M@p_O)_kSYX3Bs!dh&S0T4>_VGWp?Vamw+l^Gg@A}e zfBqK=bzz}%?Ls%HLg;-Sm`6Pm9jgif5s7YPA{(6bnY7TblcQH6krL0+U@0IPIQRa)U9(Lb~Fvn(C3 zOOIBiXRFcztkSQc%|KD%BGC$zj?Zbh+Ai8%6%|h}RI405-5|?VQH6^{Ph-(h4NL8! zuTrpJ?R3RefWZ`VtTjc0e4ka+?_ja^20cDru+2Bwsr(2~uZ z`!2pzxxi{|L3e9jFHX^sXlV=c{f7>K!}!q$uzgQ1V4O_${~u%$GDm)nYDVE`3`Icm z3@+Fn47?Z2qXop&A-*Uf-9f@;c)!qt5xWwN0h?IU+QnampQ=7JtzBJ9xps<8k)*xw zY3lkKDA$4&AY34C;XB^C-UoX_c|dG)y?C&z;hhaTdj#LM(oWN9dsNzzod)L94L|ni zxve;u7V^AT6YU!GycgRG9?-Oquca(t5%qT2sByg=xUC^$LvxP-pwouwQw@9hEU){FgMUTZLGcPOvb8_H^-&SX7tDoWbJYG`l){E0ww zFfSU++7UvNhO(M%AA^mFwG@il1wh*>K-VL%zs%I}Qg%EVA4lojeni*sQat7w)G4(q%+zDQTSZFBj#UFd-Q!H-Ya50hA{s+(yOjV z#M8h3Q&-tNwa`xVkCZ|$q!#Lt zTIkR13oS`4)H}7%y!M4ArWS$;ORm${_Jw$Qo>Zs4sfGHqFSHXXN-ESpwa{O&&`VLo zpHmARm0IXwMpSbRVj8Tcy!fm$xrC##yktv*18S!Qt%-_EZHE zoo31IdiIEQrSuSj&(rNd@8PyJx}`aHXv5F;$eN6Ps76+vG6Ww$xXxpxN%3*P4M_|O8h5G3jHyEO>zgUBJHwF$^Y{#U=<-a#b77G;%OqY@90I=|e zM9fevWlrkVrLr3$%NeUze`>NZqg_0^h2y!F5a>Nouy)(5uTZREeez^f3+rx*brV@X zfd#rQ?d9NT&;Bd;HhMK>v7eF5eze6t8-t7dvu*z0kd>@$^0wMlulbTZx!8$B|B%GL zM+f}N+VgLgHKbkr1pgk2|2&)j6^ef&>fdPd@22=SO8viZ*1vZL{J+9#FSY)i@yC#7 z{p)T1-;h-htF2I8*ydj&&CMkk>Yv0vtpomL?fExjEeK9l^C#-B+kdOg{|d!_75J~R z`FB(NS4sW<;jDk(4)}l7+P?ms@rNN|{abAQ-;kB81M^ne{A;AmxiCcillb@VfPYzg z{>|b$c2IxVH0l4Vt)X{?;$M&Y*W3KNDgO0R|IeNEKdJ-%Ut!so+WwvKhj}D_ug(7( zvI=5l8p>N?^RJOM=W-SGPw53W< zk?4+HZEfOp#MWVsun5^kSgpxuhZDmbr4DFc!-X=%*cygOW4-RRB{^J4vJCZFX4mUU zX-h7SvHuH6Z2sLb(N9mrMtPbYwS>)}xeVL1*RevWOXkUn_F~fh?(bGDKXh7SYsRo@ zIWW1F1F$-kcEkj5uI{Hc&rIQ|SKPPHg9)~4^}cE$;>dhHm}~bAn6~&dkg^7%*Q#SS z2I6j1D(!izBStB|I`_Z<1Q*~o1HWQG92xWn1C+KsxwMEm{{!VAt)=I*egud*w&F)1 zzazRx7{QIhoX9?chBTrF2@4`3(eTc;Hbp#Sp8cUXo_#}RR~71|c9)h=K65{?wLNFL z!@)o_n77Lt%-TLqCc9mR|Co^Z>HAnAVuc4PyHNsd4M%PZkQgP{Tx&!KZlkv@@U1nA zTmBk%jzZ?2RQW(f{{ zv%+v@EG>YN5j{Zqq|(B3pMiB&G?dp2M-sF0Zjj&3O#?Fx#1qQz>~L`T3(mvAdYkbd zo3W+hJRE${PMXXl=iy+Jopc(Lnjs_PZDCDz+DV5qi3>3+>03MLmrs%8JRIB)LaF-y zok=%2N*!h=ZADVzaPSW{eiiZg7MF8v{0idj!@(RIznFOYaIo0M&nDhJ9K6!TX9NGg ze>iwOxL}-l+x|xn2iZRRIvi|4EtNIy=x{L28(g4!VkDXgQo4IB+1-Q|3a&dF!oo`( zN|`-->*1#AHI8;W)e+u-$Q!*1)r(-2g>X!*9ln(<4!u%Wr=B=U4;kxEc`@DKc%S|W z7g~YQ4Wociyc85ANCy$xj|<}Yu%kpNDg;0J5F&NyA5IsNl* z!s+aW={Bc6iqm!w-p+n4oa*7hD+K00;k4r&y#$=Q4>l)53RdVk6yYtI^I>hNGi(9& z;D!ju&$Aid&f28z(VwUoH<8M-5H^g`ZLw*vQ#H^jSdXe@Texm`gkq}=#R<@m!Fo@w7nj7A5%AFQ#PQ=FILwc1?#0Sd6N~&xZI9pu;Kgn{Dx@ zQd2=3E$HI~X}2gmafOIPt58}=@w7ODdtEO!g6LNqDCU9aI3Y9gmdp#*qJdRaCC(y4 z^I;^T6^A!;30wWLnTM|8Ez>#HTe($=D-eWY1nRS z;b&!7lO3F!XmrHy!};HK^g+%Ost+oi-a5@lcywtE2duS}{d5XBHI5wQt^v7_+47o< z+21Q_4`Y<5Pz-cc=naH|X5Tm5*v?a!C@|h|QJ}1BzPrrl4Vn|)*d z46;bH_(SMMJjilbwxIduHq`#;khv2=!K~xVw;6}kA)IZ0*wz#@pFwiSd>p^366*M7 zr0cpPWmzeA&jzliSqNu9h*(dc!`TeAp=#kGhW^daVurZE8GewV&lq}=p${2a%g`GP zZDwc_LvJ!f1%*Fl=oyB-X6O-y_A+!2Lp@(Yh!4?(`!jSML#HsbfT6Jr@ez{nREA0z zDrP93p}7p@F?0h%=QDICLm3P`#L$@x{e>YOe1;Nr{7&?xjFBm$Rp}#S74nyxUl*Q1i3|+(!hgP_Pq30Q@W#~zU?quizhMr*P zPKI7)sE(o68LDCE6NKVdhj$YM!rj&Zl!wy@W`&O@m=QjM;KJ}Ef}HTB1m}nUNH8uu zm*AZ6H3VmbR}h>Mew<)nI81PC_!WX9!ha<=B>Yc;-r-*e%u(u(2y9(Zn z;DvJpdn1Acb0ru;@Oc$nhT!@01Y3(>+I$IKgW#wuCAbK|@~b3xHG)@PEy4K+Ubj$! za}bQFU^RlLEEa4ff={bp8G>Dx2=#Sky=~ zP28r9>suR=_AlnWleB+vLaSKY3mwU<&Udh?bF$JKAl_hJGtUFf=w?|2)IJPVz@Kb$Exj8du;z_` zr8iPRW+U=+k@Ovgf1vC)?1psB_RXRh$pV&wVf^id@?>gIMH<##bc^dJh=K2X&maIXP=3vO4N?lw2lB*}-{Q?t-WtoR+s7by8ly z1zJG0X#|-KAsGGqO<7s9CE{{|)eWJfouwYw6ti4}PeSHECu1`;{h?!iGXDM^4gEJPJVX9`4Xf4?9qaq*SkVRD_V_L@4jJ%9o z-U1!i1GQZDG9-wY;SFxo+0r>fs$nL+0VZ|NuYzR|C9Pe6BwU$AXTqgfq%@*<$0;lm zswMfvJ|Sv68VgWd33f@L=qA)G7DKyx>uOnmtF_Od3zfQtRdiguGr>H1KCULA-ssP` ze+lta);Hin^1AOF(h6eaY|<3h{{V8#`v7zVVvXL2C(JPq8euOk&H%^NX*e^uC8L2g zSCP#b>lg{A5mT2lH@^>+R@S>%h?KqFhHg_F}>LmJ8_ zGrdD0!?=B-k{WRj1cWAmH}81L;R2ExiJVVl-R&Y@q7ix2Gdz9)>r#sW(0H8B)D) z%QiGKjROV{?y2Ka2gYo7#L*4c5^vp8=V^{TVlf}=h?t+OcOyf4npL2Q?H#O;xL>Eh zZUXFsw}d=9)G7r-gv0cD?98Ck_EvqZ4>S@#6GjE%U{4Br6AJ$TXU4j`-6-9$csWk- zRFy|}BHp{NibYg%fv(8KiYHc2kZTV%c@l$Z&NmoLw?blU7S*)2`Nu14JBz0hBABrx}oxLMO`25^wY+i!1Q1pAAV5$=>7vN0V`5`pt_Mdi?oss7eb z02?uTm90DmSx{<$sx~)hIEN3E=lUGUqk9)suw907jQ=1SN}QKDcFqQ0zA&r_EN`!-5Q}H8&&_= ztN>&sa+LzB3837@kmo7Ysd}S=sQ!J}zDjheV=k2mx}#K;W><@(^~njQ+T#Td?Ao9l~~Im zK*JL+MPNS$3K7_!fr}7eE5nR~2QY9l0tYg10s?&)I1&LD z1H2-Iem`O(`p9T_4)HF_u?MP^f7=(eJ8h z9fXXnef)>XnjakvYJFfj2hgh6H>jDyoH|V~*cmpWk0nKFjS5nsd;5z2VsxCAE!}m|!^IKCAN=h-*aO;p`=d zNVM-O(D{kbdF(j+$b(NXC;^y$+R^$P-CMG8`{%&9nZR;fWN+rUXxK_(mtO#eD>ho5 z&RcL_z;HY0Z>J9=3=0%PAmEE)3`>tZIIMc)(M?W9{IZDoJi^k~vRbhd29aeAgzmO|V^Vi3 zfh3OJ*H1~_1j*sdXvrVLM5hpuXl#?Rx2s@hQtU0+p>Ct#8r$|(%?|^$V5xrg%NuFI zS}C)hwPC?H^CV4+AHVOkVEK?R_Oz6cWighiHPQVsM(5_L2R@plU0?@DHa-~v3Kk!a zfLNh(5D+VL8UnOe@skh`b95X6VvY_+K+F-Qo>r)#5j3N%m>6J0@?T(+1rAi5-URrRIIOuHz~94mdZXJgt6on5EBK9R`P9{JuBb)3cc-B9#)qiJ`kjZBZiP6VyEj+kxKoR>WcMlv5nOOX#4PSaq8}S5 z3dRsBXTHx7PFXL%+XS3u~Aa3 z;OppPXsKoj(+9%Ddmx703eT#LIS1T17e0$hC;@N3)G7Rps5^3McX>Y2Ap9Z-kL$qm zBIc1VuTob`l5OgNN_?@YlOc|X-wL6^ zA@jxOl=xW~{!09|OW6D?ROD5O+@>Ne61f*0V|mDPgSs(#9Lx^xxbs%~{L`gY{@zdy zs7IoIUyrJ@l>`NSMWRhWDPrp&Y3xUE<>L{pLtWRs1_egU;~@_%5gN0gyu8BiW^JE9 zzw(BCes@_#QGj##0}3(3o#QL?aV}pWh&jF@cS(66+y5p(R8`>>J?`=V5Z4N#Y^JZu zT~W-*eSsj@8{8FDMEC_k4VU{$$@X#}pyWRSBq{k&>eI1Ahqy*`B{plkdWrt!I&1@& zmptp{dLuAY-;Lld&kc!v0qg$IaZS{q++bhyiQ4ZMf?tbE>Z-j7v5=>}ruD$Ny_M}= z3|rF%J68{zdkMnPrI@-gQG)$)Z?O9bfGfPgaVM~s)-#ZXz)A-CBe04AHv(Y>21?(L zmeA0dPpoq5PH@tB>;#)bfz2SHRz5y(LJQW=O`QV2Z%j!MY5YeBZA zkU1LMlg-9u7dnNX#!A~}V+_)g%*NiQI}pAG9WF`uD-|MPHm(2yJ-QMgsYj24Hv(?S zzTXF*iuhvn`di}DY-|sii@_gr<*7=yuTN)h39HB*5?QSx>m>5Bw~pN|5liaSWd1NBCte*`LI z?)bBHn28r^s44Rmp!k>C#V%aK2}&B*v0mBNY&5wl& zp=;@}z^U2~{*VP+wLCJkQr`o6+1Ei8UA5067BPoFEb1Z2=sk}fB1R7{4)fE-Jtc_p zS=H`2B?UBC4+&z5CpRDea)G#85Sf!EOd0GB(1P8pXtc z5(JaF!br9{r++cxx+lMey%L=S|ntc7C>t3o&{v~NytNLivX2mQ8kQ%h`PAk(dq<)<7D7Prsi~dzL+V|4zbRF1e4^v3=DuK6 z)h{lyt9BVks;a&yRlOc1L*`QavZ`fCRozc&#;R6Sy6JHJj282TbxqlSzXc*a61yRwuQN(?3qs@oq@Ak2-!0S2m@NJ09=2j+M__bzCm~udBA!uH%VP$45~zWY*)C zb^K#e9gmYLIhyluLGVR{6#+k;$}}LhmQ`mQQ$qD&_4zA72(M!MB{do&FY7V91lK}#QG1v z?Z?As=sHQ`VY?t4axm{jX;qd(z>wMem|}nIKC~L< zxh9^0=0+9QytW3?aQP)--USl;OSL#B|HaZk76@PxbcrX|;Kggyq7P0oVCnHj8J286 z8a*gsvr%5p@J`rlc@A~byP1Hpj|muV!=JT-NvY+6eVa)x)Lr^R*SI)ozT1&>;j+myge_xP%UGH=k_j_!fU&F!04 zSy4^*{4GIL`P}}JG9NAF7C}_cR=yb!>jZ%nfp1=+k5{%<3!=z<`jAu47{MY>sv^F^ zit-{^;ynn&7V{zeI=j#`co~p6+1ZI<%JJ$Y-bqk>><3oES=G=8AXwE;nG(SUB$oIG zA{@O!r6}i5o)O>ZRK-TujWjY5bHXD^6MMX_KX{^hTxkbBTWJ`3T$gPqb`9L>C~^`~ zk*5(^`rW9qY+RoP?W=_QEtcj+<%*;(g5CYt$x}$yg zF?1_xRE)ifeII^2jU!cCZgu!^&qE!{eTvA91t7(TKB$qvF8l0^-VEfJgzcZiV0;J7 z5L*o$;n6AWDH6JtE&@)CyRMLcT!geqyIwqHW(-^URf(>|2B@fOd%rC zlb=RweQsCPk8?t)zEl$7kvKb9`U=wV>OpC#?dg`%o){xat9=Zq5p((jmJ-JK3Q(yz ztn;T2Q3-NLkyAhi@B=|;9q^3d4V{BJ7|X4U&4N%nTYlQPmjr=jfxE;%gkHyUKx{Gp zf?sD%E8sPtrpas4E~=)o88i0J?7eyDOr4zF-m%RwF4TCgsRtAMrOt|nJ!OyQeQY|O zfxev>7i%G4>?IK6IK~R<2nAhBuLVwZ!!L0pEPJw^z31>f#r|Oe7WF&FNXHu$k4LPF z!E+}p7vp0POE>&|02Ukm{QVGczq~`6L$HzX?yI(;0FL|n|R)4caSd&l6OVHXh36S@SWCNG(ez zZR+ob?XrZvu1DL&uI-Axm2}rF))Pa`TUT3;()zs~8+LZbt10l{Zaa#r*EuPUAjQ)_ zv3+qouOp9Mx1&&%MBzJlG_gG$3Lq4EbRfgfBnqoZVO8f8@c45(8UBf_orGShNTD1Q zc;`=#&>P~vP}i+&1`T*8uvMkEUj41=Upq0QDEghbY`0*Lhs@>oi9hLD+68Q2IfAwK zLfg0tM9_hN$3Z}BC@Ag%bVuj&N*kKH^97^aDuRxJTRJGe6Z%ag(g>Gn$|wQqZKvt$Qcfdu+pn4*s668u1lzeFNuUNW)hA9t#1?fa?Zx!0(px$yPNt-lst|kmkDHZmSNpa{*^o&K0%o&z zyiNn*@Cc~XrmoEFQJs)m1#)`y!|!P4E`6{@)TiC0i{OsMuN1A!%MF>UK@-n5{oe7u zlY>?=zyFZ+Z=gEr6)3-;I?y6*anM|XB982PkY+tW@h^C0vbdtlvu0@50wd{G(#4w{ zby5o|@7-=zy`747Jfc;UhQu{|nmCElK~75PaxVDGU2YO;N9h(&()JZjWfQXiZWkzC znm!rSUfN15rV^cPFkG-$0fx6eJ5#M&A`YmlRyzdev~@F#MdcCmDu{r*cz|M8$Sg+$ zYTQ5k4%8So!yf^to2Q>rug%@8x27J8=5s{f;GMNpUnC!sE^LErWIlij#mj_8uMT){ zr+F_pC{Y(FYW93@LcHifiki&#Q$P(nu}$l#V>pkLFExFh(qSnkPnfc8DZDCA8|6HjN})6p3Q7dKv}!5t9~&QC`>`^ zT66P5Ldt2F*^<`K`2k0!A@ln?sro>VkogrtT+VYHKyo%0HKMj5nSb`&*-GclT6>@; ztCJb_LD3JWT>64&1nXeKy1ThQbS$oX14~D{45X34QE7l)LekXjZeMsC+9Ea=vZ?ku zH3Nmsb0Jq!+4b4jNC5Xwu_pwh=j0wF0eL^6a6eM{G#zn&uzlf)Ec^rdtcb2e$nKoN zjP?|Ik;03hV6A?s&uH}^AlQlJ4&m-K(v(~sq7Fy4C-MrMrdXAO2!cj*$UcaCfE}F_ zMJy%}KBi+yBJ1!NTB9>bZf;Lx6p2K^-6G>&pcRzI4*43eglQNa2`}*>t-M2baTWpYtHc$y>KsLimKyeK7*{eUBPPYR^VaVNrKGgPQgFL$;-ptLm>^$QrM%wX;ePw{XeKTX)`Y zzNz|9De;yn@z$Rx({Aci1Gs@@yYU(}ym;(8yr4Tliopb_B9c>GnWK<7Dl#9HpvGW=+SZOlc;kMGou7TNjdSfxX!t}UCv?1sasY& zdROgc%&!Xb;Rpkk-L>=)Hl2CEE!JXM-wWVU`4)6tZ@8koxMWs9HV}e>aF-Pny64X3 zj>2L=l)H<3e%u5AVy-Gu+t9dC)7@ z)-dDUhc0}eE%wx-p}WxS(##{9TuYa+O+xoEuIhCu6KDW|(CzFwBb%_h zQOi)!{O)E{yA6NQUZ+s;fiVsBHuVz}^+r%{w5h+qJ4=FyL|gB*#47;xpwNu>4w?0! zs$%0pGIT=gILtzI(s8w#LeFzRhr|MSf*UgMUh+uvj3J+5&#G|8l$ib$ff! z{^%6kMb1Kd%XQ2k5E1h_{OZe&*C3d5)^rh7f?Zq)j{6UK`)7Bf)C7n~bO>q^dkyMu z*ko6KfGV^Kg;uc;M`rXzRR{>Y|Meaa&|?G9drpSz<|Q{_W;dtemj@wNC7mQ~hhF3$ z1e-WT?5J-k1Ue}$qf`R1MGzG@CFDT}5bJ>0Vy?%pvwL38Mz9{jueB5DH2 z2rE0MA6&p#;Y=_B?l)de%eg4=a$2>PJR0KiFLh3O_AXlUW_DA1qT!9d zVsfFO*b)%K?mlKsdVC~}eFEI57z=pwux@j+@>uE0zt>qin->rIY9%UeAk$F#~LO+1cNvwH+CzNja6BIckvH;cBb^STwR zEX*U@F%6l#cyDLTmtF9n+*SlLgCFQeco=?9J;CE$A;&_J?bn{)X~Z`mZctP)nC;1Y zJlMjedl{SkNq%khlcHShcYNOf4Gd8lxMK?>Jg}U!H%`KTl#+dgj243%B5T8msi*_yPfL@XUjYbA2nsIaDS*{5r!v3 z*vBU41xb>;zaEklVp+l+&O5C_p$@T!(J0uG!jZysCH*8Yh4kkE z2^j<2Z!u?stGevH@Oap%R@;Q`L=?F*1g(S1>NZjvsJobj6I zVSltF^nl|>v?dqvcK2d~LWs}dT-th2tIKzS9qXa^c8lL9nB1W8&icpAPMT^hxv&$O z2ZLtvR+qIXqI_$6C?SW*ri*o^^*j_4$E)lT8(c~YUXiNPUi;H?j+!c|qRTq2>D9N{ z17{z-_8#o*pvCpLK88{iK`UtP{z{;Ha71(K753B<(Y)+L(TND9blVB4xu(-=*w+U7 z8O};5%YS?)m3Z-1R>Eodv2#xT&~URo0rXZHehd2=iQYQ}y)4#<6jhHqaS+NgtDAtq zlft1aYoZ+sC4NbK0&9lvc|rb$=jmPaVINCG&i^ zPjwK2r8su#4d|SwcVcI*egEeSX!U0g&46*-BNd*MbH9QYXn9Zuu{$>S654 zBvdtUEmXA?G?l7KS1DE92~4u8HV&Ywu7m_3(~n=OD*5WucWB5YRedE0s;SgnAm@RC zD8i-QIm+|?7zl^w{S38}YBDk~k6J3LK}GkWvh6skwN<8u$SbvORHePjF1(p46QhX! z)Xo|%df2I?ZfHvRK!H-y1h8R$S`50%6s|de%DEK0LgqC5QaQe)e)L!Lt|a9&0fFx{ z;TMOcmFP#WBADd3KER5nYU5N+r@8|LP=|d?bK7vNX=@{0wozYP>W0kiwQ>G(P{qEf z9$wq|M1^x#r}81EI=+Qqu|LDWDRqnhAFAVOU>Zmvx}z@*1h1fM=YzOQKLShaYT-b+ zNriBnyal0%`FjXNOX&^cY!tUvEBI8_pV7U%VP52hBkTs^VL>>~RPPal-&Zu)T_)Ea zZ&3(2G?pSkL8wFHVP}BGVnL`w;|eVG&AC88?Q;NlYJ3Htvo9VmeoM-!@$;Afz1k`K z{w8Q)8D&@1oUhN_A3|TCgX!5GAFGoVo~35UOR!REnEslz1Z;#efPD7$Eod3h9K|9^ z5A`;%5E2L%9S5@N4hvSMfoA1!-UwpMxf1iW?BS9|dtbBx4z1l4)WCS^8aMN{vnA;_ zN>^xQL#p;2%nGp|T85ponmrG*n?Qg|og7qWJFgQCpVYOtRy)W}8TRC7dA_T6_Pi^h zvDnApD4spMrd_y4ulINHfTldS_$_WV(0nQ3?-A!!UHZeYscG%uABdm1crt2#f4}&U zn%16vcTH=r03Vg4%PLPj0UB{W^~Amz=TlFtrgen$Ae0{MiurOm-T}Hqw%-PY_?(k^ zgy?1Hi;oZmcEC8Ows;yPprnx~11$pI$!_~$kT#{Ax`P4#Qf>Z<8>mGk;8EO8rtm5g zPanYTr9au5hKoK?+V~vSejgTN1^if>y>g~%7rV*59s9$M!3WGVtgW9aR$f3Vhhi~CarqtoHg&o%+aJ|(=w~GVn zs$GGaDqWp+JR~rmM9Gl(2!1(ZEl8TNPF&(vGgg(avVdm!cY^S_)!j`X`T-F!55X_D zEMQCfAjm7tJprAz^h0~lhS&ZId z>E)P?WZ@9E+NcRGZi-&kUFD`)+Uezj-y}X1 zEhpn?HB?lk{S%v+^w-=-iP^VbMX9KCcXb(&>g&Cn2LhZk}G*L z?%#r-lQ#$t5dg7UevsoMLEvU!xw~4P;D1{X;4#FVSI%wK zt%8_W3GWfl`2*1a1Z>lKfF$>N3_O;0M(I7wR$gtC4n=c>%w_Xsf-geDi288C9j3`z z4dXzgd49w!Ko(J<-eKna8x5nhV`=jqW_EB(zJyq;xV4A}S4(b32sc;l9=3?=w0oir zXiFpdI{1M=v-+^udKH5wh+EBgH`YQtsr=DAOANkEoKL06tFX3XVsQwv9DE$nvz1)- zF$7o{(Kj(!fkG4IN<;p5vCtdk*}m|Sh*_23L)Ue?=Hq=miO;}fKBCyvCn$>*AM6>z zgI&rg;Hl2`WPX02-H`rruA9=f8`2AFte$>93bChiFIpNe`iI|f+FOm1xW9m3wqWu; z{ZNbtwNGDOB#)w=CC)|k#%hhK*dzoBmE^Y#e7)Py!r6)m|2*1`GW-cRkMNlf|)DuEzUs?|<9 zl}XKxq+TGe2=-^vD~_b2?4+NUAn6H5(hxgoCzEb+B#pL{B1lTSxHrefKSO-JC0ntL zzms_T#l2VB_(jCqFYdk3#?K<&esS-EHhwbj|NAfQ4T8)6{EK_pKKpucZ~r$j2BGZ^ zz77rBGROXog7qT!h|$~&uY@&!3fM{bT42Qd0&)ID%+GYl>1Uxx^zg+nBdfqp^^VjR z_j1~b%9)bx?5`q!#Jm;MXeqV+(W#}ldO_B&262sHI|@raHN8tPiZQLlXaVu%4r+Wo zmxbUr)+6TIT7rnV$qsGMbqtv=A;fE4YyN?n#mzNe0ffv4GNCM>|}MTxEm=^EU2(aTg(d%D1sZA4pslA43WPT_yM7lHWRf#bpV=qapua5m$V*PdOPZB$dv55I7T%cDOO1jq^ zKMpkJBA+*uKG43{+!c3bBSstkc-t2_@{l8x-hGs3@1nOXH*fP|rSnz4Krh+09uK9q z9n-Ef!O9;KdK?Db*g`atiGFQG#IsmL^(I+gULgQ)|kKE|b2xT>@61h?W9k9}_eSdbC)D5O5evsPB2Ggkvlv4TN z*TQQX?zT&QLKQilm=e8Js*=r|u79{1=gAz(%G}I=0@fSb?jEJCAzUC)W1yiPml~s@ z$PBF+(NpcrLiPkkg_QL2euy@(Lq%`L58jti<(9?=qpn8uJ7JlQ)ZG#?78}u>43R*T zifXtXRHKLYK?pIVqTN*JSZT8+V)1=O7Esp}@fEm(tUR^It@;#WNW3L zFz2nJh4^p+KeO|Kt-e1|Q;v}@6&r> zEUB6JwcjBqCjshEv}VB$>~--C*w_;vfR882B49DqsKR!;3OgvRW8|=0wETOif>@yMuY{Y$0V7vvS=_v>(rv{4 zj*Lp47TVGZB@3R?=m{b4l*R$^gTd71PP*;6U#7SxZ;i_PWyP_@`y6fVnjiKjz&$=2 z?BLXqS-O$L%wtvlY|84a>Nl*Fqq9?_Xw7$0Rq5=#EoSlgENiZ+V52>XU$QzFUz7D8 zii5HvWDIvP;s;5ftHJMp?qvgDqi`{DLml|^Y?r`6OR|7YN4f+SGyM{kj(y24P*EQy zpaOVtVb)%}qRsJrPj&#ff=y_;R!WLqfQL4-(29_a4{gqF5|^-ML6b4>7<9NMyw{`* z0{8Rr*DS=Z>zR!~bCN`}@#|d?I}hdYY$%ExArC7y@nOa88R}uhJ+6by?d5JfxR`ce zlY(Xx((Q3wxBFjqG&@!gHgH##- z(z;*`z{OEklXvZ`V)f_6WrFX&^ltbOuLRoa-OxJPdY7n~OWOEi>aXPG3Wkqcn1dyM zzoSz{ishmkLa6Sk2{Lv?8x^?Oz{L?fcI;b0vuc`I|8MCscK?(Co{i%qWEIQ$*SQjI z^>%>}zp+}iY>H67g#<~OJIT`;dz@-bZJ@%@i3XaCVr-xZ3YrrnO*c@yOqJFBA^&pr zhdln8Q}8SO;arK1!>@Nm9FJCTkPNkJ{5mU_I!O4banx7_$rp3@OhrWIP}`O{%;ywX z%-MM7^NNti4a!lQa#adt(PeiB1y;+~5tFxs;I`9vh{vnIdytAdM3fO*zJp ztM*Yz!+UXFO1vbhzjuw_U06|xPe6Es-X4+kG`?P_IFjBMM?mR^f;QiyqpzNRL=jT& z0haEO8e`ELiT*nPUxR0-(HeCBhP1b>-chegvfrTl>HW^(sw5EDnny|X1qk&%q!WOf z1z#YPcLHw^-UONmQkwN6K-CuMU6f0b@eIXjE07pLn$y;ABo`2Pg4dSuQ}lI*jC(1L zSB{5d<6}O7p!86@o{wMQ-msJQBQz9KEWDw5hd1P=&1si0E##@k zN79$x05T*&9jZ&;kXvb& zJWrJbA`*SKTDNn&pM0&|bCi6i{b|@Wd>$T_x8gZ?pMOFn4b?w zu&$5v?m!>uJ@_UAw9mx{ev==6Sh8UEtHALwiE}wGX7Oc+^eT1-&69x$nJ3~GJ?1^T z>As}ksZPt)UyB}E$=pP3Lgv?)sMPolnSV#v_Ds?mcG|S=?}*k=2dy<#q;)ZBr)X(+ zN;y({Z8}psq7(gRLZ&M~hd$UmRkdCqs4Vm>=-4J*iG9~#U}Z4xVSF`kMa_bz(p`>mz*lk2; zc*EiESZ3_6)N^WwxcsYx^1rRb7R!aykXoOKu4)>)t5^tE3A4h&ZB<6F1sWb|lU}Gu zW5!ooP!QjUrYX`b>}z*{^m6&43N{5{dGL(iQ#GxwMR@1ZQ)rw}-&bbfp&8}B%gFFv z0a?yRD)?Mz^Ep)UNuH-y?v^S<$!8e&V3@5f#4wX*mxS0)z}75y*zn`F=*qg~ZD?yu zH{OjKS`P@~WuqIKdk=zxB(G~Y@QX7!2T$Ly$2FJ+e?>4&)KJH-5U&h&jrU|Ul(&+2 z^X?)J=X7@{?G7{GrO~8wTwQK2+HKDmy5a_@H<%X%yw(W2Z-M|=ULtXfAz=E(5=o>M=*Ah#f*k5Qlk<=DA0A2bRFhgs>eD!-7 z*^)h1SP#520_d97w7@}dPtE0s$eICVpgJ=;LyBXBn(wP%GZe~0jj(>lGd*g&j8(my zDrBA{)ZBq|c;+0}&D8x?TURHr0UTZ%`&#scsOV}tNBrngELk4`)>*#)yOz=0MYTGf z%aHPORQV>BZ@V0ZW;Pgyy*L-6$f16lL#%d+4}nZk8h>RYApFD}_8Q z&`K76%-bce_SixEjeIxuKdwSHC>(6e)j+Vevu$b5P||LNIB@rLAKdzd)D{T%e~=a> zuS7}JBSPj75L7)OWR3wosmDt%8Vqd6{5^g_@JhA|nFU<1Ym&Gi zIRRo~G2kBwdjd7#>s3GwCo*LdaU<*2Rqr7l#44&i#3tgmG_17i`5CL^us_lTs{bMN zgn_~LA4|0VW{=%8%^a*>L=}a#p*r|uj6*)!JCW~XWV*%5l(*O6+}kC(E=i}0JIUVLe} z29Kb*mMw?mP!laZU%gS)n>PMv+W6z+qcA{&<_-uMFO}f?3>HZ6O$Mh*FoGb7E$oSV zyj|E(=f+|Bsrsm0onmU)(Z#5+XzMPij&!jlv!QxUaq(&`&*8Q_hf$s*;_i?+nQU`H z=J|y9nBD}!F(Gp-;aRCnzoEJuIuxcgim9}BZ;NR=Ey7abP+>Rp#u`P;e;~v^b?xiA zN7L1_k_}t?;LPN6_@w9v84dm4v#iY=#oC@jST@?jQQw^7Z-Z0K4aC(aD z(pMvYceFnUNVD60btp{x_K10=7CK~lF2=ZOL?4~Ezu2vKKRgQPef!Ir<}Tiz8;RNo z2d9yn3twKsO$L}KZ2G9lAI(=_OY;~dcW6?i8R?K_V=-E;Peb|`mk~V_lGT*q{T=3N zP=%eq3)}JB_0ER*Hoa+z9?d+wHErHvJEeBwzEy!<#4JU5{w3Eltzo%MsE;CK>$y8} zN9z?K=~sh<(24B{Ife`yyWvTj=33Uv(O0Fi6CE_)_ob>nEo5$nvQgJF8#dU4uIPx6 zykAz^)f+5A@zWdLvWuOiirGH2@PGZYMAPT77_oNKyV3N}TcA1Kt6|w8P{A$85;BJ> znRYisZQ_4pJsg$mMuk-<;-awDBInsvItXLF2{h_gprFATL#XFGzM-`-M3;E0nDVVK zWEcYz1&wD)fd^*fMqH6id*2!rGZgdWX5Z7CX!fhXTKYyu?oO(gVH zfP`e z_EWZU#ld&uFj1zK)N}WkIaDD zYQOUT&LS}}_~pdlcjG{#t?v$R&89Bik@3KnN)+p(QJa=0SpI7hIyopY2Z9iY>$Sw+ zkr$sjtnA2(hn0D9awg}TEE|tGb!}%KCrr|RhZqx8{ z4S&|K-$APU$r^ezyi`ML!x)eKRF#zb-Tv8pG@-1r6wj2qeN|O>V7JW2uLjFSG^UpO z=IP8sdKq{drN648)ZmM8MNaDhcDyzg1O`;Qt1AjG$8*4VQ{HTMWkr?WJpiAi$tdM( zW#{v5TL8}*&GZ#lRQW&-^;Iv%FWgsoN4}XQxVn_!;;*oI^fD6YYF{bt$PFB%Dn#v) zg#3A=ijx9-cRmvEltq@RuFjPpQczgvtF(#m^>uiazItw>%2$kP6rlpXxqPMP%u-a^ z?JJm7P*QIAW)>6`BL%7|FPI4p_=*rKE(nzR0ip9M0dopU0n3W_t z$bG}N`X{H~t>a%Fk&GYt8|ih%?;&0OKuvf1f0JHkeEz?VANVWn`D^tr{BM^3HTu6b zeN0OK`mN>W{)go(`rT9d-BX%g!Y^ZmZ+A-v}+iH`i` z{A5RmnI*-}iC9TxXZcDh6Z!B>kdCt8xfpPM{Dj{;8RGWnThU_CXW@o58$dpXVik1g zolRq*+tIT=nbHYOCPOFH9Z8!+SHAAzqlDEZS7K%?LWx-=)qY$VA26?%F;3p$g4vc+ zhmSo%%~F#pQfA@Gs){)!MaY3E6SFnm^nwq*mEsLCoJ`q8eY}P~#67J9cgs0-y91T( z+_Bj*yBc(q{!jT&GX|@9>naWJ(C}FeU)S&p4ZEJK@*kn$a1GDXaHfV=YM8JS|B?T6 zG94$?WV#EWW#uaa3fapzxyU!iSDHwaXhkKu4SEzTjQ%Us9~1(FCs#2GZz6XWRLu&M z`QX$!{GG{_zH%BU?YQag;>N?L+BtKJ<20b!Kwol5_j}F9D({dnxiH)!dW8JyARmXw zp`SNo$dF#Wj4AwhLVNUtii)C{^L@vvs{CK;pDTx}{q`p#`ydR_`J(FPp)Td?&O^O+zYck z!10qWp6R)soJkoI^QUA^AQ(R}V}g;IMlyMmGRJ1*W=@`juf&XFX;RE2>2aA8GILQh z*E1zommHTdR_DkV$I!H#%v?`?j%PyV6tDv#$CEM68CPGQ;Rk1QIWSQXrr=*LKUt&G za=kg8Dc;Ew$K`t_d2%LP2=tWPjGWy3jIkHwWlqVYl!BX_-44ZUWIj2Mva$|2d6QT? zH;?2sokv2Oqz)|1aQ;Nkc)Q{kPRhv29Gjn$F=>LOV$DueD?G?_ zawfSUG$q^Pp%y*UGg;A`sX}|=0wnK`%zSG+r`_m6+tooi;h=e8`iNk%b=5?uI4Z z1jO>kXG<+qZFMAj@-!$yv&k5nn>iIUrHlt8JSjaW(f4vaS!@OZDm*u5GV3By&s4M$ zA{lwPlQ{;nF-E3PmB3BG07OINkM%%}(%pa@>-C_$(ezVv*PT2*7ke;JeNN_t38;cK z(#PwOPGf?*A8+Yi5`g4T~%)@fi&6J3_(9r?;Ds>%wmPC!2QK>7d_A1k}_r|4};%zz(;WGc;+}f zFk9rCXN<$LRE4Bl7-(7fj)e7%YwN?&^1bLWXlLw~1-OhF;?BjUWK}^qcPOzKqGvLc zG7ld*)IC+NdJKzRwR<+SH`C`Um#>Y^f;N#g01=8y$`KjJ^&GL)c&fIfxTH|llc=60 z57v-eyPd^#A~!g(QnPxV^rr5YXyvnD zMp1G<44TO)a#)`Q z^SQIJxmN+hqCfhDJt_Itm-UISYV~C=%xM+wYJ5wq7%O;85S-HFt6}ZS4Ja)RfEjFa z5hhWT!S}`_>p5;DSt+nxFu+)e+3mI5+Ul}HCa>>{PFRCwzp3U5Ix-HQKL;a@c$ ztK8;`6@4XJsjnE`f-PXt{PKb_*j};f#<--ImV4Y~s(j6_z+cPvYw7=8`oC8GzngB! z&vvE%!}+_ov|tuyWAq#==Fn}SoJ|>1D&cTw^pO{zHmq!HDPG5mXfA@>q2Cg6pW?xy>lXBF_D)tBV6To}+*`n=8Q1 z|0zW!)r9V0LnqAi{8#-8e!1Q4uPQ0ShrQ@LvGtrNK@?U5;5k?EJ#N39KKIwP52NW; z>9@_nALaW;jLb51m}^;sa-V;0Mb+hQy!i+g2Mm=o$UFxnb+Z{`MfE3E+lqEindZ*O z&U9mwuNq{}at~CF^PnN_ae6Nsxpk(g?K5TKQ|5fZ3Xf6nL0{#sss`p(phbfeIw;+# zI348ekdxJ4u!|)xezEo+Szq59Z)E&m+lMT;K3$snY7Oty@Hq|N&@ifDw~)$zq=u(z zc)o^(8eXMgV&4Cc_Q|Kr$u_3?tBk2t#rRikOqnwY@mbaWImXn&vda9@QVpw&!U7$x zDmAL+&CIWwDWG(w%25R(g_ZbMZcHtyHvZuFb9*weW8t1!QYAJ@Z&f=os35koCr!@D z%9v0_`u+=eTVg|NJ;-x7K%>GM6hj#2M!H zl;HI$uveJ1Ew^U)=|e9c#7%R(4jQL!47j;YlBJKn!eFKAbqUXc_^L>2buw5jifM+e zoED{QYrKP!m6kN|CY{IWdl}U*RMzzZ=X5i~T6bHN=)&NTf*ucD6Z$c9I|g#KJZKO| z1D31BA*wDbKe77z+%j-T;Y62I zt2uut3b=>yXE=XOmGTrut@+{9RO19xd54mQ8d=+ns3_l6q;@olF@xfIkfZZ+w)UxR zWVIkPA=B)b62GH=$vaweWri=%mzC6=BrN#lw$fSdDRj_tG2g1bJXj$dez?`gsqp`p zp5@d#iCOgI)1vD9WU6e3uGHCDT>(5 zp<|M(eHB|nN&8#qK63or&XusUJNvi40Jp#_BWryfo3FoR4=I3nR$7MjeRZVC4wesz zvnuGQp^|e8O5p0kexi$@s#YPjpcn_A5!SkwF~Q0%2bK&&&U*)1a z;CXo{59kM64EV>XC=a-48p;DcGacmtUj;OJ7{+s#pgiCKm!Ul1_kc41&&Wr4!0~|f zfW2{PwGr@bz-GYig(%aW`NuT$oP>3;@mmJQuh57Xu!QXC>+Z-vw+0ycf@( zGy@L9V^?X=W-Z`Qz!UJu8m{dbN8(w&O2F3umjf16w6(1Q9EFFjn*g)$7k^hGES7zSJg_|RgM2fPk1;%Wh$eGSUvsoJf8Ljkwd zpgiEPr6>=Wb{)zy9dH$3^YthX*cL*0z#nf!c|2wty9wn1CoD&Kz$0%)c|afFa==q> zMR~xx0Gj}xyaVL{$KTi1*1wNooOFL%+X%ohe`;%+4fqP+GQePcTiZ&&n;&Rv+Y0zO zU=;AG2iw|uxbU`+hyI`Tu01@e>e}zjU_gNo5otis__+9vK^|g79Y_eEfkX&Uui#_c8k27=5-nM-P6>TL$HTj^DyiopIZfc$X<`a z9@2UY_K+V!b}Cfr{ME3Bd=YXK^>>&eBz#eiT<{P6=XBy7RVVd!XEO} zO|b8Qa)vwuvU)Sh4e}ny6lCyalpAC>$hDAFkZq8ULGFW`xCP~YJnAK6DdZiH)sXuk zQ;>^ag+1hxkZU0~LbgGE2)Pfk>NVK+L_R{6LjD4>8uAUu6y$cu#gOZ_!X9!nWE*4~ z>+nSrXat9Tnu^sTd;?G3bGBd^Y38~nS2}ez0hw#mO{P-Sq=FCWD0T@n=SDH>?oXK5AwZeJgLh3L=gkG_T;eJ?1i zC@8wDTj%RKwW>>dUv$=h(@r4=;owK*$R0>$hM;d zn0N%HI^j_GuYk{Z_@u*kLHv6U!x%#8HTJ=$1EfIdq#fIyDzojg-S%}l3dC1}e*t`d zHy_XPaqw?|U*P5g^PKSKgTJWUwqN(~uQ>b~@H@c|^2D#yiQiW6-&EN4YZ$w-@qd{! ziQ=~h{6k~#>bl4O4;=qp;P+49xqg`RN3-!i2mBuJUwiET=Ga$)e`##)dJqTyO;zrC zFdzJHs%^Ws+y8`Y_-nv#0{@w(o_xyngwnSa{B1S4!`}n`*AsGwPxWunMBBd99saCr z_~(Fs0zA6tZ2n%JXvgKi$LY3QYOerGrvkr{H~J55L*5KL`A?;J11B zHyyqb{56={Z1V6M96k=dv(>);b6_(c{5tS=y3<#^D7di0f}`f=-`FwO%1I^f+#WYT zzZc$#sv*GC*FcpM-gfX~z~ArT?{)Zt;J1SRhll^t;rn3j_+TyiSP#G2;fI1B5V7s0 z9)5|#PX@mR{2vgG6TjeF9Y}%ldp7vmm~D4QyUg-koqlr}_zBn8_K6<8m&0!WKYqGx zFY<(cn-l(a@GpTM<_UkO6aGQ)pCoO&)}7zMtDXAP2mMGtEcU`XMVtH$KI4Qx6#T|C z#s^RMS2^KNrhX`cw@*F%PKTcj{&n!5diakVei`^h&9?oqhu`k-8^Bl3$Q}N6@Qc9* z-1!&y*0DbbzUeyKuJ`z#=J0(m-aHTfBTxRk=j6{&@H1(hI*Bsj*G~8wz|(5Kdp+U*)d_z)_$TMu_SGK# zN{2rPelPf3?YR%e=Lc`J?aMs&BOLpo;C~DL4Nv@Eb>cr6{Pj26cAdvQ?AXr+zX^PI zPyTdu#{FgBpPpyi_o1Ae{G)MyArEQfmD|x~==ED<+kYm&)YHHY4u|@cPr>g7|2=m+ z$GG~Hqd3ZB&Hj4e-s!EycvG4H$KQ{fcn<_W=yu!Q?BRdq@HOE72)>g$ykOADmkjt# zKh525Edl>`@OOFq-|qNd2Yx#4bzb)H*>PkW_`)Tar+C8e=Y+o>{0Vnrobm7_4&MX! zekFI=c7caK+TjO+?{hciW1f1M@6^j0@Ew=h_B2oYra1A(`(|o1_zI8zVUGVL;FI^- z_8gDB9*C*mTnGLQ@VWZ^ZQuj<+4g*o{g0jS_k&M>&sBasI^&*tnQia)*za}h2ZG-T zK9~O*@Z)grnTyYWfAKK<67Xl?o;8>KI`DTLhTjH0fP37Lo_00d>38;nKl1_G{?e1a z&zxB__9wXciCKOL_`iT}bn}4* zCw}X|4}^c*s%P8h=&b!V@TY)BGP8U|mfsJ)>tXmF`0d~T!p~(t5d0_LajTs5KPKzH z2K?KHNnZwh8+hERXYDJq_DjHT0>9kN2bQt|*MIPrBL0_n+Ruef``HG53Vx%g@wCq> zr+w}RfBUN3;rBqs&IO+woJo=*lp34F-SU!N`K+2F4Of0dgL=!QV$ybSzP;OV}{ ziC^#$Cm%L|zXZPxAsJcT)eg3UKL`AIZvL8V_y@sX1U~HM1Cz7q$BoWx@XI{>-3~t# z`~mPMyLoNS`8yf>KfxoIZ2T_EhCdtpF7UbP$ujUe!C&jP59k|e%AXD3FIbnm9&QJp z0N=xHuWt`@`GcQ!7`_i0=tS_j@^>isa`3#evZ+78KRESxGBxmLbJvgA;P*U}n_mY0 zUGQVw@ek+%=JbQlhyPRDydGvbecQoz0-x)C_8|Dv!OwTw2eRX2A9QecfPc)xKa?$h z@O_`l-A_&i-wAxK@|_JnAADa=KUU=A-!kw){1%z3AKn1|3)nyDiQgJ0e%ry%f&DHI z|B1sN1V8e5+aB%V%N@QCe#=aO&lUbq@K=G)mA{k0&jR1-@vl1oD!^M->dYvE!J6P`qHs zu!7QI1!oK|C>~x=1pVO!o%r|6mGF~-AIgR!$B`U3k^@I_;7AS}$$=v|a3lwg} zIFbWLa^Oe~{Qt^krPGMiJT$w7Lj*}d|2eOB3}{tj>w%NzZRKaAmNMbCvvdJ3Xu~<)`^@U@)nVI ziF{b(vm##+`Hsk)BEJ@yFYTwN$bPQ&L~V#ZC{x?iL(VLGO?o55r&o!zMAnL|7dc&I zlgL>j=Zd^V9gGvXVKcM)GanVTesBlK(=k_0rpUg_qEsdG*G{{VomJQ|%i)BWeQmO>6 z2S!VV4Ih0jRt1o&`b2ZdwB}ema&9c5O6UqN`ZuT&ywL)GTH^g7X5^JM&xHl92`kx= zft;n{8C8O(x$&LBny0FS9_tKU(z*WU!u3!8q*tADgI{hb#-Mwx!mi+6U$2QS`5wMoC?#k;CfSGzJ? zP!%XMt{9AD5Zg*t%Xs6(3su|OAveV5L3OM;@Lqd(cW0b(8wJ&I&iLfTd#HWw^qWC- zylSsM4XU2%fIZdig3p7BMwM_oc##TW3nBjzRJ~Mjpgr7-rdbPW#~sw)>@1?sx zcsM_E&u`z)`vbgw=-IWy`MKz}_WdmRiPsP1cYA(@fXGAr-?3NgLyZr5wxqrKKxBJ< z#JTGl{&)-qP5k|J$Z;a$ zT@~%4LB}rs#`7qG->@LW$a2Al2|jza#`&2baN`88dQju@ML#TfO8nq2NIp`6-&Y>u zYicKS{E%^d?*6_VIHh;KFTMAPpK)_TtiE52elB=ujmB}w$FBr`@Dh!`DmXn$O!+qA zryA#H6~NKfy@U^3uJQ9kf4AWNe*R0rYehdS`n3I5d->lD^K?qrdP$d=fA;}S;a*g! z!(AkP&Jz8Q=;JSKJ}zLqNEQ0>XRP??dwGcU_}NmNO%XhQkj9Ol2F6*{^Yuga-%G9Z z`M+KKoOGY|!_PLra;4z+Ua9eV@%FgjuRo-5Q$IHfzILj{`58&rye0S(_iOxGV07#j zd{BLeulbooob4C<9r4fq6$8&l1L6FfrSG@jsDMAUzA*8Z4UhP9Qa4T zslM%y^tOtx&siVirsVU7Cje`FN<8t8= z7c+k7yr@k4Oq!(qd@MFs2>$zfHEzmf3UEr-O}_eBEBX~TYJJl$HHrSlW4z@uNAzF1 zUF#P}xbp@7CarOPwiMj`fAnnsK>si5EnF$paxqP5j@_p}#i=PW#zY{+CI= zYWkKwz^Oi0`|3|W(SJ?)6MjYKdr)6iJyTZLX7aU?l_wy_`C-+ zZqk($e9a1t^RqM1zk&VtQq@vkrvF(e`hgp?zA3MzqQ67h(Jr)eI+lxmVtk0N`Pp@x zt!Djhs_l7=qZ;$^3(;S^QsXBI{%h9nrDpot={u}1N-pt*_*wsm_G9|7?*v~c@!u>q z^ez+CBD-GH02bGcWiFy2)?bDj3j&jv$bkl-gR)HpvA2z-Lzzn1v$Gb+HR30^Gi zWfU+v;)0(pk-kPFa4+a-Rwp7-%FMH z+Ucu|7pYyoa6b?~NlDje3FZsd&)zqg^8Hr)&-3~3fPt0rztxxjJq6$F)9)+zR3Baf zoZ8)OQlEQBd@d3Fl<1rKTq*cQU${-;=d&M$*aJTsjk9@zC$85xKa&mo4#C&2*0`x} zPcRMz-?0%mrFWYz+_!V+e^I=?Hjq^Kn1OqRI z^dF}JFKlPtTPl8L$^3zzeT4A^g5MzHQ8#gTx!{Elh8QvRe2U=xWSlbnc7$;;c8ONe zzj>whWAby6;GHkiIKQg{ySsDvSuOe#hHL%%p-abR;M9&Pef9Zu#(SxZuU!6^!~f^v z|DGu!_RH^<;LH}h=^~9cFsoEg{BTG0^F6_*3r_2A5Pp)>+ew070G#T{Dv1w@n~!S2 zcgXl?`rEMhd4E-i_4rveoMDx!cKfj##Lqpx^ez=YSI*FW_}vNkc}(zoexUI{9zYx~ z2>#cbLVRt;g*OH7A>*Ja_YVaBv9zygY=!3s1us8a`{8#Ri9-dT{P{@wNzLMUJm8c+ zJ359*OSSSh=8d8si-j2BcUo|Ey5NN^8s~R1fDaHnEd6;6TVcIe;8aic`RYjx1!0K`Fv&H9!-esVAIH*|b_ZNd5tY4%)_0^Nl#m{1&A9_fg{IspseoVP^>#Ff5 zWqy0C`0p$Da_JvTJ31XW<fvq zb(i*I;&UhC;?yM`75y1EYyJ7cZ4f-~KQ+$p_JMmv@Hr(KH@`e?&EbDX4xHYtXs;f2 zMuaKV%0a)!WgxYWz#_(@XF>n>D^! z@H2r^y=}wpyY8bz^b0Q5`rCxOQ1G{I)VOJ<6~L*y+I;D{R`kCr*7~oDpBn^!;Vg|$ z5qydGY4G{EPxON^tzRelkBWZ8SD&8{oOTta!?c%;;^+MbLySMh-%7nHc+a%P|19`> zfEc07)|MgG7Pg$V#O+D#?j+)A4$7GGKhYvb>1E+jjFX=V$JdgFY zj{AF<`00E_h+%#g9A}j|^exdpM)Ln`an>OCwjtUNuTcQ*I>A4b`9MbW=jQN#m+1dy zp!Q?t^Q#5lU8eE1;^!&gbRXgGC!YsS`7pJUF0WS6-z4}(U-|w{{9hl}{`s9_*nA}T z_hcM5^>(-5bEREhDgOV?xLmkICkzS{pOmj2o+NnOhxZ3g<@@5vA@;&+e&B2<<1WW? zTAc&06+a_}hFJ4e(T@YC`0SAUY0J|@Qw~43il4mUAyzc~!+q?hNR|8g^VOnXC-r23 zcCXe8{$GQ&A71MM9IZb@>1~sF$RyE!SMa4WF7w(S;67md(EnjS5&Z_4w@(*8s6 zCKe^uTa-ph1`ilG2%g(fvgrSM{qMVlf7F{=l>Way(%jhC0u$GjMSt^qROxT{=0vQP z*Il#fuz5)uDX17-Iij*^q*YCOrB){E9bh;;dO$!ro;FL@>Qz2rbqMD8b1`Pmhf3@T z$9Yvjo4{b7pmJoE&N(?BSy?q4n-*17RPdfYywMFbJV}Un0bV^%S><|MMUci(V1eTQq$IB9zSoRPBS_v#auIj{*MTJ5O z`f5-0(TrZKuBr~3Dy0>#`&t(YjjS9!yv#bkU7i}dIo7oHkD)XKGgPb#4=T0#lz{0Ue*}f21RK_SZjt}i54-G#h7``{H)2e za5`2?DMef|O$k(1Z)n+)p#n!6!E)Zn5NGAi5xj7xjt5qGL=kb0xYk|N*^hW)(M^kT zEiLO`*F+N|WA$OIO+5l@Z8u@%M^>eEzjdk7I*QRTVQfo@KvT`}bks`4W=7){79_PA zlQW{eG*TJkai4h9!eW)WZmC$>sic$uTGSCGRNt6P=)9(uaoG%OoNT06hAd2@7txs~ z%hO^bk7xu7+|q7z7FLIj)wNV&i$x?lqZ%^FMB1BWXh+y^_reRUbQ(LaxT@;~NFVJY z>{XAXQ9JcIk_ZJ$@$*vRQQEu;^;znH?8j%-rRu{7muhsaUUbyror0rru@zMyf`1#Dbh;kNIMWt^{;WCzXG|0+ik1l6#$kCbT_tKm>OnbveSchr% z*f<7j$$KrN{pct+hGPjY%?@=7KqaTXW;pG9%2fx8h+;zrm2SbFn2laDEMaM3M*va8 z73Bi0sG3~>bp)@wwRu~rX>}{3ZK&G zbahHKBvD)RQnzGB+cGCpzUp8W6G!hvtI)E4#}93hU5AMKYMgG<;Ye+^U311Fc_u#N zGfmA{H@_)5Cfb<9IL6sKPIpC=71?f@m-R=zpnXNT&!P>o$J3Ug8D)*G8DnLK-I_62 z@;?#fHEzj?r>TwOy?hky6+jKSIjs_UjZ_PZI-44gc%a{Pw{vTB6FdI&a(Z5nbKi9Kp1jB8#WU#A7KEr^rtq=XaEur32R33R$~6&=kHpxB0R}0d zT?$ir;ap2EQ0#3wP#GSbMjOV}Q0IV43sp^}+8LYR-@686Dx=q-yBQO=OrEA5EawrQNVdrM=-6p(6$u3H8PY?g5fxR-2iI%A29Wki1A> zA?RcpeSjI?oFs_?+DlU%_TdfA*A+d(p=rx>UkaSD9wAdj!~*=4*l9=U#_h{-I7NH1 zYNKcrTy*SQ&&|1nsN1V;@D~)1EnZhM(uww3BHy4yWN#2;Je($y7KRv}=zCpQ79NI{ zXkbH!+U7V7ht7Nfi80MkcjYqVp{ncI1$FFcZlBrNQFiQZP8n+zX{b%bQeiVlC2Cu0 z<7i?Lz1;%OMQQ69%*1GDK?eBeXi^zW7laYfQ{^eqXhO6lvfQEk%c7>ukSOY9&A8!7 zWN@qH8W%YZsTOZ;nN;gYaJt7eCun5GUoSy6QwAajxsK4c@k={lJQ`Ur4j~fYvTl9#+0{<}# zhS9+TbxX#CnsUw;2~WeME>F~~{-yQq##xn!x0snf&H1Ad-o;qyO%IjsdZjN=b&2Li ze>ixR0J%5Jb+;K$Vrbx*5G8i3-a5zGNrSM_Rpr!GkfE7T;jV-F5Q6w#*WwcP)&uFk zXu9StTQWjdLQ`Y9U5R^H8bi1rG6OAYEKP!FUN7|xo)76>xq0eoAx$H7woph&u@yxL zggO6_93%;&6ox@5sO&wCg{_u&g6O_~sGvQBbT8+Ps7@_z717zE6P+RV%o=th6rMCD zJs^4gq_Fk5Z`NTdjjE$L34RbjIufX-UPDTqX(v{OCit%`?~Ly_YRwUrmv~LD3-{6Mw?!n1v7J zsj)Zj#}pk+Z1(*_6TY!G>Awj&WIvpgahUgL==mNx%=?IB-vuAP{X$@rCz4&x`!=gc z8Aop|oNo%tecXx*x4n5UhxQksW2#A*zQlhB`Y>_{F5UL#x$aW@Pew=gpJ{2njh(r^ z7bk9e^PW%n8m%GOVAMIUoC}<+z=!NjG|l@!)neazCP>#|^3Oo4aN@Q%?+vxRtu;VORbhtbzp z*=vLE2H}o>_I)Zs72X$N;d~i8Blm-G+ne`GLV4P7n`5a@ihbArjcf8{(qAn9m-Pr} zd)lwVeH6Pda8Ai2%~Bt3?9cV#+N-u93V)+HVY^j_N%-dZFvA&p_qAy|1|wM=)S4Sl i)M#IbA^4blGyNB}Pm^}7slN+P(e``sKa>0LhyOn<;ojQ- delta 31680 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 QnHVYF(AD#h<40rtFKy0jod5s; diff --git a/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_virtualSlave b/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_virtualSlave index 5aa6e27cc692bdd22e5cf4f2d7f94a84cf8a451b..30fdb33b1760e65bb33c3ab83145aafb6c4d0c49 100755 GIT binary patch literal 81024 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

delta 31680
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
Q6C=eNx_TaR{AjHI1dacs = detectorDacs;
-	(detectorModules)->adcs = detectorAdcs;
 	(detectorModules)->chanregs = detectorChans;
 	(detectorModules)->ndac = NDAC;
-	(detectorModules)->nadc = NADC;
 	(detectorModules)->nchip = NCHIP;
 	(detectorModules)->nchan = NCHIP * NCHAN;
 	(detectorModules)->reg = 0;
@@ -1782,10 +1777,10 @@ void readFrame(int *ret, char *mess) {
 
 int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod) {
 
-	int idac,  ichan, iadc;
+	int idac,  ichan;
 	int ret=OK;
 
-	FILE_LOG(logDEBUG1, ("Copying module %x to module %x\n",srcMod,destMod));
+	FILE_LOG(logDEBUG1, ("Copying module\n"));
 
 	if (srcMod->serialnumber>=0) {
 
@@ -1800,16 +1795,10 @@ int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod) {
 		FILE_LOG(logINFO, ("Number of dacs of source is larger than number of dacs of destination\n"));
 		return FAIL;
 	}
-	if ((srcMod->nadc)>(destMod->nadc)) {
-		FILE_LOG(logINFO, ("Number of dacs of source is larger than number of dacs of destination\n"));
-		return FAIL;
-	}
 
 	FILE_LOG(logDEBUG1, ("DACs: src %d, dest %d\n",srcMod->ndac,destMod->ndac));
-	FILE_LOG(logDEBUG1, ("ADCs: src %d, dest %d\n",srcMod->nadc,destMod->nadc));
 	FILE_LOG(logDEBUG1, ("Chans: src %d, dest %d\n",srcMod->nchan,destMod->nchan));
 	destMod->ndac=srcMod->ndac;
-	destMod->nadc=srcMod->nadc;
 	destMod->nchip=srcMod->nchip;
 	destMod->nchan=srcMod->nchan;
 	if (srcMod->reg>=0)
@@ -1835,10 +1824,6 @@ int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod) {
 			*((destMod->dacs)+idac)=*((srcMod->dacs)+idac);
 		}
 	}
-	for (iadc=0; iadc<(srcMod->nadc); iadc++) {
-		if (*((srcMod->adcs)+iadc)>=0)
-			*((destMod->adcs)+iadc)=*((srcMod->adcs)+iadc);
-	}
 	return ret;
 }
 
@@ -1856,7 +1841,6 @@ int calculateDataBytes() {
 int getTotalNumberOfChannels() {return  ((int)getNumberOfChannelsPerChip() * (int)getNumberOfChips());}
 int getNumberOfChips() {return  NCHIP;}
 int getNumberOfDACs() {return  NDAC;}
-int getNumberOfADCs() {return  NADC;}
 int getNumberOfChannelsPerChip() {return  NCHAN;}
 
 
diff --git a/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h b/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h
index 6200e38c2..4a3c167ad 100644
--- a/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h
+++ b/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h
@@ -1,13 +1,4 @@
-/*
- * slsDetectorServer_defs.h
- *
- *  Created on: Jan 24, 2013
- *      Author: l_maliakal_d
- */
-
-#ifndef SLSDETECTORSERVER_DEFS_H_
-#define SLSDETECTORSERVER_DEFS_H_
-
+#pragma once
 #include "sls_detector_defs.h"
 
 #define GOODBYE 					 		(-200)
@@ -46,7 +37,6 @@ enum										{E_PARALLEL, E_NON_PARALLEL, E_SAFE};
 /* Hardware Definitions */
 #define NCHAN 						 		(256 * 256)
 #define NCHIP 						 		(4)
-#define NADC						 		(0)
 #define NDAC 						 		(16)
 
 
@@ -90,5 +80,3 @@ enum										{E_PARALLEL, E_NON_PARALLEL, E_SAFE};
 #define SLAVE_HIGH_VOLTAGE_READ_VAL			(-999)
 #define HIGH_VOLTAGE_TOLERANCE				(5)
 
-
-#endif /* SLSDETECTORSERVER_DEFS_H_ */
diff --git a/slsDetectorServers/gotthardDetectorServer/registers_g.h b/slsDetectorServers/gotthardDetectorServer/registers_g.h
deleted file mode 100755
index bda9a7bbf..000000000
--- a/slsDetectorServers/gotthardDetectorServer/registers_g.h
+++ /dev/null
@@ -1,315 +0,0 @@
-#ifndef REGISTERS_G_H
-#define REGISTERS_G_H
-
-
-#include "sls_detector_defs.h"
-
-
-/* Definitions for FPGA*/
-#define CSP0 0x20200000
-#define MEM_SIZE 0x100000 
-
-
-
-/* values defined for FPGA */
-#define MCSNUM            0x0
-#define FIXED_PATT_VAL    0xacdc1980
-
-
-#define FPGA_INIT_PAT     0x60008
-#define FPGA_INIT_ADDR    0xb0000000
-
-
-
-
-/* registers defined in FPGA */
-#define PCB_REV_REG			  0x2c<<11
-#define GAIN_REG              0x10<<11
-//#define FLOW_CONTROL_REG      0x11<<11
-//#define FLOW_STATUS_REG       0x12<<11
-//#define FRAME_REG             0x13<<11
-#define MULTI_PURPOSE_REG     0x14<<11
-#define DAQ_REG               0x15<<11
-//#define TIME_FROM_START_REG   0x16<<11
-#define MCB_CNTRL_REG_OFF     0x17<<11// control the dacs
-//ADC
-#define ADC_SPI_REG        	  0x18<<11
-
-#define ADC_SERIAL_CLK_OUT_OFST			(0)
-#define ADC_SERIAL_CLK_OUT_MSK			(0x00000001 << ADC_SERIAL_CLK_OUT_OFST)
-#define ADC_SERIAL_DATA_OUT_OFST		(1)
-#define ADC_SERIAL_DATA_OUT_MSK			(0x00000001 << ADC_SERIAL_DATA_OUT_OFST)
-#define ADC_SERIAL_CS_OUT_OFST			(2)
-#define ADC_SERIAL_CS_OUT_MSK			(0x0000000F << ADC_SERIAL_CS_OUT_OFST)
-
-
-#define ADC_SYNC_REG          0x19<<11
-//#define MUTIME_REG            0x1a<<11
-//temperature
-#define TEMP_IN_REG           0x1b<<11
-#define TEMP_OUT_REG          0x1c<<11
-//configure MAC
-#define TSE_CONF_REG          0x1d<<11
-#define ENET_CONF_REG         0x1e<<11
-//#define WRTSE_SHAD_REG        0x1f<<11
-//HV
-#define HV_REG                0x20<<11
-
-
-#define DUMMY_REG             0x21<<11
-#define FPGA_VERSION_REG      0x22<<11
-#define FIX_PATT_REG          0x23<<11
-#define CONTROL_REG           0x24<<11
-#define STATUS_REG            0x25<<11
-#define CONFIG_REG            0x26<<11
-#define EXT_SIGNAL_REG   	  0x27<<11
-#define FPGA_SVN_REG    	  0x29<<11
-
-
-#define CHIP_OF_INTRST_REG    0x2A<<11
-
-//FIFO
-#define LOOK_AT_ME_REG   	  0x28<<11
-
-#define FIFO_DATA_REG_OFF     0x50<<11 ///////
-
-
-//to read back dac registers
-#define MOD_DACS1_REG         0x65<<11
-#define MOD_DACS2_REG         0x66<<11
-#define MOD_DACS3_REG         0x67<<11
-
-//user entered
-#define SET_DELAY_LSB_REG     0x68<<11
-#define SET_DELAY_MSB_REG     0x69<<11
-#define GET_DELAY_LSB_REG     0x6a<<11
-#define GET_DELAY_MSB_REG     0x6b<<11
-
-#define SET_TRAINS_LSB_REG    0x6c<<11
-#define SET_TRAINS_MSB_REG    0x6d<<11
-#define GET_TRAINS_LSB_REG    0x6e<<11
-#define GET_TRAINS_MSB_REG    0x6f<<11
-
-#define SET_FRAMES_LSB_REG    0x70<<11
-#define SET_FRAMES_MSB_REG    0x71<<11
-#define GET_FRAMES_LSB_REG    0x72<<11
-#define GET_FRAMES_MSB_REG    0x73<<11
-
-#define SET_PERIOD_LSB_REG    0x74<<11
-#define SET_PERIOD_MSB_REG    0x75<<11
-#define GET_PERIOD_LSB_REG    0x76<<11
-#define GET_PERIOD_MSB_REG    0x77<<11
-
-#define SET_EXPTIME_LSB_REG   0x78<<11
-#define SET_EXPTIME_MSB_REG   0x79<<11
-#define GET_EXPTIME_LSB_REG   0x7a<<11
-#define GET_EXPTIME_MSB_REG   0x7b<<11
-
-#define SET_GATES_LSB_REG     0x7c<<11
-#define SET_GATES_MSB_REG     0x7d<<11
-#define GET_GATES_LSB_REG     0x7e<<11
-#define GET_GATES_MSB_REG     0x7f<<11
-
-
-
-
-//image
-#define DARK_IMAGE_REG     0x81<<11
-#define GAIN_IMAGE_REG     0x82<<11
-
-//counter block memory
-#define COUNTER_MEMORY_REG 0x85<<11
-
-
-#define GET_MEASUREMENT_TIME_LSB_REG    0x023000   
-#define GET_MEASUREMENT_TIME_MSB_REG    0x024000 
-  
-#define GET_ACTUAL_TIME_LSB_REG    0x025000   
-#define GET_ACTUAL_TIME_MSB_REG    0x026000  
-
-
-//not used
-//#define MCB_DOUT_REG_OFF      0x200000
-//#define FIFO_CNTRL_REG_OFF    0x300000
-//#define FIFO_COUNTR_REG_OFF   0x400000
-//not used so far
-//#define SPEED_REG        0x006000
-//#define SET_NBITS_REG    0x008000
-//not used
-//#define GET_SHIFT_IN_REG      0x022000
-
-
-
-#define SHIFTMOD 2
-#define SHIFTFIFO 9
-
-/** for PCB_REV_REG */
-#define DETECTOR_TYPE_MASK   	0xF0000
-#define DETECTOR_TYPE_OFFSET   	16
-#define BOARD_REVISION_MASK		0xFFFF
-#define MOENCH_MODULE			2
-
-
-
-
-/* for control register */
-#define START_ACQ_BIT      0x00000001
-#define STOP_ACQ_BIT       0x00000002
-#define START_FIFOTEST_BIT 0x00000004 // ?????
-#define STOP_FIFOTEST_BIT  0x00000008  // ??????
-#define START_READOUT_BIT  0x00000010  
-#define STOP_READOUT_BIT   0x00000020 
-#define START_EXPOSURE_BIT  0x00000040  
-#define STOP_EXPOSURE_BIT   0x00000080  
-#define START_TRAIN_BIT     0x00000100  
-#define STOP_TRAIN_BIT      0x00000200  
-#define SYNC_RESET          0x00000400
-
-/* for status register */
-#define RUN_BUSY_BIT             0x00000001
-#define READOUT_BUSY_BIT         0x00000002
-#define FIFOTEST_BUSY_BIT        0x00000004 //????
-#define WAITING_FOR_TRIGGER_BIT  0x00000008
-#define DELAYBEFORE_BIT          0x00000010
-#define DELAYAFTER_BIT           0x00000020
-#define EXPOSING_BIT             0x00000040
-#define COUNT_ENABLE_BIT         0x00000080
-#define READSTATE_0_BIT    		 0x00000100
-#define READSTATE_1_BIT    		 0x00000200
-#define READSTATE_2_BIT    		 0x00000400
-
-#define RUNSTATE_0_BIT     		 0x00001000
-#define RUNSTATE_1_BIT    		 0x00002000
-#define RUNSTATE_2_BIT    		 0x00004000
-#define SOME_FIFO_FULL_BIT       0x00008000 // error!
-#define ALL_FIFO_EMPTY_BIT       0x00010000 // data ready
-#define RUNMACHINE_BUSY_BIT      0x00020000
-#define READMACHINE_BUSY_BIT     0x00040000
-#define STOPPED_BIT			 	 0x00100000
-
-
-
-/* for fifo status register */
-#define FIFO_ENABLED_BIT         0x80000000
-#define FIFO_DISABLED_BIT        0x01000000
-#define FIFO_ERROR_BIT           0x08000000
-#define FIFO_EMPTY_BIT           0x04000000
-#define FIFO_DATA_READY_BIT      0x02000000
-#define FIFO_COUNTER_MASK        0x000001ff
-#define FIFO_NM_MASK             0x00e00000
-#define FIFO_NM_OFF              21
-#define FIFO_NC_MASK             0x001ffe00
-#define FIFO_NC_OFF              9
-
-/* for config register *///not really used yet
-#define TOT_ENABLE_BIT           0x00000002
-#define TIMED_GATE_BIT           0x00000004
-#define CONT_RO_ENABLE_BIT       0x00080000
-#define CPU_OR_RECEIVER_BIT		 0x00001000
-
-
-
-/* for speed register */
-#define CLK_DIVIDER_MASK              0x000000ff 
-#define CLK_DIVIDER_OFFSET            0 
-#define SET_LENGTH_MASK               0x00000f00 
-#define SET_LENGTH_OFFSET             8 
-#define WAIT_STATES_MASK              0x0000f000
-#define WAIT_STATES_OFFSET            12  
-#define TOTCLK_DIVIDER_MASK           0xff000000 
-#define TOTCLK_DIVIDER_OFFSET         24  
-#define TOTCLK_DUTYCYCLE_MASK         0x00ff0000 
-#define TOTCLK_DUTYCYCLE_OFFSET       16
-
-/* for external signal register */
-#define SIGNAL_OFFSET                 4
-#define SIGNAL_MASK                   0xF
-#define EXT_SIG_OFF                   0x0
-#define EXT_GATE_IN_ACTIVEHIGH        0x1
-#define EXT_GATE_IN_ACTIVELOW         0x2
-#define EXT_TRIG_IN_RISING            0x3
-#define EXT_TRIG_IN_FALLING           0x4
-#define EXT_RO_TRIG_IN_RISING         0x5
-#define EXT_RO_TRIG_IN_FALLING        0x6
-#define EXT_GATE_OUT_ACTIVEHIGH        0x7
-#define EXT_GATE_OUT_ACTIVELOW         0x8
-#define EXT_TRIG_OUT_RISING            0x9
-#define EXT_TRIG_OUT_FALLING           0xA
-#define EXT_RO_TRIG_OUT_RISING         0xB
-#define EXT_RO_TRIG_OUT_FALLING        0xC
-
-
-/* for temperature register */
-#define T1_CLK_BIT             0x00000001
-#define T1_CS_BIT              0x00000002
-#define T2_CLK_BIT             0x00000004
-#define T2_CS_BIT              0x00000008
-
-
-
-/* fifo control register */
-#define FIFO_RESET_BIT              0x00000001 
-#define FIFO_DISABLE_TOGGLE_BIT     0x00000002 
-
-
-//chip shiftin register meaning
-#define OUTMUX_OFF 20
-#define OUTMUX_MASK   0x1f
-#define PROBES_OFF 4
-#define PROBES_MASK 0x7f
-#define OUTBUF_OFF 0
-#define OUTBUF_MASK 1
-
-
-/* multi purpose register */
-#define PHASE_STEP_BIT               0x00000001
-#define PHASE_STEP_OFFSET            0
-// #define xxx_BIT                   0x00000002
-#define RESET_COUNTER_BIT            0x00000004
-#define RESET_COUNTER_OFFSET         2
-//#define xxx_BIT                    0x00000008
-//#define xxx_BIT                    0x00000010
-#define SW1_BIT                      0x00000020
-#define SW1_OFFSET                   5
-#define WRITE_BACK_BIT               0x00000040
-#define WRITE_BACK_OFFSET            6
-#define RESET_BIT                    0x00000080
-#define RESET_OFFSET                 7
-#define PLL_CLK_SEL_MSK	             0x00000700
-#define PLL_CLK_SEL_OFFSET           8
-#define PLL_CLK_SEL_MASTER_VAL		((0x1 << PLL_CLK_SEL_OFFSET) & PLL_CLK_SEL_MSK)
-#define PLL_CLK_SEL_MASTER_ADC_VAL	((0x2 << PLL_CLK_SEL_OFFSET) & PLL_CLK_SEL_MSK)
-#define PLL_CLK_SEL_SLAVE_VAL		((0x3 << PLL_CLK_SEL_OFFSET) & PLL_CLK_SEL_MSK)
-#define PLL_CLK_SEL_SLAVE_ADC_VAL	((0x4 << PLL_CLK_SEL_OFFSET) & PLL_CLK_SEL_MSK)
-#define ENET_RESETN_BIT              0x00000800
-#define ENET_RESETN_OFFSET           11
-#define INT_RSTN_BIT                 0x00001000
-#define INT_RSTN_OFFSET              12
-#define DIGITAL_TEST_BIT             0x00004000
-#define DIGITAL_TEST_OFFSET          14
-//#define CHANGE_AT_POWER_ON_BIT     0x00008000
-//#define CHANGE_AT_POWER_ON_OFFSET  15
-#define RST_TO_SW1_DELAY_MSK         0x000F0000
-#define RST_TO_SW1_DELAY_OFFSET      16
-#define START_ACQ_DELAY_MSK          0x00F00000
-#define START_ACQ_DELAY_OFFSET       20
-
-/* settings/conf gain register */
-#define GAIN_MASK                    0x000000ff
-#define GAIN_OFFSET                  0  
-#define SETTINGS_MASK                0x0000ff00
-#define SETTINGS_OFFSET              8
-
-
-/* CHIP_OF_INTRST_REG */
-#define CHANNEL_MASK 			    0xffff0000
-#define CHANNEL_OFFSET				16
-#define ACTIVE_ADC_MASK 		    0x0000001f
-
-
-
-/**ADC SYNC CLEAN FIFO*/
-#define ADCSYNC_CLEAN_FIFO_BITS     0x300000
-
-#endif
-
diff --git a/slsDetectorServers/jungfrauDetectorServer/bin/jungfrauDetectorServer_virtual b/slsDetectorServers/jungfrauDetectorServer/bin/jungfrauDetectorServer_virtual
index d4fb7d57b15d61104d14c8f70f53125880b494b7..4c211698faaa1a0db04b99fbe0e05d9ea330a864 100755
GIT binary patch
delta 29411
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

delta 30499
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	kGQh0ki|wtgI+ca01Z|FmI;a
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
X%rrOFwXGEGDFQplEAwoCuHOFxq)##i

diff --git a/slsDetectorServers/jungfrauDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/jungfrauDetectorServer/slsDetectorFunctionList.c
index 243806143..978660497 100644
--- a/slsDetectorServers/jungfrauDetectorServer/slsDetectorFunctionList.c
+++ b/slsDetectorServers/jungfrauDetectorServer/slsDetectorFunctionList.c
@@ -23,7 +23,6 @@ char firmware_message[MAX_STR_LENGTH];
 
 sls_detector_module *detectorModules = NULL;
 int *detectorDacs = NULL;
-int *detectorAdcs =NULL;
 
 #ifdef VIRTUAL
 pthread_t pthread_virtual_tid;
@@ -394,17 +393,12 @@ void allocateDetectorStructureMemory(){
 	//Allocation of memory
 	if (detectorModules != NULL) free(detectorModules);
 	if (detectorDacs != NULL) free(detectorDacs);
-	if (detectorAdcs != NULL) free(detectorAdcs);
 	detectorModules = malloc(sizeof(sls_detector_module));
 	detectorDacs = malloc(NDAC*sizeof(int));
-	detectorAdcs = malloc(NADC*sizeof(int));
     FILE_LOG(logDEBUG1, ("modules from 0x%x to 0x%x\n",detectorModules, detectorModules));
     FILE_LOG(logDEBUG1, ("dacs from 0x%x to 0x%x\n",detectorDacs, detectorDacs));
-    FILE_LOG(logDEBUG1, ("adcs from 0x%x to 0x%x\n",detectorAdcs, detectorAdcs));
 	(detectorModules)->dacs = detectorDacs;
-	(detectorModules)->adcs = detectorAdcs;
 	(detectorModules)->ndac = NDAC;
-	(detectorModules)->nadc = NADC;
 	(detectorModules)->nchip = NCHIP;
 	(detectorModules)->nchan = NCHIP * NCHAN;
 	(detectorModules)->reg = 0;
@@ -1629,13 +1623,12 @@ u_int32_t runBusy(void) {
 //jungfrau doesnt require chips and chans (save memory)
 int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod){
 
-	int idac, iadc;
+	int idac;
 	int ret=OK;
 
 	FILE_LOG(logDEBUG1, ("Copying module\n"));
 
 	if (srcMod->serialnumber>=0){
-
 		destMod->serialnumber=srcMod->serialnumber;
 	}
 	if ((srcMod->nchip)>(destMod->nchip)) {
@@ -1650,19 +1643,10 @@ int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod){
 		FILE_LOG(logERROR, ("Number of dacs of source is larger than number of dacs of destination\n"));
 		return FAIL;
 	}
-	if ((srcMod->nadc)>(destMod->nadc)) {
-		FILE_LOG(logERROR, ("Number of dacs of source is larger than number of dacs of destination\n"));
-		return FAIL;
-	}
-
 	FILE_LOG(logDEBUG1, ("DACs: src %d, dest %d\n",srcMod->ndac,destMod->ndac));
-	FILE_LOG(logDEBUG1, ("ADCs: src %d, dest %d\n",srcMod->nadc,destMod->nadc));
 	FILE_LOG(logDEBUG1, ("Chips: src %d, dest %d\n",srcMod->nchip,destMod->nchip));
 	FILE_LOG(logDEBUG1, ("Chans: src %d, dest %d\n",srcMod->nchan,destMod->nchan));
-	destMod->ndac=srcMod->ndac;
-	destMod->nadc=srcMod->nadc;
-	destMod->nchip=srcMod->nchip;
-	destMod->nchan=srcMod->nchan;
+
 	if (srcMod->reg>=0)
 		destMod->reg=srcMod->reg;
 	FILE_LOG(logDEBUG1, ("Copying register %x (%x)\n",destMod->reg,srcMod->reg ));
@@ -1671,10 +1655,6 @@ int copyModule(sls_detector_module *destMod, sls_detector_module *srcMod){
 		if (*((srcMod->dacs)+idac)>=0)
 			*((destMod->dacs)+idac)=*((srcMod->dacs)+idac);
 	}
-	for (iadc=0; iadc<(srcMod->nadc); iadc++) {
-		if (*((srcMod->adcs)+iadc)>=0)
-			*((destMod->adcs)+iadc)=*((srcMod->adcs)+iadc);
-	}
 	return ret;
 }
 
@@ -1686,7 +1666,6 @@ int calculateDataBytes(){
 int getTotalNumberOfChannels(){return  ((int)getNumberOfChannelsPerChip() * (int)getNumberOfChips());}
 int getNumberOfChips(){return  NCHIP;}
 int getNumberOfDACs(){return  NDAC;}
-int getNumberOfADCs(){return  NADC;}
 int getNumberOfChannelsPerChip(){return  NCHAN;}
 
 
diff --git a/slsDetectorServers/jungfrauDetectorServer/slsDetectorServer_defs.h b/slsDetectorServers/jungfrauDetectorServer/slsDetectorServer_defs.h
index 28fff4b74..d897cbc42 100644
--- a/slsDetectorServers/jungfrauDetectorServer/slsDetectorServer_defs.h
+++ b/slsDetectorServers/jungfrauDetectorServer/slsDetectorServer_defs.h
@@ -1,6 +1,4 @@
-#ifndef SLSDETECTORSERVER_DEFS_H
-#define SLSDETECTORSERVER_DEFS_H
-
+#pragma once
 #include "sls_detector_defs.h" 	//default dynamicgain in settings
 #include "RegisterDefs.h"
 
@@ -48,7 +46,6 @@ enum NETWORKINDEX           { TXN_FRAME };
 /* Hardware Definitions */
 #define NCHAN 						(256 * 256)
 #define NCHIP 						(8)
-#define NADC						(0)
 #define NDAC 						(8)
 #define NDAC_OLDBOARD				(16)
 #define DYNAMIC_RANGE				(16)
@@ -171,6 +168,3 @@ enum NETWORKINDEX           { TXN_FRAME };
 #define PLL_CHARGEPUMP_REG 			(0x09)
 #define PLL_VCO_DIV_REG 			(0x1c)
 #define PLL_MIF_REG 				(0x1f)
-
-
-#endif /* SLSDETECTORSERVER_DEFS_H */
diff --git a/slsDetectorServers/slsDetectorServer/communication_funcs.c b/slsDetectorServers/slsDetectorServer/communication_funcs.c
index 1a4e7dcaf..1850d2fc8 100755
--- a/slsDetectorServers/slsDetectorServer/communication_funcs.c
+++ b/slsDetectorServers/slsDetectorServer/communication_funcs.c
@@ -356,8 +356,6 @@ int sendModule(int file_des, sls_detector_module *myMod) {
 	if (!n)	return -1; ts += n;
 	n = sendData(file_des,&(myMod->ndac), sizeof(myMod->ndac), INT32);
 	if (!n)	return -1; ts += n;
-	n = sendData(file_des,&(myMod->nadc), sizeof(myMod->nadc), INT32);
-	if (!n)	return -1; ts += n;
 	n = sendData(file_des,&(myMod->reg), sizeof(myMod->reg), INT32);
 	if (!n)	return -1; ts += n;
 	n = sendData(file_des,&(myMod->iodelay), sizeof(myMod->iodelay), INT32);
@@ -369,9 +367,6 @@ int sendModule(int file_des, sls_detector_module *myMod) {
 	// dacs
 	n = sendData(file_des,myMod->dacs, sizeof(int)*(myMod->ndac), INT32);
 	if (!n)	return -1; ts += n;
-	// adcs
-	n = sendData(file_des,myMod->adcs, sizeof(int)*(myMod->nadc), INT32);
-	if (!n)	return -1; ts += n;
 	// channels
 #ifdef EIGERD
 	n = sendData(file_des,myMod->chanregs, sizeof(int) * (myMod->nchan), INT32);
@@ -384,58 +379,60 @@ int sendModule(int file_des, sls_detector_module *myMod) {
 
 
 int  receiveModule(int file_des, sls_detector_module* myMod) {
+    TLogLevel level = logDEBUG1;
+    FILE_LOG(level, ("Receiving Module\n"));
 	int ts = 0, n = 0;
 	int nDacs = myMod->ndac;
-	int nAdcs = myMod->nadc;
 #ifdef EIGERD
 	int nChans = myMod->nchan; // can be zero for no trimbits
+	FILE_LOG(level, ("nChans: %d\n",nChans));
 #endif
 	n = receiveData(file_des,&(myMod->serialnumber), sizeof(myMod->serialnumber), INT32);
 	if (!n)	return -1; ts += n;
+	FILE_LOG(level, ("serialno received. %d bytes. serialno: %d\n", n, myMod->serialnumber));
 	n = receiveData(file_des,&(myMod->nchan), sizeof(myMod->nchan), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("nchan received. %d bytes. nchan: %d\n", n, myMod->nchan));
 	n = receiveData(file_des,&(myMod->nchip), sizeof(myMod->nchip), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("nchip received. %d bytes. nchip: %d\n", n, myMod->nchip));
 	n = receiveData(file_des,&(myMod->ndac), sizeof(myMod->ndac), INT32);
 	if (!n)	return -1; ts += n;
-	n = receiveData(file_des,&(myMod->nadc), sizeof(myMod->nadc), INT32);
-	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("ndac received. %d bytes. ndac: %d\n", n, myMod->ndac));
 	n = receiveData(file_des,&(myMod->reg), sizeof(myMod->reg), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("reg received. %d bytes. reg: %d\n", n, myMod->reg));
 	n = receiveData(file_des,&(myMod->iodelay), sizeof(myMod->iodelay), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("iodelay received. %d bytes. iodelay: %d\n", n, myMod->iodelay));
 	n = receiveData(file_des,&(myMod->tau), sizeof(myMod->tau), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("tau received. %d bytes. tau: %d\n", n, myMod->tau));
 	n = receiveData(file_des,&(myMod->eV), sizeof(myMod->eV), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("eV received. %d bytes. eV: %d\n", n, myMod->eV));
 	// dacs
 	if (nDacs != (myMod->ndac)) {
 		FILE_LOG(logERROR, ("received wrong number of dacs. "
-				"Expected %d, got %d\n",	nDacs, myMod->ndac));
+				"Expected %d, got %d\n", nDacs, myMod->ndac));
 		return 0;
 	}
-	n = receiveData(file_des,&(myMod->dacs), sizeof(int) * (myMod->ndac), INT32);
-	if (!n)	return -1; ts += n;
-	// adcs
-	if (nAdcs != (myMod->nadc)) {
-		FILE_LOG(logERROR, ("received wrong number of adcs. "
-				"Expected %d, got %d\n",	nAdcs, myMod->nadc));
-		return 0;
-	}
-	n = receiveData(file_des,&(myMod->adcs), sizeof(int) * (myMod->nadc), INT32);
+	n = receiveData(file_des, myMod->dacs, sizeof(int) * (myMod->ndac), INT32);
 	if (!n)	return -1; ts += n;
+    FILE_LOG(level, ("dacs received. %d bytes.\n", n));
 	// channels
 #ifdef EIGERD
-	if (((myMod->nchan) != 0 ) ||  // no trimbits
+	if (((myMod->nchan) != 0 ) &&  // no trimbits
 			(nChans != (myMod->nchan))) { // with trimbits
 		FILE_LOG(logERROR, ("received wrong number of channels. "
 				"Expected %d, got %d\n",	nChans, (myMod->nchan)));
 		return 0;
 	}
-	n = receiveData(file_des,&(myMod->chanregs), sizeof(int) * (myMod->nchan), INT32);
-	if (!n)	return -1; ts += n;
+	n = receiveData(file_des, myMod->chanregs, sizeof(int) * (myMod->nchan), INT32);
+    FILE_LOG(level, ("chanregs received. %d bytes.\n", n));
+    if (!n) return -1; ts += n;
 #endif
-	FILE_LOG(logDEBUG1, ("received module of size %d register %x\n",ts,myMod->reg));
+	FILE_LOG(level, ("received module of size %d register %x\n",ts,myMod->reg));
 	return ts;
 }
 
diff --git a/slsDetectorServers/slsDetectorServer/slsDetectorFunctionList.h b/slsDetectorServers/slsDetectorServer/slsDetectorFunctionList.h
index 65c931855..d161a7877 100644
--- a/slsDetectorServers/slsDetectorServer/slsDetectorFunctionList.h
+++ b/slsDetectorServers/slsDetectorServer/slsDetectorFunctionList.h
@@ -225,7 +225,6 @@ int 		calculateDataBytes();
 int 		getTotalNumberOfChannels();
 int 		getNumberOfChips();
 int 		getNumberOfDACs();
-int 		getNumberOfADCs();
 int 		getNumberOfChannelsPerChip();
 
 
diff --git a/slsDetectorServers/slsDetectorServer/slsDetectorServer_funcs.c b/slsDetectorServers/slsDetectorServer/slsDetectorServer_funcs.c
index fb21f3c78..45196226f 100755
--- a/slsDetectorServers/slsDetectorServer/slsDetectorServer_funcs.c
+++ b/slsDetectorServers/slsDetectorServer/slsDetectorServer_funcs.c
@@ -839,10 +839,8 @@ int set_module(int file_des) {
 
 	sls_detector_module module;
 	int *myDac = NULL;
-	int *myAdc = NULL;
 	int *myChan = NULL;
 	module.dacs = NULL;
-	module.adcs = NULL;
 	module.chanregs = NULL;
 
 	// allocate to receive arguments
@@ -856,18 +854,6 @@ int set_module(int file_des) {
 	} else
 		module.dacs = myDac;
 
-	// allocate adcs
-	if (ret == OK) {
-		myAdc = (int*)malloc(getNumberOfADCs() * sizeof(int));
-		// error
-		if (getNumberOfADCs() > 0 && myAdc == NULL) {
-			ret = FAIL;
-			sprintf(mess,"Could not allocate adcs\n");
-			FILE_LOG(logERROR,(mess));
-		} else
-			module.adcs = myAdc;
-	}
-
 	// allocate chans
 #ifdef EIGERD
 	if (ret == OK) {
@@ -885,22 +871,20 @@ int set_module(int file_des) {
 		module.nchip = getNumberOfChips();
 		module.nchan = getTotalNumberOfChannels();
 		module.ndac = getNumberOfDACs();
-		module.nadc = getNumberOfADCs();
 		int ts = receiveModule(file_des, &module);
 		if (ts < 0) {
 			if (myChan != NULL) free(myChan);
 			if (myDac != NULL) 	free(myDac);
-			if (myAdc != NULL) 	free(myAdc);
 			return printSocketReadError();
 		}
 		FILE_LOG(logDEBUG1, ("module register is %d, nchan %d, nchip %d, "
-				"ndac %d, nadc %d, iodelay %d, tau %d, eV %d\n",
+				"ndac %d, iodelay %d, tau %d, eV %d\n",
 				module.reg, module.nchan, module.nchip,
-				module.ndac,  module.nadc, module.iodelay, module.tau, module.eV));
+				module.ndac, module.iodelay, module.tau, module.eV));
 		// should at least have a dac
 		if (ts <= sizeof(sls_detector_module)) {
 			ret = FAIL;
-			sprintf(mess, "Cannot set module. Received incorrect number of dacs or adcs or channels\n");
+			sprintf(mess, "Cannot set module. Received incorrect number of dacs or channels\n");
 			FILE_LOG(logERROR,(mess));
 		}
 	}
@@ -923,6 +907,7 @@ int set_module(int file_des) {
 		case VERYHIGHGAIN:
 		case VERYLOWGAIN:
 #elif JUNGFRAUD
+		case GET_SETTINGS:
 		case DYNAMICGAIN:
 		case DYNAMICHG0:
 		case FIXGAIN1:
@@ -949,7 +934,6 @@ int set_module(int file_des) {
 	}
 	if (myChan != NULL) free(myChan);
 	if (myDac != NULL) 	free(myDac);
-	if (myAdc != NULL) 	free(myAdc);
 	return Server_SendResult(file_des, INT32, 1, &retval, sizeof(retval));
 }
 
@@ -961,10 +945,8 @@ int get_module(int file_des) {
 	memset(mess, 0, sizeof(mess));
 	sls_detector_module module;
 	int *myDac = NULL;
-	int *myAdc = NULL;
 	int *myChan = NULL;
 	module.dacs = NULL;
-	module.adcs = NULL;
 	module.chanregs = NULL;
 
 	// allocate to send arguments
@@ -978,18 +960,6 @@ int get_module(int file_des) {
 	} else
 		module.dacs = myDac;
 
-	// allocate adcs
-	if (ret == OK) {
-		myAdc = (int*)malloc(getNumberOfADCs() * sizeof(int));
-		// error
-		if (getNumberOfADCs() > 0 && myAdc == NULL) {
-			ret = FAIL;
-			sprintf(mess,"Could not allocate adcs\n");
-			FILE_LOG(logERROR,(mess));
-		} else
-			module.adcs=myAdc;
-	}
-
 	// allocate chans
 #ifdef EIGERD
 	if (ret == OK) {
@@ -1008,7 +978,6 @@ int get_module(int file_des) {
 		module.nchip = getNumberOfChips();
 		module.nchan = getTotalNumberOfChannels();
 		module.ndac = getNumberOfDACs();
-		module.nadc = getNumberOfADCs();
 
 		// only get
 		FILE_LOG(logDEBUG1, ("Getting module\n"));
@@ -1024,7 +993,6 @@ int get_module(int file_des) {
 	}
 	if (myChan != NULL)	free(myChan);
 	if (myDac != NULL) 	free(myDac);
-	if (myAdc != NULL) 	free(myAdc);
 	return ret;
 }
 
diff --git a/slsDetectorSoftware/slsDetector/slsDetector.cpp b/slsDetectorSoftware/slsDetector/slsDetector.cpp
index bdae6a382..4d503d95e 100644
--- a/slsDetectorSoftware/slsDetector/slsDetector.cpp
+++ b/slsDetectorSoftware/slsDetector/slsDetector.cpp
@@ -35,7 +35,6 @@ slsDetector::slsDetector(detectorType type, int multiId, int id, bool verify)
   dataSocket(0),
   detectorModules(0),
   dacs(0),
-  adcs(0),
   chanregs(0) {
 	/* called from put hostname command,
 	 * so sls shared memory will be created */
@@ -67,7 +66,6 @@ slsDetector::slsDetector(int multiId, int id, bool verify)
   dataSocket(0),
   detectorModules(0),
   dacs(0),
-  adcs(0),
   chanregs(0) {
 	/* called from multi constructor to populate structure,
 	 * so sls shared memory will be opened, not created */
@@ -316,7 +314,6 @@ void slsDetector::setDetectorSpecificParameters(detectorType type, detParameterL
 		list.nChipX = 10;
 		list.nChipY = 1;
 		list.nDacs = 8;
-		list.nAdcs = 5;
 		list.dynamicRange = 16;
 		list.nGappixelsX = 0;
 		list.nGappixelsY = 0;
@@ -326,8 +323,7 @@ void slsDetector::setDetectorSpecificParameters(detectorType type, detParameterL
 		list.nChanY = 256;
 		list.nChipX = 4;
 		list.nChipY = 2;
-		list.nDacs = 16;
-		list.nAdcs = 0;
+		list.nDacs = 8;
 		list.dynamicRange = 16;
 		list.nGappixelsX = 0;
 		list.nGappixelsY = 0;
@@ -338,7 +334,6 @@ void slsDetector::setDetectorSpecificParameters(detectorType type, detParameterL
 		list.nChipX = 1;
 		list.nChipY = 1;
 		list.nDacs = 16;
-		list.nAdcs = 9;//???? When calculating size, only d+a=16 how come?FIXME
 		list.dynamicRange =16;
 		list.nGappixelsX = 0;
 		list.nGappixelsY = 0;
@@ -349,7 +344,6 @@ void slsDetector::setDetectorSpecificParameters(detectorType type, detParameterL
 		list.nChipX = 4;
 		list.nChipY = 1;
 		list.nDacs = 16;
-		list.nAdcs = 0;
 		list.dynamicRange = 16;
 		list.nGappixelsX = 6;
 		list.nGappixelsY = 1;
@@ -367,11 +361,11 @@ int slsDetector::calculateSharedMemorySize(detectorType type) {
 	setDetectorSpecificParameters(type, detlist);
 	int nch = detlist.nChanX * detlist.nChanY;
 	int nc = detlist.nChipX * detlist.nChipY;
-	int nd = detlist.nDacs + detlist.nAdcs;
+	int nd = detlist.nDacs;
 
 	/** The size of the shared memory is
 	 * size of shared structure +
-	 * ffcoefficents+fferrors+modules+dacs+adcs+chans */
+	 * ffcoefficents+fferrors+modules+dacs+chans */
 	int sz = sizeof(sharedSlsDetector) +
 			2 * nch * nc * sizeof(double) +
 			sizeof(sls_detector_module) +
@@ -486,7 +480,6 @@ void slsDetector::initializeDetectorStructure(detectorType type) {
 	thisDetector->nChip[X] = detlist.nChipX;
 	thisDetector->nChip[Y] = detlist.nChipY;
 	thisDetector->nDacs = detlist.nDacs;
-	thisDetector->nAdcs = detlist.nAdcs;
 	thisDetector->dynamicRange = detlist.dynamicRange;
 	thisDetector->nGappixels[X] = detlist.nGappixelsX;
 	thisDetector->nGappixels[Y] = detlist.nGappixelsY;
@@ -513,13 +506,11 @@ void slsDetector::initializeDetectorStructure(detectorType type) {
 
 	/** calculates the memory offsets for
 	 * flat field coefficients and errors,
-	 * module structures, dacs, adcs, chips and channels */
+	 * module structures, dacs, channels */
 	thisDetector->modoff = sizeof(sharedSlsDetector);
 	thisDetector->dacoff = thisDetector->modoff +
 			sizeof(sls_detector_module);
-	thisDetector->adcoff = thisDetector->dacoff +
-			sizeof(int) * thisDetector->nDacs;
-	thisDetector->chanoff = thisDetector->adcoff +
+	thisDetector->chanoff = thisDetector->dacoff +
 			sizeof(int) * thisDetector->nChips;
 }
 
@@ -530,7 +521,6 @@ void slsDetector::initializeMembers() {
 	char *goff = (char*)thisDetector;
 	detectorModules = (sls_detector_module*)(goff + thisDetector->modoff);
 	dacs = (int*)(goff + thisDetector->dacoff);
-	adcs = (int*)(goff + thisDetector->adcoff);
 	chanregs = (int*)(goff + thisDetector->chanoff);
 	if (thisDetectorControl) {
 		delete thisDetectorControl;
@@ -562,12 +552,11 @@ void slsDetector::initializeDetectorStructurePointers() {
 	thisMod->nchan = thisDetector->nChans*thisDetector->nChips;
 	thisMod->nchip = thisDetector->nChips;
 	thisMod->ndac = thisDetector->nDacs;
-	thisMod->nadc = thisDetector->nAdcs;
 	thisMod->reg = 0;
 	thisMod->iodelay = 0;
 	thisMod->tau = 0;
 	thisMod->eV = 0;
-	// dacs, adcs and chanregs for thisMod is not allocated in
+	// dacs and chanregs for thisMod is not allocated in
 	// detectorModules in shared memory as they are already allocated separately
 	// in shared memory (below)
 
@@ -575,10 +564,6 @@ void slsDetector::initializeDetectorStructurePointers() {
 	for (int i = 0; i < thisDetector->nDacs; ++i) {
 		*(dacs + i) = 0;
 	}
-	// initializes the adc values to 0
-	for (int i = 0; i < thisDetector->nAdcs; ++i) {
-		*(adcs + i) = 0;
-	}
 	// initializes the channel registers to 0
 	for (int i = 0; i < thisDetector->nChans * thisDetector->nChips; ++i) {
 		*(chanregs + i) = -1;
@@ -594,27 +579,23 @@ slsDetectorDefs::sls_detector_module*  slsDetector::createModule() {
 slsDetectorDefs::sls_detector_module*  slsDetector::createModule(detectorType type) {
 	// get the detector parameters based on type
 	detParameterList detlist;
-	int nch = 0, nc = 0, nd = 0, na = 0;
+	int nch = 0, nc = 0, nd = 0;
 	try {
 		setDetectorSpecificParameters(type, detlist);
 		nch = detlist.nChanX * detlist.nChanY;
 		nc = detlist.nChipX * detlist.nChipY;
 		nd = detlist.nDacs;
-		na = detlist.nAdcs;
 	} catch(...) {
 		return NULL;
 	}
 	int *dacs = new int[nd];
-	int *adcs = new int[na];
 	int *chanregs = new int[nch*nc];
 
 	sls_detector_module *myMod = (sls_detector_module*)malloc(sizeof(sls_detector_module));
 	myMod->ndac = nd;
-	myMod->nadc = na;
 	myMod->nchip = nc;
 	myMod->nchan = nch*nc;
 	myMod->dacs = dacs;
-	myMod->adcs = adcs;
 	myMod->chanregs = chanregs;
 	return myMod;
 }
@@ -622,7 +603,6 @@ slsDetectorDefs::sls_detector_module*  slsDetector::createModule(detectorType ty
 
 void  slsDetector::deleteModule(sls_detector_module *myMod) {
 	delete [] myMod->dacs;
-	delete [] myMod->adcs;
 	delete [] myMod->chanregs;
 	delete myMod;
 }
@@ -693,21 +673,51 @@ void slsDetector::disconnectStop() {
 
 
 int slsDetector::sendModule(sls_detector_module *myMod) {
+    TLogLevel level = logDEBUG1;
+    FILE_LOG(level) << "Sending Module";
 	int ts = 0;
-	ts += controlSocket->SendDataOnly(&(myMod->serialnumber), sizeof(myMod->serialnumber));
-	ts += controlSocket->SendDataOnly(&(myMod->nchan), sizeof(myMod->nchan));
-	ts += controlSocket->SendDataOnly(&(myMod->nchip), sizeof(myMod->nchip));
-	ts += controlSocket->SendDataOnly(&(myMod->ndac), sizeof(myMod->ndac));
-	ts += controlSocket->SendDataOnly(&(myMod->nadc), sizeof(myMod->nadc));
-	ts += controlSocket->SendDataOnly(&(myMod->reg), sizeof(myMod->reg));
-	ts += controlSocket->SendDataOnly(&(myMod->iodelay), sizeof(myMod->iodelay));
-	ts += controlSocket->SendDataOnly(&(myMod->tau), sizeof(myMod->tau));
-	ts += controlSocket->SendDataOnly(&(myMod->eV), sizeof(myMod->eV));
+	int n = 0;
+
+	n = controlSocket->SendDataOnly(&(myMod->serialnumber), sizeof(myMod->serialnumber));
+	ts += n;
+	FILE_LOG(level) << "Serial number sent. " << n << " bytes. serialno: " << myMod->serialnumber;
+
+	n = controlSocket->SendDataOnly(&(myMod->nchan), sizeof(myMod->nchan));
+    ts += n;
+    FILE_LOG(level) << "nchan sent. " << n << " bytes. serialno: " << myMod->nchan;
+
+	n = controlSocket->SendDataOnly(&(myMod->nchip), sizeof(myMod->nchip));
+    ts += n;
+    FILE_LOG(level) << "nchip sent. " << n << " bytes. serialno: " << myMod->nchip;
+
+	n = controlSocket->SendDataOnly(&(myMod->ndac), sizeof(myMod->ndac));
+    ts += n;
+    FILE_LOG(level) << "ndac sent. " << n << " bytes. serialno: " << myMod->ndac;
+
+	n = controlSocket->SendDataOnly(&(myMod->reg), sizeof(myMod->reg));
+    ts += n;
+    FILE_LOG(level) << "reg sent. " << n << " bytes. serialno: " << myMod->reg;
+
+	n = controlSocket->SendDataOnly(&(myMod->iodelay), sizeof(myMod->iodelay));
+    ts += n;
+    FILE_LOG(level) << "iodelay sent. " << n << " bytes. serialno: " << myMod->iodelay;
+
+	n = controlSocket->SendDataOnly(&(myMod->tau), sizeof(myMod->tau));
+    ts += n;
+    FILE_LOG(level) << "tau sent. " << n << " bytes. serialno: " << myMod->tau;
+
+	n = controlSocket->SendDataOnly(&(myMod->eV), sizeof(myMod->eV));
+    ts += n;
+    FILE_LOG(level) << "ev sent. " << n << " bytes. serialno: " << myMod->eV;
+
+	n = controlSocket->SendDataOnly(myMod->dacs, sizeof(int) * (myMod->ndac));
+    ts += n;
+    FILE_LOG(level) << "dacs sent. " << n << " bytes";
 
-	ts += controlSocket->SendDataOnly(myMod->dacs, sizeof(int) * (myMod->ndac));
-	ts += controlSocket->SendDataOnly(myMod->adcs, sizeof(int) * (myMod->nadc));
 	if (thisDetector->myDetectorType == EIGER) {
-		ts += controlSocket->SendDataOnly(myMod->chanregs, sizeof(int) * (myMod->nchan));
+		n = controlSocket->SendDataOnly(myMod->chanregs, sizeof(int) * (myMod->nchan));
+	    ts += n;
+	    FILE_LOG(level) << "channels sent. " << n << " bytes";
 	}
 	return ts;
 }
@@ -719,7 +729,6 @@ int  slsDetector::receiveModule(sls_detector_module* myMod) {
 	ts += controlSocket->ReceiveDataOnly(&(myMod->nchan), sizeof(myMod->nchan));
 	ts += controlSocket->ReceiveDataOnly(&(myMod->nchip), sizeof(myMod->nchip));
 	ts += controlSocket->ReceiveDataOnly(&(myMod->ndac), sizeof(myMod->ndac));
-	ts += controlSocket->ReceiveDataOnly(&(myMod->nadc), sizeof(myMod->nadc));
 	ts += controlSocket->ReceiveDataOnly(&(myMod->reg), sizeof(myMod->reg));
 	ts += controlSocket->ReceiveDataOnly(&(myMod->iodelay), sizeof(myMod->iodelay));
 	ts += controlSocket->ReceiveDataOnly(&(myMod->tau), sizeof(myMod->tau));
@@ -727,8 +736,6 @@ int  slsDetector::receiveModule(sls_detector_module* myMod) {
 
 	ts += controlSocket->ReceiveDataOnly(myMod->dacs,sizeof(int)*(myMod->ndac));
 	FILE_LOG(logDEBUG1) << "received dacs of size "<< ts;
-	ts += controlSocket->ReceiveDataOnly(myMod->adcs,sizeof(int)*(myMod->nadc));
-	FILE_LOG(logDEBUG1) << "received adc  of size "<< ts;
 	if (thisDetector->myDetectorType == EIGER) {
 		ts += controlSocket->ReceiveDataOnly(myMod->chanregs, sizeof(int)*(myMod->nchan));
 		FILE_LOG(logDEBUG1) << "nchans= " << thisDetector->nChans << " nchips= " << thisDetector->nChips
@@ -4342,30 +4349,26 @@ int slsDetector::setModule(sls_detector_module module, int tb) {
 
 	// update client structure
 	if (ret == OK) {
-		if (detectorModules) {
-			if (thisDetector->myDetectorType == EIGER && tb && chanregs) {
-				for (int ichip = 0; ichip < thisDetector->nChips; ++ichip) {
-					for (int i = 0; i < thisDetector->nChans; ++i) {
-						chanregs[i + ichip * thisDetector->nChans] =
-								module.chanregs[ichip * thisDetector->nChans + i];
-					}
-				}
-			}
-			if (adcs) {
-				for (int i = 0; i < thisDetector->nAdcs; ++i) {
-					adcs[i] = module.adcs[i];
-				}
-				if (dacs) {
-					for (int i = 0; i < thisDetector->nDacs; ++i)
-						dacs[i] = module.dacs[i];
-				}
-				(detectorModules)->serialnumber = module.serialnumber;
-				(detectorModules)->reg = module.reg;
-				(detectorModules)->iodelay = module.iodelay;
-				(detectorModules)->tau = module.tau;
-				(detectorModules)->eV = module.eV;
-			}
-		}
+	    if (detectorModules) {
+	        if (thisDetector->myDetectorType == EIGER && tb && chanregs) {
+	            for (int ichip = 0; ichip < thisDetector->nChips; ++ichip) {
+	                for (int i = 0; i < thisDetector->nChans; ++i) {
+	                    chanregs[i + ichip * thisDetector->nChans] =
+	                            module.chanregs[ichip * thisDetector->nChans + i];
+	                }
+	            }
+	        }
+	        if (dacs) {
+	            for (int i = 0; i < thisDetector->nDacs; ++i)
+	                dacs[i] = module.dacs[i];
+	        }
+	        (detectorModules)->serialnumber = module.serialnumber;
+	        (detectorModules)->reg = module.reg;
+	        (detectorModules)->iodelay = module.iodelay;
+	        (detectorModules)->tau = module.tau;
+	        (detectorModules)->eV = module.eV;
+
+	    }
 		if (module.eV != -1) {
 			thisDetector->currentThresholdEV = module.eV;
 		}
@@ -4412,10 +4415,6 @@ slsDetectorDefs::sls_detector_module  *slsDetector::getModule() {
 					}
 				}
 			}
-			if (adcs) {
-				for (int i = 0; i < thisDetector->nAdcs; ++i)
-					adcs[i] = myMod->adcs[i];
-			}
 			if (dacs) {
 				for (int i = 0; i < thisDetector->nDacs; ++i) {
 					dacs[i] = myMod->dacs[i];
@@ -5708,14 +5707,6 @@ slsDetectorDefs::sls_detector_module* slsDetector::readSettingsFile(std::string
 		names.push_back("VDAC5");
 		names.push_back("VDAC6");
 		names.push_back("VDAC7");
-		names.push_back("VDAC8");
-		names.push_back("VDAC9");
-		names.push_back("VDAC10");
-		names.push_back("VDAC11");
-		names.push_back("VDAC12");
-		names.push_back("VDAC13");
-		names.push_back("VDAC14");
-		names.push_back("VDAC15");
 		break;
 	default:
 		FILE_LOG(logERROR) << "Unknown detector type - unknown format for settings file";
@@ -5762,6 +5753,7 @@ slsDetectorDefs::sls_detector_module* slsDetector::readSettingsFile(std::string
 			setErrorMask((getErrorMask())|(OTHER_ERROR_CODE));
 			if (modCreated)
 				deleteModule(myMod);
+		    infile.close();
 			return NULL;
 		}
 		for(int i = 0; i < myMod->ndac; ++i)
@@ -5776,6 +5768,8 @@ slsDetectorDefs::sls_detector_module* slsDetector::readSettingsFile(std::string
 		std::string str;
 		while(infile.good()) {
 			getline(infile,str);
+			if (!str.length())
+			    break;
 			FILE_LOG(logDEBUG1) << str;
 			std::string sargname;
 			int ival = 0;
@@ -5795,15 +5789,17 @@ slsDetectorDefs::sls_detector_module* slsDetector::readSettingsFile(std::string
 				setErrorMask((getErrorMask())|(OTHER_ERROR_CODE));
 				if (modCreated)
 					deleteModule(myMod);
+			    infile.close();
 				return NULL;
 			}
 		}
 		// not all read
 		if (idac != names.size()) {
-			FILE_LOG(logERROR) << "Could read only " << idac << " dacs. Expected " << names.size() << "dacs";
+			FILE_LOG(logERROR) << "Could read only " << idac << " dacs. Expected " << names.size() << " dacs";
 			setErrorMask((getErrorMask())|(OTHER_ERROR_CODE));
 			if (modCreated)
 				deleteModule(myMod);
+		    infile.close();
 			return NULL;
 		}
 	}
diff --git a/slsDetectorSoftware/slsDetector/slsDetector.h b/slsDetectorSoftware/slsDetector/slsDetector.h
index beda23779..a5de1c243 100644
--- a/slsDetectorSoftware/slsDetector/slsDetector.h
+++ b/slsDetectorSoftware/slsDetector/slsDetector.h
@@ -33,7 +33,6 @@ typedef  struct detParameterList {
 	int nChipX;
 	int nChipY;
 	int nDacs;
-	int nAdcs;
 	int dynamicRange;
 	int nGappixelsX;
 	int nGappixelsY;
@@ -109,9 +108,6 @@ private:
 		/**  number of dacs per module*/
 		int nDacs;
 
-		/** number of adcs per module */
-		int nAdcs;
-
 		/** dynamic range of the detector data */
 		int dynamicRange;
 
@@ -149,9 +145,6 @@ private:
 		/** memory offsets for the dac arrays */
 		int dacoff;
 
-		/** memory offsets for the adc arrays */
-		int adcoff;
-
 		/** memory offsets for the channel register arrays  -trimbits*/
 		int chanoff;
 
@@ -1833,9 +1826,6 @@ private:
 	/** pointer to dac valuse in shared memory  */
 	int *dacs;
 
-	/** pointer to adc valuse in shared memory  */
-	int *adcs;
-
 	/** pointer to channal registers  in shared memory */
 	int *chanregs;
 };
diff --git a/slsSupportLib/include/sls_detector_defs.h b/slsSupportLib/include/sls_detector_defs.h
index aed49a260..5858e1e31 100755
--- a/slsSupportLib/include/sls_detector_defs.h
+++ b/slsSupportLib/include/sls_detector_defs.h
@@ -239,13 +239,11 @@ public:
 	  int nchan; /**< is the number of channels on the module*/
 	  int nchip; /**< is the number of chips on the module */
 	  int ndac; /**< is the number of dacs on the module */
-	  int nadc; /**< is the number of adcs on the module */
 	  int reg; /**< is the module register settings (gain level) */
 	  int iodelay;	/**< iodelay */
 	  int tau;	/**< tau */
 	  int eV;	/**< threshold energy */
 	  int *dacs; /**< is the pointer to the array of the dac values (in V) */
-	  int *adcs;  /**< is the pointer to the array of the adc values (in V)  */
 	  int *chanregs; /**< is the pointer to the array of the channel registers */
 	} sls_detector_module;