From 920891080bfde89307a10ad223b67a73094269ad Mon Sep 17 00:00:00 2001 From: Henryk Richter Date: Fri, 14 Feb 2020 17:03:18 +0100 Subject: [PATCH] updated baxnet SANA-II driver and Gerber files - Enforcer hit fix - replaced V2 Gerbers by V3 Gerbers --- Driver/baxnet/README.enc | 8 +- Driver/baxnet/README.sdnet | 13 +- Driver/baxnet/bin/enc624j6net.device | Bin 12636 -> 12972 bytes Driver/baxnet/bin/enc624j6net.device_68000 | Bin 13072 -> 13080 bytes Driver/baxnet/bin/sdnet.device | Bin 12656 -> 12760 bytes Driver/baxnet/bin/sdnettest | Bin 24504 -> 15464 bytes Driver/baxnet/bin/v2expeth.device | Bin 13260 -> 13412 bytes Driver/baxnet/bin/v2expethtest | Bin 23960 -> 15480 bytes Driver/baxnet/source/Common.mk | 6 +- Driver/baxnet/source/Makefile.sdnet | 12 +- Driver/baxnet/source/compiler.h | 3 + Driver/baxnet/source/debug.h | 3 +- Driver/baxnet/source/debug.i | 11 +- Driver/baxnet/source/device.c | 44 +- .../baxnet/source/enc624j6net/enc624j6l.asm | 2 +- .../source/enc624j6net/enc624j6l.asm.info | Bin 4535 -> 0 bytes Driver/baxnet/source/enc624j6net/enc624j6l.h | 5 +- Driver/baxnet/source/enc624j6net/hw.c | 175 +- Driver/baxnet/source/enc624j6net/hw.c.info | Bin 4560 -> 0 bytes Driver/baxnet/source/kprintf.asm | 9 +- Driver/baxnet/source/miitool.c | 12 + Driver/baxnet/source/sdnet/enc28j60.c | 37 +- Driver/baxnet/source/sdnet/enc28j60.c.info | Bin 7110 -> 0 bytes Driver/baxnet/source/sdnet/hw.c | 18 + Driver/baxnet/source/sdnet/hw.c.info | Bin 7142 -> 0 bytes Driver/baxnet/source/sdnet/hwprivate.h.info | Bin 7106 -> 0 bytes Driver/baxnet/source/sdnet/sdnettest.c | 679 ++++++ Driver/baxnet/source/sdnet/vampuuid.asm | 18 +- Driver/baxnet/source/server.c | 19 +- Driver/baxnet/source/smakefile.enc | 2 +- Driver/baxnet/source/version.h | 4 +- Driver/enc624j6net/README.txt | 65 - Driver/enc624j6net/build/enc624j6net.device | Bin 9692 -> 0 bytes Driver/enc624j6net/compiler.h | 33 - Driver/enc624j6net/debug.h | 33 - Driver/enc624j6net/dev_info.h | 8 - Driver/enc624j6net/dev_info.i | 11 - Driver/enc624j6net/device.c | 994 --------- Driver/enc624j6net/enc624j6net/asminterface.h | 46 - Driver/enc624j6net/enc624j6net/enc624j6l.asm | 1401 ------------ Driver/enc624j6net/enc624j6net/enc624j6l.h | 318 --- Driver/enc624j6net/enc624j6net/hw.c | 608 ------ Driver/enc624j6net/enc624j6net/hwbase.h | 97 - .../enc624j6net/enc624j6net/intervaltimer.asm | 328 --- .../enc624j6net/enc624j6net/intervaltimer.h | 56 - .../enc624j6net/enc624j6net/intervaltimer.i | 26 - Driver/enc624j6net/enc624j6net/macros.i | 126 -- Driver/enc624j6net/enc624j6net/registers.h | 606 ------ Driver/enc624j6net/enc624j6net/registers.i | 602 ------ Driver/enc624j6net/global.h | 188 -- Driver/enc624j6net/hw.h | 64 - Driver/enc624j6net/libsize.auto.i | 1 - Driver/enc624j6net/libsize.c | 8 - Driver/enc624j6net/libsize.exe | Bin 6428 -> 0 bytes Driver/enc624j6net/rt.asm | 88 - Driver/enc624j6net/server.c | 780 ------- Driver/enc624j6net/smakefile | 256 --- Driver/enc624j6net/testroutine/TestENC | Bin 3448 -> 0 bytes Driver/enc624j6net/testroutine/enc624j6l.asm | 1878 ----------------- Driver/enc624j6net/testroutine/files.txt | 1 - Driver/enc624j6net/testroutine/make.bat | 6 - Driver/enc624j6net/testroutine/vasm.exe | Bin 282112 -> 0 bytes Driver/enc624j6net/testroutine/vlink.exe | Bin 182272 -> 0 bytes Driver/enc624j6net/track.c | 153 -- Driver/enc624j6net/vasmm68k_mot | Bin 363476 -> 0 bytes Driver/readme.txt | 6 - PCB/Gerber/Front-Breakout.zip | Bin 31814 -> 0 bytes PCB/Gerber/Gerber_V03Front.zip | Bin 0 -> 59177 bytes PCB/Gerber/Gerber_V03LANIDECP.zip | Bin 0 -> 242416 bytes PCB/Gerber/Z3_LAN-IDE-CP.zip | Bin 246622 -> 0 bytes 70 files changed, 1023 insertions(+), 8844 deletions(-) delete mode 100644 Driver/baxnet/source/enc624j6net/enc624j6l.asm.info delete mode 100644 Driver/baxnet/source/enc624j6net/hw.c.info delete mode 100644 Driver/baxnet/source/sdnet/enc28j60.c.info delete mode 100644 Driver/baxnet/source/sdnet/hw.c.info delete mode 100644 Driver/baxnet/source/sdnet/hwprivate.h.info create mode 100644 Driver/baxnet/source/sdnet/sdnettest.c delete mode 100644 Driver/enc624j6net/README.txt delete mode 100644 Driver/enc624j6net/build/enc624j6net.device delete mode 100644 Driver/enc624j6net/compiler.h delete mode 100644 Driver/enc624j6net/debug.h delete mode 100644 Driver/enc624j6net/dev_info.h delete mode 100644 Driver/enc624j6net/dev_info.i delete mode 100755 Driver/enc624j6net/device.c delete mode 100644 Driver/enc624j6net/enc624j6net/asminterface.h delete mode 100755 Driver/enc624j6net/enc624j6net/enc624j6l.asm delete mode 100755 Driver/enc624j6net/enc624j6net/enc624j6l.h delete mode 100755 Driver/enc624j6net/enc624j6net/hw.c delete mode 100644 Driver/enc624j6net/enc624j6net/hwbase.h delete mode 100644 Driver/enc624j6net/enc624j6net/intervaltimer.asm delete mode 100644 Driver/enc624j6net/enc624j6net/intervaltimer.h delete mode 100644 Driver/enc624j6net/enc624j6net/intervaltimer.i delete mode 100644 Driver/enc624j6net/enc624j6net/macros.i delete mode 100755 Driver/enc624j6net/enc624j6net/registers.h delete mode 100755 Driver/enc624j6net/enc624j6net/registers.i delete mode 100644 Driver/enc624j6net/global.h delete mode 100644 Driver/enc624j6net/hw.h delete mode 100644 Driver/enc624j6net/libsize.auto.i delete mode 100644 Driver/enc624j6net/libsize.c delete mode 100755 Driver/enc624j6net/libsize.exe delete mode 100644 Driver/enc624j6net/rt.asm delete mode 100755 Driver/enc624j6net/server.c delete mode 100644 Driver/enc624j6net/smakefile delete mode 100644 Driver/enc624j6net/testroutine/TestENC delete mode 100644 Driver/enc624j6net/testroutine/enc624j6l.asm delete mode 100644 Driver/enc624j6net/testroutine/files.txt delete mode 100644 Driver/enc624j6net/testroutine/make.bat delete mode 100644 Driver/enc624j6net/testroutine/vasm.exe delete mode 100644 Driver/enc624j6net/testroutine/vlink.exe delete mode 100644 Driver/enc624j6net/track.c delete mode 100644 Driver/enc624j6net/vasmm68k_mot delete mode 100644 PCB/Gerber/Front-Breakout.zip create mode 100644 PCB/Gerber/Gerber_V03Front.zip create mode 100644 PCB/Gerber/Gerber_V03LANIDECP.zip delete mode 100644 PCB/Gerber/Z3_LAN-IDE-CP.zip diff --git a/Driver/baxnet/README.enc b/Driver/baxnet/README.enc index e67cacf..10f9a38 100644 --- a/Driver/baxnet/README.enc +++ b/Driver/baxnet/README.enc @@ -17,7 +17,8 @@ Installation of the driver is straightforward. Just copy the enc624j6net.device to devs:networks and enable the interface in your favorite TCP/IP stack as usual. There is a version for MC68020 or later (enc624j6net.device) and another version for -68000 (enc624j6net.device_68000). Choose the right one. +68000 (enc624j6net.device_68000). Choose the right one. Please rename +the 68000/68010 version to enc624j6net.device before use. So far, successful tests have been done with the free AmiTCP/IP 3.0b2, AmiTCP4.0-4.2, Genesis, MiamiDX and RoadShow. @@ -66,11 +67,16 @@ PRIORITY=PRI/K/N,BPS/K/N,MTU/K/N,FULLDUPLEX/S,FLOWCONTROL/S,TIMER/K/N,MULTICAST/ Changelog: ---------- +2.7 - fixed MuForce hit + 2.4 - added second semaphore, specifically for the write list - recompiled using GCC 2.95 for slightly smaller binary - avoid full ethernet chip reset on startup when the registers seem to be in a sane state (faster init, especially with DHCP) + - additional checks for properly built hardware: + verify data bus bits before accepting card by + a simple short mem test 2.3 - implemented fine grained multicast filter hashes diff --git a/Driver/baxnet/README.sdnet b/Driver/baxnet/README.sdnet index 6c56b81..80e387f 100644 --- a/Driver/baxnet/README.sdnet +++ b/Driver/baxnet/README.sdnet @@ -188,7 +188,18 @@ TIMER/K/N,MULTICAST/S Changelog: ---------- -2.00 - parse Vampire 4 UUID for MAC auto-assignment +2.7 - fixed Enforcer hit + +2.6 - more sanity checks to avoid a hanging driver in situations + where the chip communication fails (i.e. with ENC28J60 + resetting itself or losing power) + +2.5 - added support for larger V1200 flash type (for UUID) + - better test for Vampire V4 standalone + +2.4 - version bump (aligned with other hardware targets) + +2.0 - parse Vampire 4 UUID for MAC auto-assignment - version bump 1.99 - re-enabled 32 Bit Buffer copies (unless Miami is active) diff --git a/Driver/baxnet/bin/enc624j6net.device b/Driver/baxnet/bin/enc624j6net.device index 1fd98c2951685a576249db071566220002897658..ed1418c3b707bf98c0c738ebdfb05c1025c5b9c2 100644 GIT binary patch literal 12972 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 literal 12636 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 X$j1m@*kYZt@QZt~NCU5g@{Rus=F~b; literal 13072 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 X4H;--6t`2OH!x$*x1)%3!* diff --git a/Driver/baxnet/bin/sdnet.device b/Driver/baxnet/bin/sdnet.device index 7214c9fdabfb06cd8c64c4986311f8081c016def..f454ac64659a037e81b9b20095d4f5ac4deb2d41 100755 GIT binary patch literal 12760 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 Ze?^q`)5B2d&yR1zg$3>NfU9_({|mMLJ753+ literal 12656 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 diff --git a/Driver/baxnet/bin/sdnettest b/Driver/baxnet/bin/sdnettest index aec16c45dc27776fd8cd73523d4c095ab0697605..83b53ba10c435970ea96ce24eefc85a958aeb430 100644 GIT binary patch literal 15464 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 L+}BXA;(7irsAT{u literal 13260 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 diff --git a/Driver/baxnet/bin/v2expethtest b/Driver/baxnet/bin/v2expethtest index 7df03b955895cc98b25153fa3dd322a88a0ea89d..c9a2050270f9c55ca5b8c223328af05470a85af3 100644 GIT binary patch literal 15480 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 MgskNM6o2%;0c#Kb%>V!Z literal 23960 zcmdVCe{@t;mOr}htxBa*6yXxed}D~=P=pvlQB?*+Oh=|t387MiB%OdAZO6GqlBxtM z$@P*T`m(TsfauV^jBWGmo*p0H?_%|rR=PXQ^Xt$q9^b%YIp|_sk@oq}uV1kpRN7XX zu^AgRphL_yER6?Gf0+bCetF|3@>Zt8-^(VIdVyN+#*GqKO zA6nLA`zgXR$bDKI%{iW~VdwJj(VQ`Z&<+Ku@t2dYF}*e8$}bJ1u3rGoopFcJp%Z<) zY#Tk3b1wQk`a-lzY@?&EpMCwTw~MsjzVh2wglbaW&CBX@M#qNkPpKhrAY=o#LZO*H zG+b2GXe#bBJON6OQYk`!NeQ(z^~TWrV?>DU2JgO@e}V+Z@%9RJ{;vfI<-4y=UDJ>b zIQ3}tALu^Nno7S9EDPm~1*jw>%Bdt#;7i(eijcRA(1WQ%C_Crn*lv*olrxgF^@}bl zS=L4NoYBUYzH!7a646MS$!j$($2QX<5?tbk1=e-+PYQewyZ(i#aH{YWF8? zKNY^5GYPv0H4X#MZiY?6*2ie3+wM>}7x*-P^nSdJ#!~1u^wxcniYue@)LbPP)L37iT%xV{K8~lQKAo~gOzed<}A8TU0Obqwj>IcK# zfXU)lV;^9cOWQj|-0bT?D$SDizMh^~Z->tXf#qLKS7-Y+v97VEVoh{)P#Ap=f?eAO z3^ z=`$aihO?5Q-;DKc$DoNgMtQ*Oys<0k7QYUgY5Rt5r{(19uxPqpBJb>g5cLftJ6M3G zo9&48$Iw~Xm-s+3DWz$9f6VMhmtC|Y)?;*=oqn(qL*3p<7DZprhFElNhulr~t{Ji> zws&^+Y#04~Vhg&J<_DxLDW#U>aOw8U7&JrTF;LsPAVnR05B6G;Ro^T?3I>OVq2I)C zBx2pYEbnq8zDWhQ$^xBfY?_{LfU*q5`v!VD7@HIWk*1-$7i}h!;%=+!Vtrq-Lsam%`Op#B+6N zuwtkGFFl|LdYK>emjGlG0-?U?D?L`V0I?v73q8V`K-Lw|Pmb}+AAu?d-I2d3?T zo`Gb4w~UIiUAF}>WzgG>?aPEjl9?T4-|K>OuvY5pL4?tw(-@l0?j7K8cds1(-p-x< zXfA_8baWb^0aGm9FM;LY!LIH!Kf3xJgzoBn2w*I8pbp9>J&l*g+WUc-5leo8mE2+U z4U@cMw#9+Nvs`K7|fE#_zgqnv;@> zw9;&c#>`M}QP&gO*4fc*VqLwvx}~PFHP#!exDleWy{k`nF@sv0*R89)YiWm9tW862 zXXwDRTC_BPivqc9S6P;?2K#XGH7Aifp&81ukg_`R@E0dyblcgsCg0yQ4g_*xe;rA< zg-@w~wRQwH*i}IM3=luFAns|3e6)xRSB#b%GIs8wLDxUqX3I|#8S3rMw-l2FTSBCB<8G}Zf|;X(e1s6FmRI}K=OZCjJB876Yi znOOxiqO_|mc41!>B9CyO)pBDe%ASxA&&lWE88|IKoCK+YKcA;&j(g;FWA-AgxJf7-H-mc1KCJjj!{)tbCbw!xJcL9 zni>b5ogjDQqkyAC34}-ls;Pwc8e=IQKUmhA%0sZ=^MyK=3Q!tbsJRK&JkhnCq`QUP z6{33=rXtj`=lJfd_|4C#I(oSl9EJkJHdI9zjC1ZO$w?`=Nb|?7UvgdzO zHT6L1_+y=yxaH`+L}4Hcl-9;5a1cEWP*Gj#Y${Mo0zBZ7yHPR-e(eRn+PoXnJ#CEc zk(}#5sh>IbZwC-7k({$5^~)H2#}9n=hKu^ucfmEuyRyhff8_}OifVzke;1WUV&uP4 zJ$~I6qsnL6nrgUwt9LN5%Nb)y{viAV2fO-w_-Ex#MuKt}I`!i(Q-z#I~h;_&qc;UZS#`+O!ZflCs z#8Dr`J%IlSav=YPit(@2$>tXh9uo)V&h<;k^Tu7K4Wr0qdDWi~@$B)IM=4RrlFkzT zXB{}oAr*EDhx&2#A8BojN)GIxe&RZLca*Kwf@RdQ`_~F2TG^K}951ALE=3=OWIPEB z{(j=wy5fblrj4j;kV#r`Ua_Y*zc^4s6+1}2SIf685THsK)PTY~`EzlM?tE$^(}r50 zs<@v##S9DH75%@c??n9;hSfD-EA&@|h?ttvwkGuCE*^)HHdDb&ziUKE$ahWHV^sVa&xTw5 z$iv+5y@2cfyl-+u!CJktAt)|6*&NL>ZZ9?ZlssaMg(yv8H+{6`k5tQ8vaX=N`uC{0DX}#epsGX%`02A9M=hW2 zH^1Bc#*j%B*2ur=Q>~Hnm2U)wnQ?1wk|X9zk6ci`9RVJ@H8Nzz4tn8^H_;EdQ#Z3P z8!9b5op45vDytJTRRUfNL;qqvxgR@=k%>c#{`pD0!Ts21CiR-WR%ENGAkqm}& zfQSBbX49fLr>l@|lj&la4kI0r>4g%$4e2#)nBA?ZL^-7OD(R5gcx1z6atCjzxMkHXt8du=xu_h~$|$Gu6h=*}+}%I#^zILa zUO&}OpvQrcE?!keb}yG=)&y;5Z~H4Ye_#)0Sr(SmD4o~Kg^I|w~_2=EMg>ZVN#%K#!OxqDqprO0H9+x!)x z?6%we!Il1s;B9M`&4mR8k0Qjxb2owsui||~`L7Y(`~+4SlzN7V77C(86;t>fa@r`x zxp{|j9W?AAWjLSIQ~`3(KKpwjACaRxB339@w&nVIFwU?~jH%@z0vg!#hY^{rri$3x!ZlqOwy?@%XIx=}a8bZ>g14(s z;{vxfNQ*<{OVlBME9Vd%zZfkxCq&;8_6$}wiw&jGvdVQT4u^>PGl zlo_;BIhkr#cdis=%9X7iUMH?!f*r24*S*s{1#FsxV&Gf zC?jz!++K`Qij(r8sh%!Vt|Imhv~U@DUwjPlF)mHy=A(pcq|UEVuIg?LDV3(K&kreA zUjRLEhsd4}8=z+Vdf~c1QnKW&Rc}FeU|m`qji&lauvT}kM;dGO!e1+Z=<}Si;xljL z`a}!H`5I~_#aqF*WNMOAhGzM%IoEeDa|Qg^R05k59&A5kggNCCJ+w(wrRI=gvak6a zla_|a{f$zU%TVHEE`XC&aiV9e@wpy{l35uu=D8@;9%@%a4u)p(va%CM}3(tUB1 zv_zkZzt_4=O45cHjlYn=$n80ob59a3A4*8`lRLDFcxN)0vb2@rN^7V_az}efB;3x= zxW+CF0Ql1A>$Y0^;Vai_9v3VM@t?6BsY63icls>R%` zVo0`k)SX?+PkvO>HCFS$7I}3X^0z8T^jwX#9%o zw&!5B{mk}U=AZJUvQ>%Lj%EJQPt`r@A@#Ja!`7^Pre0PeN(8;s47=>HhPGU^$gnNP zP7%8SBl-*46z5zUavka1d!4^v`XOB|a7E)eEv1XKoCbN`@7;(VYk&XGR$6NRmx0Y& z{VA<6ro?D)luNv2>KW$>$ZK)JZseX%i4_zX8ESW-H3u!yN&WoWT36rsc3Oc;QpJ1% zWoy2bvV)Q`*ED6k=DduN)G(4&EGH>wpUD$wdxwS1yU~K3#@2gB>j?w!$xy?K=e`KiBv2qYcg_@Xe<|E}=@*t!{Q_m1e&B9qZ zqm+-FVy9;t*STeoG*z$^<8Rx?{a#NOJoN+F>0(*Vb zi;>$I4PhlJ18#-KR4JZSwn>(`QD#TGSysC=k%3^|0mEwyMIU|*>djfb`2B|%EV{fFL^0J=fcF^wzrp73V(Jkk6wtC>_8tqcPC_!$*5q=J%5f*u- zIx@6H_2RU3X*Jo$Qe#6Oq+m}O>pmvuOq)`34(oa7(RJ{|fj9Whb6d_1zv)YEIeuBUN+d(ayZ8+TzR`)|jqDB%+1Z zjy4W7K44k2)t_RP!h&TC>p!J~dLFc()IN}I!BmdFDK=OTlapTdQoTE?&dZ3)UZL*( zZ>jr}Z>j4_x5srQ<*0k?Tk78bEp?yH)U|AFXuyB>2k&WRYjtDwH(aOG*aRnQO?`Dk z>!#{Wt$|iwb4z_wOZ}#M?m{H6A<*axH@C|7#!Z{$dsF?!buBVhx4EIAc5`#Xx;E6y zxN9xg%?+FCYpPo}1zL&s0g7tacPXsZVb?g}6R5>pdKh!bjd{?bQl)KauTDDCGx!K5udV)jb2y{*Upzl zOIn4C$KI-iIxja|Ou~YAR(dv-)umnPiFJP<6+JBqY`~tjKE1BEpi3gFQ>9V8%*Y-4 z1;<&tV0W6k@ekz0I&sbS)|(TgRlUVpyX3;E3*G_f<4xqmj;w%dW8SlMS0FYt9+ccu z;GyiJB4~Sf$>to6hQ4>opkZZL@k`4lnSyl%&mm-7_H;(Z(a(cA(Mv4Za|WeWd(rCS z)EY0frs96%{yO5)$+ug6LH*e0^6lf|udk$h8 z()-SA^w#2fX?;TD(bz?67eKeAs2HAl3NA2n{q*b*N;IrS#jt84X#7aKT#C z8ivn=y^-*T?j%KI^GIdA$Gl-pl-3UCup;b-g^!ywBag*>u$QHV!$?F~nkU~x&s>>t zp7_@NamL)B@R{IB!U2z(rr&EpeYFQrjaUt3ov+wtN8RyUoh@sp+#{y#B~Dv9BrY`& z*1V(XS|O$z;}4r**1G8Awe9L@hOx92>`u!bJ0Q<6;Ol39jWwo}_rq7xe)+ehKjc2l zVC>rD^ME%by5)X|j#vkogGfmUJt;->4EeL703a`YS3(Xz0BsSf+eIAyRG& zDPI6%39NErL;D|#tF*hRB=~|nX zhtv}Zbx`5?repP=k*pYfd7>O+`8IaIdM>EL`U5Qo`}%rgCMB?wn4A=H?dNe9Wx(e0 z${irXaURB{+$sZo(|B;J?3dSd&WEMOyE%`w+nO2#r<~v_>?8J@S@QB-$ostXUKIB6 zY4{R~;Gf7Bp*&v4aEEYywQ`lYA$7wja1=p;)`YvLKwBm~Dw7MaN`mep*^4y(G+adL z5rVgNo^ndm`=D>Lo-21y-7rc2K_RWv=s*h87NJC6LyujWo(&9RTY(u{p<;{)(r&h_H7k47VxRvLtHCrQ2JMkegQl3mfXZoRKcbEqtY!k{jB=$!RHjoeEl?CwE+%u`_sGz25ju zd|i-MYaV3q`LMv;-Rt*S z7$--7F;9fBXV6ODvi=P!rC8$>_K3<}T2!$|coufHpGS3e}zoQ}XB(g2vrcrNl? zRzC6$7)rxMXA0hpxf?F4N8y>JTQx%s|3mpGLfX&Gcrj}<;Y^eW4Z0)yKZ-5DiT)ht^6<1FeiZSdbo>R& zZ*J)tOCD4^?6_6p@x?t*5}U?FH;qU^xQM2+l&E=KY2f^ALJ(FzqqSEw8Tz+(^raqYs?4UZ5nc?QvG{UVYAGSkz)jB@xbNGHwiaD;8VBeK_Hu9SpKp; zgCz`Y4L+;8lwh`hQR4vC9Czx7TEOiGY^919HlYSA@xh6w2orW@~L1D{hx))s{5q5 z4HP*fo`bSJO_>tI=RR-)bgl_F1`i=8D`6ibJr6Mzjnp}rYEGw4BBdJ5<}I>pB%I7SVmM8T(UjA0^UZ~u zv1^^2FkI8|E2v>ZjUriNm(j^3S)a+&8)g;gSwVB^6mW(nN6eT^yJQb(@{ozU2q@1< zmk*n|Ogq!%DOlJlBy)|C=LHRuV}^&ZSLGpo#@Na6>@mcXe5Mf1PH3RTp6S{3&)b^9 zn;R|)Xh!Bkd1M#3W8(h6^%t0LkTNoKNoQ^zR?krdw+}dPEyjqhk0UQ*FQv_ zYdY^1Q4OzYe zX@^V~%kntV*_`GX#{FX3$;&sX<`v1?G4?M^+z81zI{&{EP=T7>gMG$lQFo7;REwKj zkyJprIh6C9z%0V<<~5#q%tME(t*M`Mt!1}+H{bojmlFznh7W^d=;y@lD1Gl#tx|u= zsX(6J4*zH7GV-4^>^usEjO#-~-fdX~37L2s;|QH{y~QZw^59<~?`0#%@jriw_)Bd~ zQD4q;iF{*=c@y__;%TGZ%#*Qa^#bHt@m)qc*Ku2^J%bgpmUD1r*q8H31BK=>Gnw#?i_ul|L*X`*RhAB*3$Z&{z_(tMEm3HvcwS}!#iKmSDj$E(C@TLOoyN}u<{FTA)-L0x3saV~j~`!%eUc$1ef%imsv)I( z{1D#*Dc$4y5zn&h6|7n0XFX4l?K#n*xKECyJDUByQB!>iXS=#9n$0rJ zanR&2A7l+Pj=O(2BZfUha?NEM8Kp`Tw8_1)OD`@wijgC|(7>uRUdMNB4CT_$>6Af* zL%KbDlc6vTmgX#vzXBUVQlyYCAKU>Py^}kt3d-(E_>(GUAeu_ksQZ&G}sl z+z60Mu4wM_pcc7vf0ueAbr4Qe$VSiF`EI1HDf{U(OMePF0uI^Vob@ zD>lTQ1%27^N~^3j<%R`#^Hd+c_ra`zOn&*A?vhmE^zBOzs0@M1VwUD>{|Qvu^v22s zJL#qM?e@y-ohp1J6wE@|i+>T{t{HsS&fI{nrL9TBeZR61tc2OdoxrlM82-$bWX@4{ zl3Y1Q+l!bgj8YhLLYt=0hfxBICM^Ws3$2`>#q=(D3>#)kekRp8FcS;V$RJTKY!SR4 z>9Gf^=#iD9s8b}cu0}q3XB4o4aa4bar-rY!D)aa`l{W_O;1|({=;9Su24BNP+jp#5 zWn^G|QbIdePtHT@Yo;M@#P+bJX+PGq);;lS(-4y846cz>hJyak85*skMf)gC%cJ?4 zHk7YL)r8w{S+(({*|iKcjSn+FW67(c)akF`(X^Zd~=*OyVbvbu^68H-HNF!?g#Da7^DwIA0nI0bVHxY+h3j1ixAJObZ16}xfe zi1$rY;Y}^U2@zH|NCUn>n`|5aubxNAAOda+Qa^%$kVLpwmfnll{bA@AYLm|v)WH6X z;6KFYBIx7q9>=pvK3B_UkZ(*=xr~>{XR&-12ox2KvjwMV z$tb7)C1>-f3cYBh2%6K1?S>To>o~q9d{2YkZ+xKUOLR7jos4yx_yVBV4kUWf_YlY6 zTR0>0oDvciE<}vCwg)TW3eM>@J%)7gxeOJBdxt#HAwe`9rPk(hFrbH z7GCSLzU5I1&i!+gbx=jm+Y;aRE!aM33y=w%b(z+c_ori;q`)ryNs{`>Ei4C*OqSG( ztvKc3mEt#4k=-fx9xXsj-l6st$650)Ni*W~YmEe`FgM3-#z@#O--VjdCbEqi1 zjEZrdE|zRX&q~siy$?FUf2$7ngXxw%@W|fe&h&xD!fKt@9V+N4^j?_xXP0?aN%F(7 zQ1Cm%H!DC12SX%F+M$DGr491EJc^9zH zn{K1xhSZH^*lqTaJ$!`hi{X23+rQY^IDlJ&*}JIiH`p%h(Tkx2Dd(NI9bW;sy$^Ao z_-^B{KV2?lPINeaVZj6>0Fc63q2Q}yNl-%m{qP|JN~vlbmQo<^vspV=2@wH=GXuf- ztiP~x!F?C8F0bTj6F zzkGw38^0X>4VPQKGW+UgPGetKKGPtC#G;QBA?TQ{dDU zk)!?YzrGS54{O8!bK_t07~cr*CAFHeE%*=je;fP^-LWn09i8z^{qHt;n<}{Wyu7cp zcP{Ube?F_N$Js8MX)EB2rY!oB4sC)~)TWqD+s+v}GgJy^<6jT|ud*)s#QlYrLzF~t z=7#Tb+!`%UIPqK&x9?C|B3c1dd9bGt>s?N-r$qT+==|>ULs47YemZo|rv2bFd?5akt^-RV3#PV@fYrjz}ET` zZnW^tH#Y)qT(iwAan12YO6zs6l;oQm^FuzmO!&_cOh+`c+hjk8LuN_1cOX2`+?hF714q_6S; zF6w~q-9h$vZZJDC$}=hFa^tYhd8(}MXILJJ?6@f+Z6~bP+9{HL_-v^F6#Q?Ami- z`>Oo)4`_cCcjK3n1G$Sv zXZc*FAMhmNo0`Ufxja{xPfpy^bmQ*}FsB^80EslW3S#ui7Uq@BC(i}lvv{S;d3(0h z(fTMx(pfUo$CKR0cs}S(w>^u4<-(D0;gpkuTQ3sXdVx^J9@Fy}M?aOS({!K2NJ=WB zDJ)OLwW;V3-tO8Va9q?5$-Q(zZHi;FN*uM&7y&g>y$W}I$%`BH)sgTj!n*0$b1JAt zLaRu=!xd`DBDQjOXzpsbeo_9rAAh&TU9HLZ?|*y`;vpIT;K!S5qSe~~@h?Aatyx7M z9*Km*;SZmS)TBH6I<1gs@Xv#I5j&fI%gc5ZL?L z!zsO>lwLj+37CsUAJWUoVV33OhG9tyk;;clt&rWbA*3_p40KEu2@tFDrTf zi96Kt1MMbLz|-}GnStQX%k*57mm}tA`9buiM6QHKNx}}l>?P!g zmLKRvoQp4Y7>`@xaWJ0vWt2NxeuFviiT(_0lAKS#$8#+ywoN`rnF^mWO;t*%x(W{y zpN$@YMw6>z&Q(zNxHkV=sGAQg`y_pBEsvMhi@$B#ude|l)9G({99m{R*3(>b9o93@ z!%tlcFVLIwC$LsI@pQRE`LDM;j^|sbm+8-m==_A*@;D&(i&w1HzqMEMah7*8{HYyQ zpKxZ*nq>^| z6MHGFxe*=O<~)WP>Tr+S$VtyW(n~EZr`ubHaJDzphf}`zRRs6+Jb~9k%+2Uv;B>Ms zYaQBVA1R1mYmKxFL5^VM|J_-vCIjHOwPpgwi*=|k|JSc{x_>+R`sn<{*zJz%4(%;| zdPxp-uOA$9lN0kJtMo5 zs_yhI!#()(`g^5{<5A>lBail+N#vE(gmhPX5%TZQ~vI7?$ZQFC{K-;4zQMcNuHbuAB z0y?kU{=tD&6%o4{PSF$L+xJH7s0I9qh7S(Z?pgnNWJ2OvYvKCfKzMH@x3>;Be{f-M z+n%;ZFCE}^Eu44E;9Qx(c?WR*U$|Xbx{T~EV#JiTUiXVg$JgRCj1p_)_`fGY$FN>3 z`8|5h7LA5G6LjndHqKux?&ds!+Kv<=9?N>4@>|?Q3FLy;ni)P@U(2kmxI3k$V8&0t zPFAKSdWlYsSnU(NP%1|Uv*kH&%?POJT_wls!ZF-|jhC(aJ!#RFZJOjonu8;I`U+hgXl!$w4^b^jHc{J94?zD&Zj_gTP`RqSU-Lns;%yvC^>B%&Q>QYor zmws?Z9jSM$Bf5PZZUot*b=z_?BXA&m`@V=BSe*w`2lpbE+W zV@g{YS^Ti*PICo+K`8E)oM5x&4gHKa#C=)v5OWo~=2!T=q!v47&bdJDQv1QZiL!eh zO_XqJ>pyR^-#*A}zVrj8j;Xx#w^Wm&J8DSPJz;PvU49@VLo*awW0Cd;0>64lcftm- zHx5ht;i_eM!wb3_wgcv};gqK=wes|Lw(XR+cq8o8-!KN&80sO*YHECd?XQ~u6Kmj) z#r&4PTR7x&ikmUI*!c8#u!76oyUoux#guVaTXvr3&rYb$@UO66`ClS^sul>STJ`wU zah!xZal-Y2{C3U`U50ZP*y(8usQ;1?90dioI_yEGpfmo%yTFstLmAu0hBKoa zHC-q11t?olYN3ztjj}^HQ1b=Ynb{J@bAVI<>6diDiZm5)1^&7(@_lT1IIX_vrr`Tj zNu=ypH#(wdH7;+%UVRtqi_3ySFWL-R4nM(i^bpjf>FbdcD9`u^aNxoJGqp-mQp?sC zzMo)P;lGuBYpe^9rHmejzSh{%ny2wC2tG9z4sUjh{`?O7y7+oK`WRN{eOOPi_9!k` zmf$vSx>b**MsdE3k^2MZ$nO|GF;;Tk=2YT-qX9S25jR8Uhj4Sm11KIj+|Ur)NV}Cs zuF}GVkppHLF)(7X21XDy@@8t>iW-1-acv2^2Pe#)cmwK#?{W4!)1Q6<9#&4%!uNwb zT7h>P+4E8@&tqg!w{>sJ9`2vCCUQ}m$JfENDTH%r_Xw~i?a{rxr=xrO@@0M*@{7D# zj14!`>Mo>&oq6*GG^z87wTEV2S|@rKmXuG#6J_36yOKY>EG^lLJh_iSO6C1W;IO2HB@lCv zThGh1WK8g03Vg%2X?lsZ1Hz8RgBA-C*!g2`9R}}kk6UV-%bC4C_lwtZ%NEB|BPaI% z4fu-#t4jN*A9kMsZkB}u^nHXV!hHx`iv~&1z0e-b#uRoq9mvx$A1d&-A6UBTO7KT@ zL?3|~O*6&t(6%^hBbuMQf7&NwryzVUE%3$gbLJmDLI-Y6htP^b-`9)fJF4f)_kDV< ze0S*%yn}Qvd=h2cR#b~0Fq9Ec8s`$wXY$RmvSV7j(A(1Xly`ohnwpc&T2PHMq3?4& z-3@)$9HT2&UQc5Iy?)q)VJ>sq1*o( z>RGK%_rC$wWPw?Pr{f;jn6e)#=@NrW_C>}SzGXi~qYU;X_P3x>fR|pQ`Kc6)leO+4 zaBx|Y)K%xJE54(_ucg_QkXkzXpVBfrH68bmnTgMeH7hMvedTSn)T*hp7%DiZ$8)*I z-e$3&BBhhsYo)wDM0^X!%e1Yy4N|)YdLs|xz7oAyK^21vkG<~4nPhZ2fBAHNKJxEN zXlZzn$uH@nIuYe>C_j6uoTA`jypaFagYFU=AU^?k(0|m5F-u;7Zn`7_)PdQfU@SYz z5PxQGUy+Euenw=;ySV*EP(HJE)P{5@qwT%cE72{+=*g&_Az;J$E- zKD}BFoi`Pf<#|>apjIKalU5F@7Sw0C<(PiZt^&R-JI^8TVN$2bYusi@Gj`lAV`|+v zU1JJGH0{HCwcKe@9#{vdbB^rovvUml=nm{~TLu-DS4dDrI6y1$JtJ%1qf9SqHIM8| zI&m8svq88212_u`zn>_EO~U*x1h@AkucFTz43XyiRedXaECF|4+<|8_QKzN%ZvD$g z)P$pd#fTcOi0<3wKgL|n`{vlq;QnUWjV*&hZ^K0&{|%1@Sa;>+jreRrG&j{ZZd%uZ zB>VUw6z4ld9?W3}=9@<^2+Rr0#jJ&<|Ei$52|CdM zzIxIWWHllS4gsn-8BH>XqJkwF7fC=!7Rt z51Xs&6qK$p-TY3MBGYzQeNW4@+_Afaj0d?aH6Kt;8N>JcF6nPdVF%_a zoA!X5ft`%cc;%jR4EOvVf;BuAJ%U@w1>Q0e^49cc*n7UeWEAz>kgD^4|IbXVdfXd{ z-VFcp<3Btra%9dwzCP;BF#_Oy>4tITxirpPxr-gc?Z6V;J;iq-8L#yD{oI;u(2c)O zNuJI;i349TWw4%qT)=+)lV5t!;O&DpXcimzJV-qrqmRSzPVpC5QNCyX@hYTdV{?nB zgglJ00`DBFAJe@~_lB*3f4!UObm5LEJYtj9{cx+V&M#q!kZaBlU*Ua*%Wdt$`PM$Z zZ4FuX$(LNF!zf#|7^h8i7#L1_XZ&ndD@E}L@(<6#T%@lCM_;vCLF`N#7jw7>u)Ai# z`XpWP**SNEUUk?YrdxdmUxZg-q;WTes8D9qz;D_e33Pu$Fv@2IJAYqmO>O3HW_ zpJgU-uGlotZw&Nfmen^@682?*+?jJO-0OXa`$vZ@-ve-bLfDfd;OBv}%mWqcxgX(P z1pW&TE%?h3;|P<8I}lt5xd>5&MuaU0I}x4$0!SrjraR9gypI6fcYc8Y*{#IBtrF#x z1qkH`wFtmniTb#TK$Q<8>_K>v=sPBk(Jukl4-r(N&CennB-(Tmp%>wo2s*;k2*9-o zI5*WHtR-sw9N}ZYuSR+d@wX8UBcu>^AfT z!iNaJu?h6IzJc&6!YIOv2qOs3Asj;Z2?FS81>V*t5cUDb1%&em=Mc^yoIv1ug9uv@ znh}Bs8qvlhI7~*n_25{4{fYR z-Szk4P#XPNk9O9he|6x^I<&p+O@w0zXlvcG2n`4+gdGTgTZekMLTFz@;Jk9YJMdnGcM<_@RXbqBgWk~R2&f+d zJ)vHNDg@9NDkWO`D#CLJ$iM3x0_eO8^xm}(0sXlPxb6xg=m?sZ-pn6CwFsW3_rH_;TPS>ni&I<~chWlSs1E^f z3abPEWLYiMD9BS32fh1?lYb=4qHp|U{cq&{|2Ct2cWe9YigJftu{q}5MCMnpZYC7E*Bu=|NEbU`8w~ARL#@Gq&PO0AA#6Fe_sH9CUJXb;K5jTKj-1^ z7FOOC4B-FDieO+(Fo3+QIa%pnK7QHx*;#Y5wE3!P}^|M8z(BV~&a17K93%ajO02m!nx8v /* sorry, I ran into some issues inlining stuff with VBCC, disabling it */ #define INLINE +#define STDARGS __stdargs #else /* __VBCC__ */ diff --git a/Driver/baxnet/source/debug.h b/Driver/baxnet/source/debug.h index 30947cc..b31150f 100644 --- a/Driver/baxnet/source/debug.h +++ b/Driver/baxnet/source/debug.h @@ -11,7 +11,8 @@ #define _INC_DEBUG_H #ifdef DEBUG -extern void KPrintF(char *, ...), KGetChar(void); +extern void STDARGS KPrintF(char *, ...); +extern void KGetChar(void); #define D(_x_) do { KPrintF("%s:%ld:",__FILE__,__LINE__); KPrintF _x_; } while(0) diff --git a/Driver/baxnet/source/debug.i b/Driver/baxnet/source/debug.i index 15b53c8..5d30d41 100644 --- a/Driver/baxnet/source/debug.i +++ b/Driver/baxnet/source/debug.i @@ -18,9 +18,10 @@ _LVORawMayGetChar equ -$1fe ; ; ; - ifd DEBUG + ifne DEBUG - XREF _KPrintF +; XREF _KPrintFa0a1 +; XREF _KPrintF WRITEDEBUG macro movem.l d0/d1/a0/a1,-(sp) @@ -50,7 +51,7 @@ WRITEDEBUG macro endif lea.l (\1),a0 move.l sp,a1 - jsr _KPrintF + jsr _KPrintFa0a1 ifnb \2 add.l #4,sp endif @@ -79,7 +80,7 @@ WRITEDEBUG macro endm else WRITEDEBUG macro - nop + ; endm endc @@ -116,7 +117,7 @@ WRITEOUT macro ifd DEBUG move.l \1,a0 move.l sp,a1 - jsr _KPrintF + jsr _KPrintFa0a1 endif move.l \1,d1 move.l sp,d2 diff --git a/Driver/baxnet/source/device.c b/Driver/baxnet/source/device.c index 2e06fae..2b146be 100644 --- a/Driver/baxnet/source/device.c +++ b/Driver/baxnet/source/device.c @@ -32,11 +32,19 @@ #ifdef HAVE_VERSION_H #include "version.h" #endif + +#ifndef NO_WR_SEM +#define WRSEM du_WrSem +#else +#define WRSEM du_Sem +#endif + /* NSD support is optional */ #ifdef NEWSTYLE #include #include /* new extension, code can be built without this include (but also without ext query then...) */ + const UWORD dev_supportedcmds[] = { NSCMD_DEVICEQUERY, CMD_READ, @@ -85,9 +93,9 @@ const ULONG blub[6] = { }; /* enable heavy debug (D2=beginIO) */ -#define D2(x) +//#define D2(x) #define D4(x) -/* #define D2(x) D(x) */ +#define D2(x) D(x) /* #define D4(x) D(x) */ @@ -102,6 +110,8 @@ ASM SAVEDS struct Device *DevInit( ASMR(d0) DEVBASEP ASMREG(d0) ULONG i; LONG ok; + D(("DevInit()\n")); + p = ((UBYTE*)db) + sizeof(struct Library); i = sizeof(DEVBASETYPE)-sizeof(struct Library); while( i-- ) @@ -120,7 +130,9 @@ ASM SAVEDS struct Device *DevInit( ASMR(d0) DEVBASEP ASMREG(d0) dbNewList( (struct List*)&db->db_Units[i].du_WriteQueue ); dbNewList( (struct List*)&db->db_Units[i].du_EventQueue ); InitSemaphore( &db->db_Units[i].du_Sem ); +#ifndef NO_WR_SEM InitSemaphore( &db->db_Units[i].du_WrSem ); +#endif db->db_Units[i].du_MTU = DEF_MTU; db->db_Units[i].du_BitPerSec = DEF_BPS; } @@ -153,6 +165,8 @@ ASM SAVEDS struct Device *DevInit( ASMR(d0) DEVBASEP ASMREG(d0) D(("No DOS\n")); } + D(("%ld Boards found\n",ok)); + /* no hardware found, reject init */ return (ok > 0) ? (struct Device*)db : (0); } @@ -489,7 +503,7 @@ ASM SAVEDS VOID DevBeginIO( ASMR(a1) struct IOSana2Req *ioreq ASMREG(a1), LONG code; LONG write_frame( DEVBASEP, ULONG unit, struct IOSana2Req *ioreq ); - ObtainSemaphore(&db->db_Units[unit].du_WrSem); + ObtainSemaphore(&db->db_Units[unit].WRSEM); code = write_frame( db, unit, ioreq ); if( code >= 0 ) { @@ -497,12 +511,12 @@ ASM SAVEDS VOID DevBeginIO( ASMR(a1) struct IOSana2Req *ioreq ASMREG(a1), ioreq->ios2_Req.io_Error = S2ERR_NO_ERROR; ioreq->ios2_WireError = S2WERR_GENERIC_ERROR; } - ReleaseSemaphore(&db->db_Units[unit].du_WrSem); + ReleaseSemaphore(&db->db_Units[unit].WRSEM); #else ioreq->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - ObtainSemaphore(&db->db_Units[unit].du_WrSem); + ObtainSemaphore(&db->db_Units[unit].WRSEM); ADDTAIL((struct List*)&db->db_Units[unit].du_WriteQueue,(struct Node*)ioreq); - ReleaseSemaphore(&db->db_Units[unit].du_WrSem); + ReleaseSemaphore(&db->db_Units[unit].WRSEM); Signal( (struct Task*)db->db_ServerProc, SIGBREAKF_CTRL_F ); ioreq = (0); #endif @@ -651,16 +665,23 @@ ASM SAVEDS VOID DevBeginIO( ASMR(a1) struct IOSana2Req *ioreq ASMREG(a1), ioreq = (0); break; #endif + case CMD_FLUSH: + /* TODO: really remove all requests */ + ioreq->ios2_Req.io_Error = S2ERR_NO_ERROR; + ioreq->ios2_WireError = S2WERR_GENERIC_ERROR; + break; case CMD_RESET: case CMD_UPDATE: case CMD_CLEAR: case CMD_STOP: case CMD_START: - case CMD_FLUSH: ioreq->ios2_Req.io_Error = IOERR_NOCMD; /* we might not get a SANA-II request at this point, don't assume anything about struct */ - /* ioreq->ios2_WireError = S2WERR_GENERIC_ERROR; */ + if( ioreq->ios2_Req.io_Message.mn_Length >= sizeof( struct IOSana2Req ) ) + { + ioreq->ios2_WireError = S2WERR_GENERIC_ERROR; + } break; case S2_ADDMULTICASTADDRESS: @@ -697,6 +718,8 @@ ASM SAVEDS LONG DevAbortIO( ASMR(a1) struct IOSana2Req *ioreq ASMREG(a1), ULONG unit = (ULONG)ioreq->ios2_Req.io_Unit; + D2(("DevAbortIO unit %ld\n",unit)); + ObtainSemaphore(&db->db_Units[unit].du_Sem); /* start with the read list -> types -> readers -> reqlist */ @@ -810,6 +833,8 @@ static LONG dbStartServer( DEVBASEP, LONG unit ) /* server is running, wait for response */ volatile struct ServerMsg msg; + D(("Server Started, waiting for Response\n")); + msg.sm_devbase = db; msg.sm_result = 0; msg.sm_msg.mn_Length = sizeof(msg); @@ -1002,9 +1027,8 @@ static void dbDeleteReader( DEVBASEP, ULONG unit, ULONG ID ) { if( !(GetSucc(t2) )) t2->srt_Flags &= ~SRTF_MULTREADER; + else t2->srt_Flags &= ~(SRTF_ONEREADER|SRTF_MULTREADER); } - else t2->srt_Flags &= ~(SRTF_ONEREADER|SRTF_MULTREADER); - break; } rd = GetSucc(rd); diff --git a/Driver/baxnet/source/enc624j6net/enc624j6l.asm b/Driver/baxnet/source/enc624j6net/enc624j6l.asm index dc13586..91f3c4a 100644 --- a/Driver/baxnet/source/enc624j6net/enc624j6l.asm +++ b/Driver/baxnet/source/enc624j6net/enc624j6l.asm @@ -140,7 +140,7 @@ _LVOSignal EQU -324 ;machine 68020 - section code,code + ;section code,code ; ----------------------------------------------------------------------------- ; | | diff --git a/Driver/baxnet/source/enc624j6net/enc624j6l.asm.info b/Driver/baxnet/source/enc624j6net/enc624j6l.asm.info deleted file mode 100644 index 17549b36c0bf3fb2ce953a454346ae48a71c9a31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4535 zcmdT`T~piW6(*g%$j!FfZMWak!H$#K4s2{;3qtVLktJdq%Mc@rz-)pQBx7M?v&MAO z8D?iMdfDqvccwRiSU6Zq!X#!V;Aq%M<776JwP^oA|3H62&v|8wKxwDbyBcHUbDneF z^ZC5|{k@)ZJ@}gG$@ZLwpLgKDCJ_v`I-B|uRm0a*^-ASe}u|dajvi;D>jB`etc4s3pppJCx?mZXQ)ak zpR6d$6>Q!~!;Al_1>*=iJXu;P&nZ_HCE4oV4-gnBs7oj9-+N08hUCOwpe#|ElL|H# z(kP&S=t+)UJs5SzmMF;(rf$7$iQ`0cBnF}btFm(Mo|WNuNe;J?(jrVI0g|Xvw+1K}*pp50z2$dO`i&xE z$FO0?Lqo*au@FVN_yLZ=S(F_sZ^F%Bc*a#nX5#kWxVgKWk>_i7jjk>mn?Q5 zJB>nrhX`x|by_fRS`aub2%Z+urv-zj1w*F=S33f-`xuy26-`frH*9FY{O{=4@Br|DoaYvHi!3wr~+*L0~)b1fXb?_=eZ%XAug z*ivxQG z)9<|u2PE}$Fs^yExIrA^iFF}v$8aqzb`Ooe9IGJ)ofrqBMnv2|^Jz4%j%nkwhi&3n z7mTX7*R}Gt_G-yTmet|G)M7oW@VZE{@K)m*vvs@ux(yB?5icatNieSM)$ACUt(i`~ zuMJ<&Z9<5csbxOXYPTPMdw3vXM&{+@*366e#-0|hfmN%yp90nE{YPP^-ys?^F9l)+ zASk7fZXdih^ifyDNrND_8?Sb(YD{(!PyAT6V{kFh*L2gr4lyS+G*7a-2W=>I!JTD! z5Nt#^Ob1oi-f^hXH!8L^-K-_D3mQYLm>5q@>^~Nbs}6UDv}UtE$ZUDhp}d2tJBJUP zehFHWF&(L4sI47?hBfuvP3*U!M~u_wNbmKjRFZ|H(0prpm@8p}8YUB3%OXG*RR>{eeyTBW)%%0jsw;O&jY0tD&vbG~M9H|085K z_ioR8+rag_1uG^vhoQ4jWKC`4J&A{JG!d49EDjrGOxhs5+PFbIRc~JIY>lA{8LOd2 zjo%VChqV_^wqYu*b%TbQ-38TiJDbDRhuQAFVjZTCA3W|x#=NKtQ8&bqGVbqaeu_Qf z>jBf_?~{(!gy=&b>-Jr|EH;HCn=zyH06>FXKVXD!PS~;~=o(0h`maff`i~^lIl*>+ z{6I)b0Sc3-a3%nOnI6hzFv?tphx1`LO<*uIs_{_23XV<5E)@2osC0AokMYxU_U$gJ{B^N5zMP) zj#kZD`&+_9V$L;j0jWfd>v4@()y8k<3HN>D&brbt;{vp^+ZF;}5A zP=CTi#LB}7>fD_}U1&s{R%;qSKz0mpNkHKS0*EXJTI>p%m!qD^S-75d zVaw9BXo^**fmDf6tFcRy`^6vK-q0@$s;N=#DUd2@#1m@g@Qul@JNnG#1t1Dey-DY- z!FaOH<^Nh|j(Z{Tlf!Jju}R0-U>vT!#uJ9sY18Ex-MgCJ7|B!A4XRPkqu;L=>Z~dz zT^_-R(Dmny_2+pH0G{s7w4N2BFx<~&kGNP(HTn9VNAf_LsYLY+bVvpjU+{=9V9~TL z?loTUst01S>(Cl|FyMj>&#R&V`CwmaV*{$l#OMdj+ACa}yabbWz3;xYGKnJlaA9X2 zr=0 - OK */ ASM SAVEDS int enc624j6l_bc_mc_filter( - ASMR(a0) void *board ASMREG(a0), - ASMR(d1) unsigned long flags ASMREG(d1) ); + ASMR(a0) void *board ASMREG(a0), + ASMR(d1) unsigned long flags ASMREG(d1), + ASMR(a1) unsigned short *mc_hashes ASMREG(a1)); /* diff --git a/Driver/baxnet/source/enc624j6net/hw.c b/Driver/baxnet/source/enc624j6net/hw.c index 4fd716f..0fd8054 100644 --- a/Driver/baxnet/source/enc624j6net/hw.c +++ b/Driver/baxnet/source/enc624j6net/hw.c @@ -30,6 +30,7 @@ extern const BYTE DeviceName[]; /* use generic board fields in current unit */ #define duh_online du_hwl0 #define duh_BASE du_hwp0 +#define duh_RefCount du_hwl1 #define HW_INTERVALDEF 100000L @@ -105,7 +106,7 @@ ASM SAVEDS LONG hw_Find_Boards( ASMR(a0) DEVBASEP ASMREG(a0) ) /* bring board to sane state (i.e. perform soft reset) */ /* if( boardbase < (APTR)0x40000000 ) */ /* debug only */ - enc624j6l_CheckBoard( boardbase ); + enc624j6l_CheckBoard( boardbase ); } ret = i; D(("%ld boards found\n",ret)); @@ -119,7 +120,33 @@ ASM SAVEDS LONG hw_Find_Boards( ASMR(a0) DEVBASEP ASMREG(a0) ) ASM SAVEDS LONG hw_AllocBoard( ASMR(a0) DEVBASEP ASMREG(a0), ASMR(d0) ULONG unit ASMREG(d0) ) { - /* is there a way to lock a ZII Board ? */ +#if 0 + LONG i; + struct ConfigDev *cfg = (0); + + if( unit > db->db_NBoards ) + return 0; + + for( i=0 ; i < db->db_NBoards ; i++ ) + { + cfg = FindConfigDev( cfg, ENC_MANUFACTURER, ENC_BOARD ); + if( !cfg ) + return 0; + if( (APTR)cfg->cd_BoardAddr == db->db_Units[unit].duh_BASE ) + break; + } + + if( (APTR)cfg->cd_BoardAddr != db->db_Units[unit].duh_BASE ) + return 0; + + if( db->db_Units[unit].duh_RefCount == 0 ) + { + ObtainConfigBinding(); + + ReleaseConfigBinding(); + } + db->db_Units[unit].duh_RefCount++; +#endif return 1; } @@ -127,6 +154,20 @@ ASM SAVEDS LONG hw_AllocBoard( ASMR(a0) DEVBASEP ASMREG(a0), ASM SAVEDS LONG hw_ReleaseBoard( ASMR(a0) DEVBASEP ASMREG(a0), ASMR(d0) ULONG unit ASMREG(d0) ) { +#if 0 + if( unit > db->db_NBoards ) + return 0; + + for( i=0 ; i < db->db_NBoards ; i++ ) + { + cfg = FindConfigDev( cfg, ENC_MANUFACTURER, ENC_BOARD ); + if( !cfg ) + return 0; + if( (APTR)cfg->cd_BoardAddr == db->db_Units[unit].duh_BASE ) + break; + } + +#endif return 1; } @@ -427,27 +468,143 @@ ASM SAVEDS LONG hw_write_phy( ASMR(a0) DEVBASEP ASMREG( return enc624j6l_WritePHY( boardbase, reg, value ); } +/* + calculate CRC32 for MAC address hashing + slow but relatively short (and can be adapted to other + polynoms easily) +*/ +ASM ULONG myhw_CRC32( ASMR(a0) UBYTE *buffer ASMREG(a0), + ASMR(d0) ULONG nbytes ASMREG(d0) ) +{ + UWORD i,j; + ULONG t,crc = 0xffffffff; + ULONG poly = 0x04c11db7; + + for( j = 0 ; j < nbytes ; j++ ) + { + for( i = 0 ; i < 8 ; i++ ) + { + t = crc>>31; + crc <<= 1; + if( ( t ^ ( buffer[j] >> i ) ) & 0x01 ) + crc ^= poly; + } + } + + return crc; +} + +#if 0 +ASM ULONG CMPgeMAC( ASMR(a0) UBYTE *cur ASMREG(a0), + ASMR(a1) UBYTE *cmp ASMREG(a1) ) +{ + USHORT i; + ULONG res = 1; + + for( i = 0 ; i < 6 ; i++ ) + { + if( cur[i] > cmp[i] ) + break; + if( cur[i] < cmp[i] ) + { + res = 0; + break; + } + } + return res; +} +#endif + +ASM ULONG CMPleMAC( ASMR(a0) UBYTE *cur ASMREG(a0), + ASMR(a1) UBYTE *cmp ASMREG(a1) ) +{ + USHORT i; + ULONG res = 1; + + for( i = 0 ; i < 6 ; i++ ) + { + if( cur[i] < cmp[i] ) + break; + if( cur[i] > cmp[i] ) + { + res = 0; + break; + } + } + return res; +} +ASM void INCMAC( ASMR(a0) UBYTE *curmc ASMREG(a0) ) +{ + SHORT i; + for( i=5 ; i >= 0 ; i-- ) + { + curmc[i]++; + if( curmc[i] != 0 ) + { + break; + } + } +} +/* TODO: implement Multicast hashing */ ASM SAVEDS LONG hw_change_multicast( ASMR(a0) DEVBASEP ASMREG(a0), ASMR(d0) ULONG unit ASMREG(d0), ASMR(a1) struct List *mcastlist ASMREG(a1) ) { - /* TODO: implement Multicast hashing */ - APTR boardbase = db->db_Units[unit].duh_BASE; - ULONG flags; + APTR boardbase = db->db_Units[unit].duh_BASE; + struct HWData *hwd = &db->db_hwdat; + ULONG flags; + ULONG crc,curhash; + USHORT mc_hashes[4] = {0,0,0,0}; /* EHT1, EHT2, EHT3, EHT4 */ + USHORT *hash_tab; + struct MCastEntry *mc; + UBYTE *curmc; flags = PIO_INIT_BROAD_CAST; if( db->db_Units[0].du_Flags & DUF_PROMISC ) flags |= PIO_INIT_PROMISC; - /* list non-empty ? (kludge right now, can be done more fine grained) */ - if( mcastlist->lh_Head->ln_Succ ) + if( hwd->multicast ) /* accept ALL multicast ? (config option) */ flags |= PIO_INIT_MULTI_CAST; - enc624j6l_bc_mc_filter(boardbase, flags );/* flags & (PIO_INIT_BROAD_CAST|PIO_INIT_MULTI_CAST) ); */ + /* list non-empty ? */ + hash_tab = NULL; + if( mcastlist->lh_Head->ln_Succ ) + { + /* flags |= PIO_INIT_MULTI_CAST; */ /* see above */ + hash_tab = mc_hashes; + + for( mc = (struct MCastEntry *)mcastlist->lh_Head; + mc->mce_Node.mln_Succ ; + mc=(struct MCastEntry*)mc->mce_Node.mln_Succ ) + { + curmc = mc->mce_start; + while( CMPleMAC( curmc, mc->mce_stop ) ) + { + D(("CMPleMAC %ld %02lx%02lx%02lx%02lx%02lx%02lx - %02lx%02lx%02lx%02lx%02lx%02lx\n",\ + CMPleMAC( curmc, mc->mce_stop ),\ + (ULONG)curmc[0],(ULONG)curmc[1],\ + (ULONG)curmc[2],(ULONG)curmc[3],\ + (ULONG)curmc[4],(ULONG)curmc[5],\ + (ULONG)mc->mce_stop[0],(ULONG)mc->mce_stop[1],\ + (ULONG)mc->mce_stop[2],(ULONG)mc->mce_stop[3],\ + (ULONG)mc->mce_stop[4],(ULONG)mc->mce_stop[5] \ + )); + + crc = myhw_CRC32( mc->mce_start, 6 ); + curhash = (crc & 0x1f800000)>>23; /* 2 bit reg, 4 bit hash pos in reg */ + mc_hashes[ ((curhash >> 4)&3) ] |= 1<<(curhash&0xf); + INCMAC( curmc ); + } + } + } + + D(("hw_change_multicast board %lx flags %lx hashtab %lx\n",(ULONG)boardbase,(ULONG)flags,(ULONG)hash_tab)); + + enc624j6l_bc_mc_filter(boardbase, flags, hash_tab );/* flags & (PIO_INIT_BROAD_CAST|PIO_INIT_MULTI_CAST) ); */ return 1; } @@ -494,7 +651,7 @@ void myhw_ControlInterrupts( DEVBASEP ) hwd->hwd_Interrupt.is_Code = (void(*)())enc624j6l_IntServer_List; hwd->hwd_Interrupt.is_Data = &hwd->hwd_act_boards[0]; hwd->hwd_Interrupt.is_Node.ln_Type = NT_INTERRUPT; - hwd->hwd_Interrupt.is_Node.ln_Pri = 51; + hwd->hwd_Interrupt.is_Node.ln_Pri = 126; /* 51; */ hwd->hwd_Interrupt.is_Node.ln_Name = (char*)intname; AddIntServer( HW_INTSOURCE, &hwd->hwd_Interrupt ); } diff --git a/Driver/baxnet/source/enc624j6net/hw.c.info b/Driver/baxnet/source/enc624j6net/hw.c.info deleted file mode 100644 index 36f5ad5c7deaa42ee6bfb6bcf68b72068ab03799..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4560 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 FKLJCZM6Lh; diff --git a/Driver/baxnet/source/kprintf.asm b/Driver/baxnet/source/kprintf.asm index a491609..0365136 100644 --- a/Driver/baxnet/source/kprintf.asm +++ b/Driver/baxnet/source/kprintf.asm @@ -17,10 +17,17 @@ _LVORawMayGetChar equ -$1fe endc XDEF _KPrintF + XDEF _KPrintFa0a1 + +_KPrintF: +; rts + move.l 4(sp),a0 + lea 8(sp),a1 + ; fall through ;A0 = format ;A1 = arguments -_KPrintF: +_KPrintFa0a1: ; ifd DEBUG movem.l d0-d2/a0-a3/a6,-(sp) diff --git a/Driver/baxnet/source/miitool.c b/Driver/baxnet/source/miitool.c index 5417453..5aff7da 100644 --- a/Driver/baxnet/source/miitool.c +++ b/Driver/baxnet/source/miitool.c @@ -710,6 +710,12 @@ int main(int argc, char **argv) } } + /* out of curiosity: get MAC address */ + prg->sana2devio->ios2_Req.io_Command = S2_GETSTATIONADDRESS; + prg->sana2devio->ios2_Data = (0); + prg->sana2devio->ios2_DataLength = 0; + DoIO( (struct IORequest *)prg->sana2devio ); + Printf("Device: %s\n",(ULONG)name); /* general info */ if( parm_vendorname.Actual != 0 ) @@ -722,6 +728,12 @@ int main(int argc, char **argv) productname[parm_productname.Actual-1] = 0; Printf("Product: %s\n",(ULONG)productname); } + /* MAC address */ + { + unsigned char*p = (unsigned char*)prg->sana2devio->ios2_SrcAddr; + Printf("MAC: %02lx:%02lx:%02lx:%02lx:%02lx:%02lx\n", + (ULONG)p[0],(ULONG)p[1],(ULONG)p[2],(ULONG)p[3],(ULONG)p[4],(ULONG)p[5] ); + } /* after query, see what we've got */ if( res == RETURN_OK ) diff --git a/Driver/baxnet/source/sdnet/enc28j60.c b/Driver/baxnet/source/sdnet/enc28j60.c index ef6a16b..91db00f 100644 --- a/Driver/baxnet/source/sdnet/enc28j60.c +++ b/Driver/baxnet/source/sdnet/enc28j60.c @@ -55,6 +55,11 @@ /* (note: maximum ethernet frame length would be 1518 when VLAN tagging is unused) */ #define MAX_FRAMELEN 1518 +/* perform sanity checks if more this amount of "idle" calls to have_recv() + are noted (idle=nothing received) +*/ +#define SANITY_CHECK_INTERVAL 32 + static u16 gNextPacketPtr; static u08 is_full_duplex; static u08 rev; @@ -118,20 +123,39 @@ static void writeReg(uint8_t address, uint16_t data) /* the PHY registers require special care */ -static uint16_t readPhyByte (uint8_t address) { +static uint16_t readPhyByte (uint8_t address) +{ + long wtime = 0xffff; + writeRegByte(MIREGADR, address); writeRegByte(MICMD, MICMD_MIIRD); while (readRegByte(MISTAT) & MISTAT_BUSY) - ; + { + if( (--wtime) <= 0 ) + { + writeRegByte(MICMD, 0x00); + initvars.have_recv = SANITY_CHECK_INTERVAL+1; + return 0xffff; + } + } writeRegByte(MICMD, 0x00); return readRegByte(MIRD+1); } -static void writePhy (uint8_t address, uint16_t data) { +static void writePhy (uint8_t address, uint16_t data) +{ + long wtime = 0xffff; + writeRegByte(MIREGADR, address); writeReg(MIWR, data); while (readRegByte(MISTAT) & MISTAT_BUSY) - ; + { + if( (--wtime) <= 0 ) + { + initvars.have_recv = SANITY_CHECK_INTERVAL+1; + break; + } + } } /* just a pass-through to the lowlevel routines */ @@ -460,6 +484,7 @@ u08 enc28j60_send(const u08 *data, u16 size) we would overwrite a frame still being sent out -> wait first, then fill buffer */ + long maxwait = 0x1ffff; /* wait patiently */ while (readOp(ENC28J60_READ_CTRL_REG, ECON1) & ECON1_TXRTS) { /* errata sheet issue 12 -> TXRTS never becomes 0 */ @@ -469,6 +494,8 @@ u08 enc28j60_send(const u08 *data, u16 size) writeOp(ENC28J60_BIT_FIELD_SET, ECON1, ECON1_TXRST); writeOp(ENC28J60_BIT_FIELD_CLR, ECON1, ECON1_TXRST); } + if( !(--maxwait) ) + return PIO_OK; /* waited long enough: drop frame */ } /* write buffer */ @@ -591,7 +618,7 @@ u08 enc28j60_has_recv(void) if( !ret ) { initvars.have_recv++; - if( initvars.have_recv > 10 ) + if( initvars.have_recv > SANITY_CHECK_INTERVAL ) { /* check for bad config vars and reset hw if that is the case */ if( !enc28j60_check_config( &initvars ) ) diff --git a/Driver/baxnet/source/sdnet/enc28j60.c.info b/Driver/baxnet/source/sdnet/enc28j60.c.info deleted file mode 100644 index b3ad119e679ffae72d1386b20b666b9434e2f929..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7110 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 diff --git a/Driver/baxnet/source/sdnet/hw.c b/Driver/baxnet/source/sdnet/hw.c index 23ecea1..e3d362e 100644 --- a/Driver/baxnet/source/sdnet/hw.c +++ b/Driver/baxnet/source/sdnet/hw.c @@ -428,6 +428,24 @@ ASM SAVEDS LONG hw_get_mac_status( ASMR(a0) DEVBASEP ASMREG( } +/* read PHY register */ +ASM SAVEDS LONG hw_read_phy( ASMR(a0) DEVBASEP ASMREG(a0), + ASMR(d0) ULONG unit ASMREG(d0), + ASMR(d1) ULONG reg ASMREG(d1) ) +{ + return -1; +} + +/* write PHY register (return -1 in case of error) */ +ASM SAVEDS LONG hw_write_phy( ASMR(a0) DEVBASEP ASMREG(a0), + ASMR(d0) ULONG unit ASMREG(d0), + ASMR(d1) ULONG reg ASMREG(d1), + ASMR(d2) ULONG value ASMREG(d2) ) +{ + return -1; +} + + /* process the list of multicast addresses for an appropriate filtering list on the hardware diff --git a/Driver/baxnet/source/sdnet/hw.c.info b/Driver/baxnet/source/sdnet/hw.c.info deleted file mode 100644 index 1310a4ce7056bc97148d0d989a5e4d161f95c3b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7142 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 J@C8WZe*k#W2`>Nu diff --git a/Driver/baxnet/source/sdnet/hwprivate.h.info b/Driver/baxnet/source/sdnet/hwprivate.h.info deleted file mode 100644 index 9fbff2952f1cc75ce745bd63bc1a772c7402a875..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7106 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 jt%e1+8nSLRWZ!C7c&j1jR>Pt(gE# + + Runs a number of essential operations on ENC28J60 + modules connected to the SD slot of Vampire V2 + (500/600) cards. + +*/ + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "enc28j60.h" +#include "enc28j60l.h" /* import lowlevel asm functions */ +/* #include "crc32.h" */ + +#include "vampuuid.h" +/*#define __NOLIBBASE__*/ +#include +#include +#define INVALID_SDNET_UNIT 0x33 + +/* delay after changing SPI speed in us */ +#define SPEED_DELAY 120 + +struct Library *VampireBase; + +/* */ +/*u08 myprog = "sdnettest";*/ + +/* OUI = Commodore :-) */ +u08 macaddr[6] = { 0x00,0x80,0x10,0x0b,0x0a,0xff }; + +#if 1 +#define testlen 300 +/* issue a DHCP request to increase the likelihood of received frames throughout the test */ +u08 testframe[testlen] = { +/* Ethernet(14) */ + 0xff,0xff,0xff,0xff,0xff,0xff, /* broadcast */ + 0x00,0x80,0x10,0x0b,0x0a,0xff, /* own MAC */ + 0x08,0x00, /* Type IPv4 */ +/* IPv4(20) */ + /* IPv4 */ + 0x45,0x00, /* VER/IHL, DSCP */ + 0x01,0x1e, /* was 0d */ /* length 273 = 245+20 */ + 0xA0,0x0A, /* id */ + 0x00,0x00, /* flags, fragment offset */ + 0xff, /* TTL (255 for DHCP) */ + 0x11, /* UDP */ + 0x00,0x00, /* header checksum */ + 0,0,0,0, /* SRC IP */ + 255,255,255,255,/* dest IP */ +/* UDP(8) */ + /* UDP */ + 0x00,0x44, /* src port 68 */ + 0x00,0x43, /* dest port 67 */ + 0x01,0x0a, /* length including UDP header FIXME: CHANGE when payload changes */ + 0x00,0x00, /* checksum */ +/* BOOTP(245) */ + /* BOOTP/DHCP */ + 0x01, /* BOOT Request */ + 0x01, /* HW Type Ethernet */ + 0x06, /* HW Address length */ + 0x00, /* hops */ + 0xde,0xad,0xbe,0xef, /* transaction ID */ + 0x00,0x02, /* seconds elapsed */ + /* mandatory bootp stuff */ + 0x00,0x00, /* flags */ + 0x00,0x00,0x00,0x00, /* client IP */ + 0x00,0x00,0x00,0x00, /* next server IP */ + 0x00,0x00,0x00,0x00, /* relay agent IP */ + 0x00,0x00,0x00,0x00, /* some more stuff */ + 0x00,0x80,0x10,0x0b,0x0a,0xff, /* own MAC */ + 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00, /* 10 bytes padding */ + /* server name (64x0) */ + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + /* boot file name (128x0) */ + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, + /* DHCP magic cookie */ + 0x63,0x82,0x53,0x63, + /* DHCP options */ + 0x35,0x01,0x01, /* DHCP discover */ + 0x37,0x04,0x01,0x03,0x06,0x0f, /* we want mask,router,DNS,Domain Name */ + 0x3d,0x06, /* client identifier (3c would be vendor class) */ + 0, + 's','d','n','e','t', + 0xff, /* end */ +/* padding */ +/* 0x00,0x00,0x00 */ +}; +#else +#define testlen 98 +u08 testframe[testlen] = { + 0xff,0xff,0xff,0xff,0xff,0xff, /* broadcast */ + 0x00,0x80,0x10,0x0b,0x0a,0xff, /* own MAC */ + 0x08,0x00, /* Type IPv4 */ + /* */ + 0x45,0x00, /* VER, DSCP */ + 0x00,0x54, /* length */ + 0xA0,0x0A, /* id */ + 0x00,0x00, /* flags, fragment offset */ + 0x40, /* TTL */ + 0x01, /* ICMP */ + 0x00,0x00, /* header checksum */ + 192,168,10,11, /* SRC IP */ + 192,168,10,255,/* dest IP */ + /* */ + 0x08,0x00, /* Type, Code = ICMP Echo */ + 0x00,0x00, /* Checksum */ + 0xDE,0xAD, /* Identifier */ + 0x00,0x01, /* SeqNum */ + + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, + 0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, +}; /* 98 Bytes */ +#endif + +unsigned char recvbuf[1530]; + +ULONG vres = (ULONG)-1; +ULONG doquit = 0; + +u16 ip_checksum( u08 *, LONG ); +u16 udp_checksum( u08 *, LONG ); + +/* SAS/C abort override */ +int CXBRK(void ) +{ +/* doquit = 1; */ + return 0; +} + +void __regargs __chkabort(void); +void __regargs __chkabort(void) +{ + if( SetSignal( 0, SIGBREAKF_CTRL_C ) & SIGBREAKF_CTRL_C ) + { + doquit = 1; + printf("got ctrl-c\n"); + } +} + +/* + global cleanup +*/ +void cleanup(void) +{ + if( VampireBase ) + V_FreeExpansionPort( vres ); + printf("cleaning up\n"); +} + + +/* + communications test: try different clock dividers and poll revision +*/ +ULONG sdnt_commtest( void ) +{ + ULONG ret = 0; /* def: fail */ + int speed = 10; /* try different SPI clock dividers */ + int wait; + u08 rev,rdy=0; + + /* soft reset cpu */ + enc28j60_SetSPISpeed( (ULONG)speed ); + enc28j60l_UMinDelay( SPEED_DELAY ); /* wait a little, */ + enc28j60l_WriteOp(ENC28J60_SOFT_RESET, 0, ENC28J60_SOFT_RESET); + /* enc28j60l_WriteOp(ENC28J60_SOFT_RESET, 0, ENC28J60_SOFT_RESET); + enc28j60l_WriteOp(ENC28J60_SOFT_RESET, 0, ENC28J60_SOFT_RESET); + enc28j60l_WriteOp(ENC28J60_SOFT_RESET, 0, ENC28J60_SOFT_RESET);*/ + enc28j60l_UMinDelay( 4000 ); /* wait 4ms */ + wait = 0xfff; + while( wait-- > 0 ) + { + rdy = ESTAT_CLKRDY & enc28j60l_ReadOp(ENC28J60_READ_CTRL_REG, ESTAT ); + if( rdy ) + wait = 0; + } + enc28j60l_UMinDelay( 20 ); /* wait a little, */ + + if( !rdy ) + { + printf("Fail. Chip doesn`t respond ready.\n"); + } + else + { + rdy = enc28j60l_ReadRegByte(EREVID); + if( rdy > 5 ) rdy++; + } + + while( speed >= 0 ) + { + enc28j60_SetSPISpeed( (ULONG)speed ); + enc28j60l_UMinDelay( SPEED_DELAY ); /* wait a little, */ + + enc28j60l_ReadRegByte(EREVID); + rev = enc28j60l_ReadRegByte(EREVID); + if( rev > 5 ) rev++; + + if( rdy ) /* best case: chip reported "ready" */ + { + if( rev != rdy ) + { + if( speed >= 2 ) + printf("Fail. Different revision register reported by chip (%d vs %d at speed %d)\n",rdy,rev,speed); + else + printf("Note. Speed %d does not work properly with your card (but that was expected)\n",speed); + } + else + { + printf("Ok. Revision %d reported at speed %d\n",rev,speed); + ret |= (1< 0) && (rev < 0x10 ) ) + { + printf("OK. got Chip rev %d at speed %d\n",rev,speed); + ret |= (1<= 0 ; i-- ) + { + if( speeds & (1<ENVARC:sana2/v2expeth.config\n",clockdiv); +#else + printf(" echo \"SPISPEED=%d\" >ENVARC:sana2/sdnet.config\n",clockdiv); +#endif + } +end: + return ret; +} + +/* IP header checksum + input: IP header + length (min. 20) + output: checksum (also directly in IP header) + +*/ +u16 ip_checksum( u08 *buffer, LONG length ) +{ + ULONG csum = 0; + + ULONG words,i; + unsigned short *b2,*b3; + + if( length < 20 ) + return 0; /* no checksum */ + + /* IPv4 header */ + b2 = (unsigned short*)buffer; + b2[5] = 0; + words = ((ULONG)(buffer[0] & 0xf))<<1; /* IHL, def: 5 (32 bit words) */ + + /* sum up */ + for( i=0,b3=b2 ; i < words ; i++ ) + { + csum += *b3++; + } + + while( csum > 0xffff ) + { + csum = (csum&0xffff)+(csum>>16); + } + csum = (~csum)&0xffff; + + b2[5] = csum; /* store checksum */ + + return (u16)csum; + +} + +/* + calculate UDP checksum + - buffer supplied should point to IP packet, where src/dest/protocol are filled in + + length is in octets, including IPv4 header and UDP header + + input: IP packet including UDP header and content + output: checksum (also directly in UDP header) +*/ +u16 udp_checksum( u08 *buffer, LONG length ) +{ + ULONG words,i; + ULONG csum = 0; + unsigned short *b2,*b3; + + if( length < 28 ) + return 0; /* no checksum */ + + /* IPv4 pseudoheader (see for UDP length below) */ + csum += *((unsigned short*)(&buffer[12])); /* src IP */ + csum += *((unsigned short*)(&buffer[14])); /* src IP */ + csum += *((unsigned short*)(&buffer[16])); /* dest IP */ + csum += *((unsigned short*)(&buffer[18])); /* dest IP */ + csum += (ULONG)buffer[9]; /* protocol */ + + /* location of UDP header */ + words = ((ULONG)(buffer[0] & 0xf))<<2; /* IHL, def: 5 (32 bit words) */ + b2 = (unsigned short*)(&buffer[words]); + + b2[3] = 0; /* clear checksum */ + b3 = b2; + + csum += b2[2]; /* UDP length */ + + words = (length-words)>>1; /* total length - IP header */ + for( i=0 ; i 0xffff ) + { + csum = (csum&0xffff)+(csum>>16); + } + csum = csum^0xffff; + + b3[3] = (u16)csum; /* store checksum */ + + return (u16)csum; +} diff --git a/Driver/baxnet/source/sdnet/vampuuid.asm b/Driver/baxnet/source/sdnet/vampuuid.asm index 9ea7817..33e8960 100644 --- a/Driver/baxnet/source/sdnet/vampuuid.asm +++ b/Driver/baxnet/source/sdnet/vampuuid.asm @@ -1,4 +1,3 @@ -;APS00000000000000000000000000000000000000000000000000000000000000000000000000000000 ; ------------------------------------------------------------------------------ ; | Flash ROM Read Serial Number | ; | Copyright (c) 2016 APOLLO TEAM | @@ -6,6 +5,7 @@ ; ------------------------------------------------------------------------------ FLASH_ID EQU $14 ;cmd=0xAB +LARGE_FLASH_ID EQU $16 FLASH_ADR_W EQU $00DFF1F8 FLASH_ADR_R EQU $00DFF1FA @@ -26,6 +26,11 @@ VAMPIDREG EQU $DFF3FC V4_ID1 EQU $DFF3F4 V4_ID2 EQU $DFF3F0 +BOARDID_V600 EQU 1 +BOARDID_V500 EQU 2 +BOARDID_V4SA EQU 5 +BOARDID_V1200 EQU 6 + xdef _vampire_UUID ;-------- Get 64 Bit unique ID -------------------- @@ -40,8 +45,11 @@ _vampire_UUID: move.w (a0),d0 ;ID reg empty? blt.s v2$ ;yes, try flash method - cmp.w #$2FF,d0 ;Core type << 8 | Clock_Multiplier - ble.s v2$ + lsr.w #8,d0 + cmp.b #BOARDID_V4SA,d0 + bne.s v2$ +; cmp.w #$2FF,d0 ;Core type << 8 | Clock_Multiplier +; ble.s v2$ move.l V4_ID1-VAMPIDREG(a0),d0 move.l V4_ID2-VAMPIDREG(a0),d1 @@ -49,8 +57,10 @@ _vampire_UUID: v2$ bsr flashreadid cmpi.b #FLASH_ID,d0 + beq.s goodflash$ + cmpi.b #LARGE_FLASH_ID,d0 bne.s error$ - +goodflash$ bsr flashuniqueid common$ move.l d0,(a1) diff --git a/Driver/baxnet/source/server.c b/Driver/baxnet/source/server.c index 25162e4..48584df 100644 --- a/Driver/baxnet/source/server.c +++ b/Driver/baxnet/source/server.c @@ -30,6 +30,12 @@ static LONG server_queryext( DEVBASEP, ULONG unit, struct IOSana2Req *ioreq ); #endif +#ifndef NO_WR_SEM +#define WRSEM du_WrSem +#else +#define WRSEM du_Sem +#endif + /* the XSurf500 network panel currently claims length 0 requests if the line below is not commented out, just check pointer */ @@ -38,8 +44,11 @@ static LONG server_queryext( DEVBASEP, ULONG unit, struct IOSana2Req *ioreq ); /* tunables: number of one-call read and write requests */ /* this limits the number of processed write requests per run when enabled */ #define ONE_WRITE_REQ 1 + +#ifndef ALLREADREQS /* this limits the number of processed read requests per run when enabled */ #define ONE_READ_REQ 2 +#endif /* ALLREADREQS */ /* heavy debug on read/write */ #define D2(x) @@ -97,9 +106,9 @@ static void server_Offline_CancelRequests( DEVBASEP , ULONG unit ) server_AbortList( db, (struct List*)&db->db_Units[unit].du_EventQueue ); server_AbortList( db, (struct List*)&db->db_Units[unit].du_ReadOrphans ); ReleaseSemaphore( &db->db_Units[unit].du_Sem ); - ObtainSemaphore( &db->db_Units[unit].du_WrSem ); + ObtainSemaphore( &db->db_Units[unit].WRSEM ); server_AbortList( db, (struct List*)&db->db_Units[unit].du_WriteQueue ); - ReleaseSemaphore( &db->db_Units[unit].du_WrSem ); + ReleaseSemaphore( &db->db_Units[unit].WRSEM ); /* clear Multicast list, TODO: subroutine */ { @@ -818,7 +827,7 @@ static LONG server_writequeue( DEVBASEP, ULONG unit ) #endif struct IOSana2Req *ioreq,*nextio; - ObtainSemaphore( &db->db_Units[unit].du_WrSem ); + ObtainSemaphore( &db->db_Units[unit].WRSEM ); #if 1 /* whole queue per call */ @@ -873,7 +882,7 @@ static LONG server_writequeue( DEVBASEP, ULONG unit ) #endif } - ReleaseSemaphore( &db->db_Units[unit].du_WrSem ); + ReleaseSemaphore( &db->db_Units[unit].WRSEM ); return SERR_OK; } @@ -1090,7 +1099,7 @@ VOID SAVEDS ServerTask(void) { if( !action ) /* queues quiet ? -> sleep */ { - Disable(); +/* Disable(); */ i=0;BOARDLOOP( ( ; i < db->db_NBoards ; i++ ) ) { /* housekeeping -> check for link change on idle, re-enable interrupts etc. */ hw_check_link_change(db,i); diff --git a/Driver/baxnet/source/smakefile.enc b/Driver/baxnet/source/smakefile.enc index d94eef3..8a078ba 100644 --- a/Driver/baxnet/source/smakefile.enc +++ b/Driver/baxnet/source/smakefile.enc @@ -46,7 +46,7 @@ ASMDEFS1 = -DHW_DMA_TX=1 ############################################################################### # debug = 1 will include string debugging for terminal/sushi/sashimi # not enabled yet in SAS/C makefile -debug = 0 +#debug = 0 ############################################################################### # prefix for system includes (ASM) diff --git a/Driver/baxnet/source/version.h b/Driver/baxnet/source/version.h index 1a2b383..cd13202 100644 --- a/Driver/baxnet/source/version.h +++ b/Driver/baxnet/source/version.h @@ -9,9 +9,9 @@ #define _INC_VERSION_H #define DEVICEVERSION 2 -#define DEVICEREVISION 4 +#define DEVICEREVISION 7 #define DEVICEEXTRA /* #define DEVICEEXTRA Beta */ -#define DEVICEDATE 27.05.2019 +#define DEVICEDATE 11.02.20 #endif diff --git a/Driver/enc624j6net/README.txt b/Driver/enc624j6net/README.txt deleted file mode 100644 index 04f9b55..0000000 --- a/Driver/enc624j6net/README.txt +++ /dev/null @@ -1,65 +0,0 @@ -ENC624J6net - -SANA-II Driver for Matze/Scrat ZII IDE LAN CP card - -author: Henryk Richter - - -Release Notes: --------------- - -- goes along with 27 December 2017 CPLD build, where interrupts are extended -- older CPLD builds will lock up Amiga at first interrupt -- provisions for swapped address lines 12/13 are in the code -- board requires Int2 to be soldered (NOT Int6) - -Installation: -------------- - -The driver (enc624j6net.device) needs to be copied into Devs:Networks. The configuration -depends on the TCP/IP stack of choice. Please refer to the respective documentation -how to configure a network interface. - -Use the supplied GUI for stacks like Genesis or Miami and add a regular ethernet card -within those by referring to the enc624j6net.device, unit 0. - -The recent RoadShow stack is commandline-based. Please add a new file in devs:NetInterfaces, -such as a copy of the PlipBox interface specification with the device entry replaced by -enc624j6net.device. The command AddNetInterface with the filename of your interface spec -as argument will then activate the driver for RoadShow. - - -Technical notes: ----------------- - -Matze's card does selective byte swapping for different areas of the chip within -the CPLD. This step enables Big Endian reads/writes to the hardware registers. Since -the SRAM would be byte-swapped as well, the latest (WIP) version of the CPLD presents -TX and RX frames in Big Endian (network order) as well. As a consequence, the -low-level part of the driver won't work out of the box with with other approaches -towards 16 Bit parallel connections of the ENC624J600 chip. - - -Copyrights and Acknowledgements: --------------------------------- - -My deepest respects go to Christian Vogelgsang (lafalla) for his plipbox project. -His invaluable work on further cleanups and abstractions to the already well written -magPLIP made a quick swap of low-level functions quite easily possible. - -The ENC624J6 source is heavily based on plipbox, which is in turn based on the magPLIP -driver found on aminet.net: - -http://lallafa.de/blog/amiga-projects/plipbox/ -http://aminet.net/package/comm/net/magPLIP38.1 - -magPLIP - SANA II compliant PLIP device driver for AmiTCP/IP, Envoy, - AS225 and other networking packages - - (C) Copyright 1993-1994 Oliver Wagner, Michael Balzer - (C) Copyright 1995 Jan Kratochvil & Martin Mares - (C) Copyright 1995-1996 Marius Groeger - All Rights Reserved. - - Changes have been made by Stéphane Zermatten to the driver to connect - a LinuxBox to an Amiga via a LapLing cable, based on the release 37.8. diff --git a/Driver/enc624j6net/build/enc624j6net.device b/Driver/enc624j6net/build/enc624j6net.device deleted file mode 100644 index 13c1c8297411b5d0d66f68a124daa3f41c7fdb65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9692 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 diff --git a/Driver/enc624j6net/compiler.h b/Driver/enc624j6net/compiler.h deleted file mode 100644 index 7a2c1d1..0000000 --- a/Driver/enc624j6net/compiler.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef __COMPILER_H -#define __COMPILER_H - -#ifdef __SASC -/* Implementation notes: -** -** SAS/C complains if a module contains only "static" and "extern" functions -** that there would be no exported symbol. Therefore, the PUBLIC macro -** is defined empty for SAS/C but should be "extern" if possible (for -** instance with GNU CC). -*/ -# define ASM __asm /* define registers for function args */ -# define REG(x) register __ ## x /* specify a register in arglist */ -# define INLINE __inline /* inline this function */ -# define STDARGS __stdargs /* pass args to this function on stack */ -# define REGARGS __regargs /* pass args to this function in regs */ -# define SAVEDS __saveds /* setup data segment reg. on entry */ -# define FAR __far /* reference this object in far mode */ -# define MIN __builtin_min /* min{} function */ -# define MAX __builtin_max /* max{} function */ -# define PUTREG __builtin_putreg /* set a register to a certain value */ -# define REG_D0 0 /* reg. number for PUTREG() */ -# define REG_D1 1 /* reg. number for PUTREG() */ -extern void PUTREG(int, long); /* prototype */ -# define PUBLIC /* define a globally visible function */ -# define PRIVATE static /* define a locally visible function */ -# define GLOBAL extern -#else -# error Please define the above macros for your compiler -#endif - -#endif - diff --git a/Driver/enc624j6net/debug.h b/Driver/enc624j6net/debug.h deleted file mode 100644 index 600a74a..0000000 --- a/Driver/enc624j6net/debug.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef __DEBUG_H -#define __DEBUG_H - -#if (DEBUG != 0) -extern void KPrintF(char *, ...), KGetChar(void); -#endif - -#if (DEBUG & 1) -# define d(x) do { KPrintF("%s:%s:%ld:",__FILE__,__FUNC__,__LINE__); KPrintF x; } while(0) -#else -# define d(x) -#endif - -#if (DEBUG & 2) -# define d2(x) do { KPrintF("%s:%s:%ld:",__FILE__,__FUNC__,__LINE__); KPrintF x; } while(0) -#else -# define d2(x) -#endif - -#if (DEBUG & 4) -# define d4(x) do { KPrintF("%s:%s:%ld:",__FILE__,__FUNC__,__LINE__); KPrintF x; } while(0) -#else -# define d4(x) -#endif - -#if (DEBUG & 8) -# define d8(x) do { KPrintF("%s:%s:%ld:",__FILE__,__FUNC__,__LINE__); KPrintF x; } while(0) -#else -# define d8(x) -#endif - -#endif - diff --git a/Driver/enc624j6net/dev_info.h b/Driver/enc624j6net/dev_info.h deleted file mode 100644 index 4466b49..0000000 --- a/Driver/enc624j6net/dev_info.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef _DEV_INFO_H -#define _DEV_INFO_H -#define DEVICE_NAME "enc624j6net" -#define DEVICE_DATE "16.04.2018" -#define DEVICE_VER "0.2" -#define DEVICE_VERSION 0 -#define DEVICE_REVISION 2 -#endif diff --git a/Driver/enc624j6net/dev_info.i b/Driver/enc624j6net/dev_info.i deleted file mode 100644 index 085b27d..0000000 --- a/Driver/enc624j6net/dev_info.i +++ /dev/null @@ -1,11 +0,0 @@ -DEVICE_NAME MACRO - dc.b 'enc624j6net' - ENDM -DEVICE_DATE MACRO - dc.b '16.04.2018' - ENDM -DEVICE_VER MACRO - dc.b '0.2' - ENDM -DEVICE_VERSION equ 0 -DEVICE_REVISION equ 2 diff --git a/Driver/enc624j6net/device.c b/Driver/enc624j6net/device.c deleted file mode 100755 index 7725934..0000000 --- a/Driver/enc624j6net/device.c +++ /dev/null @@ -1,994 +0,0 @@ -#define DEBUG 0 - -/*F*/ /* includes */ -#ifndef CLIB_ALIB_PROTOS_H -#include -#endif -#ifndef CLIB_EXEC_PROTOS_H -#include -#include -#endif -#ifndef CLIB_DOS_PROTOS_H -#include -#include -#endif -#ifndef CLIB_CIA_PROTOS_H -#include -#include -#endif -#ifndef CLIB_MISC_PROTOS_H -#include -#include -#endif -#ifndef CLIB_UTILITY_PROTOS_H -#include -#include -#endif -#ifndef CLIB_TIME_PROTOS_H -#include -#include -#endif -#ifndef DEVICES_SANA2_H -#include -#endif - -#ifndef HARDWARE_CIA_H -#include -#endif - -#ifndef DOS_DOSTAGS_H -#include -#endif - -#ifndef RESOURCES_MISC_H -#include -#endif - -#ifndef EXEC_MEMORY_H -#include -#endif - -#ifndef _STRING_H -#include -#endif - -#ifndef __GLOBAL_H -#include "global.h" -#endif -#ifndef __DEBUG_H -#include "debug.h" -#endif -#ifndef __COMPILER_H -#include "compiler.h" -#endif - -#ifdef PROTO_SDNET -#include "vampuuid.h" -#define __NOLIBBASE__ -#include -#include -#endif - -#ifdef PROTO_ENC624NET -#define ENC_MANUFACTURER 2588 -#define ENC_BOARD 123 -#include -#include -#include - -#include "enc624j6l.h" /* for MAC retrieval */ -#endif - -#ifdef DIRECT_WRITE -typedef enum { AW_OK, AW_BUFFER_ERROR, AW_ERROR } AW_RESULT; -PUBLIC REGARGS VOID DoEvent(BASEPTR, long event); -PUBLIC REGARGS AW_RESULT write_frame(BASEPTR, struct IOSana2Req *ios2); -#ifndef __HW_H -#include "hw.h" -#endif -#endif - -#define INVALID_SDNET_UNIT 0x33 /* used by both sdnet and encnet */ - -/*E*/ - -/*F*/ /* imports */ -PUBLIC VOID SAVEDS ServerTask(VOID); -PUBLIC BOOL remtracktype(BASEPTR, ULONG type); -PUBLIC BOOL addtracktype(BASEPTR, ULONG type); -PUBLIC BOOL gettrackrec(BASEPTR, ULONG type, struct Sana2PacketTypeStats *info); -PUBLIC VOID dotracktype(BASEPTR, ULONG type, ULONG ps, ULONG pr, ULONG bs, ULONG br, ULONG pd); -PUBLIC VOID freetracktypes(BASEPTR); -#define min __builtin_min -/*E*/ -/*F*/ /* exports */ -PUBLIC ASM SAVEDS struct Device *DevInit(REG(d0) BASEPTR, REG(a0) BPTR seglist, REG(a6) struct Library *_SysBase); -PUBLIC ASM SAVEDS LONG DevOpen(REG(a1) struct IOSana2Req *ios2, REG(d0) ULONG unit, REG(d1) ULONG flags, REG(a6) BASEPTR); -PUBLIC ASM SAVEDS BPTR DevExpunge(REG(a6) BASEPTR); -PUBLIC ASM SAVEDS BPTR DevClose( REG(a1) struct IOSana2Req *ior, REG(a6) BASEPTR); -PUBLIC VOID DevTermIO(BASEPTR, struct IOSana2Req *ios2); -PUBLIC ASM SAVEDS VOID DevBeginIO(REG(a1) struct IOSana2Req *ios2, REG(a6) BASEPTR); -PUBLIC ASM SAVEDS LONG DevAbortIO(REG(a1) struct IOSana2Req *ior, REG(a6) BASEPTR); -/*E*/ -/*F*/ /* private */ -PRIVATE BOOL isinlist(struct Node *n, struct List *l); -PRIVATE VOID abort(BASEPTR, struct IOSana2Req *ior); -/*E*/ - -#ifdef PROTO_SDNET - -PRIVATE void pb_FreeExpansion(BASEPTR ); -PRIVATE APTR pb_AllocExpansion( ULONG portid, BASEPTR ); - -PRIVATE void pb_FreeExpansion(BASEPTR ) -{ - if( pb->pb_ExpansionPort >= 0 ) - { - V_FreeExpansionPort( pb->pb_ExpansionPort ); - pb->pb_ExpansionPort = -1; - } -} - -PRIVATE APTR pb_AllocExpansion( ULONG portid, BASEPTR ) -{ - return V_AllocExpansionPort( portid, SERVERTASKNAME ); -} - -#endif /* PROTO_SDNET */ - - /* - ** various support routines - */ -/*F*/ PRIVATE BOOL isinlist(struct Node *n, struct List *l) -{ - struct Node *cmp; - - for(cmp = l->lh_Head; cmp->ln_Succ; cmp = cmp->ln_Succ) - if (cmp == n) return TRUE; - - return FALSE; -} -/*E*/ -/*F*/ PRIVATE VOID abort(BASEPTR, struct IOSana2Req *ior) -{ - Remove((struct Node*)ior); - ior->ios2_Req.io_Error = IOERR_ABORTED; - ior->ios2_WireError = 0; - ReplyMsg((struct Message*)ior); -} -/*E*/ - - /* - ** initialise device - */ -/*F*/ PUBLIC ASM SAVEDS struct Device *DevInit(REG(d0) BASEPTR, REG(a0) BPTR seglist, REG(a6) struct Library *_SysBase) -{ - BOOL ok; - UBYTE *p; - UWORD i; - - d(("entered device, initialising PLIPBase...\n")); - - /* clear data base */ - for(p = ((UBYTE*)pb) + sizeof(struct Library), i = sizeof(struct PLIPBase)-sizeof(struct Library); i; i--) - *p++ = 0; - - SysBase = _SysBase; - - pb->pb_SegList = seglist; /* store DOS segment list */ - - /* init some default values */ - pb->pb_Flags = PLIPF_OFFLINE; - pb->pb_BPS = HW_BPS; - pb->pb_MTU = HW_ETH_MTU; - /* initialise the lists */ - NewList((struct List*)&pb->pb_ReadList); - NewList((struct List*)&pb->pb_WriteList); - NewList((struct List*)&pb->pb_EventList); - NewList((struct List*)&pb->pb_ReadOrphanList); - NewList((struct List*)&pb->pb_TrackList); - NewList((struct List*)&pb->pb_BufferManagement); - - /* initialise the access protection semaphores */ - InitSemaphore(&pb->pb_ReadListSem); - InitSemaphore(&pb->pb_ReadOrphanListSem); - InitSemaphore(&pb->pb_EventListSem); - InitSemaphore(&pb->pb_WriteListSem); - InitSemaphore(&pb->pb_TrackListSem); - InitSemaphore(&pb->pb_Lock); - - pb->pb_SpecialStats[S2SS_TXERRORS].Type = S2SS_PLIP_TXERRORS; - pb->pb_SpecialStats[S2SS_TXERRORS].Count = 0; - pb->pb_SpecialStats[S2SS_TXERRORS].String = "TX Errors"; - pb->pb_SpecialStats[S2SS_COLLISIONS].Type = S2SS_PLIP_COLLISIONS; - pb->pb_SpecialStats[S2SS_COLLISIONS].Count = 0; - pb->pb_SpecialStats[S2SS_COLLISIONS].String = "Collisions"; - - ok = FALSE; - - if (UtilityBase = OpenLibrary("utility.library", 37)) - { - if (DOSBase = OpenLibrary("dos.library", 37)) - { -#ifdef PROTO_ENC624NET - if( ExpansionBase = OpenLibrary("expansion.library", 37)) - { - int i; - - ok = TRUE; - - for( i=0 ; i<(HW_MAXBOARDS+1) ; i++ ) - pb->pb_HWBase.hwb_boards[i]=0; /* clear whole array */ - } - else - { - d(("no expansion.library\n")); - } -#endif -#ifdef PROTO_SDNET - if( VampireBase = OpenResource( V_VAMPIRENAME ) ) - { - pb->pb_ExpansionPort = -1; - ok = TRUE; - } - else - { - d(("no vampire.resource\n")); - } -#endif - } - else - { - d(("no dos\n")); - } - - if (!ok) CloseLibrary(UtilityBase); - } - else - { - d(("no utility\n")); - } - - d(("left %ld\n",ok)); - - return (struct Device *)(ok ? pb : NULL); -} -/*E*/ - - /* - ** open device - */ -/*F*/ PUBLIC ASM SAVEDS LONG DevOpen(REG(a1) struct IOSana2Req *ios2, REG(d0) ULONG unit, REG(d1) ULONG flags, REG(a6) BASEPTR) -{ - BOOL ok = FALSE; - struct BufferManagement *bm; - LONG rv = 0; /* get rid of warning with opt build */ - - d(("entered for unit %ld\n",unit)); - - /* Make sure our open remains single-threaded. */ - ObtainSemaphore(&pb->pb_Lock); - - pb->pb_DevNode.lib_OpenCnt++; - -#ifdef PROTO_SDNET - if( !VampireBase ) - { - unit = INVALID_SDNET_UNIT; /* no vampire.resource -> illegal unit */ - } - else - { - unsigned long portid = V_WIFIPORT; - - if( !unit ) - portid = V_SDPORT; - - - /* if( !pb->pb_DevNode.lib_OpenCnt ) disabled, maybe doesn't open because of other reasons */ - if( pb->pb_ExpansionPort < 0 ) - { - APTR allocator = pb_AllocExpansion( portid, pb ); - if( allocator ) - unit = INVALID_SDNET_UNIT; /* illegal unit, cannot obtain Expansion Port */ - else - pb->pb_ExpansionPort = portid; - } - else - { - /* sorry, I currently don't support more than one port at a time */ - if( portid != pb->pb_ExpansionPort ) - unit = INVALID_SDNET_UNIT; - } - } -#endif -#ifdef PROTO_ENC624NET - if( !(pb->pb_HWBase.hwb_boards[0]) ) - { - struct ConfigDev *cfg = (0); - int i; - - for( i=0 ; ipb_HWBase.hwb_boards[i] = cfg->cd_BoardAddr; - d(("board at = %ld\n",(ULONG)pb->pb_HWBase.hwb_boards[i] )); - } - pb->pb_HWBase.hwb_boards[i] = (0); - } - - if( unit >= HW_MAXBOARDS ) - unit = INVALID_SDNET_UNIT; - else - { - if( !pb->pb_HWBase.hwb_boards[unit] ) - unit = INVALID_SDNET_UNIT; - } -#endif - /* not promiscouos mode and unit valid ? (unit0 = SD Slot, unit1 = Extension header) */ -#ifdef PROTO_SDNET - if (!(flags & SANA2OPF_PROM) && (unit <= 1)) -#else /* PROTO_SDNET */ - if (!(flags & SANA2OPF_PROM) && (unit < HW_MAXBOARDS)) -#endif - { - /* Allow access only if NOT: - ** - ** Anybody else has already opened it AND - ** the current access is exclusive - ** OR the first access was exclusive - ** OR this access wants a different unit - */ - - if (!((pb->pb_DevNode.lib_OpenCnt > 1) && - ((flags & SANA2OPF_MINE) - || (pb->pb_Flags & PLIPF_EXCLUSIVE) - || (unit != pb->pb_Unit)))) - { - if (flags & SANA2OPF_MINE) - pb->pb_Flags |= PLIPF_EXCLUSIVE; - else - pb->pb_Flags &= ~PLIPF_EXCLUSIVE; - - /* - ** 13.05.96: Detlef Wuerkner - ** Rememer unit of 1st OpenDevice() - */ - if (pb->pb_DevNode.lib_OpenCnt == 1) - pb->pb_Unit = unit; - - /* setup default mac */ - { - /* */ -#ifdef PROTO_ENC624NET - unsigned char addr[6] = { 0x02,0x80,0x10,0x0b,0x0a,0xff}; - APTR board = pb->pb_HWBase.hwb_boards[unit]; - - enc624j6l_GetMAC( board, addr ); - - memcpy(pb->pb_CfgAddr, addr, HW_ADDRFIELDSIZE); - memcpy(pb->pb_DefAddr, addr, HW_ADDRFIELDSIZE); -#else /* PROTO_ENC624NET */ -#ifdef PROTO_SDNET - /* OUI: Commodore, but "local" */ - /* valid "locally administered" MAC addresses: - x2-xx-xx-xx-xx-xx - x6-xx-xx-xx-xx-xx - xA-xx-xx-xx-xx-xx - xE-xx-xx-xx-xx-xx - */ - unsigned char addr[6] = { 0x02,0x80,0x10,0x0b,0x0a,0xff}; - unsigned char vsn[8]; - - if( vampire_UUID( vsn ) > 0 ) - { - /* generate Interface ID from Vampire serial */ - int i; - for(i=0 ; i<3 ; i++ ) - { - addr[3+i] = vsn[i] ^ vsn[i+5]; - } - - } -#else /* PROTO_SDNET */ - unsigned char addr[6] = { 0x1a,0x11,0xaf,0xa0,0x47,0x11 }; - memcpy(pb->pb_CfgAddr, addr, HW_ADDRFIELDSIZE); - memcpy(pb->pb_DefAddr, addr, HW_ADDRFIELDSIZE); -#endif /* PROTO_SDNET */ -#endif /* PROTO_ENC624NET */ - } - - /* - ** Each opnener get's it's own BufferManagement. This is neccessary - ** since we want to allow several protocol stacks to use PLIP - ** simultaneously. - */ - if (bm = AllocVec(sizeof(struct BufferManagement),MEMF_CLEAR|MEMF_PUBLIC)) - { - /* - ** We don't care if there actually are buffer management functions, - ** because there might be openers who just want some statistics - ** from us. - */ -#if defined(__SASC) && (__VERSION__ == 6) && (__REVISION__ >= 56) - /* Jippieee! */ - bm->bm_CopyToBuffer = (BMFunc)GetTagData(S2_CopyToBuff, NULL, - (struct TagItem *)ios2->ios2_BufferManagement); - bm->bm_CopyFromBuffer = (BMFunc)GetTagData(S2_CopyFromBuff, NULL, - (struct TagItem *)ios2->ios2_BufferManagement); -#else - /* - ** The type casting below is very beautiful. This is a SAS/C bug: - ** I have to cast the ULONG that I got from GetTagData() to a - ** (void (*)(void)) function pointer. Now I may cast it to (BMFunc), - ** which defines the __asm and register stuff. - ** - ** I would call this a cast with ``soft force'', as it seems that - ** I slowly have to make the ULONG being used to the fact of - ** becoming a pointer (``Look, old mathematical chap: didn't you - ** always want to be a pointer? Did you know how less it takes, how - ** mighty the dark side of the force really is?''). - */ - bm->bm_CopyToBuffer = (BMFunc)((void (*)())(GetTagData(S2_CopyToBuff, NULL, - (struct TagItem *)ios2->ios2_BufferManagement))); - bm->bm_CopyFromBuffer = (BMFunc)((void (*)())(GetTagData(S2_CopyFromBuff, NULL, - (struct TagItem *)ios2->ios2_BufferManagement))); -#endif - d(("starting servertask\n")); - if (!pb->pb_Server) - { - volatile struct ServerStartup ss; - struct MsgPort *port; - -#ifdef PROTO_SDNET - /* before we can run the server, check if we can access the hardware */ -#endif - if (port = CreateMsgPort()) - { - d(("starting server")); - if (pb->pb_Server = CreateNewProcTags(NP_Entry, ServerTask, NP_Name, - SERVERTASKNAME, NP_Priority, 5, TAG_DONE)) - { - ss.ss_Error = 1; - ss.ss_PLIPBase = pb; - ss.ss_Msg.mn_Length = sizeof(ss); - ss.ss_Msg.mn_ReplyPort = port; - d(("passing startup msg, pb is %lx\n", pb)); - PutMsg(&pb->pb_Server->pr_MsgPort, (struct Message*)&ss); - WaitPort(port); - - if (!ss.ss_Error) - ok = TRUE; - else - { - d(("server task failed\n")); - } - } - else - { - d(("couldn't launch server task\n")); - } - DeleteMsgPort(port); - } - else - { - d(("no temp-message port for server startup\n")); - } - } - else ok = TRUE; - - if (!ok) - FreeVec(bm); - else - { - /* enqueue buffer management into list - */ - AddTail((struct List *)&pb->pb_BufferManagement,(struct Node *)bm); - pb->pb_DevNode.lib_OpenCnt++; - pb->pb_DevNode.lib_Flags &= ~LIBF_DELEXP; - ios2->ios2_BufferManagement = (VOID *)bm; - ios2->ios2_Req.io_Error = 0; - ios2->ios2_Req.io_Unit = (struct Unit *)unit; - ios2->ios2_Req.io_Device = (struct Device *)pb; - rv = 0; - } - } - } - } - - /* See if something went wrong. */ - if(!ok) - { - if( pb->pb_DevNode.lib_OpenCnt == 1 ) - { -#ifdef PROTO_SDNET - pb_FreeExpansion(pb); -#endif - } - - ios2->ios2_Req.io_Error = IOERR_OPENFAIL; - ios2->ios2_Req.io_Unit = (struct Unit *) 0; - ios2->ios2_Req.io_Device = (struct Device *) 0; - rv = IOERR_OPENFAIL; - } - ios2->ios2_Req.io_Message.mn_Node.ln_Type = NT_REPLYMSG; - - pb->pb_DevNode.lib_OpenCnt--; - ReleaseSemaphore(&pb->pb_Lock); - - return rv; -} - -/*E*/ - - /* - ** close device - */ -/*F*/ PUBLIC ASM SAVEDS BPTR DevClose(REG(a1) struct IOSana2Req *ior, REG(a6) BASEPTR) -{ - BPTR seglist; - struct BufferManagement *bm; - - d2(("entered\n")); - - ObtainSemaphore(&pb->pb_Lock); - - /* invalidate IO request block */ - ior->ios2_Req.io_Device = (struct Device *)-1; - ior->ios2_Req.io_Unit = (struct Unit *)-1; - - /* search and free BuffMgmt structure */ - for(bm = (struct BufferManagement *)pb->pb_BufferManagement.lh_Head; - bm->bm_Node.mln_Succ; bm = (struct BufferManagement *)bm->bm_Node.mln_Succ) - if (bm == ior->ios2_BufferManagement) - { - Remove((struct Node*)bm); - FreeVec(bm); - break; - } - - pb->pb_DevNode.lib_OpenCnt--; - if( !pb->pb_DevNode.lib_OpenCnt ) - { -#ifdef PROTO_SDNET - pb_FreeExpansion(pb); -#endif - } - ReleaseSemaphore(&pb->pb_Lock); - - if (pb->pb_DevNode.lib_Flags & LIBF_DELEXP) - seglist = DevExpunge(pb); - else - seglist = 0; - - return seglist; -} -/*E*/ - - -/*F*/ PUBLIC ASM SAVEDS BPTR DevExpunge(REG(a6) BASEPTR) -{ - BPTR seglist; - ULONG sigb; - - d2(("entered\n")); - - if (pb->pb_DevNode.lib_OpenCnt) - { - pb->pb_DevNode.lib_Flags |= LIBF_DELEXP; - seglist = 0; - } - else - { - /* detach device from system list */ - Remove((struct Node*)pb); - - /* stop the servr task */ - d2(("killing server task\n")); - pb->pb_Task = FindTask(0L); - /* We must allocate a new signal, as we don't know in whose - ** context we're running. If we get no signal, we poll - ** for the server-exits flag. - */ - sigb = AllocSignal(-1); - pb->pb_ServerStoppedSigMask = (sigb == -1) ? 0 : (1<pb_Server, SIGBREAKF_CTRL_C); - if (pb->pb_ServerStoppedSigMask) - { - Wait(pb->pb_ServerStoppedSigMask); - FreeSignal(sigb); - } - else - { - while(!(pb->pb_Flags & PLIPF_SERVERSTOPPED)) - Delay(10); - } - d2(("server task has gone\n")); - - /* clean up track */ - freetracktypes(pb); - - CloseLibrary(UtilityBase); - CloseLibrary(DOSBase); - - /* save seglist for return value */ - seglist = (long)pb->pb_SegList; - - /* return memory - ** - ** NO FURTHER ACCESS TO PLIPBase ALLOWED! - */ - FreeMem( ((char *) pb) - pb->pb_DevNode.lib_NegSize, - (ULONG)(pb->pb_DevNode.lib_PosSize + pb->pb_DevNode.lib_NegSize)); - } - - return seglist; -} -/*E*/ - - /* - ** initiate io command (1st level dispatcher) - */ -#if 1 -/* got so tired of the SAS/C "inlining notice", made a macro instead */ -#define DevForwardIO( _BP_ , _REQ_ ) \ -{\ - struct IOSana2Req *_rq_ = (struct IOSana2Req*)_REQ_;\ - _rq_->ios2_Req.io_Flags &= ~SANA2IOF_QUICK;\ - PutMsg( (_BP_)->pb_ServerPort, (struct Message*)_rq_);\ -} - -#else -/*F*/ static INLINE VOID DevForwardIO(BASEPTR, struct IOSana2Req *ios2) -{ - d(("forwarding request %ld\n", ios2->ios2_Req.io_Command)); - - /* request is no longer of type "quick i/o" */ - ios2->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - PutMsg(pb->pb_ServerPort, (struct Message*)ios2); -} -/*E*/ -#endif - - -/*F*/ PUBLIC VOID DevTermIO(BASEPTR, struct IOSana2Req *ios2) -{ - d(("cmd = %ld, error = %ld, wireerror = %ld\n", ios2->ios2_Req.io_Command, ios2->ios2_Req.io_Error,ios2->ios2_WireError)); - - /* if this command was done asynchonously, we must - ** reply the request - */ - if(!(ios2->ios2_Req.io_Flags & SANA2IOF_QUICK)) - ReplyMsg((struct Message *)ios2); - else /* otherwise just mark it as done */ - ios2->ios2_Req.io_Message.mn_Node.ln_Type = NT_REPLYMSG; -} -/*E*/ -/*F*/ PUBLIC ASM SAVEDS VOID DevBeginIO(REG(a1) struct IOSana2Req *ios2, REG(a6) BASEPTR) -{ - ULONG mtu; - - /* mark request as active */ - ios2->ios2_Req.io_Message.mn_Node.ln_Type = NT_MESSAGE; - ios2->ios2_Req.io_Error = S2ERR_NO_ERROR; - ios2->ios2_WireError = S2WERR_GENERIC_ERROR; - - d(("cmd = %ld\n",ios2->ios2_Req.io_Command)); - - /* - ** 1st level command dispatcher - ** - ** Here we decide wether we can process the request immediately avoiding - ** a task switch. This is called "Quick I/O" and signalled to DoIO() - ** by setting the node type of the request to NT_REPLYMSG (see TermIO()). - ** - ** Otherwise, we clear the SANA2IOF_QUICK flag and forward the request to - ** the server. We may NEVER again access the request structure after - ** the PutMsg()! The server - running at a high priority - will peempt - ** us and might complety satisfy the request before we will be wakened up - ** again. - ** The same goes for those requests that we put into the server's queue. - */ - switch(ios2->ios2_Req.io_Command) - { - case CMD_READ: -/* - if (pb->pb_Flags & PLIPF_OFFLINE) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - } - else -*/ - if (ios2->ios2_BufferManagement == NULL) - { - ios2->ios2_Req.io_Error = S2ERR_BAD_ARGUMENT; - ios2->ios2_WireError = S2WERR_BUFF_ERROR; - } - else - { - ios2->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - ObtainSemaphore(&pb->pb_ReadListSem); - AddHead((struct List*)&pb->pb_ReadList, (struct Node*)ios2); - ReleaseSemaphore(&pb->pb_ReadListSem); - ios2 = NULL; - } - break; - - case S2_BROADCAST: - /* set broadcast addr: ff:ff:ff:ff:ff:ff */ - memset(ios2->ios2_DstAddr, 0xff, HW_ADDRFIELDSIZE); - /* fall through */ - case CMD_WRITE: - /* determine max valid size */ - mtu = pb->pb_MTU; - if(ios2->ios2_Req.io_Flags & SANA2IOF_RAW) { - mtu += HW_ETH_HDR_SIZE; - } - if(ios2->ios2_DataLength > mtu) - { - ios2->ios2_Req.io_Error = S2ERR_MTU_EXCEEDED; - } - else if (ios2->ios2_BufferManagement == NULL) - { - ios2->ios2_Req.io_Error = S2ERR_BAD_ARGUMENT; - ios2->ios2_WireError = S2WERR_BUFF_ERROR; - } - else if (pb->pb_Flags & PLIPF_OFFLINE) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - } - else - { - ios2->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - ios2->ios2_Req.io_Error = 0; - ObtainSemaphore(&pb->pb_WriteListSem); -#ifdef DIRECT_WRITE - { - AW_RESULT code; - struct IOSana2Req *currentwrite = (struct IOSana2Req*)ios2; - - code = write_frame(pb, ios2); - if (code == AW_BUFFER_ERROR) /* BufferManagement callback error */ - { - d(("buffer error\n")); - DoEvent(pb, S2EVENT_ERROR | S2EVENT_BUFF | S2EVENT_SOFTWARE); - pb->pb_SpecialStats[S2SS_TXERRORS].Count++; - d(("pb->pb_SpecialStats[S2SS_TXERRORS].Count = %ld\n",pb->pb_SpecialStats[S2SS_TXERRORS].Count)); - currentwrite->ios2_Req.io_Error = S2ERR_SOFTWARE; - currentwrite->ios2_WireError = S2WERR_BUFF_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - else if (code == AW_ERROR) - { - /* - ** this is a real line error, upper levels (e.g. Internet TCP) have - ** to care for reliability! - */ - d(("error while transmitting packet\n")); - DoEvent(pb, S2EVENT_ERROR | S2EVENT_TX | S2EVENT_HARDWARE); - pb->pb_SpecialStats[S2SS_TXERRORS].Count++; - d(("pb->pb_SpecialStats[S2SS_TXERRORS].Count = %ld\n",pb->pb_SpecialStats[S2SS_TXERRORS].Count)); - currentwrite->ios2_Req.io_Error = S2ERR_TX_FAILURE; - currentwrite->ios2_WireError = S2WERR_GENERIC_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - else /*if (code == AW_OK)*/ /* well done! */ - { - d(("packet transmitted successfully\n")); - pb->pb_DevStats.PacketsSent++; - dotracktype(pb, (ULONG) pb->pb_Frame->hwf_Type, 1, 0, currentwrite->ios2_DataLength, 0, 0); - currentwrite->ios2_Req.io_Error = S2ERR_NO_ERROR; - currentwrite->ios2_WireError = S2WERR_GENERIC_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - } - ReleaseSemaphore(&pb->pb_WriteListSem); -#else - AddTail((struct List*)&pb->pb_WriteList, (struct Node*)ios2); - ReleaseSemaphore(&pb->pb_WriteListSem); - Signal((struct Task*)pb->pb_Server, SIGBREAKF_CTRL_F); -#endif - ios2 = NULL; - } - break; - - case S2_ONLINE: - case S2_OFFLINE: - case S2_CONFIGINTERFACE: /* forward request */ - DevForwardIO(pb, ios2); - ios2 = NULL; - break; - - case S2_GETSTATIONADDRESS: - memcpy(ios2->ios2_SrcAddr, pb->pb_CfgAddr, HW_ADDRFIELDSIZE); /* current */ - memcpy(ios2->ios2_DstAddr, pb->pb_DefAddr, HW_ADDRFIELDSIZE); /* default */ - break; - - case S2_DEVICEQUERY: - { - struct Sana2DeviceQuery *devquery; - - devquery = ios2->ios2_StatData; - devquery->DevQueryFormat = 0; /* "this is format 0" */ - devquery->DeviceLevel = 0; /* "this spec defines level 0" */ - - if (devquery->SizeAvailable >= 18) devquery->AddrFieldSize = HW_ADDRFIELDSIZE * 8; /* Bits! */ - if (devquery->SizeAvailable >= 22) devquery->MTU = pb->pb_MTU; - if (devquery->SizeAvailable >= 26) devquery->BPS = pb->pb_BPS; - if (devquery->SizeAvailable >= 30) devquery->HardwareType = S2WireType_Ethernet; - - devquery->SizeSupplied = min((int)devquery->SizeAvailable, 30); - } - break; - - case S2_ONEVENT: - /* Two special cases. S2EVENT_ONLINE and S2EVENT_OFFLINE are supposed to - retun immediately if we are already in the state that they are waiting - for. */ - if (((ios2->ios2_WireError & S2EVENT_ONLINE) && !(pb->pb_Flags & PLIPF_OFFLINE)) || - ((ios2->ios2_WireError & S2EVENT_OFFLINE) && (pb->pb_Flags & PLIPF_OFFLINE))) - { - ios2->ios2_Req.io_Error = 0; - ios2->ios2_WireError &= (S2EVENT_ONLINE|S2EVENT_OFFLINE); - DevTermIO(pb,ios2); - ios2 = NULL; - } - else if ((ios2->ios2_WireError & (S2EVENT_ERROR|S2EVENT_TX|S2EVENT_RX|S2EVENT_ONLINE| - S2EVENT_OFFLINE|S2EVENT_BUFF|S2EVENT_HARDWARE|S2EVENT_SOFTWARE)) - != ios2->ios2_WireError) - { - /* we cannot handle such events */ - ios2->ios2_Req.io_Error = S2ERR_NOT_SUPPORTED; - ios2->ios2_WireError = S2WERR_BAD_EVENT; - } - else - { - /* Queue anything else */ - ios2->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - ObtainSemaphore(&pb->pb_EventListSem); - AddTail((struct List*)&pb->pb_EventList, (struct Node*)ios2); - ReleaseSemaphore(&pb->pb_EventListSem); - ios2 = NULL; - } - break; - - /* --------------- stats support ----------------------- */ - - case S2_TRACKTYPE: - if (!addtracktype(pb, ios2->ios2_PacketType)) - { - ios2->ios2_Req.io_Error = S2ERR_NO_RESOURCES; - } - break; - - case S2_UNTRACKTYPE: - if (!remtracktype(pb, ios2->ios2_PacketType)) - { - ios2->ios2_Req.io_Error = S2ERR_BAD_STATE; - ios2->ios2_WireError = S2WERR_NOT_TRACKED; - } - break; - - case S2_GETTYPESTATS: - if (!gettrackrec(pb, ios2->ios2_PacketType, (struct Sana2PacketTypeStats *)ios2->ios2_StatData)) - { - ios2->ios2_Req.io_Error = S2ERR_NO_ERROR; /*S2ERR_BAD_STATE;*/ - ios2->ios2_WireError = S2WERR_NOT_TRACKED; - } - break; - - case S2_READORPHAN: - if (pb->pb_Flags & PLIPF_OFFLINE) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - } - else if (ios2->ios2_BufferManagement == NULL) - { - ios2->ios2_Req.io_Error = S2ERR_BAD_ARGUMENT; - ios2->ios2_WireError = S2WERR_BUFF_ERROR; - } - else - { /* Enqueue it to the orphan-reader-list */ - ios2->ios2_Req.io_Flags &= ~SANA2IOF_QUICK; - ObtainSemaphore(&pb->pb_ReadOrphanListSem); - AddTail((struct List*)&pb->pb_ReadOrphanList, (struct Node*)ios2); - ReleaseSemaphore(&pb->pb_ReadOrphanListSem); - ios2 = NULL; - } - break; - - case S2_GETGLOBALSTATS: - memcpy(ios2->ios2_StatData, &pb->pb_DevStats, sizeof(struct Sana2DeviceStats)); - break; - - case S2_GETSPECIALSTATS: - { - struct Sana2SpecialStatHeader *s2ssh = (struct Sana2SpecialStatHeader *)ios2->ios2_StatData; - - if (pb->pb_ExtFlags & PLIPEF_NOSPECIALSTATS) - { - s2ssh->RecordCountSupplied = 0; - } - else - { - s2ssh->RecordCountSupplied = s2ssh->RecordCountMax > S2SS_COUNT ? - S2SS_COUNT : s2ssh->RecordCountMax; - CopyMem(pb->pb_SpecialStats, (void*)(s2ssh+1), - s2ssh->RecordCountSupplied*sizeof(struct Sana2SpecialStatRecord)); - } - } - break; - - /* --------------- unsupported requests -------------------- */ - - /* all standard commands we don't support */ - case CMD_RESET: - case CMD_UPDATE: - case CMD_CLEAR: - case CMD_STOP: - case CMD_START: - case CMD_FLUSH: - ios2->ios2_Req.io_Error = IOERR_NOCMD; - ios2->ios2_WireError = S2WERR_GENERIC_ERROR; - break; - - /* other commands (SANA-2) we don't support */ - /*case S2_ADDMULTICASTADDRESS:*/ - /*case S2_DELMULTICASTADDRESS:*/ - /*case S2_MULTICAST:*/ - default: - ios2->ios2_Req.io_Error = S2ERR_NOT_SUPPORTED; - ios2->ios2_WireError = S2WERR_GENERIC_ERROR; - break; - } - - if (ios2) DevTermIO(pb, ios2); - - return; -} -/*E*/ - - /* - ** stop io-command - */ -/*F*/ PUBLIC ASM SAVEDS LONG DevAbortIO(REG(a1) struct IOSana2Req *ior, REG(a6) BASEPTR) -{ - BOOL is; - LONG rc = 0; - - d(("cmd = %ld\n",ior->ios2_Req.io_Command)); - - ObtainSemaphore(&pb->pb_WriteListSem); - if (is = isinlist((struct Node*)ior, (struct List*)&pb->pb_WriteList)) abort(pb,ior); - ReleaseSemaphore(&pb->pb_WriteListSem); - if (is) goto leave; - - ObtainSemaphore(&pb->pb_ReadListSem); - if (is = isinlist((struct Node*)ior, (struct List*)&pb->pb_ReadList)) abort(pb,ior); - ReleaseSemaphore(&pb->pb_ReadListSem); - if (is) goto leave; - - ObtainSemaphore(&pb->pb_EventListSem); - if (is = isinlist((struct Node*)ior, (struct List*)&pb->pb_EventList)) abort(pb,ior); - ReleaseSemaphore(&pb->pb_EventListSem); - if (is) goto leave; - - ObtainSemaphore(&pb->pb_ReadOrphanListSem); - if (is = isinlist((struct Node*)ior, (struct List*)&pb->pb_ReadOrphanList)) abort(pb,ior); - ReleaseSemaphore(&pb->pb_ReadOrphanListSem); - if (is) goto leave; - - rc = -1; - -leave: - return rc; -} -/*E*/ - diff --git a/Driver/enc624j6net/enc624j6net/asminterface.h b/Driver/enc624j6net/enc624j6net/asminterface.h deleted file mode 100644 index f064f62..0000000 --- a/Driver/enc624j6net/enc624j6net/asminterface.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - asminterface.h - - Henryk Richter - - Interface macros for ASM subroutines for GCC and SAS/C - - syntax: - ASM SAVEDS int some_asm_subroutine( - ASMR(d3) unsigned int some_data ASMREG(d3), - ASMR(a0) unsigned char *some_address ASMREG(a0) - ); - - Reason for the double spec of An/Dn: some compilers (SAS) require the register - on the left hand side, gcc on the right hand side. I wanted to avoid a big macro - for the whole argument and moved the stuff into two macros per argument. - -*/ -#ifndef _INC_ASMINTERFACE_H -#define _INC_ASMINTERFACE_H - -#ifdef __SASC - -#define ASM __asm -#define ASMR(x) register __ ## x -#define ASMREG(x) -#define SAVEDS __saveds - -#else /* __SASC */ - -#ifdef __GNUC__ - -#define ASM -#define ASMR(x) register -#define ASMREG(x) __asm("" #x "") -#define SAVEDS __saveds - -#else /* __GNUC__ */ - -#error "Compiler not supported yet in asminterface.h" - -#endif /* __GNUC__ */ -#endif /* __SASC */ - - -#endif /* _INC_ASMINTERFACE_H */ diff --git a/Driver/enc624j6net/enc624j6net/enc624j6l.asm b/Driver/enc624j6net/enc624j6net/enc624j6l.asm deleted file mode 100755 index 1bf7468..0000000 --- a/Driver/enc624j6net/enc624j6net/enc624j6l.asm +++ /dev/null @@ -1,1401 +0,0 @@ -; ------------------------------------------------------------------------------ -; | Lowlevel Access to memory mapped ENC624J600 in PSP mode | -; | Henryk Richter | -; ------------------------------------------------------------------------------ -; Currently, the following assumptions are implemented: -; - device in Mode 3, i.e. 16 Bit access -; - register addresses shifted by 1 left, i.e. register base * 2 compared -; to 16 Bit mode of ENC624J600 documentation (8 Bit mode alike) -; - some byte shuffling required - which currently is in a state of flux -; -; Note: This code is in some places intentionally saving more registers than -; required by the AmigaOS ABI. -; -; -;TODO: -; - setMAC/getMAC endianess awareness -; - Pattern Matching, MC/MC filtering: Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,"not me" Unicast -; - _enc624j6l_RXReset -> won't recover from totally unresponsive chip (but exits gracefully) -; - RXSTART_INIT = $0c00 -> currently $2000 due to location bug - - incdir Temp:Amiga/src/Zorro-LAN-IDE.git/Driver/enc624j6net/ - include "enc624j6net/registers.i" - include "enc624j6net/macros.i" - -; enable debugging code block -DEBUG EQU 0 -; - -;------------- ------------ -; -; options for buffer memory configuration, please reserve some space for private variables -; -PSTART_INIT EQU $0BF0 ; 16 Bytes private storage for driver -PSTOP_INIT EQU $0BFF ; (see below for definitions) - -RXSTART_INIT EQU $2000 ; start of RX buffer, room for 14 packets -RXSTOP_INIT EQU $5fff ; end of RX buffer - -TXSTART_INIT EQU $0000 ; start of TX buffer, room for 2 packets -TXSTOP_INIT EQU $0BEF ; end of TX buffer (1536+1520 bytes) - -; max frame length which the conroller will accept: -; (note: maximum ethernet frame length would be 1518 w/o 802.1Q) -MAX_FRAMELEN EQU 1518 - -;------------ driver private storage ------------------------------ -PNextPacket EQU PSTART_INIT ;2 Bytes - private "next packet" pointer for RX -PNextTX EQU PSTART_INIT+2 ;2 Bytes - private "next packet" pointer for TX (init as 0) -PSigBit EQU PSTART_INIT+4 ;2 Bytes interrupt bit -PSigTask EQU PSTART_INIT+6 ;4 Bytes signaled task -PLinkChange EQU PSTART_INIT+10 ;2 Bytes Link Change (copy of PHYDPX,PHYLNK bits) -Punused EQU PSTART_INIT+12 ; - -;------------- TX: double buffering -------------------------------- -PSwapTX EQU $600 ;swap between two TX buffers (one active, one activated after last TX done) -; -; - -;------------- driver init flags ----------------------------------- -PIO_INIT_FULL_DUPLEX EQU 1 -PIO_INIT_LOOP_BACK EQU 2 -PIO_INIT_BROAD_CAST EQU 4 -PIO_INIT_FLOW_CONTROL EQU 8 -PIO_INIT_MULTI_CAST EQU 16 -PIO_INIT_PROMISC EQU 32 - -;------------- ----------- - - - ifne DEBUG -; -; these are only for the debug code -; -ENC_MANUFACTURER EQU 2588 ;a1k -ENC_BOARDID EQU 123 ;ZII-IDE-LAN-CP - endc - - ; - ; - ; Hardware dependent routines, exported globals - ; - ; - XDEF _enc624j6l_CheckBoard ;check whether board is operating correctly - - ; get/set MAC address - XDEF _enc624j6l_GetMAC ;current state, not necessarily burned in MAC - XDEF _enc624j6l_SetMAC ;set user defined MAC address - - ;delay min. D0 microseconds (<= $0fffffff) - XDEF _enc624j6l_UMinDelay - - ;init/shut down board (CheckBoard is not allowed between those two) - XDEF _enc624j6l_Init - XDEF _enc624j6l_Shutdown - - ;online/offline - XDEF _enc624j6l_SetOffline - XDEF _enc624j6l_SetOnline - XDEF _enc624j6l_CheckLinkChange - - ;transmit/receive functions - XDEF _enc624j6l_HaveRecv ; - XDEF _enc624j6l_RecvFrame ; - XDEF _enc624j6l_TransmitFrame ; - - XDEF _enc624j6l_IntServer - XDEF _enc624j6l_EnableInterrupt - XDEF _enc624j6l_DisableInterrupt - XDEF _enc624j6l_EnableGlobalInterrupt - XDEF _enc624j6l_DisableGlobalInterrupt - - ; - ; System includes - ; - - ifnd _LVOSignal -_LVOSignal EQU -324 - endc - - ;machine 68020 - - section code,code - - - - - - - -; ----------------------------------------------------------------------------- -; | | -; | Test/Debug code | -; | | -; ----------------------------------------------------------------------------- -; -; DEBUG CODE: main function that checks the board, sends a couple of ICMP frames and -; receives frames until LMOUSE pressed -; - ifne DEBUG -ExecBase EQU 4 ; Exec.Base() -OpenLibrary EQU -552 ; D0:Base=OpenLibrary(A1:libName,D0:version) -CloseLibrary EQU -414 ; Exec.CloseLibrary(A1:libBase) -PutStr EQU -948 ; DOS.PutStr(D1:str) -_LVODelay EQU -198 -_LVOFindConfigDev EQU -72 ; expansion -cd_BoardAddr EQU 32 ; structure ConfigDev - -START: -opendos: - ;libs - move.l ExecBase,a6 - lea DosLibrary(pc),a1 - moveq #0,d0 - jsr OpenLibrary(a6) - move.l d0,_dosbase - beq error - - lea ExpansionLibrary(pc),a1 - moveq #36,d0 - jsr OpenLibrary(a6) - move.l d0,_expansionbase - - ;expansion scan for first board - move.l _expansionbase(pc),a6 - suba.l a0,a0 ;find first board - move.l #ENC_MANUFACTURER,d0 - moveq #ENC_BOARDID,d1 - jsr _LVOFindConfigDev(a6) - tst.l d0 - beq error - move.l d0,a5 ;board - move.l cd_BoardAddr(A5),d0 ;base address - beq error - move.l d0,_boardbase - - ;tests - move.l _dosbase(pc),a6 - moveq #0,d7 ;no error - - ;Board test - move.l _boardbase(pc),a0 - bsr _enc624j6l_CheckBoard - move.b d0,board_status - - ; MAC address test - move.l _boardbase(pc),a0 - lea mactestr(pc),a1 - bsr _enc624j6l_GetMAC - - move.l _boardbase(pc),a0 - lea mactest(pc),a1 - bsr _enc624j6l_SetMAC - - lea macdest(pc),a1 - move.l _boardbase(pc),a0 - bsr _enc624j6l_GetMAC ;verify - - lea mactest(pc),a0 ;verify MAC r/w - lea macdest(pc),a1 - move.l (a0)+,d0 - sub.l (a1)+,d0 - moveq #0,d1 - move.w (a0)+,d1 - sub.w (a1)+,d1 - move.b #1,mac_status ;OK - or.l d1,d0 - beq.s .macok - st mac_status ;error -.macok: - - move.l _boardbase(pc),a0 - lea mactestr(pc),a1 - bsr _enc624j6l_SetMAC ;restore default MAC - - ; Initialize board for sending/receiving - move.l _boardbase(pc),a0 - bsr _enc624j6l_Init - tst.l d0 - ble error - - ;---------- transmit test stuff --------------- - moveq #100,d2 -.txtest: - move.l _boardbase(pc),a0 - lea txtestframe(pc),a1 - move #txtestlen,d0 - bsr _enc624j6l_TransmitFrame ; - dbf d2,.txtest - - ;----------- receive text stuff --------------- -.loop - move.l _boardbase(pc),a0 - ;READREG ESTAT,a0,d0 - bsr _enc624j6l_HaveRecv - tst.l d0 - blt error ;bail out if error - beq .noframe ;nothing received - - ;debug: disable recv - move.l _boardbase(pc),a0 - moveq #ECON1_RXEN,d0 - CLRREG ECON1,a0,d0 - - move.l _boardbase(pc),a0 - lea readframe,a1 - move #MAX_FRAMELEN,d0 - bsr _enc624j6l_RecvFrame - - -.noframe: - btst #6,$bfe001 - bne.s .loop - -error: - rts - -regtests: - READREG ESTAT,a0,d0 - READREG ECON1,a0,d1 - READREG MACON2,a0,d2 - READREG MABBIPG,a0,d3 - rts - - -DosLibrary: dc.b "dos.library",0 -ExpansionLibrary: dc.b "expansion.library",0 - cnop 0,4 -_expansionbase: dc.l 0 -_dosbase: dc.l 0 -_boardbase: dc.l 0 - -mactest: dc.b $00,$80,$10,$b,$a,$ff ;we write this as test MAC -mactestr: dc.b 0,0,0,0,0,0 ;HW MAC -macdest: dc.b 0,0,0,0,0,0 ;MAC verify - -status: -board_status: dc.b 0 ;ok -mac_status: dc.b 0 ;ok - cnop 0,4 - -readframe: ds.b 1536 -endf: - -txtestframe: - dc.b $ff,$ff,$ff,$ff,$ff,$ff ;, /* broadcast */ - dc.b $00,$80,$10,$0b,$0a,$ff ;, /* own MAC */ - dc.b $08,$00 ;, /* Type IPv4 */ - ; /* */ - dc.b $45,$00 ; /* VER, DSCP */ - dc.b $00,$54 ;, /* length */ - dc.b $A0,$0A ;, /* id */ - dc.b $00,$00 ;, /* flags, fragment offset */ - dc.b $40 ;, /* TTL */ - dc.b $01 ;, /* ICMP */ - dc.b $00,$00 ;, /* header checksum */ - dc.b 192,168,10,12 ;, /* SRC IP */ - dc.b 192,168,10,255 ;, /* dest IP */ - ; /* */ - dc.b $08,$00 ;, /* Type, Code = ICMP Echo */ - dc.b $00,$00 ;, /* Checksum */ - dc.b $DE,$AD ;, /* Identifier */ - dc.b $00,$01 ;, /* SeqNum */ - - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 -txtestlen EQU *-txtestframe - - cnop 0,4 - - endc -; ----------------------------------------------------------------------------- -; | | -; | END Test/Debug code | -; | | -; ----------------------------------------------------------------------------- - - - - -;------------------------------------------------------------------------------ -;------------------------------------------------------------------------------ -; -; HW dependent functions -; -;------------------------------------------------------------------------------ -;------------------------------------------------------------------------------ - - -;------------------------------------------------------------------------------ -; -; Purpose: check whether the board is operating as needed; -; -; input: A0 - mmapped board base address -; -; output: success/failure -; >0 - all fine -; <=0 - problem (codes undefined yet) -; -; notes: The Olimex module on the Matze/Scrat ZII IDE LAN CP prototype -; tends to boot in SPI mode instead of PSP (parallel) mode. -; That case is detected by writing/reading data. If both bytes -; of the words are equal to the last written byte, the board is likely -; showing this issue. -; Please note that this call will overwrite Board registers and -; buffer memory. Call before initialization. -_enc624j6l_CheckBoard: ;check whether board is operating correctly - movem.l d1-d2/a0-a1,-(sp) - - move.l a0,d0 - beq .err - - moveq #60,d0 ;let the board settle in if there was - bsr _enc624j6l_UMinDelay ;a reset or POR (unlikely) - - - ; ----------------- quick check for operational mode ------------------ - move.w #$1234,d1 - WRITEREG EUDAST,a0,d1 ;write data - tst.l 4.w ;clear BUS - READREG EUDAST,a0,d0 - cmp.w d0,d1 ;do we get the register back ? - bne.s .err ;no -> complain - - - ; ------------------------- reset device ------------------------------ - moveq #ECON2_ETHRST,d0 - WRITEREG ECON2,a0,d0 ;reset board - - moveq #64-1,d1 ;number of loops to test (max. 7.6 ms) -.loop: - moveq #120,d0 ;wait patiently - bsr _enc624j6l_UMinDelay ; - - READREG ESTAT,a0,d0 - and #(ESTAT_CLKRDY|ESTAT_RSTDONE|ESTAT_PHYRDY),d0 - cmp #(ESTAT_CLKRDY|ESTAT_RSTDONE|ESTAT_PHYRDY),d0 - beq .rstsuccess - - dbf d1,.loop - bra.s .err ;error: device gone after reset - -.rstsuccess: - READREG EUDAST,A0,d0 - tst.w d0 ;should have gone to 0 after reset - bne.s .err ;(see above, we've written $1234) - - ;---------- short RAM check - write phase ---------------------------- - ;---------- (device is not receiving after reset) -------------------- - moveq #3,d1 - move.w #$3000-1,d0 - lea (a0),a1 -.wrloop -; move.w d1,(a1)+ - clr.w (a1)+ - rol.l d1 - eor.b #3,d1 - dbf d0,.wrloop - - - ;---------- short RAM check - read phase ------------------------------ - moveq #3,d1 - move.w #$3000-1,d0 - lea (a0),a1 -.rdloop - move.w (a1)+,d2 - eor.w d1,d2 -; bne.s .err - rol.l d1 - eor.b #3,d1 - dbf d0,.rdloop - - ;---------- satisfied, return our sincere happiness ------------------- - - moveq #1,d0 ;all fine - bra.s .ret -.err: - moveq #0,d0 -.ret - movem.l (sp)+,d1-d2/a0-a1 - rts - - -;------------------------------------------------------------------------------ -; -; Get current MAC address of board -; -; return the 6 Bytes of the MAC address in buffer at A1. Please note that this -; call either returns the burned in Address (if unchanged) or the current -; user-set address if the registers were modified before. -; -; In: A0 - Board base address -; A1 - Pointer to buffer where to store 48 Bit -; -; Out: -; D0 <= 0 - failure -; 1 -; -; Trash: A0/A1 -; -_enc624j6l_GetMAC: ;current state, not necessarily burned in MAC - move.l a0,d0 - beq.s .err - lea MAADR1L+2(a0),a0 ;after first pair of bytes - - rept 3 - move.w -(a0),d0 - rol.w #8,d0 - move.w d0,(a1)+ - endr - - moveq #1,d0 ;success -.err: ; we land at .err with d0 == 0 - rts - - -;--------------------------------------------------------------------------------------- -; -; Set current MAC address of board -; -; set the 6 Bytes of the MAC address from buffer at A1. -; -; In: A0 - Board base address -; A1 - Pointer to buffer where to read 48 Bit from -; -; Out: -; D0 <= 0 - failure -; 1 -; -; Trash: A0/A1 -; -_enc624j6l_SetMAC: ;set user defined MAC address - move.l a0,d0 - beq.s .err - lea MAADR1L+2(a0),a0 ;after first pair of bytes - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Initialize hardware for send/recv -; -; This call could/should have been done in C. My reason for doing this in ASM was easy -; testing with low turnaround time. -; -; In: A0 - Board base address -; D1 - flags -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: -; -_enc624j6l_Init: - move.l a0,d0 - beq .err - - READREG ESTAT,a0,d0 - and #(ESTAT_CLKRDY|ESTAT_PHYRDY),d0 - cmp #(ESTAT_CLKRDY|ESTAT_PHYRDY),d0 - beq.s .goon ;this state is ok for us - - bsr _enc624j6l_CheckBoard ;preserves all regs - tst.l d0 ;board reset unsuccessful ? - ble.w .err ;-> bail out -.goon: - ;-------------- configure clockout ---------------------- - moveq #ECON1_RXEN,d0 ;no RX, my dear (yet) - CLRREG ECON1,a0,d0 ; - - ;33.333Mhz clock out frequency (see defines above) - move.w #CLOCK_DEF_CLR,d0 ;clr mask - CLRREG ECON2,a0,d0 - move.w #CLOCK_DEF_SET,d0 ;set mask - SETREG ECON2,a0,d0 - - ; disable crypto engine and all interrupts - move #EIR_CRYPTEN|EIR_MODEXIF|EIR_HASHIF|EIR_AESIF|EIR_LINKIF|EIR_PRDYIF|EIR_PKTIF|EIR_DMAIF|EIR_TXIF|EIR_TXABTIF|EIR_RXABTIF|EIR_PCFULIF,d0 - CLRREG EIR,a0,d0 - - ;--------------- RX configuration ----------------------- - move #RXSTART_INIT,d0 - WRITEREG ERXST,a0,d0 ;set RX start pointer (end will be $5fff) - WRITEREG PNextPacket,a0,d0 ;set user read pointer - - ;Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,filter runts - ;"not me" Unicast == |ERXFCON_NOTMEEN - moveq #PIO_INIT_MULTI_CAST,d0 - and d1,d0 - beq.s .no_multicast - move #ERXFCON_MCEN|ERXFCON_BCEN|ERXFCON_UCEN|ERXFCON_MPEN|ERXFCON_CRCEN|ERXFCON_RUNTEN,d0 - bra.s .setfilter -.no_multicast - move #ERXFCON_BCEN|ERXFCON_UCEN|ERXFCON_MPEN|ERXFCON_CRCEN|ERXFCON_RUNTEN,d0 -.setfilter - WRITEREG ERXFCON,a0,d0 ;set filter TODO: pattern matching stuff - - move #RXSTOP_INIT&$fffe,d0 - WRITEREG ERXTAIL,a0,d0 ;tail pointer in buffer = rx-2, wraparound - -; ifne _OPT_FLOWCONTROL - moveq #PIO_INIT_FLOW_CONTROL,d0 - and d1,d0 - beq.s .init_noflow - - move #(128<<8)|(32),d0 ;128*96=12288 high water mark, 32*96=3072 low water mark - WRITEREG ERXWM,a0,d0 - moveq #MACON1_RXPAUS,d0 - SETREG MACON1,a0,d0 - move #ECON2_AUTOFC,d0 - SETREG ECON2,a0,d0 - bra.s .init_flowdone -; else -.init_noflow: - move #ECON2_AUTOFC,d0 - CLRREG ECON2,a0,d0 ;disable automatic flow control -.init_flowdone: -; endc - - - ;--------------- TX configuration ----------------------- - ; no padding, no proprietary header - move #MACON2_PADCFG2|MACON2_PADCFG1|MACON2_PADCFG0|MACON2_PHDREN,d0 - CLRREG MACON2,a0,d0 - ; add CRC by ENC Chip - move #MACON2_PADCFG2|MACON2_PADCFG0|MACON2_TXCRCEN,d0 ; - SETREG MACON2,a0,d0 - - move #MAX_FRAMELEN,d0 - WRITEREG MAMXFL,a0,d0 ;set maximum frame length - moveq #0,d0 - WRITEREG PNextTX,a0,d0 ;private pointer, "last written, maybe still pending frame" - - moveq #0,d0 - WRITEREG PLinkChange,a0,d0 ;no detected/acknowledged link right now, i.e. LNK and DPX bits = 0 - - ;--------------- DONE: enable reception ----------------- - moveq #ECON1_RXEN,d0 - SETREG ECON1,a0,d0 - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Shutdown hardware -; -; This call could/should have been done in C. My reason for doing this in ASM was easy -; testing with low turnaround time. -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -_enc624j6l_Shutdown: - move.l a0,d0 - beq .err - - bsr _enc624j6l_SetOffline - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Bring device online -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: - assumes that init() was called before, also please note that init -; will bring the device online by itself -; - it will take a while until the device is properly configured (several hundred -; milliseconds), therefore a delay is advised after calling this (preferably Delay() in DOS) -; -_enc624j6l_SetOnline: - move.l a0,d0 - beq.s .err - - move #ECON2_ETHEN|ECON2_STRCH,d0 - SETREG ECON2,a0,d0 - -; move #PHCON1_PSLEEP,d0 -; CLRREG PHCON1,a0,d0 - - moveq #ECON1_RXEN,d0 - SETREG ECON1,a0,d0 - - moveq #0,d0 - WRITEREG PLinkChange,a0,d0 ;no detected/acknowledged link right now, i.e. LNK and DPX bits = 0 - - ;moveq #1,d0 ;already set, see above -.err - rts - - -;--------------------------------------------------------------------------------------- -; -; Bring device offline -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_SetOffline: - move.l a0,d0 - beq.s .err - - ; disable crypto engine and all interrupts - move #EIR_CRYPTEN|EIR_MODEXIF|EIR_HASHIF|EIR_AESIF|EIR_LINKIF|EIR_PRDYIF|EIR_PKTIF|EIR_DMAIF|EIR_TXIF|EIR_TXABTIF|EIR_RXABTIF|EIR_PCFULIF,d0 - CLRREG EIR,a0,d0 - - moveq #ECON1_RXEN,d0 - CLRREG ECON1,a0,d0 - -; move #PHCON1_PSLEEP,d0 -; SETREG PHCON1,a0,d0 - - move #ECON2_ETHEN|ECON2_STRCH,d0 - CLRREG ECON2,a0,d0 - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Enable Hardware Interrupt -; -; In: A0 - Board base address -; A1 - Signal Task - task to receive signal -; D0 - Signal Bit - the interrupt will send a signal to the given task (BIT, NOT SIGNAL MASK!!) -; D1 - Interrupt mask (pass 0 for now) -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_EnableInterrupt: - move.l a0,d1 - beq.s .err - - WRITEREG PSigBit,a0,d0 ;save signal bit - - move.l a1,d0 - WRITEREG PSigTask+2,a0,d0 ;lower two bytes - swap d0 ; - WRITEREG PSigTask,a0,d0 ;upper two bytes - - ; enable interrupt for incoming packet - moveq #-1,d0 ;magic trick: the board enables Interrupts - lea $4000(a0),a0 - move.w d0,($4000,a0) - lea -$4000(a0),a0 - - move #EIE_PKTIE|EIE_INTIE,d0 - SETREG EIE,a0,d0 - - moveq #1,d0 -.rts - rts -.err: - moveq #0,d0 - bra.s .rts - -;--------------------------------------------------------------------------------------- -; -; Enable Global Hardware Interrupt -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_EnableGlobalInterrupt: - move #EIE_INTIE,d0 - SETREG EIE,a0,d0 - moveq #1,d0 -.rts - rts - -;--------------------------------------------------------------------------------------- -; -; Disable Global Hardware Interrupt -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_DisableGlobalInterrupt: - move #EIE_INTIE,d0 - CLRREG EIE,a0,d0 - moveq #1,d0 -.rts - rts - - - -;--------------------------------------------------------------------------------------- -; -; Disable Hardware Interrupt -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_DisableInterrupt: - move.l a0,d0 - beq.s .err - - moveq #0,d0 ;magic trick: the board enables Interrupts - lea $4000(a0),a0 - move.w d0,($4002.l,a0) - lea -$4000(a0),a0 - - ;WRITEREG $8000,a0,d0 ;only with this "sesame" - - ;disables all interrupts - move #EIE_INTIE|EIE_PKTIE|EIE_LINKIE|EIE_AESIE|EIE_MODEXIE|EIE_HASHIE|EIE_PRDYIE|EIE_DMAIE|EIE_TXIE|EIE_TXABTIE|EIE_RXABTIE|EIE_PCFULIE,d0 - CLRREG EIE,a0,d0 - - moveq #0,d0 - WRITEREG PSigTask+2,a0,d0 ;lower two bytes - WRITEREG PSigTask,a0,d0 ;upper two bytes - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Hardware interrupt service routine -; -; In: A1 - is_data = board base address -; -; Out: - -; -; Notes: assumes that init() was called before -; -_enc624j6l_IntServer: - move.l a1,d0 ;no pointer supplied ? -> return - beq.s .rts - - moveq #EIR_PKTIF,d1 - READREG EIR,a1,d0 ;get interrupt status reg - and d1,d0 - beq.s .rts ;exit quickly when no packet pending - ;CLRREG EIR,a1,d1 ;clear interrupt bit - - ;move #$C000,d0 ;disable board interrupt until /INT from ENC toggles - ;lea $4000(a1),a1 ;D0: Bit15 = overall board int enable, Bit14 = ignore int until toggle (1) - ;move.w d0,($4000,a1) - ;lea -$4000(a1),a1 - - move #EIE_INTIE,D0 ;disable board interrupt until someone enables it again - CLRREG EIE,A1,d0 - - READREG PSigTask,a1,d0 ;upper two bytes - swap d0 ; - READREG PSigTask+2,a1,d0 ;lower two bytes - tst.l d0 ; no task ? - beq.s .rts - move.l d0,a0 ; signaled task - - moveq #0,d0 - READREG PSigBit,a1,d1 ;get signal bit - bset d1,d0 ;signal mask - move.l a0,a1 ;task - - move.l 4.w,a6 - jsr _LVOSignal(a6) - -.rts - moveq #0,d0 ;set Z flag - rts - - -;--------------------------------------------------------------------------------------- -; -; check for link change events -; -; In: A0 = board base address -; -; Out: D0 <0 error -; =0 ok, no link change handled -; >0 ok, link change handled -; -; Notes: assumes that init() was called before -; -_enc624j6l_CheckLinkChange: - move.l a0,d0 - beq.s .rts - - ; link change events are captured with Interrupts and stored - ; in the (custom) PLinkChange location (per board) by init and - ; the int server (0 -> no link change, !=0 -> link change) - READREG PLinkChange,a0,d0 ;last known status of LNK and DPX - READREG ESTAT,a0,d1 - and #ESTAT_PHYLNK|ESTAT_PHYDPX,d1 ; - eor.w d1,d0 ;compare - beq .nochg - - WRITEREG PLinkChange,a0,d1 ;remember last parsed settings - - ;check for link down before setting registers - ;also be aware of shutting down FDX mode - ; - move #ESTAT_PHYLNK,d0 - and d1,d0 - bne.s .linkup - - ; - ; offline - ; - ; D1 = ESTAT & (ESTAT_PHYDPX|ESTAT_PHYLNK) - ; - - moveq #MACON2_FULDPX,d0 - CLRREG MACON2,a0,d0 ;clear fullduplex bit when offline - moveq #$12,d0 - WRITEREG MABBIPG,a0,d0 ;half duplex when offline - - bra.s .endchg -.linkup: - ; - ; online - ; - ; D1 = ESTAT & (ESTAT_PHYDPX|ESTAT_PHYLNK) - ; - - ; link up and configured - bfextu d1{21:1},d1 ;get Bit 10 to Bit 0 (ESTAT_PHYDPX -> MACON2_FULDPX) - READREG MACON2,a0,d0 - bclr #0,d0 ;clear FDX bit - or.l d1,d0 ;set if active - WRITEREG MACON2,a0,d0 - - moveq #$12,d1 ;half duplex $12 - btst #0,d0 - beq.s .nofdx - moveq #$15,d1 ;full duplex $15 -.nofdx: - WRITEREG MABBIPG,a0,d1 - -.endchg: - moveq #1,d0 - bra.s .rts -.nochg: - moveq #0,d0 -.rts: - rts - - -;--------------------------------------------------------------------------------------- -; -; Reset Receive pointers -; -; INTERNAL: re-initialize receive buffer in case of problems (limited testing so far!) -; -; In: A0 - Board base address -; D1 - flags -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: - Doesn't check for Board Pointer (!) -; - doesn't re-enable RX (!) -; -_enc624j6l_RXReset: - - moveq #ECON2_RXRST,d0 ;RX Reset, clears RXEN - SETREG ECON2,a0,d0 ; - ;moveq #ECON1_RXEN,d0 ;done by RX reset - ;CLRREG ECON1,a0,d0 ; - - ;-------------- manually decrement ESTAT packet count --------------- - move.w #$100,d1 ;max. loops -.clearESTAT - READREG ESTAT,a0,d0 - tst.b d0 ;ESTAT_PKTCNT7...ESTAT_PKTCNT0 - beq.s .empty - move #ECON1_PKTDEC,d0 - SETREG ECON1,a0,d0 ;set packet decrement ("frame", actually) - dbf d1,.clearESTAT - - ;oh. ESTAT didn't move. This is bad. Full Reset needed - ;(unimplemented yet, pretend we're good) -.empty - ;----------------- restart RX with proper pointers ----------------- - moveq #ECON2_RXRST,d0 ;bring RX out of reset (RXEN still off) - CLRREG ECON2,a0,d0 ; - - move #RXSTART_INIT,d0 - WRITEREG ERXST,a0,d0 ;set RX start pointer (end will be $5fff) - WRITEREG PNextPacket,a0,d0 ;set user read pointer - - ;Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,"not me" Unicast - move #ERXFCON_MCEN|ERXFCON_BCEN|ERXFCON_UCEN|ERXFCON_MPEN|ERXFCON_CRCEN|ERXFCON_NOTMEEN,d0 - WRITEREG ERXFCON,a0,d0 ;set filter TODO: pattern matching stuff - move #RXSTOP_INIT&$fffe,d0 - WRITEREG ERXTAIL,a0,d0 ;tail pointer in buffer = rx-2, wraparound - - move #MAX_FRAMELEN,d0 - WRITEREG MAMXFL,a0,d0 ;set maximum frame length - - ;moveq #ECON1_RXEN,d0 ;uncomment these for Auto RX re-enabling - ;SETREG ECON1,a0,d0 - - rts - -;--------------------------------------------------------------------------------------- -; -; check for pending receive frames -; -; input: A0 - mmapped board base address -; -; output: D0 <0 - error -; 0 - no pending frames -; >0 - number of pending frames -; -; trash: - -; -; notes: Interrupt-safe, meant to return quickly -; -_enc624j6l_HaveRecv: - move.l a0,d0 - beq.s .err - - READREG ESTAT,a0,d0 - and.l #$ff,d0 ;ESTAT_PKTCNT7...ESTAT_PKTCNT0 -.rts: - rts -.err: moveq #-1,d0 - bra.s .rts - - -;--------------------------------------------------------------------------------------- -; -; receive single frame from HW into supplied memory buffer -; -; input: A0 - APTR mmapped board base address -; A1 - APTR buffer for received frame -; D0 - SHORT maximum size in buffer -; -; output: D0 <0 - error (i.e. frame too large) -; 0 - no pending frames -; >0 - size of received frame in buffer -; -; trash: - -; -; notes: -; -_enc624j6l_RecvFrame: ; - movem.l d2-d7/a1-a3,-(sp) - move.l a0,d1 - beq .err - - READREG ESTAT,a0,d0 ;number of pending frames - and.l #$ff,d0 ;clear out count (ESTAT_PKTCNT7...ESTAT_PKTCNT0) - beq .rts ;nothing in buffer, return sheer emptiness - ;at least one frame in buffer - - READREG ERXHEAD,A0,d4 - READREG ERXTAIL,A0,d5 - - ;----------- check next packet pointer and verify expected state ----------- - READREG PNextPacket,a0,d7 ;get user read pointer from private space - ;lea (a0,d7.w),a2 ;read ptr for next packet address - ;READREG 0,a2,d0 ;next packet pointer - - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - ifeq _OPT_BUFFER_SWAP - rol.w #8,d0 ;swap pointer to Big Endian - endc - - ;verify next packet pointer, re-initialize recv if this is invalid - cmp #RXSTOP_INIT,d0 ;bad pointer (<0 or >end of memory) - bhi.w .recv_err - cmp d0,d7 - bgt.s .maybewrap - ;unwrapped next packet - move d0,d1 - bra.s .ptrcheck -.maybewrap: - ;wrapped next packet ? - move #RXSTOP_INIT+1-RXSTART_INIT,d1 ;unwrap distance - add.w d0,d1 ;next pkt + unwrap distance -.ptrcheck: - sub.w d7,d1 ;length of pkt - cmp #MAX_FRAMELEN+2+6,d1 ;must be smaller than max framelen + ptr + status vector - bhi .recv_err ;-> reinit recv (am I paranoid ? -> try ENC28J60, then you know why...) - - ;debug: collect packet positions - ;move.l recvptr,a2 - ;move d0,(a2)+ - ;move.l a2,recvptr - ;addq.l #1,recvcount - ;cmp.l #65536,recvcount - ;bgt .recv_err - - WRITEREG PNextPacket,a0,d0 ;write pointer for next packet - - ;------------------ check receive status vector ----------------------------- - addq.w #2,d7 ;increment pointer - WRAPINDEX d7 ;wrap D7 if beyond buffer - ;lea (a0,d7.w),a2 ;read ptr for first control word - ;READREG 0,a2,d0 ;last control word = length (byte count) - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - ifeq _OPT_BUFFER_SWAP - rol.w #8,d0 ;swap pointer to Big Endian - endc - - and.w #$f800,d0 ;verify (should be all zeros in upper 9 bits) - bne .recv_err ;receive buffer is wrong -> re-initialize - - addq.w #4,d7 ;increment pointer - WRAPINDEX d7 ;wrap D7 if beyond buffer - ;lea (a0,d7.w),a2 ;new read pointer for length - ;READREG 0,a2,d0 ;last control word = length (byte count) - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - ifeq _OPT_BUFFER_SWAP - rol.w #8,d0 ;swap pointer to Big Endian - endc - - ifne 1 - ;D1 is the distance to the next frame = stored length + recv vevtor - sub #6+2,d1 ;STATUS VECTOR, Pointer - move d1,d0 ; - - else - - cmp #2,d0 - blt .recv_err ;can't be: SRC MAC 6 DST MAC 6 LEN/TYPE 2 CRC 4 (discounting variable data) - cmp #MAX_FRAMELEN,d0 - bgt .recv_err - - endc - - subq #4,d0 ;subtract CRC length - - addq.w #2,d7 ;increment pointer (skip status vector length field) - WRAPINDEX d7 ;wrap D7 if beyond buffer - - ;d0.w: length (without crc) - ;d7.w: read position (beginning of frame, dest MAC) - ;a0: board I/O - ;a1: dest pointer - move.l a1,a3 - - ifne _OPT_RECV - move.l d7,d1 ;start - ;and.l #$FFFF,d1 ;keep only lower address - add.w d0,d1 ;start+bytes - bvs.s .nooptrecv ;what? beyond 16 Bit ? -> we really should consider this an error, really :-) - cmp.w #RXSTOP_INIT,d1 ; - bgt.s .nooptrecv ;sadly, we cannot use faster routine atm, because we have a wrap around in the SRAM buffer - - ifne _OPT_ADR_QUIRK - eor.w #$6000,d7 - endc - lea (a0,d7.w),a2 ;read pointer - moveq #3,d1 ;round bytes up - add d0,d1 ;byte count + 3 - lsr #2,d1 ;converted to dword count = ceil(bytes/4) - subq #1,d1 ;longwords - 1 -.opt_read: - ifne _OPT_BUFFER_SWAP - move.l (a2)+,d2 ;get current word - rol.w #8,d2 ;swap buffer to Big Endian - swap D2 - rol.w #8,d2 ;swap buffer to Big Endian - swap D2 - move.l d2,(a1)+ - else - move.l (a2)+,(a1)+ - endc - dbf d1,.opt_read - bra.s .end_read -.nooptrecv: - endc ;_OPT_RECV - - ;generic loop: check for position overflows with each word - ; - ;CAUTION: DWORD loop doesn`t apply here since buffer is organized - ; in multiples of two bytes, same for frame lengths and - ; possible wraparounds - ; - moveq #1,d2 ;mask for lower bit - move d0,d1 ;byte count - lsr #1,d1 ;converted to word count - and.l d0,d2 ;if lower bits are set -> - bne.s .generic_read ;read 1 word more if impair byte/word count - subq #1,d1 ;words - 1 -.generic_read: - move.w (a0,d7.w),d2 ;get current word - ifne _OPT_BUFFER_SWAP - rol.w #8,d2 ;swap buffer to Big Endian - endc - move.w d2,(a1)+ ; store currend word - addq #2,d7 ;increment position - WRAPINDEX d7 ;wrap D7 if beyond buffer - dbf d1,.generic_read - -.end_read: - ;frame copied, now advance HW pointer - READREG PNextPacket,a0,d1 ;write pointer for next packet - cmp #RXSTART_INIT,d1 - bne.s .tail_nowrap - move #(RXSTOP_INIT&$fffe)+2,d1 -.tail_nowrap: - subq #2,d1 - WRITEREG ERXTAIL,a0,d1 ;tail pointer in buffer = rx-2, wraparound - - move #ECON1_PKTDEC,d1 - SETREG ECON1,a0,d1 ;set packet decrement ("frame", actually) - - ext.l d0 - cmp.w #14,d0 - bge.s .rts - - moveq #0,d0 - -; cmp.l #$d8803977,6(a3) -; beq .rts -; moveq #0,d0 -; clr.l 6(a3) - -.rts: - movem.l (sp)+,d2-d7/a1-a3 - rts -.err: moveq #-1,d0 ;receive error - bra.s .rts -.recv_err: - ;serious problem: we need to re-initialize the recv buffer here - bsr _enc624j6l_RXReset - - moveq #ECON1_RXEN,d0 ;re-enable reception - SETREG ECON1,a0,d0 - - moveq #0,d0 - bra.s .rts - - -;--------------------------------------------------------------------------------------- -; -; send single frame from HW -; -; input: A0 - APTR mmapped board base address -; A1 - APTR buffer for sent frame (without CRC, appended by the ENC) -; D0 - SHORT size of frame in buffer -; -; output: D0 <0 - error (i.e. frame too large) -; 0 - no pending frames -; >0 - size of received frame in buffer -; -; trash: - -; -; notes: -; -_enc624j6l_TransmitFrame: - movem.l d2-d4/a2,-(sp) - - ;---------------- parameter check ------------------------------------- - - move.l a0,d1 ;no base PTR - beq.w .err ;exit - - ; this check moved to server.c -> hw.c -> enc624j6l_CheckLinkChange() - ; instead of checking with every TX frame, do it before going to sleep - ifne _OPT_CHECKLINK_TX - - READREG PLinkChange,a0,d1 ;last known status of LNK and DPX - READREG ESTAT,a0,d2 ; - and #ESTAT_PHYLNK|ESTAT_PHYDPX,d2 ; - eor.w d2,d1 ;compare - bne.s .linkchg ;jump to parameter adjust -.linkchgdone: ;.linkchg returns here with another branch - - endc - - move.l a1,d1 ;no send frame ? - beq.w .err ;exit - - move.w d0,d4 ;still need length later - addq #7,d0 ;round up - asr.w #3,d0 ;size/8 = words - subq.w #1,d0 ;dbf... - blt.w .err ;size<2 ? bail out - - - ;------ double-buffered frame copy to send buffer --------------------- - READREG PNextTX,a0,d2 ;"last written, maybe still pending frame" - and.w #PSwapTX,d2 ;sanity, leave only desired bits - eor.w #PSwapTX,d2 ;swap buffer - WRITEREG PNextTX,a0,d2 ;remember pointer (d2 also for ETXST later) - - lea (a0,d2.w),a2 ;write pointer for frame - swap d4 - move.w #8,d4 -.txcopy: - ifne _OPT_BUFFER_SWAP - move.l (a1)+,d1 - move.l (a1)+,d3 - ; byte swap in 16 Bit words - rol.w d4,d1 - rol.w d4,d3 - swap d1 - swap d3 - rol.w d4,d1 - rol.w d4,d3 - swap d1 - swap d3 - move.l d1,(a2)+ ;save to SRAM - move.l d3,(a2)+ ;save to SRAM - else - move.l (a1)+,(a2)+ ;save to SRAM - move.l (a1)+,(a2)+ ;save to SRAM - endc - - dbf d0,.txcopy - swap d4 - - ;---------------- wait on last frame ---------------------------------- - move #200,d3 -.txwait: - READREG ECON1,a0,d1 - and.w #ECON1_TXRTS,d1 - beq.s .txrdy - ;100 MBit/s frame time is max. 0.12 ms (without inter-frame spacing) - - ;wait 20 us via CIA - moveq #120,d0 - bsr _enc624j6l_UMinDelay - dbf d3,.txwait ;approx. 4ms max. wait - - ;hmpf. abort last transmission - move #ECON1_TXRTS,d1 ; - CLRREG ECON1,a0,d1 ; - -.txrdy: - ;----------------- set new frame parameters --------------------------- - - WRITEREG ETXST,a0,d2 ;set new TX pointer - WRITEREG ETXLEN,a0,d4 ;set TX length - - move #ECON1_TXRTS,d1 ;issue "send" command on ENC chip - SETREG ECON1,a0,d1 ; - -.err: - movem.l (sp)+,d2-d4/a2 - rts - - ifne _OPT_CHECKLINK_TX - ;branch here for link change events and adjust parameters in case -.linkchg: - movem.l d0-d1/a0-a1,-(sp) - bsr _enc624j6l_CheckLinkChange - movem.l (sp)+,d0-d1/a0-a1 - bra.s .linkchgdone - - endc - -;------------------------------------------------------------------------------------------------ -;------------------------------------------------------------------------------------------------ -; -; Generic HW independent functions -; -;------------------------------------------------------------------------------------------------ -;------------------------------------------------------------------------------------------------ - -; -;delay at least D0 microseconds (<= $0fffffff or ~268.000.000) -; -; Important: -; No guarantee can be given right now by how much the given delay time is exceeded. -; All this function tries to achieve is to wait long enough in order to meet certain -; mimimal hardware delay requirements -; -; Notes: -; clipping/saturation of input argument included -; -;Input: D0 = delay in microseconds -; -;Output: void -; -_enc624j6l_UMinDelay: - movem.l d0/d1,-(sp) - - moveq #-1,d1 - lsr.l #4,d1 ;$0fffffff - cmp.l d1,d0 - blo.s .ok ;unsigned compare - move.l d1,d0 ;268 seconds -.ok - lsl.l #3,d0 ;us * 8 - - moveq #12,d1 ;1.5 -.loop - eor.b #7,d1 ;switch between 12/8 and 11/8 -> 1.4375 effective count per CIA access - tst.b $BFE301 ;1 CIA access = 1.4 us - sub.l d1,d0 ;us*8 - (1.5 or 1.375)*8 - bgt.s .loop - - movem.l (sp)+,d0/d1 - rts - -;debug: collect packet positions -;recvptr: dc.l recvlist -;recvcount: dc.l 0 -;recvlist: ds.w 65536 - - END diff --git a/Driver/enc624j6net/enc624j6net/enc624j6l.h b/Driver/enc624j6net/enc624j6net/enc624j6l.h deleted file mode 100755 index 59be418..0000000 --- a/Driver/enc624j6net/enc624j6net/enc624j6l.h +++ /dev/null @@ -1,318 +0,0 @@ -/* - enc624j6l.h - - author: Henryk Richter - - purpose: header for low-level board access - to memory mapped ENC624J600 networking - device - - note: all functions are relative to the base pointer, - determine IO space by a respective expansion.library - call -*/ -#ifndef _INC_ENC624J6L_H -#define _INC_ENC624J6L_H - -#include "asminterface.h" - -/* - Defines: flags copied from PlipBox -*/ -/* result values */ -#define PIO_OK 0 -#define PIO_NOT_FOUND 1 -#define PIO_TOO_LARGE 2 -#define PIO_IO_ERR 3 - -/* init flags */ -#define PIO_INIT_FULL_DUPLEX 1 -#define PIO_INIT_LOOP_BACK 2 -#define PIO_INIT_BROAD_CAST 4 -#define PIO_INIT_FLOW_CONTROL 8 -#define PIO_INIT_MULTI_CAST 16 -#define PIO_INIT_PROMISC 32 - -/* status flags */ -#define PIO_STATUS_VERSION 0 -#define PIO_STATUS_LINK_UP 1 - -/* control ids */ -#define PIO_CONTROL_FLOW 0 - -/*-- --*/ -/*------------- ----------*/ -/*-- --*/ -/* buffers and locations */ -#define PSTART_INIT 0x0BF0 /* 16 Bytes private storage for driver */ -#define PSTOP_INIT 0x0BFF /* (see below for definitions) */ - -#define RXSTART_INIT 0x2000 /* start of RX buffer, room for 14 packets */ -#define RXSTOP_INIT 0x5fff /* end of RX buffer */ - -#define TXSTART_INIT 0x0000 /* start of TX buffer, room for 2 packets */ -#define TXSTOP_INIT 0x0BEF /* end of TX buffer (1536+1520 bytes) */ - -/* max frame length which the conroller will accept: - (note: maximum ethernet frame length would be 1518 w/o 802.1Q) */ -#define MAX_FRAMELEN 1518 - -/* ------------ driver private storage ------------------------------ */ -#define PNextPacket PSTART_INIT /* 2 Bytes - private "next packet" pointer for RX */ -#define PNextTX PSTART_INIT+2 /* 2 Bytes - private "next packet" pointer for TX (init as 0) */ -#define PSigBit PSTART_INIT+4 /* 2 Bytes interrupt bit */ -#define PSigTask PSTART_INIT+6 /* 4 Bytes signaled task */ -#define PLinkChange PSTART_INIT+10 /* 2 Bytes Link Change (Bit0 used right now) */ -#define Punused PSTART_INIT+12 /* */ - -/* ------------- TX: double buffering -------------------------------- */ -#define PSwapTX 0x600 /* swap between two TX buffers (one active, one activated after last TX done) */ -/*-- --*/ -/*------------- ---------*/ -/*-- --*/ - - - -/* - Purpose: check whether the board is operating as needed - - input: board - mmapped board base address - - output: success/failure - >0 - all fine - <=0 - problem (codes undefined yet) - - notes: The Olimex module on the Matze/Scrat ZII IDE LAN CP prototype - tends to boot in SPI mode instead of PSP (parallel) mode. - That case is detected by writing/reading data. If both bytes - of the words are equal to the last written byte, the board is likely - showing this issue. - - Please note that this call will overwrite Board registers and - buffer memory. Call before initialization. -*/ -ASM SAVEDS int enc624j6l_CheckBoard( ASMR(a0) void *board ASMREG(a0) ); - - -/* - Purpose: obtain current MAC address - input: board - mmapped board base address - buffer - 6 bytes space to write into (network notation, big endian) - output: success/failure - >0 - all fine - <=0 - problem (codes undefined yet) -*/ -ASM SAVEDS int enc624j6l_GetMAC( ASMR(a0) void *board ASMREG(a0), - ASMR(a1) unsigned char *buffer ASMREG(a1) ); - -/* - Purpose: change current MAC address - input: board - mmapped board base address - buffer - 6 bytes space to read from (network notation, big endian) - output: success/failure - >0 - all fine - <=0 - problem (codes undefined yet) -*/ -ASM SAVEDS int enc624j6l_SetMAC( ASMR(a0) void *board ASMREG(a0), - ASMR(a1) unsigned char *buffer ASMREG(a1) ); - -/* - Purpose: delay at least the given amount of microseconds - input: delay time in microseconds - output: - -*/ -ASM SAVEDS void enc28j60l_UMinDelay( - ASMR(d0) unsigned long udelay ASMREG(d0) ); - - -/* - Purpose: initialize a board - - input: board - mmapped board base address - flags - init flags (0 if in doubt) - - output: success/failure - >0 - all fine - <=0 - problem (codes undefined yet) - - notes: -*/ -ASM SAVEDS int enc624j6l_Init( ASMR(a0) void *board ASMREG(a0), - ASMR(d1) unsigned long flags ASMREG(d1) ); - - -/* - Purpose: stop a board - - input: board - mmapped board base address - - output: success/failure - >0 - all fine - <=0 - problem (codes undefined yet) - - notes: Shutdown means to disconnect the PHY, put the chip - into low power mode and disable interrupts - -*/ -ASM SAVEDS int enc624j6l_Shutdown( ASMR(a0) void *board ASMREG(a0) ); - - -/* - Purpose: check for pending receive frames - - input: board - mmapped board base address - - output: <0 - error - 0 - no pending frames - >0 - number of pending frames - - notes: - -*/ -ASM SAVEDS int enc624j6l_HaveRecv( ASMR(a0) void *board ASMREG(a0) ); - -/* - Purpose: copy received frame to supplied buffer - - input: board - mmapped board base address - buffer - output buffer (should have >=1514 bytes) - buffersize - size of buffer - - output: <0 - error - 0 - nothing in receive buffer - >0 - size of received frame - - notes: - -*/ -ASM SAVEDS int enc624j6l_RecvFrame( ASMR(a0) void *board ASMREG(a0), - ASMR(a1) unsigned char* buffer ASMREG(a1), - ASMR(d0) short buffersize ASMREG(d0) ); - - -/* - Purpose: send single frame out - - input: board - mmapped board base address - buffer - output buffer (should have >=1514 bytes) - sendsize - size of buffer in bytes ( no CRC appended (!) ) - - output: <0 - error - 0 - nothing in receive buffer - >0 - size of received frame - - notes: - -*/ -ASM SAVEDS int enc624j6l_TransmitFrame( ASMR(a0) void *board ASMREG(a0), - ASMR(a1) unsigned char* buffer ASMREG(a1), - ASMR(d0) short sendsize ASMREG(d0) ); - - -/* - Purpose: enable RX/TX, perform autonegotiation etc. - - input: board - mmapped board base address - - output: <0 - error - >=0 - OK - - notes: in current implementation, enc624j6l_Init() will - also attach the card to the line. So this - call is not exactly needed in the init phase. -*/ -ASM SAVEDS int enc624j6l_SetOnline( ASMR(a0) void *board ASMREG(a0) ); - - -/* - Purpose: disable RX/TX, power down - - input: board - mmapped board base address - - output: <0 - error - >=0 - OK - - notes: -*/ -ASM SAVEDS int enc624j6l_SetOffline( ASMR(a0) void *board ASMREG(a0) ); - - -/* - Purpose: enable HW interrupt - - input: board - mmapped board base address - SigTask - task to signal upon interrupt (or NULL) - SigBit - Signal bit to send upon interrupt (or -1) - IntMask - ENC HW interrupts to enable (set 0, for now) = RX PACKET only - - output: <0 - error - >=0 - OK - - notes: -*/ -ASM SAVEDS int enc624j6l_EnableInterrupt( ASMR(a0) void *board ASMREG(a0), - ASMR(a1) void* SigTask ASMREG(a1), - ASMR(d0) int SigBit ASMREG(d0), - ASMR(d1) unsigned int IntMask ASMREG(d1) ); - - -/* - Purpose: disable HW interrupt - - input: board - mmapped board base address - - output: <0 - error - >=0 - OK - - notes: -*/ -ASM SAVEDS int enc624j6l_DisableInterrupt( ASMR(a0) void *board ASMREG(a0) ); - -/* - Purpose: enable global HW interrupt flag on the LAN-Chip - - input: board - mmapped board base address - - - notes: -*/ -ASM SAVEDS void enc624j6l_EnableGlobalInterrupt( ASMR(a0) void *board ASMREG(a0) ); - - -/* - Purpose: disable global HW interrupt flag on the LAN-Chip - - input: board - mmapped board base address - - notes: -*/ -ASM SAVEDS void enc624j6l_DisableGlobalInterrupt( ASMR(a0) void *board ASMREG(a0) ); - -/* - Purpose: interrupt service routine ( after EnableInterrupt() ) - - This function will signal the task passed at EnableInterrupt time with - the given sigbit when at least one frame is pending. - - input: - - output: - -*/ -ASM SAVEDS void enc624j6l_IntServer( void ); - -/* - Purpose: check for link change events - - input: board - mmapped board base address - - output: <0 - error - 0 - ok, no link change handled - >0 - ok, link change handled - - notes: - -*/ -ASM SAVEDS int enc624j6l_CheckLinkChange( ASMR(a0) void *board ASMREG(a0) ); - - - -#endif /* _INC_ENC624J6L_H */ diff --git a/Driver/enc624j6net/enc624j6net/hw.c b/Driver/enc624j6net/enc624j6net/hw.c deleted file mode 100755 index 315e13d..0000000 --- a/Driver/enc624j6net/enc624j6net/hw.c +++ /dev/null @@ -1,608 +0,0 @@ -/* - * hw.c - hardware dependent part of driver - */ - -#define DEBUG 0 -/* 15 */ - -/*F*/ /* includes */ -#ifndef CLIB_EXEC_PROTOS_H -#include -#include -#endif -#ifndef CLIB_DOS_PROTOS_H -#include -#include -#endif -#ifndef CLIB_CIA_PROTOS_H -#include -#include -#endif -#ifndef CLIB_MISC_PROTOS_H -#include -#include -#endif -#ifndef CLIB_TIME_PROTOS_H -#include -#include -#endif -#ifndef CLIB_UTILITY_PROTOS_H -#include -#include -#endif - -#ifndef EXEC_MEMORY_H -#include -#endif -#ifndef EXEC_INTERRUPTS_H -#include -#endif -#ifndef EXEC_DEVICES_H -#include -#endif -#ifndef EXEC_IO_H -#include -#endif - -#ifndef DEVICES_SANA2_H -#include -#endif - -#ifndef HARDWARE_CIA_H -#include -#endif - -#include - -#ifndef RESOURCES_MISC_H -#include -#endif - -#ifndef _STRING_H -#include -#endif - -#ifndef __GLOBAL_H -#include "global.h" -#endif -#ifndef __DEBUG_H -#include "debug.h" -#endif -#ifndef __COMPILER_H -#include "compiler.h" -#endif -#ifndef __HW_H -#include "hw.h" -#endif -#include "dev_info.h" - -#ifdef PROTO_SDNET -#include "enc28j60.h" -#define HW_INTERVALDEF 10000L -#endif -#ifdef PROTO_ENC624NET -#include "enc624j6l.h" -#include "registers.h" - -/* 10000 without HW interrupt 100000 with HW interrupt */ -#define HW_INTERVALDEF 100000L - -/* this is a BIG TODO! Make plipbox source multi-board aware */ -#define BOARD hwb->hwb_boards[0] - -/* interrupt (choice here is INTB_EXTER or INTB_PORTS, depending on solder blob */ -/*#define HW_INTSOURCE INTB_EXTER */ /* Int 6 */ -#define HW_INTSOURCE INTB_PORTS /* Int 2 */ - -/* write_frame, see server.c, too. .oO(move this into .h) */ -typedef enum { AW_OK, AW_BUFFER_ERROR, AW_ERROR } AW_RESULT; - -#define READREG(_x_,_off_) *( (volatile USHORT*)( (volatile UBYTE*)(_x_) + (_off_)) ) -#define WRITEREG(_x_,_off_,_y_) *( (volatile USHORT*)( (volatile UBYTE*)(_x_) + (_off_)) ) = (_y_); -#define SETREG(_x_,_off_,_y_) *( (volatile USHORT*)( (volatile UBYTE*)(_x_) + (_off_) + SET_OFFSET )) = (_y_); -#define CLRREG(_x_,_off_,_y_) *( (volatile USHORT*)( (volatile UBYTE*)(_x_) + (_off_) + CLR_OFFSET )) = (_y_); - -#endif - -/* this is currently necessary on Apollo Core. We don't have an interrupt on the SD card slot */ -/* used also with ENC624 (albeit with 10x longer default waiting) should we miss some interrupts */ -#include "intervaltimer.h" -#define HW_INTERVAL -#define HW_INTERVALMIN 2500L -#define HW_INTERVALMAX 500000L - -/* TODO: remove. I think I won't need this for the SDnet */ -PRIVATE ULONG ASM SAVEDS exceptcode(REG(d0) ULONG sigmask, REG(a1) struct PLIPBase *hwb); - -const char *intname = "ENC624Net_HWInterrupt"; - - -/* just to make SAS/C happy, no other function */ -int _avoid_sasc_warning_about_global_symbols( void ); -int _avoid_sasc_warning_about_global_symbols( void ) -{ - return 0; -} - -#ifdef PROTO_ENC624NET -PRIVATE void stopInt(struct PLIPBase *pb, struct HWBase *hwb, APTR board ) -{ - if( hwb->hwb_Interrupt.is_Data ) - { - hwb->hwb_Interrupt.is_Data = (0); - enc624j6l_DisableInterrupt( board ); - - RemIntServer( HW_INTSOURCE, &hwb->hwb_Interrupt ); - hwb->hwb_Interrupt.is_Code = (0); - } -} - -PRIVATE void startInt(struct PLIPBase *pb, struct HWBase *hwb, APTR board ) -{ - if( hwb->hwb_Interrupt.is_Data ) - stopInt( pb, hwb, board ); - - enc624j6l_EnableInterrupt( BOARD, FindTask(0), (int)hwb->hwb_IntSig, 0 ); - - hwb->hwb_Interrupt.is_Code = (void(*)())enc624j6l_IntServer; - hwb->hwb_Interrupt.is_Data = board; - hwb->hwb_Interrupt.is_Node.ln_Type = NT_INTERRUPT; - hwb->hwb_Interrupt.is_Node.ln_Pri = 51; - hwb->hwb_Interrupt.is_Node.ln_Name = (char*)intname; - AddIntServer( HW_INTSOURCE, &hwb->hwb_Interrupt ); -} -#endif - -/* write_frame moved from server.c to here, because it directly interfaces with - network module in this driver, active only when ENC624_OPT is given on compiler - command line */ -#ifdef ENC624_OPT - /* - ** write frames direcly to HW - * CAUTION: don't mix up with hw_send_frame() / enc624j6l_TransmitFrame -- - * the double buffered write location is not shared right now - * - * logic in here - * - swap buffer - * - write into buffer - * - wait for previous frame to finish (most likely there is no waiting time) - * - issue HW TX command - * - */ -/*F*/ GLOBAL REGARGS AW_RESULT write_frame(BASEPTR, struct IOSana2Req *ios2) -{ - AW_RESULT rc; - struct HWBase *hwb = &pb->pb_HWBase; - - struct BufferManagement *bm; - ULONG tl,totsize; - unsigned short *s_wrptr,*s_tmp1; - UBYTE *b_hwio_ptr = BOARD; /* somewhere $e80000 and beyond */ - - /* Note Link Change check moved to main loop */ - - d(("owrite: type %08lx, size %ld\n",ios2->ios2_PacketType, - ios2->ios2_DataLength)); - - hwb->hwb_txdbuf = (hwb->hwb_txdbuf & PSwapTX) ^ PSwapTX; /* swap buffers (+sanity check by "&") */ - s_wrptr = (USHORT*)(b_hwio_ptr + hwb->hwb_txdbuf); /* next write location (byte->short) */ - - if(!(ios2->ios2_Req.io_Flags & SANA2IOF_RAW)) - { /* structured SANAII Request, not a valid Ethernet Frame (yet) */ - /* Q: What about a length field and SNAP ? -> relevant here? */ - - /* write Ethernet header by hand: DMAC,SMAC,TYPE */ - s_tmp1 = (USHORT*)ios2->ios2_DstAddr; - *s_wrptr++ = *s_tmp1++; *s_wrptr++ = *s_tmp1++; *s_wrptr++ = *s_tmp1; /* copy 6 bytes */ - - s_tmp1 = (USHORT*)pb->pb_CfgAddr; - *s_wrptr++ = *s_tmp1++; *s_wrptr++ = *s_tmp1++; *s_wrptr++ = *s_tmp1; /* copy 6 bytes */ - - *s_wrptr++ = (USHORT)ios2->ios2_PacketType; /* copy 2 bytes TYPE field */ - - totsize = HW_ETH_HDR_SIZE + ios2->ios2_DataLength; /* 14; */ - } - else - { /* RAW, pre-formatted Ethernet frame (sans CRC32) */ - totsize = ios2->ios2_DataLength; /* */ - } - - /* copy frame to HW without a step in between (i.e. directly to mmapped card) */ - bm = (struct BufferManagement *)ios2->ios2_BufferManagement; - - if( (*bm->bm_CopyFromBuffer)(s_wrptr, ios2->ios2_Data, ios2->ios2_DataLength) ) - { - /* buffer delivered to HW, now trigger actual TX */ - /* waste time should the last frame still be in TX (unlikely) */ - /* 100 MBit/s frame time is max. 0.12 ms (without inter-frame spacing) */ - tl=0; - while( READREG(b_hwio_ptr,ECON1) & ECON1_TXRTS ) - { - if( ++tl > 100000 ) /* this read cylces through ZII/ZIII and still not finished ? */ - { - CLRREG( b_hwio_ptr, ECON1, ECON1_TXRTS ); /* give up, cancel last transmission */ - break; - } - } - - /*------ set new frame parameters ----------- */ - WRITEREG( b_hwio_ptr, ETXST, hwb->hwb_txdbuf ); /* write location */ - WRITEREG( b_hwio_ptr, ETXLEN,totsize ); /* frame TX length (-CRC) */ - SETREG( b_hwio_ptr, ECON1, ECON1_TXRTS ); /* trigger TX */ - - rc = AW_OK; - } - else - { - /* meh: What's so hard about copying some bytes ? */ - rc = AW_BUFFER_ERROR; - } - - return rc; -} -#endif - - /* - ** check for link change - * - call ASM file for that task - * - the relevant flag is set by the interrupt handler and in that case, - * a number of registers is reconfigured accordingly - * - */ -/*F*/ GLOBAL REGARGS void hw_check_link_change( BASEPTR ) -{ - struct HWBase *hwb = &pb->pb_HWBase; - - enc624j6l_CheckLinkChange(BOARD); /* somewhere $e80000 and beyond */ -} - - -/* - magic: HW_MAGIC_OFFLINE, HW_MAGIC_ONLINE - return TRUE/FALSE -*/ -GLOBAL REGARGS BOOL hw_send_magic_pkt(struct PLIPBase *pb, USHORT magic) -{ - struct HWBase *hwb = &pb->pb_HWBase; - - if( magic == HW_MAGIC_ONLINE ) - { -#ifdef PROTO_ENC624NET - enc624j6l_SetMAC( BOARD, pb->pb_CfgAddr ); - enc624j6l_SetOnline( BOARD ); - startInt(pb, hwb, BOARD ); -#else - enc28j60_setMAC( pb->pb_CfgAddr ); /* update MAC address (just in case) */ - enc28j60_setOnline(); /* acticate RX */ -#endif -#ifdef HW_INTERVAL - StartIntervalTimer( &hwb->hwb_ivtimer, hwb->hwb_timervalue ); /* 10000L */ -#endif - } - if( magic == HW_MAGIC_OFFLINE ) - { -#ifdef PROTO_ENC624NET - stopInt(pb, hwb, BOARD ); - enc624j6l_SetOffline( BOARD ); -#else - enc28j60_setOffline(); /* stop RX */ -#endif -#ifdef HW_INTERVAL - StopIntervalTimer( &hwb->hwb_ivtimer ); -#endif - } - - return TRUE; -} - -/* - setup defaults in plipbase -*/ -GLOBAL REGARGS void hw_config_init(struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - - hwb->hwb_timervalue = HW_INTERVALDEF; - hwb->hwb_fullduplex = 0; -#ifndef PROTO_ENC624NET - hwb->hwb_spispeed = 1; /* optimistic default */ -#endif - hwb->hwb_multicast = 0; - hwb->hwb_flowcontrol= 0; /* no flow control by default */ -} - - -GLOBAL REGARGS void hw_config_update(struct PLIPBase *pb, struct TemplateConfig *args) -{ - struct HWBase *hwb = &pb->pb_HWBase; - - if( args->timervalue ) - { - hwb->hwb_timervalue = BOUNDS(*args->timervalue, HW_INTERVALMIN, HW_INTERVALMAX ); - } -#ifndef PROTO_ENC624NET - if( args->spispeed ) - { - hwb->hwb_spispeed = BOUNDS(*args->spispeed, 1, 20 ); - } -#endif - if( args->fullduplex ) - { - hwb->hwb_fullduplex = 1; - } - if( args->multicast ) - { - hwb->hwb_multicast = 1; - } - if( args->flowcontrol ) - { - hwb->hwb_flowcontrol = 1; - } -} - - - -GLOBAL REGARGS void hw_config_dump(struct PLIPBase *pb) -{ -/* -#if DEBUG & 1 - struct HWBase *hwb = &pb->pb_HWBase; -#endif - d(("timeOut %ld.%ld\n", hwb->hwb_TimeOutSecs, hwb->hwb_TimeOutMicros)); - d(("burstSize %ld\n", (ULONG)hwb->hwb_BurstSize)); -*/ -} - - - -GLOBAL REGARGS BOOL hw_init(struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - /*ULONG tst;*/ - - BOOL rc = FALSE; - - /* clone sys base, process */ - hwb->hwb_SysBase = pb->pb_SysBase; - hwb->hwb_Server = pb->pb_Server; - hwb->hwb_MaxFrameSize = (UWORD)pb->pb_MTU + HW_ETH_HDR_SIZE; - d2(("sysbase=%08lx, server=%08lx, hwb=%08lx, maxFrameSize=%ld\n", - hwb->hwb_SysBase, hwb->hwb_Server, hwb, (ULONG)hwb->hwb_MaxFrameSize)); - - hwb->hwb_Interrupt.is_Data = (0); /* prepare interrupt */ - hwb->hwb_Interrupt.is_Code = (0); - /*tst = AllocSignal(-1);*/ - /* interesting: we get CTRL-F by default. Indidentally the same signal used for the write queue */ - if ((hwb->hwb_IntSig = AllocSignal(-1)) != -1) - { - hwb->hwb_IntSigMask = 1L << hwb->hwb_IntSig; - d2(("int sigmask=%08lx\n",hwb->hwb_IntSigMask)); - /*FreeSignal(tst);*/ - - if ((hwb->hwb_TimeoutPort = CreateMsgPort())) - { - ULONG sigmask; - struct Process *proc = pb->pb_Server; - - /* save old exception setup */ - hwb->hwb_OldExcept = SetExcept(0, 0xffffffff); /* turn'em off */ - hwb->hwb_OldExceptCode = proc->pr_Task.tc_ExceptCode; - hwb->hwb_OldExceptData = proc->pr_Task.tc_ExceptData; - - /* create new exception setup */ - proc->pr_Task.tc_ExceptCode = (APTR)&exceptcode; - proc->pr_Task.tc_ExceptData = (APTR)pb; - sigmask = 1 << hwb->hwb_TimeoutPort->mp_SigBit; - SetSignal(0, sigmask); - SetExcept(sigmask, sigmask); - - /* enter port address */ - hwb->hwb_TimeoutReq.tr_node.io_Message.mn_ReplyPort = hwb->hwb_TimeoutPort; - if (!OpenDevice("timer.device", UNIT_MICROHZ, (struct IORequest*)&hwb->hwb_TimeoutReq, 0)) - { - TimerBase = (struct Library *)hwb->hwb_TimeoutReq.tr_node.io_Device; - - /* setup the timeout stuff */ - hwb->hwb_TimeoutReq.tr_node.io_Flags = IOF_QUICK; - hwb->hwb_TimeoutReq.tr_node.io_Command = TR_ADDREQUEST; - hwb->hwb_TimeoutSet = 0xff; -#ifdef HW_INTERVAL - if( InitIntervalTimer( &hwb->hwb_ivtimer ) > 0 ) - { - hwb->hwb_IntervalSigMask = hwb->hwb_ivtimer.IVT_Signal; - } - else - { - d(("couldn't open Interval Timer")); - } -#endif - rc = TRUE; - } - else - { - d(("couldn't open timer.device")); - } - } - else - { - d(("no port for timeout handling\n")); - } - } - else - { - d(("no interrupt signal\n",rc)); - } - - return rc; -} - - -GLOBAL REGARGS VOID hw_cleanup(struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - -#ifdef HW_INTERVAL - ExitIntervalTimer( &hwb->hwb_ivtimer ); -#endif - - if (hwb->hwb_TimeoutPort) - { - struct Process *proc = pb->pb_Server; - - /* restore old exception setup */ - SetExcept(0, 0xffffffff); /* turn'em off */ - proc->pr_Task.tc_ExceptCode = hwb->hwb_OldExceptCode; - proc->pr_Task.tc_ExceptData = hwb->hwb_OldExceptData; - SetExcept(hwb->hwb_OldExcept, 0xffffffff); - - if (TimerBase) - { - WaitIO((struct IORequest*)&hwb->hwb_TimeoutReq); - CloseDevice((struct IORequest*)&hwb->hwb_TimeoutReq); - } - DeleteMsgPort(hwb->hwb_TimeoutPort); - } - - if (hwb->hwb_IntSig != -1) { - FreeSignal(hwb->hwb_IntSig); - } -} - - -/* - * hwattach - setup hardware if device gets online - */ -GLOBAL REGARGS BOOL hw_attach(struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - BOOL rc = TRUE; - unsigned char flags; - - flags = PIO_INIT_BROAD_CAST; - if( hwb->hwb_multicast ) - flags |= PIO_INIT_MULTI_CAST; - if( hwb->hwb_fullduplex ) - flags |= PIO_INIT_FULL_DUPLEX; - if( hwb->hwb_flowcontrol ) - flags |= PIO_INIT_FLOW_CONTROL; -#ifdef PROTO_ENC624NET - if( enc624j6l_Init( BOARD, (unsigned long)flags ) <= 0 ) - rc = FALSE; /* ERROR IN CASE OF DEVICE NOT FOUND */ -#else - if( enc28j60_init( pb->pb_CfgAddr, flags ) != PIO_OK ) - rc = FALSE; /* ERROR IN CASE OF DEVICE NOT FOUND */ - enc28j60_SetSPISpeed( (unsigned long)hwb->hwb_spispeed ); -#endif - - return rc; -} - -/* - * shutdown hardware if device gets offline - */ -GLOBAL REGARGS VOID hw_detach(struct PLIPBase *pb) -{ -#ifdef PROTO_ENC624NET - struct HWBase *hwb = &pb->pb_HWBase; - - stopInt(pb, hwb, BOARD ); - enc624j6l_Shutdown( BOARD ); -#else - enc28j60_exit(); -#endif -} - -PRIVATE ULONG ASM SAVEDS exceptcode(REG(d0) ULONG sigmask, REG(a1) struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - - d8(("+ex\n")); - - /*extern void KPrintF(char *,...); - KPrintF("exceptcode\n");*/ - - /* remove the I/O Block from the port */ - WaitIO((struct IORequest*)&hwb->hwb_TimeoutReq); - - /* this tells the xfer routines to cease polling */ - hwb->hwb_TimeoutSet = 0xff; - - d8(("-ex\n")); - return sigmask; /* re-enable the signal */ -} - - -GLOBAL REGARGS BOOL hw_send_frame(struct PLIPBase *pb, struct HWFrame *frame) -{ - BOOL rc = TRUE; -#ifdef PROTO_ENC624NET - struct HWBase *hwb = &pb->pb_HWBase; - unsigned char *frm = (unsigned char*)frame; - enc624j6l_TransmitFrame( BOARD, frm+sizeof(USHORT), frame->hwf_Size ); -; frame->hwf_Size = 0; -#else - const u08 *frm = (const u08*)frame; - enc28j60_send(frm+sizeof(USHORT), frame->hwf_Size ); -#endif - return rc; -} - - -GLOBAL REGARGS LONG hw_recv_pending(struct PLIPBase *pb) -{ -#ifdef PROTO_ENC624NET - struct HWBase *hwb = &pb->pb_HWBase; - LONG num = enc624j6l_HaveRecv( BOARD ); -#else - u08 num; - num = enc28j60_has_recv(); -#endif - return (LONG)num; -} - -GLOBAL REGARGS void hw_enable_global_int(struct PLIPBase *pb){ -#ifdef PROTO_ENC624NET - struct HWBase *hwb = &pb->pb_HWBase; - enc624j6l_EnableGlobalInterrupt( BOARD ); -#endif -} - -GLOBAL REGARGS void hw_disable_global_int(struct PLIPBase *pb){ -#ifdef PROTO_ENC624NET - struct HWBase *hwb = &pb->pb_HWBase; - enc624j6l_DisableGlobalInterrupt( BOARD ); -#endif -} - - - -/* important: don't call this without enc28j60_has_recv() > 0 check */ -GLOBAL REGARGS BOOL hw_recv_frame(struct PLIPBase *pb, struct HWFrame *frame) -{ -#ifdef PROTO_ENC624NET - int len; - BOOL rc = FALSE; - unsigned char *ptr = (unsigned char*)frame; - struct HWBase *hwb = &pb->pb_HWBase; - - len = enc624j6l_RecvFrame( BOARD, ptr+sizeof(USHORT), 1522 ); - frame->hwf_Size = len; - - if( len > 0 ) - rc = TRUE; -#else - BOOL rc = FALSE; - u08 *ptr = (u08*)frame; - - if( PIO_OK == enc28j60_recv( ptr+sizeof(USHORT), 1518, &frame->hwf_Size ) ) - rc = TRUE; - -#endif - return rc; -} - -GLOBAL REGARGS ULONG hw_recv_sigmask(struct PLIPBase *pb) -{ - struct HWBase *hwb = &pb->pb_HWBase; - return hwb->hwb_IntSigMask | hwb->hwb_IntervalSigMask; -} diff --git a/Driver/enc624j6net/enc624j6net/hwbase.h b/Driver/enc624j6net/enc624j6net/hwbase.h deleted file mode 100644 index e56986a..0000000 --- a/Driver/enc624j6net/enc624j6net/hwbase.h +++ /dev/null @@ -1,97 +0,0 @@ -/* hwbase.h - hardware specific part of driver structure */ -#ifndef __HWBASE_H -#define __HWBASE_H - -#include "intervaltimer.h" - -/* ----- base structure for hardware ----- */ - -/* reported BPS (bits! per second) for this device */ -#define HW_BPS (10000000L) /* 10 MBit/s */ - -/* ENC624: MAX. Zorro Boards (untested, probably doesn't work) */ -#define HW_MAXBOARDS 3 - -struct HWBase -{ - /* used in asm module */ - struct Library * hwb_SysBase; - struct Process * hwb_Server; - ULONG hwb_IntSigMask; - UWORD hwb_MaxFrameSize; - volatile UBYTE hwb_TimeoutSet;/* if != 0, a timeout occurred */ - volatile UBYTE hwb_Flags; - /* NOT used in asm */ - ULONG hwb_IntSig; /* sent from int to server */ - ULONG hwb_IntervalSigMask; - struct MsgPort * hwb_TimeoutPort; /* for timeout handling */ - struct Library * hwb_TimerBase; - struct Library * hwb_MiscBase; /* various libs & res. */ - APTR hwb_OldExceptCode; - APTR hwb_OldExceptData; - ULONG hwb_OldExcept; - struct Interrupt hwb_Interrupt; /* for AddICRVector() */ - struct timerequest hwb_TimeoutReq; /* for timeout handling */ - ULONG hwb_AllocFlags; - APTR hwb_boards[HW_MAXBOARDS+1]; /* 0-terminated */ - - struct IVT_TimerStruct hwb_ivtimer; /* Timer interval handling (via Interrupt) */ - -#ifdef ENC624_OPT - USHORT hwb_txdbuf; /* TX double buffering location (0x0/0x600) */ - USHORT hwb_unused_free_for_future; -#endif - - /* config options */ - ULONG hwb_timervalue; /* timer speed */ - UBYTE hwb_fullduplex; /* full duplex */ - UBYTE hwb_flowcontrol; /* flow control enable (1/0) */ - UBYTE hwb_multicast; /* multicast enable */ - UBYTE hwb_free_unused1; -#ifndef PROTO_ENC624NET - ULONG hwb_spispeed; /* SPI speed */ -#endif -}; - -#define HWB_RECV_PENDING 0 -#define HWB_COLL_TIMER_RUNNING 1 - -#define HWF_RECV_PENDING (1 << HWB_RECV_PENDING) - -/* transparently map proto lib bases to structure */ -#define MiscBase hwb->hwb_MiscBase -#define CIAABase hwb->hwb_CIAABase -#define CiaBase hwb->hwb_CIAABase -#define TimerBase hwb->hwb_TimerBase - -/* ----- config ----- */ - -#define CONFIGFILE "ENV:SANA2/enc624j6net.config" -#ifdef PROTO_ENC624NET -#define TEMPLATE "TIMER/K/N,FULLDUPLEX/S,MULTICAST/S,FLOWCONTROL/S" -/* structure to be filled by ReadArgs template */ -struct TemplateConfig -{ - struct CommonConfig common; - ULONG *timervalue; - ULONG fullduplex; - ULONG multicast; - ULONG flowcontrol; -}; - -#else /* PROTO_ENC624NET */ - -#define TEMPLATE "TIMER/K/N,FULLDUPLEX/S,SPISPEED/K/N,MULTICAST/S" -/* structure to be filled by ReadArgs template */ -struct TemplateConfig -{ - struct CommonConfig common; - ULONG *timervalue; - ULONG fullduplex; - ULONG *spispeed; - ULONG multicast; - ULONG flowcontrol; -}; -#endif /* PROTO_ENC624NET */ - -#endif diff --git a/Driver/enc624j6net/enc624j6net/intervaltimer.asm b/Driver/enc624j6net/enc624j6net/intervaltimer.asm deleted file mode 100644 index 7f88175..0000000 --- a/Driver/enc624j6net/enc624j6net/intervaltimer.asm +++ /dev/null @@ -1,328 +0,0 @@ -****************************************************************************** -* Name: intervaltimer.s * -* Date: $Date: 2016-12-18 22:20:04 +0100 (So, 18. Dez 2016) $ * -* Authors: Henryk Richter * -****************************************************************************** - - ;MACHINE MC68040 - - include exec/types.i - include lvo/exec_lib.i - include lvo/dos_lib.i - include lvo/timer_lib.i - include exec/exec.i - include dos/dos.i - include dos/dostags.i - include exec/io.i - include dos/dosextens.i - include exec/lists.i - - ifne 1 - include "intervaltimer.i" - else - STRUCTURE IVT_TimerStruct,0 - ULONG IVT_Interval ;<1e6 in microseconds - LONG IVT_Signal ;Signal that is sent back to task from interrupt - APTR IVT_SigTask ;Task that is signaled - APTR IVT_Port - APTR IVT_IORequest - APTR IVT_Device - STRUCT IVT_Int,IS_SIZE ; - BYTE IVT_Init ; !=0 - initialized - BYTE IVT_Runflag ; current status ( !=0 = running ) - BYTE IVT_Stopflag ; stop request if != 0 - BYTE IVT_Unused ; - ULONG IVT_Counter ; Counter (statistics) - LABEL IVT_Size - endc - - xdef _InterruptIntervalTimer - xdef _InitIntervalTimer - xdef _ExitIntervalTimer - xdef _StartIntervalTimer - xdef _StopIntervalTimer - -CALLEXEC macro - move.l 4.w,a6 - jsr _LVO\1(a6) - endm - - section code,text - -TestTimer: - lea dos_name,a1 ;string base - moveq #0,d0 - move.l 4.w,a6 - jsr _LVOOpenLibrary(a6) - move.l d0,dosbase - beq .nodos - - move.l dosbase,a6 - jsr _LVOOutput(a6) ;get stdout - move.l d0,stdout - - lea timerbase,a1 - bsr _InitIntervalTimer - tst.l d0 - bge .ok - - move.l stdout,d0 - move.l #failtimer,d1 - move.l dosbase,16 - jsr _LVOPutStr(a6) - bra .error - -.ok - lea timerbase,a1 - move.l #10000,d1 - bsr _StartIntervalTimer - - moveq #0,d3 -.loop - cmp.l #10,d3 - bgt.s .exitloop - - move.l dosbase,A6 - moveq #10,d1 - jsr _LVODelay(a6) - - addq.l #1,d3 - lea timerbase,a1 - cmp.l #100,IVT_Counter(a1) - blt.s .loop -.exitloop: - - move.l #succname,d1 - cmp.l #10,d3 - ble.s .succ - move.l #failname,d1 -.succ: - jsr _LVOVPrintf(a6) - - - lea timerbase,a1 - bsr _StopIntervalTimer -.error - lea timerbase,a1 - bsr _ExitIntervalTimer - - move.l dosbase,d0 - beq.s .nodos - move.l d0,a1 - move.l 4.w,a6 - jsr _LVOCloseLibrary(a6) -.nodos: - rts - -; A1 = IVT_TimerStruct -_InterruptIntervalTimer: - movem.l d1-a6,-(sp) - ;<- basic Timer.device ops -> - move.l a1,a2 - - move.l IVT_Port(a2),a0 - CALLEXEC GetMsg - tst.l d0 - beq.s .error - - move.l IVT_Signal(a2),d0 - move.l IVT_SigTask(a2),a1 - CALLEXEC Signal - - tst.b IVT_Stopflag(a2) - bne.s .error ;not exactly an error but same consequence - - move.l a2,a1 - bsr _RestartIntervalTimer - - ;<- end basic Timer.device ops -> - - ;<- useful stuff -> - addq.l #1,IVT_Counter(a2) - - ;<- useful stuff -> - - bra.s .endintroutine -.error: - clr.b IVT_Runflag(a2) -.endintroutine: - movem.l (sp)+,d1-a6 - rts - - -_InitIntervalTimer: ;prepare timer.device for buffer swap interrupt - movem.l d1-a6,-(sp) - move.l a1,a2 - move #IVT_Size-1,d0 -.clr - clr.b (a1)+ ; - dbf d0,.clr - - sf IVT_Init(a2) - sf IVT_Runflag(a2) - ;signal to wait for from timer output if output queue full - moveq #-1,d0 - CALLEXEC AllocSignal - move.l d0,IVT_Signal(a2) - not.l d0 ; if( d0 == -1 ) d0 = 0 - beq .error ; error: have to go (shouldn't happen) - - suba.l a1,a1 - CALLEXEC FindTask - move.l d0,IVT_SigTask(a2) - - CALLEXEC CreateMsgPort ;Create MsgPort for timing... - move.l d0,IVT_Port(a2) - beq .error ;0=error - - move.l IVT_Port(a2),a0 - move.l #IOTV_SIZE,d0 - CALLEXEC CreateIORequest - move.l d0,IVT_IORequest(a2) - beq .error ;0=error - - lea.l IVT_Int(a2),a0 - lea _InterruptIntervalTimer(pc),a1 - move.l a1,IS_CODE(a0) - move.l a2,IS_DATA(a0) - move.b #NT_INTERRUPT,LN_TYPE(a0) - move.b #0,LN_PRI(a0) ;-32,-16,0,16,32 - - move.l IVT_Port(a2),a1 - ;move.b #NT_MSGPORT,LN_TYPE(a1) - move.b #PA_SOFTINT,MP_FLAGS(a1) - move.l a0,MP_SIGTASK(a1) ;Softint eintragen - - lea VBtimer_name,a0 - moveq #UNIT_MICROHZ,d0 - move.l IVT_IORequest(a2),a1 - moveq #0,d1 - CALLEXEC OpenDevice - tst.l d0 - beq.s .ok - moveq #0,d0 - bra.s .error -.ok ;OK, timer device is ready - st IVT_Init(a2) - moveq #1,d0 ;OK -.error - movem.l (sp)+,d1-a6 - ;ret 0 <= err, >0 = ok - rts - -_ExitIntervalTimer: - ;stop timer.device - movem.l d0-a6,-(sp) - move.l a1,a2 - - sf IVT_Init(a2) - - move.l IVT_IORequest(a2),d5 - beq.s .noIO - tst.b IVT_Runflag(a2) - beq.s .noAbort - st IVT_Stopflag(a2) - ifne 0 - move.l d5,a1 - CALLEXEC WaitIO - else - move.l d5,a1 - move.l IO_DEVICE(a1),a6 - jsr DEV_ABORTIO(A6) ;clear pending requests - endc -.noAbort: - move.l d5,a1 - CALLEXEC CloseDevice - move.l d5,a0 - CALLEXEC DeleteIORequest - clr.l IVT_IORequest(a2) -.noIO: - move.l IVT_Port(a2),d0 - beq.s .noPort - move.l d0,a0 - CALLEXEC DeleteMsgPort - clr.l IVT_Port(a2) -.noPort: - move.l IVT_Signal(a2),d0 - cmp.l #-1,d0 - beq .nosig - CALLEXEC FreeSignal - move.l #-1,IVT_Signal(a2) -.nosig: - movem.l (sp)+,d0-a6 - rts - - -; input: -; A1 = IVT Structure (after init) -; D1 = Number of Microseconds -_StartIntervalTimer: - movem.l d0/a1/a2/a6,-(Sp) - move.l a1,a2 - move.l d1,IVT_Interval(A2) - sf IVT_Stopflag(a2) - - tst.b IVT_Runflag(a2) ;running already ? -> keep it running - bne.s .notimer - move.l a2,a1 - bsr _RestartIntervalTimer -.notimer - movem.l (sp)+,d0/a1/a2/a6 - rts - -; Non-Public -; A1 - IVT Structure -_RestartIntervalTimer: - movem.l d0/a1/a2/a6,-(sp) - move.l a1,a2 - - move.l IVT_IORequest(a2),d0 - beq.s .notimer - - move.l d0,a1 - move.w #TR_ADDREQUEST,IO_COMMAND(a1) - clr.b IO_FLAGS(a1) - clr.l IOTV_TIME+EV_HI(a1) - move.l IVT_Interval(A2),IOTV_TIME+EV_LO(a1) - - move.l IO_DEVICE(a1),a6 - jsr DEV_BEGINIO(A6) - - st IVT_Runflag(a2) -.notimer - movem.l (sp)+,d0/a1/a2/a6 - rts - -_StopIntervalTimer: - movem.l d0-a6,-(Sp) - move.l a1,a2 - - st IVT_Stopflag(a2) - - tst.b IVT_Runflag(a2) - beq.s .noIO - move.l IVT_IORequest(a2),d5 - beq.s .noIO - - move.l d5,a1 - move.l IO_DEVICE(a1),a6 - jsr DEV_ABORTIO(A6) ;clear pending requests - sf IVT_Runflag(a2) -.noIO: - movem.l (sp)+,d0-a6 - rts - - - section data,data -dosbase: dc.l 0 -stdout: dc.l 0 -timerbase: ds.b IVT_Size - -dos_name: dc.b "dos.library",0 -VBtimer_name: dc.b "timer.device",0 -succname: dc.b "success: timer worked",10,0 -failname: dc.b "failure: timer didn't work",10,0 -failtimer: dc.b "timer open failure",10,0 - - END - diff --git a/Driver/enc624j6net/enc624j6net/intervaltimer.h b/Driver/enc624j6net/enc624j6net/intervaltimer.h deleted file mode 100644 index 6efd9a2..0000000 --- a/Driver/enc624j6net/enc624j6net/intervaltimer.h +++ /dev/null @@ -1,56 +0,0 @@ -/* -****************************************************************************** -* Name: intervaltimer.h * -* Date: $Date: 2016-12-18 22:20:04 +0100 (So, 18. Dez 2016) $ * -* Authors: Henryk Richter * -****************************************************************************** -*/ -#ifndef _INC_INTERVALTIMER_H -#define _INC_INTERVALTIMER_H - -#include -#include -#include -#include -#include - -struct IVT_TimerStruct { - unsigned long IVT_Interval; - long IVT_Signal; - struct Task *IVT_SigTask; - struct MsgPort *IVT_Port; - struct IORequest *IVT_IORequest; - struct Device *IVT_Device; - struct Interrupt IVT_Int; - unsigned char IVT_Init; - unsigned char IVT_Runflag; - unsigned char IVT_Stopflag; - unsigned char IVT_Unused; - unsigned long IVT_Counter; -}; - -#if 1 -#include "asminterface.h" -#else -/* self-contained in here as well */ -#ifdef __SASC -#define ASM __asm -#define ASMR(x) register __ ## x -#define ASMREG(x) -#define SAVEDS __saveds -#else -#define ASM -#define ASMR(x) register -#define ASMREG(x) __asm("" #x "") -#define SAVEDS __saveds -#endif -#endif - -ASM SAVEDS int InitIntervalTimer( ASMR(a1) struct IVT_TimerStruct* IntervalTimer ASMREG(a1) ); -ASM SAVEDS int StartIntervalTimer( ASMR(a1) struct IVT_TimerStruct* IntervalTimer ASMREG(a1), - ASMR(d1) unsigned long Microsecs ASMREG(d1) ); -ASM SAVEDS int StopIntervalTimer( ASMR(a1) struct IVT_TimerStruct* IntervalTimer ASMREG(a1) ); -ASM SAVEDS int ExitIntervalTimer( ASMR(a1) struct IVT_TimerStruct* IntervalTimer ASMREG(a1) ); - - -#endif /* _INC_INTERVALTIMER_H */ diff --git a/Driver/enc624j6net/enc624j6net/intervaltimer.i b/Driver/enc624j6net/enc624j6net/intervaltimer.i deleted file mode 100644 index 1a157ec..0000000 --- a/Driver/enc624j6net/enc624j6net/intervaltimer.i +++ /dev/null @@ -1,26 +0,0 @@ -****************************************************************************** -* Name: intervaltimer.i * -* Date: $Date: 2016-12-18 22:20:04 +0100 (So, 18. Dez 2016) $ * -* Authors: Henryk Richter * -****************************************************************************** - ifnd _INC_INTERVALTIMER_I -_INC_INTERVALTIMER_I EQU 1 - - include exec/types.i - - STRUCTURE IVT_TimerStruct,0 - ULONG IVT_Interval ;<1e6 in microseconds - LONG IVT_Signal ;Signal that is sent back to task from interrupt - APTR IVT_SigTask ;Task that is signaled - APTR IVT_Port - APTR IVT_IORequest - APTR IVT_Device - STRUCT IVT_Int,IS_SIZE ; - BYTE IVT_Init ; !=0 - initialized - BYTE IVT_Runflag ; current status ( !=0 = running ) - BYTE IVT_Stopflag ; stop request if != 0 - BYTE IVT_Unused ; - ULONG IVT_Counter ; Counter (statistics) - LABEL IVT_Size - - endc ;_INC_TIMERTEST_I diff --git a/Driver/enc624j6net/enc624j6net/macros.i b/Driver/enc624j6net/enc624j6net/macros.i deleted file mode 100644 index e30a27b..0000000 --- a/Driver/enc624j6net/enc624j6net/macros.i +++ /dev/null @@ -1,126 +0,0 @@ -; ------------------------------------------------------------------------------ -; | Lowlevel Access to memory mapped ENC624J600 in PSP mode | -; | Henryk Richter | -; ------------------------------------------------------------------------------ -; macro section - -;------------------ options, some depend on hardware (CPLD) configuration ------------------------- -_OPT_BUFFER_SWAP EQU 0 ;perform byte swap on buffer ops (1) or assume native endian (0) -_OPT_REG_SWAP EQU 0 ;perform byte swap on register ops (1) or assume native endian (0) -_OPT_ADR_QUIRK EQU 0 ;address lines 12/13 are swapped (1) or linear addressing (0) -_OPT_FLOWCONTROL EQU 0 ;perform flow control on RX (1) or not (0) -_OPT_RECV EQU 1 ;faster recv (1) or generic (0) -_OPT_CHECKLINK_TX EQU 0 ;check for link changes in TX (1) or expect from outside (0) -> see server.c - -;\1 register offset (without CLEAR offset) -;\2 address register of board I/O base -;\3 register with clear mask - ifne _OPT_REG_SWAP - -CLRREG macro - rol.w #8,\3 - move.w \3,\1+CLR_OFFSET(\2) - rol.w #8,\3 - endm -;\1 register offset (without SET offset) -;\2 address register of board I/O base -;\3 register with set mask -SETREG macro - rol.w #8,\3 - move.w \3,\1+SET_OFFSET(\2) - rol.w #8,\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 destination register to be written (e.g. d0) -; -;important: when changing this, make sure the flags -;are set according to the return value -READREG macro - rol.w #8,\3 - move.w \1(\2),\3 - rol.w #8,\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 soure register copied to HW register (e.g. d0) -WRITEREG macro - rol.w #8,\3 - move.w \3,\1(\2) - rol.w #8,\3 - endm - - - else - -CLRREG macro - move.w \3,\1+CLR_OFFSET(\2) - endm -;\1 register offset (without SET offset) -;\2 address register of board I/O base -;\3 register with set mask -SETREG macro - move.w \3,\1+SET_OFFSET(\2) - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 destination register to be written (e.g. d0) -; -;important: when changing this, make sure the flags -;are set according to the return value -READREG macro - move.w \1(\2),\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 soure register copied to HW register (e.g. d0) -WRITEREG macro - move.w \3,\1(\2) - endm - - endc - - ;read with address shuffling or direct from SRAM (affects $2000-$5000) - ifne _OPT_ADR_QUIRK -;\1 = address register -;\2 = data register, offset -;\3 = destination -READSRAM macro - eor.w #$6000,\2 - move.w (\1,\2.w),\3 - eor.w #$6000,\2 - endm - else -READSRAM macro - move.w (\1,\2),\3 - endm - endc - - ;read with address shuffling or direct from SRAM (affects $2000-$5000) - ifne _OPT_ADR_QUIRK -;\1 = address register -;\2 = data register, offset -;\3 = destination -READSRAM_LONG macro - eor.w #$6000,\2 - move.l (\1,\2.w),\3 - eor.w #$6000,\2 - endm - else -READSRAM_LONG macro - move.l (\1,\2),\3 - endm - endc - - -; wrap position index (in bytes) \1 (data register .w) -; -; if position >RXSTOP_INIT-1 -; position = (position-RXSTOP_INIT+RXSTART_INIT) -; endif -WRAPINDEX macro - cmp.w #RXSTOP_INIT&$fffe,\1 ;wrap Dn if beyond buffer - ble.s .nowrap\0\@ - add.w #RXSTART_INIT-RXSTOP_INIT-1,\1 -.nowrap\0\@ - endm \ No newline at end of file diff --git a/Driver/enc624j6net/enc624j6net/registers.h b/Driver/enc624j6net/enc624j6net/registers.h deleted file mode 100755 index 0af65ee..0000000 --- a/Driver/enc624j6net/enc624j6net/registers.h +++ /dev/null @@ -1,606 +0,0 @@ -/* ------------------------------------------------------------------------------ */ -/* | Lowlevel Access to memory mapped ENC624J600 in PSP mode | */ -/* | Henryk Richter | */ -/* ------------------------------------------------------------------------------ */ -/* register definition section */ -#ifndef _REGISTERS_H_ -#define _REGISTERS_H_ - -/* set/clr register offsets */ -#define SET_OFFSET 0x0100 -#define CLR_OFFSET 0x0180 - -/* Register definitions */ - -/* SPI Bank 0 registers -------- */ -#define ETXST 0x7E00 -#define ETXSTL 0x7E00 -#define ETXSTH 0x7E01 -#define ETXLEN 0x7E02 -#define ETXLENL 0x7E02 -#define ETXLENH 0x7E03 -#define ERXST 0x7E04 -#define ERXSTL 0x7E04 -#define ERXSTH 0x7E05 -#define ERXTAIL 0x7E06 -#define ERXTAILL 0x7E06 -#define ERXTAILH 0x7E07 -#define ERXHEAD 0x7E08 -#define ERXHEADL 0x7E08 -#define ERXHEADH 0x7E09 -#define EDMAST 0x7E0A -#define EDMASTL 0x7E0A -#define EDMASTH 0x7E0B -#define EDMALEN 0x7E0C -#define EDMALENL 0x7E0C -#define EDMALENH 0x7E0D -#define EDMADST 0x7E0E -#define EDMADSTL 0x7E0E -#define EDMADSTH 0x7E0F -#define EDMACS 0x7E10 -#define EDMACSL 0x7E10 -#define EDMACSH 0x7E11 -#define ETXSTAT 0x7E12 -#define ETXSTATL 0x7E12 -#define ETXSTATH 0x7E13 -#define ETXWIRE 0x7E14 -#define ETXWIREL 0x7E14 -#define ETXWIREH 0x7E15 - -/* SPI all bank registers */ -#define EUDAST 0x7E16 -#define EUDASTL 0x7E16 -#define EUDASTH 0x7E17 -#define EUDAND 0x7E18 -#define EUDANDL 0x7E18 -#define EUDANDH 0x7E19 -#define ESTAT 0x7E1A -#define ESTATL 0x7E1A -#define ESTATH 0x7E1B -#define EIR 0x7E1C -#define EIRL 0x7E1C -#define EIRH 0x7E1D -#define ECON1 0x7E1E -#define ECON1L 0x7E1E -#define ECON1H 0x7E1F - - -/* SPI Bank 1 registers ----- */ -#define EHT1 0x7E20 -#define EHT1L 0x7E20 -#define EHT1H 0x7E21 -#define EHT2 0x7E22 -#define EHT2L 0x7E22 -#define EHT2H 0x7E23 -#define EHT3 0x7E24 -#define EHT3L 0x7E24 -#define EHT3H 0x7E25 -#define EHT4 0x7E26 -#define EHT4L 0x7E26 -#define EHT4H 0x7E27 -#define EPMM1 0x7E28 -#define EPMM1L 0x7E28 -#define EPMM1H 0x7E29 -#define EPMM2 0x7E2A -#define EPMM2L 0x7E2A -#define EPMM2H 0x7E2B -#define EPMM3 0x7E2C -#define EPMM3L 0x7E2C -#define EPMM3H 0x7E2D -#define EPMM4 0x7E2E -#define EPMM4L 0x7E2E -#define EPMM4H 0x7E2F -#define EPMCS 0x7E30 -#define EPMCSL 0x7E30 -#define EPMCSH 0x7E31 -#define EPMO 0x7E32 -#define EPMOL 0x7E32 -#define EPMOH 0x7E33 -#define ERXFCON 0x7E34 -#define ERXFCONL 0x7E34 -#define ERXFCONH 0x7E35 - -/* SPI all bank registers from 0x36 to 0x3F */ -/* SPI Bank 2 registers ----- */ -#define MACON1 0x7E40 -#define MACON1L 0x7E40 -#define MACON1H 0x7E41 -#define MACON2 0x7E42 -#define MACON2L 0x7E42 -#define MACON2H 0x7E43 -#define MABBIPG 0x7E44 -#define MABBIPGL 0x7E44 -#define MABBIPGH 0x7E45 -#define MAIPG 0x7E46 -#define MAIPGL 0x7E46 -#define MAIPGH 0x7E47 -#define MACLCON 0x7E48 -#define MACLCONL 0x7E48 -#define MACLCONH 0x7E49 -#define MAMXFL 0x7E4A -#define MAMXFLL 0x7E4A -#define MAMXFLH 0x7E4B -#define MICMD 0x7E52 -#define MICMDL 0x7E52 -#define MICMDH 0x7E53 -#define MIREGADR 0x7E54 -#define MIREGADRL 0x7E54 -#define MIREGADRH 0x7E55 - -/* SPI all bank registers from 0x56 to 0x5F */ -/* SPI Bank 3 registers ----- */ -#define MAADR3 0x7E60 -#define MAADR3L 0x7E60 -#define MAADR3H 0x7E61 -#define MAADR2 0x7E62 -#define MAADR2L 0x7E62 -#define MAADR2H 0x7E63 -#define MAADR1 0x7E64 -#define MAADR1L 0x7E64 -#define MAADR1H 0x7E65 -#define MIWR 0x7E66 -#define MIWRL 0x7E66 -#define MIWRH 0x7E67 -#define MIRD 0x7E68 -#define MIRDL 0x7E68 -#define MIRDH 0x7E69 -#define MISTAT 0x7E6A -#define MISTATL 0x7E6A -#define MISTATH 0x7E6B -#define EPAUS 0x7E6C -#define EPAUSL 0x7E6C -#define EPAUSH 0x7E6D -#define ECON2 0x7E6E -#define ECON2L 0x7E6E -#define ECON2H 0x7E6F -#define ERXWM 0x7E70 -#define ERXWML 0x7E70 -#define ERXWMH 0x7E71 -#define EIE 0x7E72 -#define EIEL 0x7E72 -#define EIEH 0x7E73 -#define EIDLED 0x7E74 -#define EIDLEDL 0x7E74 -#define EIDLEDH 0x7E75 - -/* SPI all bank registers from 0x66 to 0x6F */ - -/* SPI Non-banked Special Function Registers */ -#define EGPDATA 0x7E80 -#define EGPDATAL 0x7E80 -#define ERXDATA 0x7E82 -#define ERXDATAL 0x7E82 -#define EUDADATA 0x7E84 -#define EUDADATAL 0x7E84 -#define EGPRDPT 0x7E86 -#define EGPRDPTL 0x7E86 -#define EGPRDPTH 0x7E87 -#define EGPWRPT 0x7E88 -#define EGPWRPTL 0x7E88 -#define EGPWRPTH 0x7E89 -#define ERXRDPT 0x7E8A -#define ERXRDPTL 0x7E8A -#define ERXRDPTH 0x7E8B -#define ERXWRPT 0x7E8C -#define ERXWRPTL 0x7E8C -#define ERXWRPTH 0x7E8D -#define EUDARDPT 0x7E8E -#define EUDARDPTL 0x7E8E -#define EUDARDPTH 0x7E8F -#define EUDAWRPT 0x7E90 -#define EUDAWRPTL 0x7E90 -#define EUDAWRPTH 0x7E91 - -/* ;;;;;;;;;;;;;;;;;;;;;;;;; */ -/* ENC424J600/624J600 register bits */ -/* ;;;;;;;;;;;;;;;;;;;;;;;;; */ -/* ESTAT bits ---------- */ -#define ESTAT_INT (1<<15) -#define ESTAT_FCIDLE (1<<14) -#define ESTAT_RXBUSY (1<<13) -#define ESTAT_CLKRDY (1<<12) -#define ESTAT_RSTDONE (1<<11) -#define ESTAT_PHYDPX (1<<10) -#define ESTAT_PHYRDY (1<<9) -#define ESTAT_PHYLNK (1<<8) -#define ESTAT_PKTCNT7 (1<<7) -#define ESTAT_PKTCNT6 (1<<6) -#define ESTAT_PKTCNT5 (1<<5) -#define ESTAT_PKTCNT4 (1<<4) -#define ESTAT_PKTCNT3 (1<<3) -#define ESTAT_PKTCNT2 (1<<2) -#define ESTAT_PKTCNT1 (1<<1) -#define ESTAT_PKTCNT0 (1) - -/* EIR bits ------------ */ -#define EIR_CRYPTEN (1<<15) -#define EIR_MODEXIF (1<<14) -#define EIR_HASHIF (1<<13) -#define EIR_AESIF (1<<12) -#define EIR_LINKIF (1<<11) -#define EIR_PRDYIF (1<<10) -#define EIR_r9 (1<<9) -#define EIR_r8 (1<<8) -#define EIR_r7 (1<<7) -#define EIR_PKTIF (1<<6) -#define EIR_DMAIF (1<<5) -#define EIR_r4 (1<<4) -#define EIR_TXIF (1<<3) -#define EIR_TXABTIF (1<<2) -#define EIR_RXABTIF (1<<1) -#define EIR_PCFULIF (1) - -/* ECON1 bits ---------- */ -#define ECON1_MODEXST (1<<15) -#define ECON1_HASHEN (1<<14) -#define ECON1_HASHOP (1<<13) -#define ECON1_HASHLST (1<<12) -#define ECON1_AESST (1<<11) -#define ECON1_AESOP1 (1<<10) -#define ECON1_AESOP0 (1<<9) -#define ECON1_PKTDEC (1<<8) -#define ECON1_FCOP1 (1<<7) -#define ECON1_FCOP0 (1<<6) -#define ECON1_DMAST (1<<5) -#define ECON1_DMACPY (1<<4) -#define ECON1_DMACSSD (1<<3) -#define ECON1_DMANOCS (1<<2) -#define ECON1_TXRTS (1<<1) -#define ECON1_RXEN (1) - -/* ETXSTAT bits -------- */ -#define ETXSTAT_r12 (1<<12) -#define ETXSTAT_r11 (1<<11) -#define ETXSTAT_LATECOL (1<<10) -#define ETXSTAT_MAXCOL (1<<9) -#define ETXSTAT_EXDEFER (1<<8) -#define ETXSTAT_DEFER (1<<7) -#define ETXSTAT_r6 (1<<6) -#define ETXSTAT_r5 (1<<5) -#define ETXSTAT_CRCBAD (1<<4) -#define ETXSTAT_COLCNT3 (1<<3) -#define ETXSTAT_COLCNT2 (1<<2) -#define ETXSTAT_COLCNT1 (1<<1) -#define ETXSTAT_COLCNT0 (1) - -/* ERXFCON bits -------- */ -#define ERXFCON_HTEN (1<<15) -#define ERXFCON_MPEN (1<<14) -#define ERXFCON_NOTPM (1<<12) -#define ERXFCON_PMEN3 (1<<11) -#define ERXFCON_PMEN2 (1<<10) -#define ERXFCON_PMEN1 (1<<9) -#define ERXFCON_PMEN0 (1<<8) -#define ERXFCON_CRCEEN (1<<7) -#define ERXFCON_CRCEN (1<<6) -#define ERXFCON_RUNTEEN (1<<5) -#define ERXFCON_RUNTEN (1<<4) -#define ERXFCON_UCEN (1<<3) -#define ERXFCON_NOTMEEN (1<<2) -#define ERXFCON_MCEN (1<<1) -#define ERXFCON_BCEN (1) - -/* MACON1 bits --------- */ -#define MACON1_r15 (1<<15) -#define MACON1_r14 (1<<14) -#define MACON1_r11 (1<<11) -#define MACON1_r10 (1<<10) -#define MACON1_r9 (1<<9) -#define MACON1_r8 (1<<8) -#define MACON1_LOOPBK (1<<4) -#define MACON1_r3 (1<<3) -#define MACON1_RXPAUS (1<<2) -#define MACON1_PASSALL (1<<1) -#define MACON1_r0 (1) - -/* MACON2 bits --------- */ -#define MACON2_DEFER (1<<14) -#define MACON2_BPEN (1<<13) -#define MACON2_NOBKOFF (1<<12) -#define MACON2_r9 (1<<9) -#define MACON2_r8 (1<<8) -#define MACON2_PADCFG2 (1<<7) -#define MACON2_PADCFG1 (1<<6) -#define MACON2_PADCFG0 (1<<5) -#define MACON2_TXCRCEN (1<<4) -#define MACON2_PHDREN (1<<3) -#define MACON2_HFRMEN (1<<2) -#define MACON2_r1 (1<<1) -#define MACON2_FULDPX (1) - -/* MABBIPG bits -------- */ -#define MABBIPG_BBIPG6 (1<<6) -#define MABBIPG_BBIPG5 (1<<5) -#define MABBIPG_BBIPG4 (1<<4) -#define MABBIPG_BBIPG3 (1<<3) -#define MABBIPG_BBIPG2 (1<<2) -#define MABBIPG_BBIPG1 (1<<1) -#define MABBIPG_BBIPG0 (1) - -/* MAIPG bits ---------- */ -#define MAIPG_r14 (1<<14) -#define MAIPG_r13 (1<<13) -#define MAIPG_r12 (1<<12) -#define MAIPG_r11 (1<<11) -#define MAIPG_r10 (1<<10) -#define MAIPG_r9 (1<<9) -#define MAIPG_r8 (1<<8) -#define MAIPG_IPG6 (1<<6) -#define MAIPG_IPG5 (1<<5) -#define MAIPG_IPG4 (1<<4) -#define MAIPG_IPG3 (1<<3) -#define MAIPG_IPG2 (1<<2) -#define MAIPG_IPG1 (1<<1) -#define MAIPG_IPG0 (1) - -/* MACLCON bits -------- */ -#define MACLCON_r13 (1<<13) -#define MACLCON_r12 (1<<12) -#define MACLCON_r11 (1<<11) -#define MACLCON_r10 (1<<10) -#define MACLCON_r9 (1<<9) -#define MACLCON_r8 (1<<8) -#define MACLCON_MAXRET3 (1<<3) -#define MACLCON_MAXRET2 (1<<2) -#define MACLCON_MAXRET1 (1<<1) -#define MACLCON_MAXRET0 (1) - -/* MICMD bits ---------- */ -#define MICMD_MIISCAN (1<<1) -#define MICMD_MIIRD (1) - -/* MIREGADR bits ------- */ -#define MIREGADR_r12 (1<<12) -#define MIREGADR_r11 (1<<11) -#define MIREGADR_r10 (1<<10) -#define MIREGADR_r9 (1<<9) -#define MIREGADR_r8 (1<<8) -#define MIREGADR_PHREG4 (1<<4) -#define MIREGADR_PHREG3 (1<<3) -#define MIREGADR_PHREG2 (1<<2) -#define MIREGADR_PHREG1 (1<<1) -#define MIREGADR_PHREG0 (1) - -/* MISTAT bits --------- */ -#define MISTAT_r3 (1<<3) -#define MISTAT_NVALID (1<<2) -#define MISTAT_SCAN (1<<1) -#define MISTAT_BUSY (1) - -/* ECON2 bits ---------- */ -#define ECON2_ETHEN (1<<15) -#define ECON2_STRCH (1<<14) -#define ECON2_TXMAC (1<<13) -#define ECON2_SHA1MD5 (1<<12) -#define ECON2_COCON3 (1<<11) -#define ECON2_COCON2 (1<<10) -#define ECON2_COCON1 (1<<9) -#define ECON2_COCON0 (1<<8) -#define ECON2_AUTOFC (1<<7) -#define ECON2_TXRST (1<<6) -#define ECON2_RXRST (1<<5) -#define ECON2_ETHRST (1<<4) -#define ECON2_MODLEN1 (1<<3) -#define ECON2_MODLEN0 (1<<2) -#define ECON2_AESLEN1 (1<<1) -#define ECON2_AESLEN0 (1) - -/* ERXWM bits ---------- */ -#define ERXWM_RXFWM7 (1<<15) -#define ERXWM_RXFWM6 (1<<14) -#define ERXWM_RXFWM5 (1<<13) -#define ERXWM_RXFWM4 (1<<12) -#define ERXWM_RXFWM3 (1<<11) -#define ERXWM_RXFWM2 (1<<10) -#define ERXWM_RXFWM1 (1<<9) -#define ERXWM_RXFWM0 (1<<8) -#define ERXWM_RXEWM7 (1<<7) -#define ERXWM_RXEWM6 (1<<6) -#define ERXWM_RXEWM5 (1<<5) -#define ERXWM_RXEWM4 (1<<4) -#define ERXWM_RXEWM3 (1<<3) -#define ERXWM_RXEWM2 (1<<2) -#define ERXWM_RXEWM1 (1<<1) -#define ERXWM_RXEWM0 (1) - -/* EIE bits ------------ */ -#define EIE_INTIE (1<<15) -#define EIE_MODEXIE (1<<14) -#define EIE_HASHIE (1<<13) -#define EIE_AESIE (1<<12) -#define EIE_LINKIE (1<<11) -#define EIE_PRDYIE (1<<10) -#define EIE_r9 (1<<9) -#define EIE_r8 (1<<8) -#define EIE_r7 (1<<7) -#define EIE_PKTIE (1<<6) -#define EIE_DMAIE (1<<5) -#define EIE_r4 (1<<4) -#define EIE_TXIE (1<<3) -#define EIE_TXABTIE (1<<2) -#define EIE_RXABTIE (1<<1) -#define EIE_PCFULIE (1) - -/* EIDLED bits --------- */ -#define EIDLED_LACFG3 (1<<15) -#define EIDLED_LACFG2 (1<<14) -#define EIDLED_LACFG1 (1<<13) -#define EIDLED_LACFG0 (1<<12) -#define EIDLED_LBCFG3 (1<<11) -#define EIDLED_LBCFG2 (1<<10) -#define EIDLED_LBCFG1 (1<<9) -#define EIDLED_LBCFG0 (1<<8) -#define EIDLED_DEVID2 (1<<7) -#define EIDLED_DEVID1 (1<<6) -#define EIDLED_DEVID0 (1<<5) -#define EIDLED_REVID4 (1<<4) -#define EIDLED_REVID3 (1<<3) -#define EIDLED_REVID2 (1<<2) -#define EIDLED_REVID1 (1<<1) -#define EIDLED_REVID0 (1) - -/* PHCON1 bits --------- */ -#define PHCON1_PRST (1<<15) -#define PHCON1_PLOOPBK (1<<14) -#define PHCON1_SPD100 (1<<13) -#define PHCON1_ANEN (1<<12) -#define PHCON1_PSLEEP (1<<11) -#define PHCON1_r10 (1<<10) -#define PHCON1_RENEG (1<<9) -#define PHCON1_PFULDPX (1<<8) -#define PHCON1_r7 (1<<7) -#define PHCON1_r6 (1<<6) -#define PHCON1_r5 (1<<5) -#define PHCON1_r4 (1<<4) -#define PHCON1_r3 (1<<3) -#define PHCON1_r2 (1<<2) -#define PHCON1_r1 (1<<1) -#define PHCON1_r0 (1) - -/* PHSTAT1 bits -------- */ -#define PHSTAT1_r15 (1<<15) -#define PHSTAT1_FULL100 (1<<14) -#define PHSTAT1_HALF100 (1<<13) -#define PHSTAT1_FULL10 (1<<12) -#define PHSTAT1_HALF10 (1<<11) -#define PHSTAT1_r10 (1<<10) -#define PHSTAT1_r9 (1<<9) -#define PHSTAT1_r8 (1<<8) -#define PHSTAT1_r7 (1<<7) -#define PHSTAT1_r6 (1<<6) -#define PHSTAT1_ANDONE (1<<5) -#define PHSTAT1_LRFAULT (1<<4) -#define PHSTAT1_ANABLE (1<<3) -#define PHSTAT1_LLSTAT (1<<2) -#define PHSTAT1_r1 (1<<1) -#define PHSTAT1_EXTREGS (1) - -/* PHANA bits ---------- */ -#define PHANA_ADNP (1<<15) -#define PHANA_r14 (1<<14) -#define PHANA_ADFAULT (1<<13) -#define PHANA_r12 (1<<12) -#define PHANA_ADPAUS1 (1<<11) -#define PHANA_ADPAUS0 (1<<10) -#define PHANA_r9 (1<<9) -#define PHANA_AD100FD (1<<8) -#define PHANA_AD100 (1<<7) -#define PHANA_AD10FD (1<<6) -#define PHANA_AD10 (1<<5) -#define PHANA_ADIEEE4 (1<<4) -#define PHANA_ADIEEE3 (1<<3) -#define PHANA_ADIEEE2 (1<<2) -#define PHANA_ADIEEE1 (1<<1) -#define PHANA_ADIEEE0 (1) - -/* PHANLPA bits -------- */ -#define PHANLPA_LPNP (1<<15) -#define PHANLPA_LPACK (1<<14) -#define PHANLPA_LPFAULT (1<<13) -#define PHANLPA_r12 (1<<12) -#define PHANLPA_LPPAUS1 (1<<11) -#define PHANLPA_LPPAUS0 (1<<10) -#define PHANLPA_LP100T4 (1<<9) -#define PHANLPA_LP100FD (1<<8) -#define PHANLPA_LP100 (1<<7) -#define PHANLPA_LP10FD (1<<6) -#define PHANLPA_LP10 (1<<5) -#define PHANLPA_LPIEEE4 (1<<4) -#define PHANLPA_LPIEEE3 (1<<3) -#define PHANLPA_LPIEEE2 (1<<2) -#define PHANLPA_LPIEEE1 (1<<1) -#define PHANLPA_LPIEEE0 (1) - -/* PHANE bits ---------- */ -#define PHANE_r15 (1<<15) -#define PHANE_r14 (1<<14) -#define PHANE_r13 (1<<13) -#define PHANE_r12 (1<<12) -#define PHANE_r11 (1<<11) -#define PHANE_r10 (1<<10) -#define PHANE_r9 (1<<9) -#define PHANE_r8 (1<<8) -#define PHANE_r7 (1<<7) -#define PHANE_r6 (1<<6) -#define PHANE_r5 (1<<5) -#define PHANE_PDFLT (1<<4) -#define PHANE_r3 (1<<3) -#define PHANE_r2 (1<<2) -#define PHANE_LPARCD (1<<1) -#define PHANA_LPANABL (1) - -/* PHCON2 bits --------- */ -#define PHCON2_r15 (1<<15) -#define PHCON2_r14 (1<<14) -#define PHCON2_EDPWRDN (1<<13) -#define PHCON2_r12 (1<<12) -#define PHCON2_EDTHRES (1<<11) -#define PHCON2_r10 (1<<10) -#define PHCON2_r9 (1<<9) -#define PHCON2_r8 (1<<8) -#define PHCON2_r7 (1<<7) -#define PHCON2_r6 (1<<6) -#define PHCON2_r5 (1<<5) -#define PHCON2_r4 (1<<4) -#define PHCON2_r3 (1<<3) -#define PHCON2_FRCLNK (1<<2) -#define PHCON2_EDSTAT (1<<1) -#define PHCON2_r0 (1) - -/* PHSTAT2 bits --------- */ -#define PHSTAT2_r15 (1<<15) -#define PHSTAT2_r14 (1<<14) -#define PHSTAT2_r13 (1<<13) -#define PHSTAT2_r12 (1<<12) -#define PHSTAT2_r11 (1<<11) -#define PHSTAT2_r10 (1<<10) -#define PHSTAT2_r9 (1<<9) -#define PHSTAT2_r8 (1<<8) -#define PHSTAT2_r7 (1<<7) -#define PHSTAT2_r6 (1<<6) -#define PHSTAT2_r5 (1<<5) -#define PHSTAT2_PLRITY (1<<4) -#define PHSTAT2_r3 (1<<3) -#define PHSTAT2_r2 (1<<2) -#define PHSTAT2_r1 (1<<1) -#define PHSTAT2_r0 (1) - -/* PHSTAT3 bits -------- */ -#define PHSTAT3_r15 (1<<15) -#define PHSTAT3_r14 (1<<14) -#define PHSTAT3_r13 (1<<13) -#define PHSTAT3_r12 (1<<12) -#define PHSTAT3_r11 (1<<11) -#define PHSTAT3_r10 (1<<10) -#define PHSTAT3_r9 (1<<9) -#define PHSTAT3_r8 (1<<8) -#define PHSTAT3_r7 (1<<7) -#define PHSTAT3_r6 (1<<6) -#define PHSTAT3_r5 (1<<5) -#define PHSTAT3_SPDDPX2 (1<<4) -#define PHSTAT3_SPDDPX1 (1<<3) -#define PHSTAT3_SPDDPX0 (1<<2) -#define PHSTAT3_r1 (1<<1) -#define PHSTAT3_r0 (1) - -/* ------------------------------ internal defaults ---------------------------------- */ -/* 33.333Mhz clock out frequency */ -#define CLOCK_33_CLR (ECON2_COCON3|ECON2_COCON2|ECON2_COCON1) /* clr mask */ -#define CLOCK_33_SET (ECON2_COCON0) /* set mask */ -/* 25 MHz */ -#define CLOCK_25_CLR (ECON2_COCON3|ECON2_COCON2|ECON2_COCON0) /* clr mask */ -#define CLOCK_25_SET (ECON2_COCON1) /* set mask */ -/* 20 MHz */ -#define CLOCK_20_CLR (ECON2_COCON3|ECON2_COCON2) /* clr mask */ -#define CLOCK_20_SET (ECON2_COCON1|ECON2_COCON0) /* set mask */ -/* 16 MHz */ -#define CLOCK_16_CLR (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) /* clr mask */ -#define CLOCK_16_SET (ECON2_COCON2) /* set mask */ -/* 4 MHz (after reset) */ -#define CLOCK_4_CLR (ECON2_COCON2) /* clr mask */ -#define CLOCK_4_SET (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) /* set mask */ - -#define CLOCK_DEF_CLR CLOCK_33_CLR -#define CLOCK_DEF_SET CLOCK_33_SET - -#endif /* _REGISTERS_H_ */ diff --git a/Driver/enc624j6net/enc624j6net/registers.i b/Driver/enc624j6net/enc624j6net/registers.i deleted file mode 100755 index 62e7a90..0000000 --- a/Driver/enc624j6net/enc624j6net/registers.i +++ /dev/null @@ -1,602 +0,0 @@ -; ------------------------------------------------------------------------------ -; | Lowlevel Access to memory mapped ENC624J600 in PSP mode | -; | Henryk Richter | -; ------------------------------------------------------------------------------ -; register definition section - -; set/clr register offsets -SET_OFFSET EQU $0100 -CLR_OFFSET EQU $0180 - -; Register definitions - -; SPI Bank 0 registers -------- -ETXST EQU $7E00 -ETXSTL EQU $7E00 -ETXSTH EQU $7E01 -ETXLEN EQU $7E02 -ETXLENL EQU $7E02 -ETXLENH EQU $7E03 -ERXST EQU $7E04 -ERXSTL EQU $7E04 -ERXSTH EQU $7E05 -ERXTAIL EQU $7E06 -ERXTAILL EQU $7E06 -ERXTAILH EQU $7E07 -ERXHEAD EQU $7E08 -ERXHEADL EQU $7E08 -ERXHEADH EQU $7E09 -EDMAST EQU $7E0A -EDMASTL EQU $7E0A -EDMASTH EQU $7E0B -EDMALEN EQU $7E0C -EDMALENL EQU $7E0C -EDMALENH EQU $7E0D -EDMADST EQU $7E0E -EDMADSTL EQU $7E0E -EDMADSTH EQU $7E0F -EDMACS EQU $7E10 -EDMACSL EQU $7E10 -EDMACSH EQU $7E11 -ETXSTAT EQU $7E12 -ETXSTATL EQU $7E12 -ETXSTATH EQU $7E13 -ETXWIRE EQU $7E14 -ETXWIREL EQU $7E14 -ETXWIREH EQU $7E15 - -; SPI all bank registers -EUDAST EQU $7E16 -EUDASTL EQU $7E16 -EUDASTH EQU $7E17 -EUDAND EQU $7E18 -EUDANDL EQU $7E18 -EUDANDH EQU $7E19 -ESTAT EQU $7E1A -ESTATL EQU $7E1A -ESTATH EQU $7E1B -EIR EQU $7E1C -EIRL EQU $7E1C -EIRH EQU $7E1D -ECON1 EQU $7E1E -ECON1L EQU $7E1E -ECON1H EQU $7E1F - - -; SPI Bank 1 registers ----- -EHT1 EQU $7E20 -EHT1L EQU $7E20 -EHT1H EQU $7E21 -EHT2 EQU $7E22 -EHT2L EQU $7E22 -EHT2H EQU $7E23 -EHT3 EQU $7E24 -EHT3L EQU $7E24 -EHT3H EQU $7E25 -EHT4 EQU $7E26 -EHT4L EQU $7E26 -EHT4H EQU $7E27 -EPMM1 EQU $7E28 -EPMM1L EQU $7E28 -EPMM1H EQU $7E29 -EPMM2 EQU $7E2A -EPMM2L EQU $7E2A -EPMM2H EQU $7E2B -EPMM3 EQU $7E2C -EPMM3L EQU $7E2C -EPMM3H EQU $7E2D -EPMM4 EQU $7E2E -EPMM4L EQU $7E2E -EPMM4H EQU $7E2F -EPMCS EQU $7E30 -EPMCSL EQU $7E30 -EPMCSH EQU $7E31 -EPMO EQU $7E32 -EPMOL EQU $7E32 -EPMOH EQU $7E33 -ERXFCON EQU $7E34 -ERXFCONL EQU $7E34 -ERXFCONH EQU $7E35 - -; SPI all bank registers from 0x36 to 0x3F -; SPI Bank 2 registers ----- -MACON1 EQU $7E40 -MACON1L EQU $7E40 -MACON1H EQU $7E41 -MACON2 EQU $7E42 -MACON2L EQU $7E42 -MACON2H EQU $7E43 -MABBIPG EQU $7E44 -MABBIPGL EQU $7E44 -MABBIPGH EQU $7E45 -MAIPG EQU $7E46 -MAIPGL EQU $7E46 -MAIPGH EQU $7E47 -MACLCON EQU $7E48 -MACLCONL EQU $7E48 -MACLCONH EQU $7E49 -MAMXFL EQU $7E4A -MAMXFLL EQU $7E4A -MAMXFLH EQU $7E4B -MICMD EQU $7E52 -MICMDL EQU $7E52 -MICMDH EQU $7E53 -MIREGADR EQU $7E54 -MIREGADRL EQU $7E54 -MIREGADRH EQU $7E55 - -; SPI all bank registers from 0x56 to 0x5F -; SPI Bank 3 registers ----- -MAADR3 EQU $7E60 -MAADR3L EQU $7E60 -MAADR3H EQU $7E61 -MAADR2 EQU $7E62 -MAADR2L EQU $7E62 -MAADR2H EQU $7E63 -MAADR1 EQU $7E64 -MAADR1L EQU $7E64 -MAADR1H EQU $7E65 -MIWR EQU $7E66 -MIWRL EQU $7E66 -MIWRH EQU $7E67 -MIRD EQU $7E68 -MIRDL EQU $7E68 -MIRDH EQU $7E69 -MISTAT EQU $7E6A -MISTATL EQU $7E6A -MISTATH EQU $7E6B -EPAUS EQU $7E6C -EPAUSL EQU $7E6C -EPAUSH EQU $7E6D -ECON2 EQU $7E6E -ECON2L EQU $7E6E -ECON2H EQU $7E6F -ERXWM EQU $7E70 -ERXWML EQU $7E70 -ERXWMH EQU $7E71 -EIE EQU $7E72 -EIEL EQU $7E72 -EIEH EQU $7E73 -EIDLED EQU $7E74 -EIDLEDL EQU $7E74 -EIDLEDH EQU $7E75 - -; SPI all bank registers from 0x66 to 0x6F - -; SPI Non-banked Special Function Registers -EGPDATA EQU $7E80 -EGPDATAL EQU $7E80 -ERXDATA EQU $7E82 -ERXDATAL EQU $7E82 -EUDADATA EQU $7E84 -EUDADATAL EQU $7E84 -EGPRDPT EQU $7E86 -EGPRDPTL EQU $7E86 -EGPRDPTH EQU $7E87 -EGPWRPT EQU $7E88 -EGPWRPTL EQU $7E88 -EGPWRPTH EQU $7E89 -ERXRDPT EQU $7E8A -ERXRDPTL EQU $7E8A -ERXRDPTH EQU $7E8B -ERXWRPT EQU $7E8C -ERXWRPTL EQU $7E8C -ERXWRPTH EQU $7E8D -EUDARDPT EQU $7E8E -EUDARDPTL EQU $7E8E -EUDARDPTH EQU $7E8F -EUDAWRPT EQU $7E90 -EUDAWRPTL EQU $7E90 -EUDAWRPTH EQU $7E91 - -;;;;;;;;;;;;;;;;;;;;;;;;;; -; ENC424J600/624J600 register bits -;;;;;;;;;;;;;;;;;;;;;;;;;; -; ESTAT bits ---------- -ESTAT_INT EQU (1<<15) -ESTAT_FCIDLE EQU (1<<14) -ESTAT_RXBUSY EQU (1<<13) -ESTAT_CLKRDY EQU (1<<12) -ESTAT_RSTDONE EQU (1<<11) -ESTAT_PHYDPX EQU (1<<10) -ESTAT_PHYRDY EQU (1<<9) -ESTAT_PHYLNK EQU (1<<8) -ESTAT_PKTCNT7 EQU (1<<7) -ESTAT_PKTCNT6 EQU (1<<6) -ESTAT_PKTCNT5 EQU (1<<5) -ESTAT_PKTCNT4 EQU (1<<4) -ESTAT_PKTCNT3 EQU (1<<3) -ESTAT_PKTCNT2 EQU (1<<2) -ESTAT_PKTCNT1 EQU (1<<1) -ESTAT_PKTCNT0 EQU (1) - -; EIR bits ------------ -EIR_CRYPTEN EQU (1<<15) -EIR_MODEXIF EQU (1<<14) -EIR_HASHIF EQU (1<<13) -EIR_AESIF EQU (1<<12) -EIR_LINKIF EQU (1<<11) -EIR_PRDYIF EQU (1<<10) -EIR_r9 EQU (1<<9) -EIR_r8 EQU (1<<8) -EIR_r7 EQU (1<<7) -EIR_PKTIF EQU (1<<6) -EIR_DMAIF EQU (1<<5) -EIR_r4 EQU (1<<4) -EIR_TXIF EQU (1<<3) -EIR_TXABTIF EQU (1<<2) -EIR_RXABTIF EQU (1<<1) -EIR_PCFULIF EQU (1) - -; ECON1 bits ---------- -ECON1_MODEXST EQU (1<<15) -ECON1_HASHEN EQU (1<<14) -ECON1_HASHOP EQU (1<<13) -ECON1_HASHLST EQU (1<<12) -ECON1_AESST EQU (1<<11) -ECON1_AESOP1 EQU (1<<10) -ECON1_AESOP0 EQU (1<<9) -ECON1_PKTDEC EQU (1<<8) -ECON1_FCOP1 EQU (1<<7) -ECON1_FCOP0 EQU (1<<6) -ECON1_DMAST EQU (1<<5) -ECON1_DMACPY EQU (1<<4) -ECON1_DMACSSD EQU (1<<3) -ECON1_DMANOCS EQU (1<<2) -ECON1_TXRTS EQU (1<<1) -ECON1_RXEN EQU (1) - -; ETXSTAT bits -------- -ETXSTAT_r12 EQU (1<<12) -ETXSTAT_r11 EQU (1<<11) -ETXSTAT_LATECOL EQU (1<<10) -ETXSTAT_MAXCOL EQU (1<<9) -ETXSTAT_EXDEFER EQU (1<<8) -ETXSTAT_DEFER EQU (1<<7) -ETXSTAT_r6 EQU (1<<6) -ETXSTAT_r5 EQU (1<<5) -ETXSTAT_CRCBAD EQU (1<<4) -ETXSTAT_COLCNT3 EQU (1<<3) -ETXSTAT_COLCNT2 EQU (1<<2) -ETXSTAT_COLCNT1 EQU (1<<1) -ETXSTAT_COLCNT0 EQU (1) - -; ERXFCON bits -------- -ERXFCON_HTEN EQU (1<<15) -ERXFCON_MPEN EQU (1<<14) -ERXFCON_NOTPM EQU (1<<12) -ERXFCON_PMEN3 EQU (1<<11) -ERXFCON_PMEN2 EQU (1<<10) -ERXFCON_PMEN1 EQU (1<<9) -ERXFCON_PMEN0 EQU (1<<8) -ERXFCON_CRCEEN EQU (1<<7) -ERXFCON_CRCEN EQU (1<<6) -ERXFCON_RUNTEEN EQU (1<<5) -ERXFCON_RUNTEN EQU (1<<4) -ERXFCON_UCEN EQU (1<<3) -ERXFCON_NOTMEEN EQU (1<<2) -ERXFCON_MCEN EQU (1<<1) -ERXFCON_BCEN EQU (1) - -; MACON1 bits --------- -MACON1_r15 EQU (1<<15) -MACON1_r14 EQU (1<<14) -MACON1_r11 EQU (1<<11) -MACON1_r10 EQU (1<<10) -MACON1_r9 EQU (1<<9) -MACON1_r8 EQU (1<<8) -MACON1_LOOPBK EQU (1<<4) -MACON1_r3 EQU (1<<3) -MACON1_RXPAUS EQU (1<<2) -MACON1_PASSALL EQU (1<<1) -MACON1_r0 EQU (1) - -; MACON2 bits --------- -MACON2_DEFER EQU (1<<14) -MACON2_BPEN EQU (1<<13) -MACON2_NOBKOFF EQU (1<<12) -MACON2_r9 EQU (1<<9) -MACON2_r8 EQU (1<<8) -MACON2_PADCFG2 EQU (1<<7) -MACON2_PADCFG1 EQU (1<<6) -MACON2_PADCFG0 EQU (1<<5) -MACON2_TXCRCEN EQU (1<<4) -MACON2_PHDREN EQU (1<<3) -MACON2_HFRMEN EQU (1<<2) -MACON2_r1 EQU (1<<1) -MACON2_FULDPX EQU (1) - -; MABBIPG bits -------- -MABBIPG_BBIPG6 EQU (1<<6) -MABBIPG_BBIPG5 EQU (1<<5) -MABBIPG_BBIPG4 EQU (1<<4) -MABBIPG_BBIPG3 EQU (1<<3) -MABBIPG_BBIPG2 EQU (1<<2) -MABBIPG_BBIPG1 EQU (1<<1) -MABBIPG_BBIPG0 EQU (1) - -; MAIPG bits ---------- -MAIPG_r14 EQU (1<<14) -MAIPG_r13 EQU (1<<13) -MAIPG_r12 EQU (1<<12) -MAIPG_r11 EQU (1<<11) -MAIPG_r10 EQU (1<<10) -MAIPG_r9 EQU (1<<9) -MAIPG_r8 EQU (1<<8) -MAIPG_IPG6 EQU (1<<6) -MAIPG_IPG5 EQU (1<<5) -MAIPG_IPG4 EQU (1<<4) -MAIPG_IPG3 EQU (1<<3) -MAIPG_IPG2 EQU (1<<2) -MAIPG_IPG1 EQU (1<<1) -MAIPG_IPG0 EQU (1) - -; MACLCON bits -------- -MACLCON_r13 EQU (1<<13) -MACLCON_r12 EQU (1<<12) -MACLCON_r11 EQU (1<<11) -MACLCON_r10 EQU (1<<10) -MACLCON_r9 EQU (1<<9) -MACLCON_r8 EQU (1<<8) -MACLCON_MAXRET3 EQU (1<<3) -MACLCON_MAXRET2 EQU (1<<2) -MACLCON_MAXRET1 EQU (1<<1) -MACLCON_MAXRET0 EQU (1) - -; MICMD bits ---------- -MICMD_MIISCAN EQU (1<<1) -MICMD_MIIRD EQU (1) - -; MIREGADR bits ------- -MIREGADR_r12 EQU (1<<12) -MIREGADR_r11 EQU (1<<11) -MIREGADR_r10 EQU (1<<10) -MIREGADR_r9 EQU (1<<9) -MIREGADR_r8 EQU (1<<8) -MIREGADR_PHREG4 EQU (1<<4) -MIREGADR_PHREG3 EQU (1<<3) -MIREGADR_PHREG2 EQU (1<<2) -MIREGADR_PHREG1 EQU (1<<1) -MIREGADR_PHREG0 EQU (1) - -; MISTAT bits --------- -MISTAT_r3 EQU (1<<3) -MISTAT_NVALID EQU (1<<2) -MISTAT_SCAN EQU (1<<1) -MISTAT_BUSY EQU (1) - -; ECON2 bits ---------- -ECON2_ETHEN EQU (1<<15) -ECON2_STRCH EQU (1<<14) -ECON2_TXMAC EQU (1<<13) -ECON2_SHA1MD5 EQU (1<<12) -ECON2_COCON3 EQU (1<<11) -ECON2_COCON2 EQU (1<<10) -ECON2_COCON1 EQU (1<<9) -ECON2_COCON0 EQU (1<<8) -ECON2_AUTOFC EQU (1<<7) -ECON2_TXRST EQU (1<<6) -ECON2_RXRST EQU (1<<5) -ECON2_ETHRST EQU (1<<4) -ECON2_MODLEN1 EQU (1<<3) -ECON2_MODLEN0 EQU (1<<2) -ECON2_AESLEN1 EQU (1<<1) -ECON2_AESLEN0 EQU (1) - -; ERXWM bits ---------- -ERXWM_RXFWM7 EQU (1<<15) -ERXWM_RXFWM6 EQU (1<<14) -ERXWM_RXFWM5 EQU (1<<13) -ERXWM_RXFWM4 EQU (1<<12) -ERXWM_RXFWM3 EQU (1<<11) -ERXWM_RXFWM2 EQU (1<<10) -ERXWM_RXFWM1 EQU (1<<9) -ERXWM_RXFWM0 EQU (1<<8) -ERXWM_RXEWM7 EQU (1<<7) -ERXWM_RXEWM6 EQU (1<<6) -ERXWM_RXEWM5 EQU (1<<5) -ERXWM_RXEWM4 EQU (1<<4) -ERXWM_RXEWM3 EQU (1<<3) -ERXWM_RXEWM2 EQU (1<<2) -ERXWM_RXEWM1 EQU (1<<1) -ERXWM_RXEWM0 EQU (1) - -; EIE bits ------------ -EIE_INTIE EQU (1<<15) -EIE_MODEXIE EQU (1<<14) -EIE_HASHIE EQU (1<<13) -EIE_AESIE EQU (1<<12) -EIE_LINKIE EQU (1<<11) -EIE_PRDYIE EQU (1<<10) -EIE_r9 EQU (1<<9) -EIE_r8 EQU (1<<8) -EIE_r7 EQU (1<<7) -EIE_PKTIE EQU (1<<6) -EIE_DMAIE EQU (1<<5) -EIE_r4 EQU (1<<4) -EIE_TXIE EQU (1<<3) -EIE_TXABTIE EQU (1<<2) -EIE_RXABTIE EQU (1<<1) -EIE_PCFULIE EQU (1) - -; EIDLED bits --------- -EIDLED_LACFG3 EQU (1<<15) -EIDLED_LACFG2 EQU (1<<14) -EIDLED_LACFG1 EQU (1<<13) -EIDLED_LACFG0 EQU (1<<12) -EIDLED_LBCFG3 EQU (1<<11) -EIDLED_LBCFG2 EQU (1<<10) -EIDLED_LBCFG1 EQU (1<<9) -EIDLED_LBCFG0 EQU (1<<8) -EIDLED_DEVID2 EQU (1<<7) -EIDLED_DEVID1 EQU (1<<6) -EIDLED_DEVID0 EQU (1<<5) -EIDLED_REVID4 EQU (1<<4) -EIDLED_REVID3 EQU (1<<3) -EIDLED_REVID2 EQU (1<<2) -EIDLED_REVID1 EQU (1<<1) -EIDLED_REVID0 EQU (1) - -; PHCON1 bits --------- -PHCON1_PRST EQU (1<<15) -PHCON1_PLOOPBK EQU (1<<14) -PHCON1_SPD100 EQU (1<<13) -PHCON1_ANEN EQU (1<<12) -PHCON1_PSLEEP EQU (1<<11) -PHCON1_r10 EQU (1<<10) -PHCON1_RENEG EQU (1<<9) -PHCON1_PFULDPX EQU (1<<8) -PHCON1_r7 EQU (1<<7) -PHCON1_r6 EQU (1<<6) -PHCON1_r5 EQU (1<<5) -PHCON1_r4 EQU (1<<4) -PHCON1_r3 EQU (1<<3) -PHCON1_r2 EQU (1<<2) -PHCON1_r1 EQU (1<<1) -PHCON1_r0 EQU (1) - -; PHSTAT1 bits -------- -PHSTAT1_r15 EQU (1<<15) -PHSTAT1_FULL100 EQU (1<<14) -PHSTAT1_HALF100 EQU (1<<13) -PHSTAT1_FULL10 EQU (1<<12) -PHSTAT1_HALF10 EQU (1<<11) -PHSTAT1_r10 EQU (1<<10) -PHSTAT1_r9 EQU (1<<9) -PHSTAT1_r8 EQU (1<<8) -PHSTAT1_r7 EQU (1<<7) -PHSTAT1_r6 EQU (1<<6) -PHSTAT1_ANDONE EQU (1<<5) -PHSTAT1_LRFAULT EQU (1<<4) -PHSTAT1_ANABLE EQU (1<<3) -PHSTAT1_LLSTAT EQU (1<<2) -PHSTAT1_r1 EQU (1<<1) -PHSTAT1_EXTREGS EQU (1) - -; PHANA bits ---------- -PHANA_ADNP EQU (1<<15) -PHANA_r14 EQU (1<<14) -PHANA_ADFAULT EQU (1<<13) -PHANA_r12 EQU (1<<12) -PHANA_ADPAUS1 EQU (1<<11) -PHANA_ADPAUS0 EQU (1<<10) -PHANA_r9 EQU (1<<9) -PHANA_AD100FD EQU (1<<8) -PHANA_AD100 EQU (1<<7) -PHANA_AD10FD EQU (1<<6) -PHANA_AD10 EQU (1<<5) -PHANA_ADIEEE4 EQU (1<<4) -PHANA_ADIEEE3 EQU (1<<3) -PHANA_ADIEEE2 EQU (1<<2) -PHANA_ADIEEE1 EQU (1<<1) -PHANA_ADIEEE0 EQU (1) - -; PHANLPA bits -------- -PHANLPA_LPNP EQU (1<<15) -PHANLPA_LPACK EQU (1<<14) -PHANLPA_LPFAULT EQU (1<<13) -PHANLPA_r12 EQU (1<<12) -PHANLPA_LPPAUS1 EQU (1<<11) -PHANLPA_LPPAUS0 EQU (1<<10) -PHANLPA_LP100T4 EQU (1<<9) -PHANLPA_LP100FD EQU (1<<8) -PHANLPA_LP100 EQU (1<<7) -PHANLPA_LP10FD EQU (1<<6) -PHANLPA_LP10 EQU (1<<5) -PHANLPA_LPIEEE4 EQU (1<<4) -PHANLPA_LPIEEE3 EQU (1<<3) -PHANLPA_LPIEEE2 EQU (1<<2) -PHANLPA_LPIEEE1 EQU (1<<1) -PHANLPA_LPIEEE0 EQU (1) - -; PHANE bits ---------- -PHANE_r15 EQU (1<<15) -PHANE_r14 EQU (1<<14) -PHANE_r13 EQU (1<<13) -PHANE_r12 EQU (1<<12) -PHANE_r11 EQU (1<<11) -PHANE_r10 EQU (1<<10) -PHANE_r9 EQU (1<<9) -PHANE_r8 EQU (1<<8) -PHANE_r7 EQU (1<<7) -PHANE_r6 EQU (1<<6) -PHANE_r5 EQU (1<<5) -PHANE_PDFLT EQU (1<<4) -PHANE_r3 EQU (1<<3) -PHANE_r2 EQU (1<<2) -PHANE_LPARCD EQU (1<<1) -PHANA_LPANABL EQU (1) - -; PHCON2 bits --------- -PHCON2_r15 EQU (1<<15) -PHCON2_r14 EQU (1<<14) -PHCON2_EDPWRDN EQU (1<<13) -PHCON2_r12 EQU (1<<12) -PHCON2_EDTHRES EQU (1<<11) -PHCON2_r10 EQU (1<<10) -PHCON2_r9 EQU (1<<9) -PHCON2_r8 EQU (1<<8) -PHCON2_r7 EQU (1<<7) -PHCON2_r6 EQU (1<<6) -PHCON2_r5 EQU (1<<5) -PHCON2_r4 EQU (1<<4) -PHCON2_r3 EQU (1<<3) -PHCON2_FRCLNK EQU (1<<2) -PHCON2_EDSTAT EQU (1<<1) -PHCON2_r0 EQU (1) - -; PHSTAT2 bits --------- -PHSTAT2_r15 EQU (1<<15) -PHSTAT2_r14 EQU (1<<14) -PHSTAT2_r13 EQU (1<<13) -PHSTAT2_r12 EQU (1<<12) -PHSTAT2_r11 EQU (1<<11) -PHSTAT2_r10 EQU (1<<10) -PHSTAT2_r9 EQU (1<<9) -PHSTAT2_r8 EQU (1<<8) -PHSTAT2_r7 EQU (1<<7) -PHSTAT2_r6 EQU (1<<6) -PHSTAT2_r5 EQU (1<<5) -PHSTAT2_PLRITY EQU (1<<4) -PHSTAT2_r3 EQU (1<<3) -PHSTAT2_r2 EQU (1<<2) -PHSTAT2_r1 EQU (1<<1) -PHSTAT2_r0 EQU (1) - -; PHSTAT3 bits -------- -PHSTAT3_r15 EQU (1<<15) -PHSTAT3_r14 EQU (1<<14) -PHSTAT3_r13 EQU (1<<13) -PHSTAT3_r12 EQU (1<<12) -PHSTAT3_r11 EQU (1<<11) -PHSTAT3_r10 EQU (1<<10) -PHSTAT3_r9 EQU (1<<9) -PHSTAT3_r8 EQU (1<<8) -PHSTAT3_r7 EQU (1<<7) -PHSTAT3_r6 EQU (1<<6) -PHSTAT3_r5 EQU (1<<5) -PHSTAT3_SPDDPX2 EQU (1<<4) -PHSTAT3_SPDDPX1 EQU (1<<3) -PHSTAT3_SPDDPX0 EQU (1<<2) -PHSTAT3_r1 EQU (1<<1) -PHSTAT3_r0 EQU (1) - -;------------------------------ internal defaults ---------------------------------- -;33.333Mhz clock out frequency -CLOCK_33_CLR EQU (ECON2_COCON3|ECON2_COCON2|ECON2_COCON1) ;clr mask -CLOCK_33_SET EQU (ECON2_COCON0) ;set mask -;25 MHz -CLOCK_25_CLR EQU (ECON2_COCON3|ECON2_COCON2|ECON2_COCON0) ;clr mask -CLOCK_25_SET EQU (ECON2_COCON1) ;set mask -;20 MHz -CLOCK_20_CLR EQU (ECON2_COCON3|ECON2_COCON2) ;clr mask -CLOCK_20_SET EQU (ECON2_COCON1|ECON2_COCON0) ;set mask -;16 MHz -CLOCK_16_CLR EQU (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) ;clr mask -CLOCK_16_SET EQU (ECON2_COCON2) ;set mask -;4 MHz (after reset) -CLOCK_4_CLR EQU (ECON2_COCON2) ;clr mask -CLOCK_4_SET EQU (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) ;set mask - -CLOCK_DEF_CLR EQU CLOCK_33_CLR -CLOCK_DEF_SET EQU CLOCK_33_SET diff --git a/Driver/enc624j6net/global.h b/Driver/enc624j6net/global.h deleted file mode 100644 index 2e22422..0000000 --- a/Driver/enc624j6net/global.h +++ /dev/null @@ -1,188 +0,0 @@ -#ifndef __GLOBAL_H -#define __GLOBAL_H - - /* system header files */ -#ifndef DEVICES_SANA2_H -#include -#endif -#ifndef EXEC_SEMAPHORES_H -#include -#endif -#ifndef EXEC_LISTS_H -#include -#endif -#ifndef EXEC_INTERRUPTS_H -#include -#endif -#ifndef EXEC_LIBRARIES_H -#include -#endif -#ifndef DOS_DOS_H -#include -#endif - -#ifndef __COMPILER_H -#include "compiler.h" -#endif -#ifndef __HW_H -#include "hw.h" -#endif - - -/****************************************************************************/ - - /* return val, cut to min or max if exceeding range */ -#define BOUNDS(val, min, max) ((val) <= (max) ? ((val) >= (min) ? (val) :\ - (min)) : (max)) - - /* memory economy is *everything* :-) */ -#define SERVERTASKNAME pb->pb_DevNode.lib_Node.ln_Name - -struct TrackRec { - struct MinNode tr_Link; - ULONG tr_PacketType; - ULONG tr_Count; - struct Sana2PacketTypeStats tr_Sana2PacketTypeStats; -}; - - -/****************************************************************************/ - - -typedef BOOL (* ASM BMFunc)(REG(a0) void *, REG(a1) void *, REG(d0) LONG); - -struct BufferManagement -{ - struct MinNode bm_Node; - BMFunc bm_CopyFromBuffer; - BMFunc bm_CopyToBuffer; -}; - - -/****************************************************************************/ - - - /* - ** sent to the server task after being CreateNewProc()ed - */ -struct ServerStartup -{ - struct Message ss_Msg; - struct PLIPBase *ss_PLIPBase; - BOOL ss_Error; - UBYTE ss_Pad[2]; -}; - - - -/****************************************************************************/ - - -enum { S2SS_TXERRORS, S2SS_COLLISIONS, S2SS_COUNT }; - - - /* - ** This count will record the number of packets that failed - ** to be transmitted. - */ -#define S2SS_PLIP_TXERRORS ((((S2WireType_Ethernet) & 0xffff) << 16) | (S2SS_TXERRORS)) - - /* - ** This count will record the number of line arbitration collisions - */ -#define S2SS_PLIP_COLLISIONS ((((S2WireType_Ethernet) & 0xffff) << 16) | (S2SS_COLLISIONS)) - - -/****************************************************************************/ - - -struct PLIPBase -{ - struct Library pb_DevNode; /* basic device structure */ - UBYTE pb_Unit; /* unit of 1st OpenDevice() */ - UBYTE pb_pad1; /* make the following long alligned */ - BPTR pb_SegList; /* pointer to code */ - struct Library * pb_VampireBase; /* used for sdnet only */ - struct Library * pb_ExpansionBase; - struct Library * pb_UtilityBase; - struct Library * pb_DOSBase; - struct Library * pb_SysBase; - struct ServerStartup * pb_Startup; /* main server proces */ - struct Process * pb_Server; /* main server proces */ - struct Task * pb_Task; /* used for server shutdown */ - ULONG pb_ServerStoppedSigMask; /* for shutdown */ - struct MsgPort * pb_ServerPort; /* for IOReq forwarding */ - struct Sana2DeviceStats pb_DevStats; /* SANA-2 wants this */ - struct Sana2SpecialStatRecord - pb_SpecialStats[S2SS_COUNT]; - volatile struct List pb_ReadList, /* the readers */ - pb_WriteList, /* the writers */ - pb_EventList, /* event tracking */ - pb_ReadOrphanList, /* for spurious packets */ - pb_TrackList, /* track type */ - pb_BufferManagement; /* Copy-In/Out */ - struct SignalSemaphore pb_EventListSem, /* protection for lists */ - pb_ReadListSem, - pb_WriteListSem, - pb_TrackListSem, - pb_ReadOrphanListSem, - pb_Lock; - - LONG pb_ExpansionPort; /* allocated expansion port */ - volatile UBYTE pb_Flags; /* see below */ - UBYTE pb_pad2; - volatile UWORD pb_ExtFlags; /* see below */ - UBYTE pb_CfgAddr[HW_ADDRFIELDSIZE]; - UBYTE pb_DefAddr[HW_ADDRFIELDSIZE]; - struct HWBase pb_HWBase; - struct HWFrame * pb_Frame; - ULONG pb_BPS; - ULONG pb_MTU; -}; - -#ifdef __SASC - /* - ** redirect all shared library bases to our device base. - */ -# define SysBase pb->pb_SysBase -# define DOSBase pb->pb_DOSBase -# define UtilityBase pb->pb_UtilityBase -# define VampireBase pb->pb_VampireBase -# define ExpansionBase pb->pb_ExpansionBase - /* - ** This macro declares a local variable which temporary gets - ** SysBase directly from AbsExecBase. - */ -# define LOCALSYSBASE struct { void *pb_SysBase; } *pb = (void*)0x4 - /* - ** Use this macro as argument for all functions which need to - ** have access to your data base. - */ -# define BASEPTR struct PLIPBase *pb -#else -# error Please define library bases for your compiler -#endif - - /* - ** Values for PLIPBase->pb_Flags - ** Note that the Flags field is intentionally only 8 bits wide so that - ** the ASM parts may use the bit functions. - */ -#define PLIPB_REPLYSS 0 /* server-startup must be replied */ -#define PLIPB_EXCLUSIVE 1 /* current opener is exclusive */ -#define PLIPB_OFFLINE 2 /* currently not online (sic!) */ -#define PLIPB_SERVERSTOPPED 3 /* set by server while passing away */ - -#define PLIPF_REPLYSS (1<pb_ExtFlags - */ -#define PLIPEB_NOSPECIALSTATS 0 /* don't report special stats */ -#define PLIPEF_NOSPECIALSTATS (1< -#include "global.h" - -int main(int argc, char **argv) -{ - printf("libsize equ %d\n", sizeof(struct PLIPBase)); - return 0; -} diff --git a/Driver/enc624j6net/libsize.exe b/Driver/enc624j6net/libsize.exe deleted file mode 100755 index 3d955ec600b0233846bb9c685ae3464244cf0d94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6428 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 AZvX%Q diff --git a/Driver/enc624j6net/rt.asm b/Driver/enc624j6net/rt.asm deleted file mode 100644 index f9caf5e..0000000 --- a/Driver/enc624j6net/rt.asm +++ /dev/null @@ -1,88 +0,0 @@ - IFND EXEC_NODES_I - INCLUDE "exec/nodes.i" - ENDC - IFND EXEC_RESIDENT_I - INCLUDE "exec/resident.i" - ENDC - IFND EXEC_INITIALIZERS_I - INCLUDE "exec/initializers.i" - ENDC - IFND EXEC_LIBRARIES_I - INCLUDE "exec/libraries.i" - ENDC - IFND DOS_DOS_I - INCLUDE "dos/dos.i" - ENDC - - include "libsize.auto.i" - include "dev_info.i" - - xref _DevInit - - xref _DevOpen - xref _DevClose - xref _DevExpunge - xref _DevExtFunc - xref _DevBeginIO - xref _DevAbortIO - - section "text",code - - moveq #RETURN_FAIL,d0 - rts - -romtag: - dc.w RTC_MATCHWORD - dc.l romtag - dc.l endskip - dc.b RTF_AUTOINIT - dc.b DEVICE_VERSION - dc.b NT_DEVICE - dc.b 0 ; priority - dc.l devname - dc.l devid - dc.l inittable - -devname: - DEVICE_NAME - dc.b ".device",0 - dc.b 0,'$VER: ' -devid: - DEVICE_NAME - dc.b " " - DEVICE_VER - dc.b " (" - DEVICE_DATE - dc.b ")",13,10,0 - - cnop 0,2 - -inittable: - dc.l libsize - dc.l functable,datatable,_DevInit - -functable: - dc.l _DevOpen - dc.l _DevClose - dc.l _DevExpunge - dc.l stub - dc.l _DevBeginIO - dc.l _DevAbortIO - dc.l -1 - -datatable: - INITBYTE LN_TYPE,NT_DEVICE - INITLONG LN_NAME,devname - INITBYTE LIB_FLAGS,LIBF_SUMUSED!LIBF_CHANGED - INITWORD LIB_VERSION,DEVICE_VERSION - INITWORD LIB_REVISION,DEVICE_REVISION - INITLONG LIB_IDSTRING,devid - dc.w 0 - -stub: - moveq #0,d0 - rts - -endskip: - - END diff --git a/Driver/enc624j6net/server.c b/Driver/enc624j6net/server.c deleted file mode 100755 index d38f371..0000000 --- a/Driver/enc624j6net/server.c +++ /dev/null @@ -1,780 +0,0 @@ -#define DEBUG 0 - -/*F*/ /* includes */ -#ifndef CLIB_EXEC_PROTOS_H -#include -#include -#endif -#ifndef CLIB_DOS_PROTOS_H -#include -#include -#endif - -#ifndef EXEC_MEMORY_H -#include -#endif - -#ifndef DEVICES_SANA2_H -#include -#endif - -#ifndef CLIB_TIME_PROTOS_H -#include -#include -#endif - -#ifndef _STRING_H -#include -#endif - -#ifndef __GLOBAL_H -#include "global.h" -#endif -#ifndef __DEBUG_H -#include "debug.h" -#endif -#ifndef __COMPILER_H -#include "compiler.h" -#endif -#ifndef __HW_H -#include "hw.h" -#endif -/*E*/ - -/*F*/ /* defines, types and enums */ - - /* - ** return codes for write_frame() - */ -typedef enum { AW_OK, AW_BUFFER_ERROR, AW_ERROR } AW_RESULT; - - /* - ** definitions - */ -#define SINGLE_RW 1 -#define MAX_READ_PACKAGE 128 - - -/*E*/ -/*F*/ /* imports */ - /* external functions */ -GLOBAL VOID dotracktype(BASEPTR, ULONG type, ULONG ps, ULONG pr, ULONG bs, ULONG br, ULONG pd); -GLOBAL VOID DevTermIO(BASEPTR, struct IOSana2Req *ios2); -/*E*/ -/*F*/ /* exports */ -PUBLIC VOID SAVEDS ServerTask(void); -/*E*/ -/*F*/ /* private */ -PRIVATE struct PLIPBase *startup(void); -PUBLIC REGARGS VOID DoEvent(BASEPTR, long event); -PRIVATE VOID readargs(BASEPTR); -PRIVATE BOOL init(BASEPTR); -PRIVATE REGARGS BOOL goonline(BASEPTR); -PRIVATE REGARGS VOID gooffline(BASEPTR); -PUBLIC REGARGS AW_RESULT write_frame(BASEPTR, struct IOSana2Req *ios2); -PRIVATE REGARGS VOID dowritereqs(BASEPTR); -PRIVATE REGARGS VOID doreadreqs(BASEPTR); -PRIVATE REGARGS VOID dos2reqs(BASEPTR); -/*E*/ - - /* - ** functions to go online/offline - */ -/*F*/ PRIVATE REGARGS VOID rejectpackets(BASEPTR) -{ - struct IOSana2Req *ios2; - - ObtainSemaphore(&pb->pb_WriteListSem); - while(ios2 = (struct IOSana2Req *)RemHead((struct List*)&pb->pb_WriteList)) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - DevTermIO(pb,ios2); - } - ReleaseSemaphore(&pb->pb_WriteListSem); - - ObtainSemaphore(&pb->pb_ReadListSem); - while(ios2 = (struct IOSana2Req *)RemHead((struct List*)&pb->pb_ReadList)) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - DevTermIO(pb,ios2); - } - ReleaseSemaphore(&pb->pb_ReadListSem); - - ObtainSemaphore(&pb->pb_ReadOrphanListSem); - while(ios2 = (struct IOSana2Req *)RemHead((struct List*)&pb->pb_ReadOrphanList)) - { - ios2->ios2_Req.io_Error = S2ERR_OUTOFSERVICE; - ios2->ios2_WireError = S2WERR_UNIT_OFFLINE; - DevTermIO(pb,ios2); - } - ReleaseSemaphore(&pb->pb_ReadOrphanListSem); -} -/*E*/ - -/*F*/ PRIVATE REGARGS BOOL goonline(BASEPTR) -{ - BOOL rc = TRUE; - - d(("trying to go online\n")); - - if (pb->pb_Flags & PLIPF_OFFLINE) - { - if (!hw_attach(pb)) - { - d(("error going online\n")); - rc = FALSE; - } - else - { - struct HWBase *hwb = &pb->pb_HWBase; - - /* send magic */ - hw_send_magic_pkt(pb, HW_MAGIC_ONLINE); - - GetSysTime(&pb->pb_DevStats.LastStart); - pb->pb_Flags &= ~PLIPF_OFFLINE; - DoEvent(pb, S2EVENT_ONLINE); - d(("i'm now online!\n")); - } - } - - return rc; -} -/*E*/ -/*F*/ PRIVATE REGARGS VOID gooffline(BASEPTR) -{ - if (!(pb->pb_Flags & PLIPF_OFFLINE)) - { - hw_send_magic_pkt(pb, HW_MAGIC_OFFLINE); - - hw_detach(pb); - - pb->pb_Flags |= PLIPF_OFFLINE; - - DoEvent(pb, S2EVENT_OFFLINE); - } - d(("ok!\n")); -} -/*E*/ - - /* - ** SANA-2 Event management - */ -/*F*/ PUBLIC REGARGS VOID DoEvent(BASEPTR, long event) -{ - struct IOSana2Req *ior, *ior2; - - d(("event is %lx\n",event)); - - ObtainSemaphore(&pb->pb_EventListSem ); - - for(ior = (struct IOSana2Req *) pb->pb_EventList.lh_Head; - ior2 = (struct IOSana2Req *) ior->ios2_Req.io_Message.mn_Node.ln_Succ; - ior = ior2 ) - { - if (ior->ios2_WireError & event) - { - Remove((struct Node*)ior); - DevTermIO(pb, ior); - } - } - - ReleaseSemaphore(&pb->pb_EventListSem ); -} -/*E*/ - -/* moved this function out to hw.c for the ENC624 variant */ -#ifndef ENC624_OPT - /* - ** writing packets - */ -/*F*/ PUBLIC REGARGS AW_RESULT write_frame(BASEPTR, struct IOSana2Req *ios2) -{ - AW_RESULT rc; - struct HWFrame *frame = pb->pb_Frame; - struct BufferManagement *bm; - UBYTE *frame_ptr; - - d(("write: type %08lx, size %ld\n",ios2->ios2_PacketType, - ios2->ios2_DataLength)); - - /* copy raw frame: simply overwrite ethernet frame part of plip packet */ - if(ios2->ios2_Req.io_Flags & SANA2IOF_RAW) { - frame->hwf_Size = ios2->ios2_DataLength; - frame_ptr = &frame->hwf_DstAddr[0]; - } else { - frame->hwf_Size = ios2->ios2_DataLength + HW_ETH_HDR_SIZE; - frame->hwf_Type = (USHORT)ios2->ios2_PacketType; - memcpy(frame->hwf_SrcAddr, pb->pb_CfgAddr, HW_ADDRFIELDSIZE); - memcpy(frame->hwf_DstAddr, ios2->ios2_DstAddr, HW_ADDRFIELDSIZE); - frame_ptr = (UBYTE *)(frame + 1); - } - - bm = (struct BufferManagement *)ios2->ios2_BufferManagement; - - if (!(*bm->bm_CopyFromBuffer)(frame_ptr, - ios2->ios2_Data, ios2->ios2_DataLength)) - { - rc = AW_BUFFER_ERROR; - } - else - { - d8(("+hw_send\n")); - rc = hw_send_frame(pb, frame) ? AW_OK : AW_ERROR; - d8(("-hw_send\n")); -#if DEBUG&8 - if(rc==AW_ERROR) d8(("Error sending packet (size=%ld)\n", (LONG)pb->pb_Frame->hwf_Size)); -#endif - } - - return rc; -} -/*E*/ -#endif /* ENC624_OPT */ - -/*F*/ PRIVATE REGARGS VOID dowritereqs(BASEPTR) -{ - struct IOSana2Req *currentwrite, *nextwrite; - AW_RESULT code; - - ObtainSemaphore(&pb->pb_WriteListSem); - -#if 0 - /* test only */ - currentwrite = (struct IOSana2Req *)pb->pb_WriteList.lh_Head; - if( currentwrite->ios2_Req.io_Message.mn_Node.ln_Succ ) -#else - for(currentwrite = (struct IOSana2Req *)pb->pb_WriteList.lh_Head; - nextwrite = (struct IOSana2Req *) currentwrite->ios2_Req.io_Message.mn_Node.ln_Succ; - currentwrite = nextwrite ) -#endif - { - code = write_frame(pb, currentwrite); - - if (code == AW_BUFFER_ERROR) /* BufferManagement callback error */ - { - d(("buffer error\n")); - DoEvent(pb, S2EVENT_ERROR | S2EVENT_BUFF | S2EVENT_SOFTWARE); - pb->pb_SpecialStats[S2SS_TXERRORS].Count++; - d(("pb->pb_SpecialStats[S2SS_TXERRORS].Count = %ld\n",pb->pb_SpecialStats[S2SS_TXERRORS].Count)); - currentwrite->ios2_Req.io_Error = S2ERR_SOFTWARE; - currentwrite->ios2_WireError = S2WERR_BUFF_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - else if (code == AW_ERROR) - { - /* - ** this is a real line error, upper levels (e.g. Internet TCP) have - ** to care for reliability! - */ - d(("error while transmitting packet\n")); - DoEvent(pb, S2EVENT_ERROR | S2EVENT_TX | S2EVENT_HARDWARE); - pb->pb_SpecialStats[S2SS_TXERRORS].Count++; - d(("pb->pb_SpecialStats[S2SS_TXERRORS].Count = %ld\n",pb->pb_SpecialStats[S2SS_TXERRORS].Count)); - currentwrite->ios2_Req.io_Error = S2ERR_TX_FAILURE; - currentwrite->ios2_WireError = S2WERR_GENERIC_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - else /*if (code == AW_OK)*/ /* well done! */ - { - d(("packet transmitted successfully\n")); - pb->pb_DevStats.PacketsSent++; - dotracktype(pb, (ULONG) pb->pb_Frame->hwf_Type, 1, 0, currentwrite->ios2_DataLength, 0, 0); - currentwrite->ios2_Req.io_Error = S2ERR_NO_ERROR; - currentwrite->ios2_WireError = S2WERR_GENERIC_ERROR; - Remove((struct Node*)currentwrite); - DevTermIO(pb, currentwrite); - } - } - - ReleaseSemaphore(&pb->pb_WriteListSem); -} -/*E*/ - -PRIVATE REGARGS BOOL read_frame(struct IOSana2Req *req, struct HWFrame *frame) -{ - int i; - BOOL broadcast; - LONG datasize; - BYTE *frame_ptr; - struct BufferManagement *bm; - BOOL ok; - - /* deliver a raw frame: copy data right into ethernet header */ - if(req->ios2_Req.io_Flags & SANA2IOF_RAW) { - frame_ptr = &frame->hwf_DstAddr[0]; - datasize = frame->hwf_Size; - req->ios2_Req.io_Flags = SANA2IOF_RAW; - } - else { - frame_ptr = (UBYTE *)(frame + 1); - datasize = frame->hwf_Size - HW_ETH_HDR_SIZE; - req->ios2_Req.io_Flags = 0; - } - - req->ios2_DataLength = datasize; - - /* copy packet buffer */ - bm = (struct BufferManagement *)req->ios2_BufferManagement; - if (!(*bm->bm_CopyToBuffer)(req->ios2_Data, frame_ptr, datasize)) - { - d(("CopyToBuffer: error\n")); - req->ios2_Req.io_Error = S2ERR_SOFTWARE; - req->ios2_WireError = S2WERR_BUFF_ERROR; - ok = FALSE; - } - else - { - req->ios2_Req.io_Error = req->ios2_WireError = 0; - ok = TRUE; - } - - /* now extract addresses from ethernet header */ - memcpy(req->ios2_SrcAddr, frame->hwf_SrcAddr, HW_ADDRFIELDSIZE); - memcpy(req->ios2_DstAddr, frame->hwf_DstAddr, HW_ADDRFIELDSIZE); - - /* need to set broadcast flag? */ - broadcast = TRUE; - for(i=0;ihwf_DstAddr[i] != 0xff) { - broadcast = FALSE; - break; - } - } - if(broadcast) { - req->ios2_Req.io_Flags |= SANA2IOF_BCAST; - } - - /* store packet type */ - req->ios2_PacketType = (USHORT)frame->hwf_Type; - - return ok; -} - - /* - ** reading packets - */ -/*F*/ PRIVATE REGARGS VOID doreadreqs(BASEPTR) -{ - LONG datasize; - struct IOSana2Req *got; - ULONG pkttyp; - BOOL rv,ok; - struct HWFrame *frame = pb->pb_Frame; - -/* while(hw_recv_pending(pb)){ */ - while(1){ -/* if(1){ */ - d8(("+hw_recv\n")); - rv = hw_recv_frame(pb, frame); - d8(("-hw_recv\n")); - if (rv) - { - pb->pb_DevStats.PacketsReceived++; - - pkttyp = frame->hwf_Type; - -#if 0 - /* perform internal loop back of magic packets of type 0xfffd */ - if(pkttyp == HW_MAGIC_LOOPBACK) { - d(("loop back packet (size %ld)\n",frame->hwf_Size)); - hw_send_frame(pb, frame); - return; - } - - /* plipbox requests online magic (again) */ - if(pkttyp == HW_MAGIC_ONLINE) { - d(("request online magic")); - hw_send_magic_pkt(pb, HW_MAGIC_ONLINE); - return; - } -#endif - - datasize = frame->hwf_Size - HW_ETH_HDR_SIZE; - - dotracktype(pb, pkttyp, 0, 1, 0, datasize, 0); - - d(("packet %08lx, size %ld received\n",pkttyp,datasize)); - ok = FALSE; - ObtainSemaphore(&pb->pb_ReadListSem); - /* traverse the list of read-requests */ - for(got = (struct IOSana2Req *)pb->pb_ReadList.lh_Head; - got->ios2_Req.io_Message.mn_Node.ln_Succ; - got = (struct IOSana2Req *)got->ios2_Req.io_Message.mn_Node.ln_Succ ) - { - /* check if this one requests for the new packet we got */ - if (got->ios2_PacketType == pkttyp ) - { - Remove((struct Node*)got); - ok =TRUE; - break; - } - } - ReleaseSemaphore(&pb->pb_ReadListSem); - - if(!ok){ - /* If no one wanted this packet explicitely, there is one chance - ** left: somebody waiting for orphaned packets. If this fails, too, - ** we will drop it. - */ - d(("unknown packet\n")); - - pb->pb_DevStats.UnknownTypesReceived++; - - ObtainSemaphore(&pb->pb_ReadOrphanListSem); - got = (struct IOSana2Req *)RemHead((struct List*)&pb->pb_ReadOrphanList); - ReleaseSemaphore(&pb->pb_ReadOrphanListSem); - - if (got) - { - d(("orphan read\n")); - ok=TRUE; - } - } - - if(ok){ - /* deliver packet */ - ok = read_frame(got, frame); - if(!ok) { - DoEvent(pb, S2EVENT_ERROR | S2EVENT_BUFF | S2EVENT_SOFTWARE); - } - - d(("packet received, satisfying S2Request\n")); - DevTermIO(pb, got); - } - else{ - /* throw it away*/ - dotracktype(pb, pkttyp, 0, 0, 0, 0, 1); - d(("packet thrown away...\n")); - } - /* got = NULL; */ - } - else - { -#if 1 - break; -#else - d(("Error receiving (%ld. len=%ld)\n", rv, frame->hwf_Size)); - /* something went wrong during receipt */ - DoEvent(pb, S2EVENT_HARDWARE | S2EVENT_ERROR | S2EVENT_RX); - got = NULL; - pb->pb_DevStats.BadData++; -#endif - } - } -} -/*E*/ - - - /* - ** 2nd level device command dispatcher (~SANA2IOF_QUICK) - */ -/*F*/ PRIVATE REGARGS VOID dos2reqs(BASEPTR) -{ - struct IOSana2Req *ios2; - - /* - ** Every pending IO message will be GetMsg()'ed and processed. At the - ** end of the loop it will be DevTermIO()'ed back to the sender, - ** _but_only_if_ it is non-NULL. In such cases the message has been - ** put in a separate queue to be DevTermIO()'ed later (i.e. CMD_WRITEs - ** and similar stuff). - ** You find the same mimique in the 1st level dispatcher (device.c) - */ - while(ios2 = (struct IOSana2Req *)GetMsg(pb->pb_ServerPort)) - { - d(("sana2req %ld from serverport\n", ios2->ios2_Req.io_Command)); - - switch (ios2->ios2_Req.io_Command) - { - case S2_ONLINE: - if (!goonline(pb)) - { - ios2->ios2_Req.io_Error = S2ERR_NO_RESOURCES; - ios2->ios2_WireError = S2WERR_GENERIC_ERROR; - } - break; - - case S2_OFFLINE: - gooffline(pb); - rejectpackets(pb); /* reject all pending requests */ - break; - - case S2_CONFIGINTERFACE: - /* copy address from src addr */ - memcpy(pb->pb_CfgAddr, ios2->ios2_SrcAddr, HW_ADDRFIELDSIZE); - - /* if already online then first go offline */ - if(!(pb->pb_Flags & PLIPF_OFFLINE)) { - gooffline(pb); - } - - /* now go online */ - if (!goonline(pb)) - { - ios2->ios2_Req.io_Error = S2ERR_NO_RESOURCES; - ios2->ios2_WireError = S2WERR_GENERIC_ERROR; - } - break; - } - - if (ios2) DevTermIO(pb,ios2); - } -} -/*E*/ - - /* - ** startup,initialisation and termination functions - */ -/*F*/ PRIVATE struct PLIPBase *startup(void) -{ - struct ServerStartup *ss; - struct Process *we; - struct PLIPBase *base; - LOCALSYSBASE; - - we = (struct Process*)FindTask(NULL); - - d(("waiting for startup msg...\n")); - WaitPort(&we->pr_MsgPort); - ss = (struct ServerStartup *)GetMsg(&we->pr_MsgPort); - base = ss->ss_PLIPBase; - base->pb_Startup = ss; - d(("go startup msg at %lx, PLIPBase is %lx\n", ss, ss->ss_PLIPBase)); - - /* we will keep the startup message, to inform mother if we - ** really could come up or if we failed to obtain some - ** resource. - */ - return base; -} -/*E*/ - -#define PLIP_MINPRIORITY -128 -#define PLIP_MAXPRIORITY 127 - -/*F*/ PRIVATE VOID readargs(BASEPTR) -{ - struct RDArgs *rda; - struct TemplateConfig args = { 0 }; - BPTR cfginput, oldinput; - - d(("entered\n")); - - hw_config_init(pb); - - if (cfginput = Open(CONFIGFILE, MODE_OLDFILE)) - { - d(("opened cfg\n")); - oldinput = SelectInput(cfginput); - rda = ReadArgs(COMMON_TEMPLATE TEMPLATE, (LONG *)&args, NULL); - if(rda) - { - d(("got args\n")); - - /* common options */ - if (args.common.priority) - SetTaskPri((struct Task*)pb->pb_Server, - BOUNDS(*args.common.priority, PLIP_MINPRIORITY, PLIP_MAXPRIORITY)); - - if (args.common.nospecialstats) - pb->pb_ExtFlags |= PLIPEF_NOSPECIALSTATS; - - if(args.common.mtu) - pb->pb_MTU = *args.common.mtu; - - if(args.common.bps) - pb->pb_BPS = *args.common.bps; - - /* special config */ - hw_config_update(pb, &args); - - FreeArgs(rda); - } - - Close(SelectInput(oldinput)); - } - - /* dump default config options */ - d(("pri %ld, flags %08lx\n", (LONG)pb->pb_Server->pr_Task.tc_Node.ln_Pri, pb->pb_Flags)); - hw_config_dump(pb); - - d(("left\n")); -} -/*E*/ -/*F*/ PRIVATE BOOL init(BASEPTR) -{ - BOOL rc = FALSE; - - readargs(pb); - - if ((pb->pb_ServerPort = CreateMsgPort())) - { - /* init hardware */ - if(hw_init(pb)) { - ULONG size = (ULONG)sizeof(struct HWFrame); - - if( pb->pb_MTU > 1518 ) - size += pb->pb_MTU + 16; - else size += 1518 + 4; - - d(("allocating 0x%lx/%ld bytes frame buffer\n",size,size)); - if ((pb->pb_Frame = AllocVec(size, MEMF_CLEAR|MEMF_ANY))) - { - rc = TRUE; - } - else - { - d(("couldn't allocate frame buffer\n")); - } - } - else - { - d(("hw init failed\n")); - } - } - else - { - d(("no server port\n")); - } - - d(("left %ld\n",rc)); - - return rc; -} -/*E*/ -/*F*/ PRIVATE VOID cleanup(BASEPTR) -{ - struct BufferManagement *bm; - - gooffline(pb); - - while(bm = (struct BufferManagement *)RemHead((struct List *)&pb->pb_BufferManagement)) - FreeVec(bm); - - if (pb->pb_Frame) FreeVec(pb->pb_Frame); - - hw_cleanup(pb); - - if (pb->pb_ServerPort) DeleteMsgPort(pb->pb_ServerPort); - - if (pb->pb_Flags & PLIPF_REPLYSS) - { - Forbid(); - ReplyMsg((struct Message*)pb->pb_Startup); - } -} -/*E*/ - - /* - ** entry point, mainloop - */ -/*F*/ PUBLIC VOID SAVEDS ServerTask(void) -{ - BASEPTR; - - d(("server running\n")); - - if (pb = startup()) - { - /* if we fail to allocate all resources, this flag reminds cleanup() - ** to ReplyMsg() the startup message - */ - pb->pb_Flags |= PLIPF_REPLYSS; - - if (init(pb)) - { - ULONG recv, portsigmask, recvsigmask, wmask,specialmask; - LONG haverec; - BOOL running; - struct IOSana2Req *wr; - - /* Ok, we are fine and will tell this mother personally :-) */ - pb->pb_Startup->ss_Error = 0; - /* don't forget this, or we will have to keep a warm place */ - /* in our coffin for the system */ - pb->pb_Flags &= ~PLIPF_REPLYSS; - ReplyMsg((struct Message*)pb->pb_Startup); - - portsigmask = 1 << pb->pb_ServerPort->mp_SigBit; - recvsigmask = hw_recv_sigmask(pb); - specialmask = portsigmask | SIGBREAKF_CTRL_C; - - wmask = SIGBREAKF_CTRL_F | SIGBREAKF_CTRL_C | portsigmask | recvsigmask; - - /* main loop of server task */ - d(("--- server main loop: %08lx ---\n", wmask)); - for(running=TRUE;running;) - { - d4(("** wmask is 0x%08lx\n", wmask)); - - /* send packets if any */ - d2(("*+ do_write\n")); - wr = (struct IOSana2Req *)pb->pb_WriteList.lh_Head; - if( wr->ios2_Req.io_Message.mn_Node.ln_Succ ) - { - dowritereqs(pb); - } - d2(("*- do_write\n")); - - /* if no recv is pending then wait for incoming signals */ - haverec = hw_recv_pending(pb); - recv = 0; - if( !haverec ) /* if( (!haverec) && (!wr->ios2_Req.io_Message.mn_Node.ln_Succ) ) */ - { - d2(("**> wait\n")); - hw_enable_global_int(pb); - - /* we've got some spare time here: check for link change condition */ - hw_check_link_change(pb); - - recv = Wait(wmask); - d2(("**> wait: got 0x%08lx\n", recv)); - /*haverec = hw_recv_pending(pb);*/ - } - - /* accept pending receive and start reading */ - d2(("*+ do_read\n")); - doreadreqs(pb); - d2(("*- do_read\n")); - - if( recv & specialmask ) - { - /* handle SANA-II send requests */ - if (recv & portsigmask) - { - d(("SANA-II request(s)\n")); - dos2reqs(pb); - recv &= ~portsigmask; - } - /* stop server task */ - if (recv & SIGBREAKF_CTRL_C) - { - d(("received break signal\n")); - running = FALSE; - } - } - } /*main loop of server task*/ - } - else - d(("init() failed\n")); - - d(("--- server exit main loop ---\n")); - cleanup(pb); - - /* Exec will enable it's scheduler after we're dead. */ - Forbid(); - /* signal mother we're done */ - if (pb->pb_ServerStoppedSigMask) - Signal(pb->pb_Task, pb->pb_ServerStoppedSigMask); - pb->pb_Flags |= PLIPF_SERVERSTOPPED; - } - else - d(("no startup packet\n")); -} -/*E*/ - diff --git a/Driver/enc624j6net/smakefile b/Driver/enc624j6net/smakefile deleted file mode 100644 index 851a8b0..0000000 --- a/Driver/enc624j6net/smakefile +++ /dev/null @@ -1,256 +0,0 @@ -#sc:c/smake -# -##################################################################### -# -# $VER: smakefile 0.8 (09-Jan-2017) -# Henryk Richter -# -# based on Magplip build file -##################################################################### -# -DEVICE_DATE = 16.04.2018 -DEVICE_VERSION = 0 -DEVICE_REVISION = 3 - -# see below for EXTRAOBJ, disable for plipbox, enable for sdnet/enc624j6net -HWSRCDIR = enc624j6net -DEVICE_NAME = enc624j6net -DEFS = DEFINE PROTO_ENC624NET=1 - -# direct SANA-II to HW Write without intermediate buffer -# don`t enable on current (Feb2018) CPLD, byte swap issue -# JIC after 25-Apr-2018 will fix the byte swap on byte write -#DEFINE ENC624_OPT=1 -# quick hack/test to write directly - didn't work out well for me -#DEFINE DIRECT_WRITE=1 - -##################################################################### -# -# I keep various include trees, so for this project I directly reference -# the SAS/C installation for include paths -# The ASM stuff assumes the library offsets in "lvo/*", change if -# desired -# -LIBS = LIB sc:LIB/amiga.lib LIB sc:lib/sc.lib LIB sc:lib/debug.lib -CINCLUDES = INCDIR="sc:include" INCDIR="sc:netinclude" INCDIR="$(HWSRCDIR)" -#ASMINCLUDES = INCDIR="INCLUDE:" $(CINCLUDES) -ASMINCLUDES = -Isc:include -I$(HWSRCDIR) -CPUSUFFIX = 020 # 020 030 040 060 (note: asm sources use 020+ code in some places) -CPUCCOPT = CPU=68$(CPUSUFFIX) -CP = C:Copy -MV = C:Rename -RM = C:Delete >NIL: -LD = sc:c/slink -CC = sc:c/sc -AS = vasmm68k_mot -MAKE = sc:c/smake -ECHO = Echo -SUFFIX = $(PRSUFFIX)$(CPUSUFFIX) -# -##################################################################### - -##################################################################### -# -# naming -# -DEVICE_DIR = build -BASENAME = $(DEVICE_NAME) -NAME = $(DEVICE_NAME).device -TESTNAME = enc624j6test - -# -##################################################################### - - -##################################################################### -# -# assembler/compiler flags -# -# this applies to normal and optimized compilation: -# -STDFLAGS = $(CINCLUDES) NOMULTIPLEINCLUDES ERRREXX COMMENTNEST NOSTKCHK NOCHKABORT\ - SMALLCODE SMALLDATA VERBOSE NOICONS STRICT ANSI $(DEFS) -# -# this applies only to normal compilation: -# -NORMCFLAGS = $(STDFLAGS) -# -# this applies only to optimized compilation: -# -OPTCFLAGS = $(STDFLAGS) $(CPUCCOPT) PARAMETERS=REGISTERS OPT OPTTIME OPTINLINE\ - OPTSCHEDULE STRINGMERGE STRUCTUREEQUIVALENCE -# -# this applies to assembler compilation -# -#AFLAGS = CPU=68020 VERBOSE DEFINE $(PROTOCOL)PLIP=1 -AFLAGS = -Fhunk -devpac -m68020 -quiet -# -##################################################################### - -##################################################################### -# -# linkage flags -# -#LDFLAGS = NOICONS SC MAP bla.map $(LIBS) TO -LDFLAGS = NOICONS SC $(LIBS) TO -OPTLDFLAGS = NOICONS SC SD ND $(LIBS) TO -# -##################################################################### - -##################################################################### -# -# the object files -# -# these are extra files for ENC624J6Net, disable for plipbox build -EXTRAOBJ=$(HWSRCDIR)/enc624j6l.o $(HWSRCDIR)/intervaltimer.o - -EXTRAOBJOPT=$(HWSRCDIR)/enc624j6l.o $(HWSRCDIR)/intervaltimer.o - -# these are for Plipbox build -#EXTRAOBJ=$(HWSRCDIR)/hwpar.o -#EXTRAOBJOPT=$(HWSRCDIR)/hwpar.o -# -# device support files -NORMOBJ=rt.o device.no server.no track.no $(HWSRCDIR)/hw.no $(EXTRAOBJ) -OPTOBJ=rt.o device.opt$(CPUSUFFIX) server.opt$(CPUSUFFIX) track.opt$(CPUSUFFIX) \ - $(HWSRCDIR)/hw.opt$(CPUSUFFIX) $(EXTRAOBJOPT) -# -# Auto-generated includes -DEVINFO_INC=dev_info.i -DEVINFO_HINC=dev_info.h -BUILDDEPS=libsize.auto.i $(DEVINFO_INC) $(DEVINFO_HINC) -# -# -##################################################################### - -##################################################################### -# -# rules -# -# compile a file normally -# -.c.no: $(BUILDDEPS) - $(CC) $(NORMCFLAGS) OBJECTNAME $@ $*.c - -# -# compile a file optimizing -# -.c.opt$(SUFFIX): $(BUILDDEPS) - $(CC) $(OPTCFLAGS) OBJECTNAME $@ $*.c - # DISASM $@.disas.s - -# -# assemble a file -# -#.asm.o: $(BUILDDEPS) -# $(AS) $(AFLAGS) OBJECTNAME $@ $*.asm -.asm.o: $(BUILDDEPS) - $(AS) $(AFLAGS) $(ASMINCLUDES) -o $@ $*.asm -.s.o: $(BUILDDEPS) - $(AS) $(AFLAGS) $(ASMINCLUDES) -o $@ $*.asm -# -##################################################################### - -##################################################################### -# -# targets -# -help: - -@Echo "Usage:" - -@Echo "To make an unoptimized version" - -@Echo " $(MAKE) all" - -@Echo "To make an optimized version" - -@Echo " $(MAKE) all_opt" - -@Echo "To %remove all intermediate files" - -@Echo " %$(MAKE) clean" - -all: $(DEVICE_DIR)/$(NAME) -# $(TESTNAME) -all_opt: $(DEVICE_DIR)/$(NAME).$(CPUSUFFIX) - -clean_norm: - -@$(RM) *.o - -@$(RM) *.no - -@$(RM) $(DEVICE_DIR)/$(NAME) - -@$(RM) $(HWSRCDIR)/*.no - -@$(RM) $(HWSRCDIR)/*.o - -clean_opt: - -@$(RM) *.o - -@$(RM) *.opt* $(HWSRCDIR)/*.opt* - -@$(RM) $(HWSRCDIR)/*.o $(EXTRAOBJOPT) - -@$(RM) $(DEVICE_DIR)/$(NAME).$(CPUSUFFIX) - -clean: clean_norm clean_opt - -@$(RM) $(DEVINFO_HINC) $(DEVINFO_INC) $(EXTRAOBJ) libsize.auto.i libsize.exe - -$(DEVICE_DIR)/$(NAME).$(CPUSUFFIX): $(OPTOBJ) $(BUILDDEPS) - $(LD) $(OPTOBJ) $(OPTLDFLAGS) $@ - -$(DEVICE_DIR)/$(NAME): $(NORMOBJ) - $(LD) $(NORMOBJ) $(LDFLAGS) $@ - -$(TESTNAME) : $(NORMOBJ) sdnettest.no - $(LD) sc:lib/c.o sdnettest.no $(NORMOBJ) LIB sc:lib/scnb.lib $(LDFLAGS) $@ - -# -# libsize.auto.i is used in rt.asm, this is an extra step (needing an AmigaOS -# environment) but ensures that the hwbase and plipbase sizes are "current" -# -libsize.auto.i : libsize.exe - -@libsize.exe >$@ - -libsize.exe : libsize.c global.h $(HWSRCDIR)/hwbase.h - -@$(CC) $(NORMCFLAGS) OBJECTNAME t:libsize.o libsize.c - -@$(LD) sc:lib/c.o t:libsize.o LIB sc:lib/scnb.lib $(LDFLAGS) $@ - -@$(RM) t:libsize.o - -# --- dev_info.i --- -$(DEVINFO_INC): smakefile - @Echo "DEVICE_NAME MACRO" > $(DEVINFO_INC) - @Echo " dc.b '$(DEVICE_NAME)'" >> $(DEVINFO_INC) - @Echo " ENDM" >> $(DEVINFO_INC) - @Echo "DEVICE_DATE MACRO" >> $(DEVINFO_INC) - @Echo " dc.b '$(DEVICE_DATE)'" >> $(DEVINFO_INC) - @Echo " ENDM" >> $(DEVINFO_INC) - @Echo "DEVICE_VER MACRO" >> $(DEVINFO_INC) - @Echo " dc.b '$(DEVICE_VERSION).$(DEVICE_REVISION)'" >> $(DEVINFO_INC) - @Echo " ENDM" >> $(DEVINFO_INC) - @Echo "DEVICE_VERSION equ $(DEVICE_VERSION)" >> $(DEVINFO_INC) - @Echo "DEVICE_REVISION equ $(DEVICE_REVISION)" >> $(DEVINFO_INC) - -# --- dev_info.h --- -$(DEVINFO_HINC): smakefile - -@Echo "\#ifndef _DEV_INFO_H" > $(DEVINFO_HINC) - -@Echo "\#define _DEV_INFO_H" >> $(DEVINFO_HINC) - -@Echo "\#define DEVICE_NAME " NOLINE >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" NOLINE FIRST=2 - -@Echo NOLINE "$(DEVICE_NAME)" >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" FIRST=2 - -@Echo "\#define DEVICE_DATE " NOLINE >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" NOLINE FIRST=2 - -@Echo NOLINE "$(DEVICE_DATE)" >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" FIRST=2 - -@Echo "\#define DEVICE_VER " NOLINE >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" NOLINE FIRST=2 - -@Echo NOLINE "$(DEVICE_VERSION).$(DEVICE_REVISION)" >> $(DEVINFO_HINC) - -@Echo >> $(DEVINFO_HINC) !" FIRST=2 - -@Echo "\#define DEVICE_VERSION $(DEVICE_VERSION)" >> $(DEVINFO_HINC) - -@Echo "\#define DEVICE_REVISION $(DEVICE_REVISION)" >> $(DEVINFO_HINC) - -@Echo "\#endif" >> $(DEVINFO_HINC) - - -# -##################################################################### - -##################################################################### -# -# various dependencies (most from Magplip, unmodified so far) -# -rt.o: rt.asm $(DEVINFO_HINC) $(DEVINFO_INC) libsize.auto.i -$(PROTOCOL)device.opt$(SUFFIX) device.no: device.c global.h -$(PROTOCOL)server.opt$(SUFFIX) server.no: server.c global.h -$(PROTOCOL)track.opt$(SUFFIX) track.no: track.c global.h -# -##################################################################### - diff --git a/Driver/enc624j6net/testroutine/TestENC b/Driver/enc624j6net/testroutine/TestENC deleted file mode 100644 index 67ef0e30f4b3036aed28bc10b35c201ae132b975..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3448 zcmeHJUuYCZ82|R}vR>{&2vJKSAuMT-DAsP4JVaS^_Y%o@4QGQX?544~lbA!$WLcXM z<8ir&54H~_^-U;J`s7PPNJ|kBJ<}pKeUUu*lsH;UQbfdtU=N$^Z{{w^iTKjjX5icT z&G&D<`R1FQA@cu4g(ekybpDS(%e>z=LV>otRN+v3@}GzA=ZK`16j2_$fYZ3aQ}>NZ z@;CPtohVf2UWiY6H)2`n&FwXm4@d#JFKk=)jnd-`DWmi#N!zUL++Q4{xwbq#1ZN)j z9`HTj7wBg({u%h5nWt%tZz?qtS6$L-uGrgO6C#$5Wye$U$A5DK-LIfC0sWtVGw5ey z*`dzQ`!RCb^718Br;|wvw|C8Y&%x_WQu%5udv$u;2Bo`iEZIgNXg)YDgk~*L`nwo!3(PV`PK7;z$XfL!AqLIX;Y-YRsj~fT}P{ z%awi|sYF_fh)6B@7NtbDH)E?tY}J$sCCRJC9Z&TA=IyQOm89tsiQD`+v-sM_2AQqu zuZINhTlmpcADt`H$|U#iEwg!9Z2`i-SAm#(mAi#fT!hG6QDuv@{~rCgv_ z%!(QUtwP5$mkesoN)BqxXD;PP)w4o6<`z6Sl*nU$G>6{SEM|?br?4{k-tf%VRi4sa zcvJUe>QFakYCp$e%*!JHf<9h@HHrayTiX*}VYWZl5an;n_~hCxye)?vg?q#x;$TxoW+zzRp(a#KU#KHNs_GE$r_z1iNxXV*8-oFj60(LWn=`I- zOsC6M!M`c8hDz)1xSj4>8w$*)A4sM4x%4X?&0m3`!{67f^qKM0IBuLJy2yRt9QFK~mMIjGiF@JWBQF$+wzujO zY^dE`yL^86Lez}5t@n+08-Kwc>1nk6i+&LiRyC6*UuuV=CAF^Ky=R(EKC#|w%odTs zGwW?`&-hsHh74An3xT@$aC9+8uDA5%)c7f%A}wBaEAY?T7CS(9o=6kpgD*Q5$R8i( b7n=VWJ~BsWRiH*tCny2B2D%PH^S}HT7JQ%l diff --git a/Driver/enc624j6net/testroutine/enc624j6l.asm b/Driver/enc624j6net/testroutine/enc624j6l.asm deleted file mode 100644 index 968898b..0000000 --- a/Driver/enc624j6net/testroutine/enc624j6l.asm +++ /dev/null @@ -1,1878 +0,0 @@ -; ------------------------------------------------------------------------------ -; | Lowlevel Access to memory mapped ENC624J600 in PSP mode | -; | Henryk Richter | -; ------------------------------------------------------------------------------ -; Currently, the following assumptions are implemented: -; - device in Mode 3, i.e. 16 Bit access -; - register addresses shifted by 1 left, i.e. register base * 2 compared -; to 16 Bit mode of ENC624J600 documentation (8 Bit mode alike) -; - some byte shuffling required - which currently is in a state of flux -; -; Note: This code is in some places intentionally saving more registers than -; required by the AmigaOS ABI. -; -; HW BUG: -; possible address line mismatch (see RXSTART_INIT) -; $5000 was set -> frame appears at $3000 -; $4000 was set -> frame appears at $2000 -; $3000 was set -> frame appears at $5000 -; $2000 was set -> frame appears at $4000 -; -;TODO: -; - setMAC/getMAC endianess awareness -; - Pattern Matching, MC/MC filtering: Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,"not me" Unicast -; - _enc624j6l_RXReset -> won't recover from totally unresponsive chip (but exits gracefully) -; - put includes out (for now, self-contained ASM file) -; - RXSTART_INIT = $0c00 -> currently $2000 due to location bug - -; enable debugging code block -machine mc68020 -DEBUG EQU 1 -; - -; FIXME: needs verification -; also: either swap buffer or registers/pointers etc. -_OPT_BUFFER_SWAP EQU 1 ;perform byte swap on buffer ops (1) or assume native endian (0) -_OPT_REG_SWAP EQU 1 ;perform byte swap on register ops (1) or assume native endian (0) -_OPT_ADR_QUIRK EQU 1 ;address lines 12/13 are swapped (1) or linear addressing (0) -_OPT_FLOWCONTROL EQU 0 ;perform flow control on RX (1) or not (0) - -; -; options for buffer memory configuration, please reserve some space for private variables -; -PSTART_INIT EQU $0BF0 ; 16 Bytes private storage for driver -PSTOP_INIT EQU $0BFF ; (see below for definitions) - -RXSTART_INIT EQU $3000 ; start of RX buffer, room for 14 packets -RXSTOP_INIT EQU $5fff ; end of RX buffer - -TXSTART_INIT EQU $0000 ; start of TX buffer, room for 2 packets -TXSTOP_INIT EQU $0BEF ; end of TX buffer (1536+1520 bytes) - -; max frame length which the conroller will accept: -; (note: maximum ethernet frame length would be 1518 w/o 802.1Q) -MAX_FRAMELEN EQU 1518 - -;------------ driver private storage ------------------------------ -PNextPacket EQU PSTART_INIT ;2 Bytes - private "next packet" pointer for RX -PNextTX EQU PSTART_INIT+2 ;2 Bytes - private "next packet" pointer for TX (init as 0) -PSigBit EQU PSTART_INIT+4 ;2 Bytes interrupt bit -PSigTask EQU PSTART_INIT+6 ;4 Bytes signaled task -PLinkChange EQU PSTART_INIT+10 ;2 Bytes Link Change (Bit0 used right now) -Punused EQU PSTART_INIT+12 ; - -;------------- TX: double buffering -------------------------------- -PSwapTX EQU $600 ;swap between two TX buffers (one active, one activated after last TX done) -; -; - ifne DEBUG -; -; these are only for the debug code -; -ENC_MANUFACTURER EQU 2588 ;a1k -ENC_BOARDID EQU 123 ;ZII-IDE-LAN-CP - endc - - ; - ; - ; Hardware dependent routines, exported globals - ; - ; - XDEF _enc624j6l_CheckBoard ;check whether board is operating correctly - - ; get/set MAC address - XDEF _enc624j6l_GetMAC ;current state, not necessarily burned in MAC - XDEF _enc624j6l_SetMAC ;set user defined MAC address - - ;delay min. D0 microseconds (<= $0fffffff) - XDEF _enc624j6l_UMinDelay - - ;init/shut down board (CheckBoard is not allowed between those two) - XDEF _enc624j6l_Init - XDEF _enc624j6l_Shutdown - - ;online/offline - XDEF _enc624j6l_SetOffline - XDEF _enc624j6l_SetOnline - - ;transmit/receive functions - XDEF _enc624j6l_HaveRecv ; - XDEF _enc624j6l_RecvFrame ; - XDEF _enc624j6l_TransmitFrame ; - - XDEF _enc624j6l_IntServer - XDEF _enc624j6l_EnableInterrupt - XDEF _enc624j6l_DisableInterrupt - - ; - ; System includes - ; - - ifnd _LVOSignal -_LVOSignal EQU -324 - endc - - ;machine 68020 - - section code,code - -;------------------------ UGH! this belongs into a proper .i ------------------------------ - -; set/clr register offsets -SET_OFFSET EQU $0100 -CLR_OFFSET EQU $0180 - -; Register definitions - -; SPI Bank 0 registers -------- -ETXST EQU $7E00 -ETXSTL EQU $7E00 -ETXSTH EQU $7E01 -ETXLEN EQU $7E02 -ETXLENL EQU $7E02 -ETXLENH EQU $7E03 -ERXST EQU $7E04 -ERXSTL EQU $7E04 -ERXSTH EQU $7E05 -ERXTAIL EQU $7E06 -ERXTAILL EQU $7E06 -ERXTAILH EQU $7E07 -ERXHEAD EQU $7E08 -ERXHEADL EQU $7E08 -ERXHEADH EQU $7E09 -EDMAST EQU $7E0A -EDMASTL EQU $7E0A -EDMASTH EQU $7E0B -EDMALEN EQU $7E0C -EDMALENL EQU $7E0C -EDMALENH EQU $7E0D -EDMADST EQU $7E0E -EDMADSTL EQU $7E0E -EDMADSTH EQU $7E0F -EDMACS EQU $7E10 -EDMACSL EQU $7E10 -EDMACSH EQU $7E11 -ETXSTAT EQU $7E12 -ETXSTATL EQU $7E12 -ETXSTATH EQU $7E13 -ETXWIRE EQU $7E14 -ETXWIREL EQU $7E14 -ETXWIREH EQU $7E15 - -; SPI all bank registers -EUDAST EQU $7E16 -EUDASTL EQU $7E16 -EUDASTH EQU $7E17 -EUDAND EQU $7E18 -EUDANDL EQU $7E18 -EUDANDH EQU $7E19 -ESTAT EQU $7E1A -ESTATL EQU $7E1A -ESTATH EQU $7E1B -EIR EQU $7E1C -EIRL EQU $7E1C -EIRH EQU $7E1D -ECON1 EQU $7E1E -ECON1L EQU $7E1E -ECON1H EQU $7E1F - - -; SPI Bank 1 registers ----- -EHT1 EQU $7E20 -EHT1L EQU $7E20 -EHT1H EQU $7E21 -EHT2 EQU $7E22 -EHT2L EQU $7E22 -EHT2H EQU $7E23 -EHT3 EQU $7E24 -EHT3L EQU $7E24 -EHT3H EQU $7E25 -EHT4 EQU $7E26 -EHT4L EQU $7E26 -EHT4H EQU $7E27 -EPMM1 EQU $7E28 -EPMM1L EQU $7E28 -EPMM1H EQU $7E29 -EPMM2 EQU $7E2A -EPMM2L EQU $7E2A -EPMM2H EQU $7E2B -EPMM3 EQU $7E2C -EPMM3L EQU $7E2C -EPMM3H EQU $7E2D -EPMM4 EQU $7E2E -EPMM4L EQU $7E2E -EPMM4H EQU $7E2F -EPMCS EQU $7E30 -EPMCSL EQU $7E30 -EPMCSH EQU $7E31 -EPMO EQU $7E32 -EPMOL EQU $7E32 -EPMOH EQU $7E33 -ERXFCON EQU $7E34 -ERXFCONL EQU $7E34 -ERXFCONH EQU $7E35 - -; SPI all bank registers from 0x36 to 0x3F -; SPI Bank 2 registers ----- -MACON1 EQU $7E40 -MACON1L EQU $7E40 -MACON1H EQU $7E41 -MACON2 EQU $7E42 -MACON2L EQU $7E42 -MACON2H EQU $7E43 -MABBIPG EQU $7E44 -MABBIPGL EQU $7E44 -MABBIPGH EQU $7E45 -MAIPG EQU $7E46 -MAIPGL EQU $7E46 -MAIPGH EQU $7E47 -MACLCON EQU $7E48 -MACLCONL EQU $7E48 -MACLCONH EQU $7E49 -MAMXFL EQU $7E4A -MAMXFLL EQU $7E4A -MAMXFLH EQU $7E4B -MICMD EQU $7E52 -MICMDL EQU $7E52 -MICMDH EQU $7E53 -MIREGADR EQU $7E54 -MIREGADRL EQU $7E54 -MIREGADRH EQU $7E55 - -; SPI all bank registers from 0x56 to 0x5F -; SPI Bank 3 registers ----- -MAADR3 EQU $7E60 -MAADR3L EQU $7E60 -MAADR3H EQU $7E61 -MAADR2 EQU $7E62 -MAADR2L EQU $7E62 -MAADR2H EQU $7E63 -MAADR1 EQU $7E64 -MAADR1L EQU $7E64 -MAADR1H EQU $7E65 -MIWR EQU $7E66 -MIWRL EQU $7E66 -MIWRH EQU $7E67 -MIRD EQU $7E68 -MIRDL EQU $7E68 -MIRDH EQU $7E69 -MISTAT EQU $7E6A -MISTATL EQU $7E6A -MISTATH EQU $7E6B -EPAUS EQU $7E6C -EPAUSL EQU $7E6C -EPAUSH EQU $7E6D -ECON2 EQU $7E6E -ECON2L EQU $7E6E -ECON2H EQU $7E6F -ERXWM EQU $7E70 -ERXWML EQU $7E70 -ERXWMH EQU $7E71 -EIE EQU $7E72 -EIEL EQU $7E72 -EIEH EQU $7E73 -EIDLED EQU $7E74 -EIDLEDL EQU $7E74 -EIDLEDH EQU $7E75 - -; SPI all bank registers from 0x66 to 0x6F - -; SPI Non-banked Special Function Registers -EGPDATA EQU $7E80 -EGPDATAL EQU $7E80 -ERXDATA EQU $7E82 -ERXDATAL EQU $7E82 -EUDADATA EQU $7E84 -EUDADATAL EQU $7E84 -EGPRDPT EQU $7E86 -EGPRDPTL EQU $7E86 -EGPRDPTH EQU $7E87 -EGPWRPT EQU $7E88 -EGPWRPTL EQU $7E88 -EGPWRPTH EQU $7E89 -ERXRDPT EQU $7E8A -ERXRDPTL EQU $7E8A -ERXRDPTH EQU $7E8B -ERXWRPT EQU $7E8C -ERXWRPTL EQU $7E8C -ERXWRPTH EQU $7E8D -EUDARDPT EQU $7E8E -EUDARDPTL EQU $7E8E -EUDARDPTH EQU $7E8F -EUDAWRPT EQU $7E90 -EUDAWRPTL EQU $7E90 -EUDAWRPTH EQU $7E91 - -;;;;;;;;;;;;;;;;;;;;;;;;;; -; ENC424J600/624J600 register bits -;;;;;;;;;;;;;;;;;;;;;;;;;; -; ESTAT bits ---------- -ESTAT_INT EQU (1<<15) -ESTAT_FCIDLE EQU (1<<14) -ESTAT_RXBUSY EQU (1<<13) -ESTAT_CLKRDY EQU (1<<12) -ESTAT_RSTDONE EQU (1<<11) -ESTAT_PHYDPX EQU (1<<10) -ESTAT_PHYRDY EQU (1<<9) -ESTAT_PHYLNK EQU (1<<8) -ESTAT_PKTCNT7 EQU (1<<7) -ESTAT_PKTCNT6 EQU (1<<6) -ESTAT_PKTCNT5 EQU (1<<5) -ESTAT_PKTCNT4 EQU (1<<4) -ESTAT_PKTCNT3 EQU (1<<3) -ESTAT_PKTCNT2 EQU (1<<2) -ESTAT_PKTCNT1 EQU (1<<1) -ESTAT_PKTCNT0 EQU (1) - -; EIR bits ------------ -EIR_CRYPTEN EQU (1<<15) -EIR_MODEXIF EQU (1<<14) -EIR_HASHIF EQU (1<<13) -EIR_AESIF EQU (1<<12) -EIR_LINKIF EQU (1<<11) -EIR_PRDYIF EQU (1<<10) -EIR_r9 EQU (1<<9) -EIR_r8 EQU (1<<8) -EIR_r7 EQU (1<<7) -EIR_PKTIF EQU (1<<6) -EIR_DMAIF EQU (1<<5) -EIR_r4 EQU (1<<4) -EIR_TXIF EQU (1<<3) -EIR_TXABTIF EQU (1<<2) -EIR_RXABTIF EQU (1<<1) -EIR_PCFULIF EQU (1) - -; ECON1 bits ---------- -ECON1_MODEXST EQU (1<<15) -ECON1_HASHEN EQU (1<<14) -ECON1_HASHOP EQU (1<<13) -ECON1_HASHLST EQU (1<<12) -ECON1_AESST EQU (1<<11) -ECON1_AESOP1 EQU (1<<10) -ECON1_AESOP0 EQU (1<<9) -ECON1_PKTDEC EQU (1<<8) -ECON1_FCOP1 EQU (1<<7) -ECON1_FCOP0 EQU (1<<6) -ECON1_DMAST EQU (1<<5) -ECON1_DMACPY EQU (1<<4) -ECON1_DMACSSD EQU (1<<3) -ECON1_DMANOCS EQU (1<<2) -ECON1_TXRTS EQU (1<<1) -ECON1_RXEN EQU (1) - -; ETXSTAT bits -------- -ETXSTAT_r12 EQU (1<<12) -ETXSTAT_r11 EQU (1<<11) -ETXSTAT_LATECOL EQU (1<<10) -ETXSTAT_MAXCOL EQU (1<<9) -ETXSTAT_EXDEFER EQU (1<<8) -ETXSTAT_DEFER EQU (1<<7) -ETXSTAT_r6 EQU (1<<6) -ETXSTAT_r5 EQU (1<<5) -ETXSTAT_CRCBAD EQU (1<<4) -ETXSTAT_COLCNT3 EQU (1<<3) -ETXSTAT_COLCNT2 EQU (1<<2) -ETXSTAT_COLCNT1 EQU (1<<1) -ETXSTAT_COLCNT0 EQU (1) - -; ERXFCON bits -------- -ERXFCON_HTEN EQU (1<<15) -ERXFCON_MPEN EQU (1<<14) -ERXFCON_NOTPM EQU (1<<12) -ERXFCON_PMEN3 EQU (1<<11) -ERXFCON_PMEN2 EQU (1<<10) -ERXFCON_PMEN1 EQU (1<<9) -ERXFCON_PMEN0 EQU (1<<8) -ERXFCON_CRCEEN EQU (1<<7) -ERXFCON_CRCEN EQU (1<<6) -ERXFCON_RUNTEEN EQU (1<<5) -ERXFCON_RUNTEN EQU (1<<4) -ERXFCON_UCEN EQU (1<<3) -ERXFCON_NOTMEEN EQU (1<<2) -ERXFCON_MCEN EQU (1<<1) -ERXFCON_BCEN EQU (1) - -; MACON1 bits --------- -MACON1_r15 EQU (1<<15) -MACON1_r14 EQU (1<<14) -MACON1_r11 EQU (1<<11) -MACON1_r10 EQU (1<<10) -MACON1_r9 EQU (1<<9) -MACON1_r8 EQU (1<<8) -MACON1_LOOPBK EQU (1<<4) -MACON1_r3 EQU (1<<3) -MACON1_RXPAUS EQU (1<<2) -MACON1_PASSALL EQU (1<<1) -MACON1_r0 EQU (1) - -; MACON2 bits --------- -MACON2_DEFER EQU (1<<14) -MACON2_BPEN EQU (1<<13) -MACON2_NOBKOFF EQU (1<<12) -MACON2_r9 EQU (1<<9) -MACON2_r8 EQU (1<<8) -MACON2_PADCFG2 EQU (1<<7) -MACON2_PADCFG1 EQU (1<<6) -MACON2_PADCFG0 EQU (1<<5) -MACON2_TXCRCEN EQU (1<<4) -MACON2_PHDREN EQU (1<<3) -MACON2_HFRMEN EQU (1<<2) -MACON2_r1 EQU (1<<1) -MACON2_FULDPX EQU (1) - -; MABBIPG bits -------- -MABBIPG_BBIPG6 EQU (1<<6) -MABBIPG_BBIPG5 EQU (1<<5) -MABBIPG_BBIPG4 EQU (1<<4) -MABBIPG_BBIPG3 EQU (1<<3) -MABBIPG_BBIPG2 EQU (1<<2) -MABBIPG_BBIPG1 EQU (1<<1) -MABBIPG_BBIPG0 EQU (1) - -; MAIPG bits ---------- -MAIPG_r14 EQU (1<<14) -MAIPG_r13 EQU (1<<13) -MAIPG_r12 EQU (1<<12) -MAIPG_r11 EQU (1<<11) -MAIPG_r10 EQU (1<<10) -MAIPG_r9 EQU (1<<9) -MAIPG_r8 EQU (1<<8) -MAIPG_IPG6 EQU (1<<6) -MAIPG_IPG5 EQU (1<<5) -MAIPG_IPG4 EQU (1<<4) -MAIPG_IPG3 EQU (1<<3) -MAIPG_IPG2 EQU (1<<2) -MAIPG_IPG1 EQU (1<<1) -MAIPG_IPG0 EQU (1) - -; MACLCON bits -------- -MACLCON_r13 EQU (1<<13) -MACLCON_r12 EQU (1<<12) -MACLCON_r11 EQU (1<<11) -MACLCON_r10 EQU (1<<10) -MACLCON_r9 EQU (1<<9) -MACLCON_r8 EQU (1<<8) -MACLCON_MAXRET3 EQU (1<<3) -MACLCON_MAXRET2 EQU (1<<2) -MACLCON_MAXRET1 EQU (1<<1) -MACLCON_MAXRET0 EQU (1) - -; MICMD bits ---------- -MICMD_MIISCAN EQU (1<<1) -MICMD_MIIRD EQU (1) - -; MIREGADR bits ------- -MIREGADR_r12 EQU (1<<12) -MIREGADR_r11 EQU (1<<11) -MIREGADR_r10 EQU (1<<10) -MIREGADR_r9 EQU (1<<9) -MIREGADR_r8 EQU (1<<8) -MIREGADR_PHREG4 EQU (1<<4) -MIREGADR_PHREG3 EQU (1<<3) -MIREGADR_PHREG2 EQU (1<<2) -MIREGADR_PHREG1 EQU (1<<1) -MIREGADR_PHREG0 EQU (1) - -; MISTAT bits --------- -MISTAT_r3 EQU (1<<3) -MISTAT_NVALID EQU (1<<2) -MISTAT_SCAN EQU (1<<1) -MISTAT_BUSY EQU (1) - -; ECON2 bits ---------- -ECON2_ETHEN EQU (1<<15) -ECON2_STRCH EQU (1<<14) -ECON2_TXMAC EQU (1<<13) -ECON2_SHA1MD5 EQU (1<<12) -ECON2_COCON3 EQU (1<<11) -ECON2_COCON2 EQU (1<<10) -ECON2_COCON1 EQU (1<<9) -ECON2_COCON0 EQU (1<<8) -ECON2_AUTOFC EQU (1<<7) -ECON2_TXRST EQU (1<<6) -ECON2_RXRST EQU (1<<5) -ECON2_ETHRST EQU (1<<4) -ECON2_MODLEN1 EQU (1<<3) -ECON2_MODLEN0 EQU (1<<2) -ECON2_AESLEN1 EQU (1<<1) -ECON2_AESLEN0 EQU (1) - -; ERXWM bits ---------- -ERXWM_RXFWM7 EQU (1<<15) -ERXWM_RXFWM6 EQU (1<<14) -ERXWM_RXFWM5 EQU (1<<13) -ERXWM_RXFWM4 EQU (1<<12) -ERXWM_RXFWM3 EQU (1<<11) -ERXWM_RXFWM2 EQU (1<<10) -ERXWM_RXFWM1 EQU (1<<9) -ERXWM_RXFWM0 EQU (1<<8) -ERXWM_RXEWM7 EQU (1<<7) -ERXWM_RXEWM6 EQU (1<<6) -ERXWM_RXEWM5 EQU (1<<5) -ERXWM_RXEWM4 EQU (1<<4) -ERXWM_RXEWM3 EQU (1<<3) -ERXWM_RXEWM2 EQU (1<<2) -ERXWM_RXEWM1 EQU (1<<1) -ERXWM_RXEWM0 EQU (1) - -; EIE bits ------------ -EIE_INTIE EQU (1<<15) -EIE_MODEXIE EQU (1<<14) -EIE_HASHIE EQU (1<<13) -EIE_AESIE EQU (1<<12) -EIE_LINKIE EQU (1<<11) -EIE_PRDYIE EQU (1<<10) -EIE_r9 EQU (1<<9) -EIE_r8 EQU (1<<8) -EIE_r7 EQU (1<<7) -EIE_PKTIE EQU (1<<6) -EIE_DMAIE EQU (1<<5) -EIE_r4 EQU (1<<4) -EIE_TXIE EQU (1<<3) -EIE_TXABTIE EQU (1<<2) -EIE_RXABTIE EQU (1<<1) -EIE_PCFULIE EQU (1) - -; EIDLED bits --------- -EIDLED_LACFG3 EQU (1<<15) -EIDLED_LACFG2 EQU (1<<14) -EIDLED_LACFG1 EQU (1<<13) -EIDLED_LACFG0 EQU (1<<12) -EIDLED_LBCFG3 EQU (1<<11) -EIDLED_LBCFG2 EQU (1<<10) -EIDLED_LBCFG1 EQU (1<<9) -EIDLED_LBCFG0 EQU (1<<8) -EIDLED_DEVID2 EQU (1<<7) -EIDLED_DEVID1 EQU (1<<6) -EIDLED_DEVID0 EQU (1<<5) -EIDLED_REVID4 EQU (1<<4) -EIDLED_REVID3 EQU (1<<3) -EIDLED_REVID2 EQU (1<<2) -EIDLED_REVID1 EQU (1<<1) -EIDLED_REVID0 EQU (1) - -; PHCON1 bits --------- -PHCON1_PRST EQU (1<<15) -PHCON1_PLOOPBK EQU (1<<14) -PHCON1_SPD100 EQU (1<<13) -PHCON1_ANEN EQU (1<<12) -PHCON1_PSLEEP EQU (1<<11) -PHCON1_r10 EQU (1<<10) -PHCON1_RENEG EQU (1<<9) -PHCON1_PFULDPX EQU (1<<8) -PHCON1_r7 EQU (1<<7) -PHCON1_r6 EQU (1<<6) -PHCON1_r5 EQU (1<<5) -PHCON1_r4 EQU (1<<4) -PHCON1_r3 EQU (1<<3) -PHCON1_r2 EQU (1<<2) -PHCON1_r1 EQU (1<<1) -PHCON1_r0 EQU (1) - -; PHSTAT1 bits -------- -PHSTAT1_r15 EQU (1<<15) -PHSTAT1_FULL100 EQU (1<<14) -PHSTAT1_HALF100 EQU (1<<13) -PHSTAT1_FULL10 EQU (1<<12) -PHSTAT1_HALF10 EQU (1<<11) -PHSTAT1_r10 EQU (1<<10) -PHSTAT1_r9 EQU (1<<9) -PHSTAT1_r8 EQU (1<<8) -PHSTAT1_r7 EQU (1<<7) -PHSTAT1_r6 EQU (1<<6) -PHSTAT1_ANDONE EQU (1<<5) -PHSTAT1_LRFAULT EQU (1<<4) -PHSTAT1_ANABLE EQU (1<<3) -PHSTAT1_LLSTAT EQU (1<<2) -PHSTAT1_r1 EQU (1<<1) -PHSTAT1_EXTREGS EQU (1) - -; PHANA bits ---------- -PHANA_ADNP EQU (1<<15) -PHANA_r14 EQU (1<<14) -PHANA_ADFAULT EQU (1<<13) -PHANA_r12 EQU (1<<12) -PHANA_ADPAUS1 EQU (1<<11) -PHANA_ADPAUS0 EQU (1<<10) -PHANA_r9 EQU (1<<9) -PHANA_AD100FD EQU (1<<8) -PHANA_AD100 EQU (1<<7) -PHANA_AD10FD EQU (1<<6) -PHANA_AD10 EQU (1<<5) -PHANA_ADIEEE4 EQU (1<<4) -PHANA_ADIEEE3 EQU (1<<3) -PHANA_ADIEEE2 EQU (1<<2) -PHANA_ADIEEE1 EQU (1<<1) -PHANA_ADIEEE0 EQU (1) - -; PHANLPA bits -------- -PHANLPA_LPNP EQU (1<<15) -PHANLPA_LPACK EQU (1<<14) -PHANLPA_LPFAULT EQU (1<<13) -PHANLPA_r12 EQU (1<<12) -PHANLPA_LPPAUS1 EQU (1<<11) -PHANLPA_LPPAUS0 EQU (1<<10) -PHANLPA_LP100T4 EQU (1<<9) -PHANLPA_LP100FD EQU (1<<8) -PHANLPA_LP100 EQU (1<<7) -PHANLPA_LP10FD EQU (1<<6) -PHANLPA_LP10 EQU (1<<5) -PHANLPA_LPIEEE4 EQU (1<<4) -PHANLPA_LPIEEE3 EQU (1<<3) -PHANLPA_LPIEEE2 EQU (1<<2) -PHANLPA_LPIEEE1 EQU (1<<1) -PHANLPA_LPIEEE0 EQU (1) - -; PHANE bits ---------- -PHANE_r15 EQU (1<<15) -PHANE_r14 EQU (1<<14) -PHANE_r13 EQU (1<<13) -PHANE_r12 EQU (1<<12) -PHANE_r11 EQU (1<<11) -PHANE_r10 EQU (1<<10) -PHANE_r9 EQU (1<<9) -PHANE_r8 EQU (1<<8) -PHANE_r7 EQU (1<<7) -PHANE_r6 EQU (1<<6) -PHANE_r5 EQU (1<<5) -PHANE_PDFLT EQU (1<<4) -PHANE_r3 EQU (1<<3) -PHANE_r2 EQU (1<<2) -PHANE_LPARCD EQU (1<<1) -PHANA_LPANABL EQU (1) - -; PHCON2 bits --------- -PHCON2_r15 EQU (1<<15) -PHCON2_r14 EQU (1<<14) -PHCON2_EDPWRDN EQU (1<<13) -PHCON2_r12 EQU (1<<12) -PHCON2_EDTHRES EQU (1<<11) -PHCON2_r10 EQU (1<<10) -PHCON2_r9 EQU (1<<9) -PHCON2_r8 EQU (1<<8) -PHCON2_r7 EQU (1<<7) -PHCON2_r6 EQU (1<<6) -PHCON2_r5 EQU (1<<5) -PHCON2_r4 EQU (1<<4) -PHCON2_r3 EQU (1<<3) -PHCON2_FRCLNK EQU (1<<2) -PHCON2_EDSTAT EQU (1<<1) -PHCON2_r0 EQU (1) - -; PHSTAT2 bits --------- -PHSTAT2_r15 EQU (1<<15) -PHSTAT2_r14 EQU (1<<14) -PHSTAT2_r13 EQU (1<<13) -PHSTAT2_r12 EQU (1<<12) -PHSTAT2_r11 EQU (1<<11) -PHSTAT2_r10 EQU (1<<10) -PHSTAT2_r9 EQU (1<<9) -PHSTAT2_r8 EQU (1<<8) -PHSTAT2_r7 EQU (1<<7) -PHSTAT2_r6 EQU (1<<6) -PHSTAT2_r5 EQU (1<<5) -PHSTAT2_PLRITY EQU (1<<4) -PHSTAT2_r3 EQU (1<<3) -PHSTAT2_r2 EQU (1<<2) -PHSTAT2_r1 EQU (1<<1) -PHSTAT2_r0 EQU (1) - -; PHSTAT3 bits -------- -PHSTAT3_r15 EQU (1<<15) -PHSTAT3_r14 EQU (1<<14) -PHSTAT3_r13 EQU (1<<13) -PHSTAT3_r12 EQU (1<<12) -PHSTAT3_r11 EQU (1<<11) -PHSTAT3_r10 EQU (1<<10) -PHSTAT3_r9 EQU (1<<9) -PHSTAT3_r8 EQU (1<<8) -PHSTAT3_r7 EQU (1<<7) -PHSTAT3_r6 EQU (1<<6) -PHSTAT3_r5 EQU (1<<5) -PHSTAT3_SPDDPX2 EQU (1<<4) -PHSTAT3_SPDDPX1 EQU (1<<3) -PHSTAT3_SPDDPX0 EQU (1<<2) -PHSTAT3_r1 EQU (1<<1) -PHSTAT3_r0 EQU (1) - -;------------------------------ internal defaults ---------------------------------- -;33.333Mhz clock out frequency -CLOCK_33_CLR EQU (ECON2_COCON3|ECON2_COCON2|ECON2_COCON1) ;clr mask -CLOCK_33_SET EQU (ECON2_COCON0) ;set mask -;25 MHz -CLOCK_25_CLR EQU (ECON2_COCON3|ECON2_COCON2|ECON2_COCON0) ;clr mask -CLOCK_25_SET EQU (ECON2_COCON1) ;set mask -;20 MHz -CLOCK_20_CLR EQU (ECON2_COCON3|ECON2_COCON2) ;clr mask -CLOCK_20_SET EQU (ECON2_COCON1|ECON2_COCON0) ;set mask -;16 MHz -CLOCK_16_CLR EQU (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) ;clr mask -CLOCK_16_SET EQU (ECON2_COCON2) ;set mask -;4 MHz (after reset) -CLOCK_4_CLR EQU (ECON2_COCON2) ;clr mask -CLOCK_4_SET EQU (ECON2_COCON3|ECON2_COCON0|ECON2_COCON1) ;set mask - -CLOCK_DEF_CLR EQU CLOCK_33_CLR -CLOCK_DEF_SET EQU CLOCK_33_SET - -;\1 register offset (without CLEAR offset) -;\2 address register of board I/O base -;\3 register with clear mask - ifne _OPT_REG_SWAP - -CLRREG macro - rol.w #8,\3 - move.w \3,\1+CLR_OFFSET(\2) - rol.w #8,\3 - endm -;\1 register offset (without SET offset) -;\2 address register of board I/O base -;\3 register with set mask -SETREG macro - rol.w #8,\3 - move.w \3,\1+SET_OFFSET(\2) - rol.w #8,\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 destination register to be written (e.g. d0) -READREG macro - rol.w #8,\3 - move.w \1(\2),\3 - rol.w #8,\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 soure register copied to HW register (e.g. d0) -WRITEREG macro - rol.w #8,\3 - move.w \3,\1(\2) - rol.w #8,\3 - endm - - - else - -CLRREG macro - move.w \3,\1+CLR_OFFSET(\2) - endm -;\1 register offset (without SET offset) -;\2 address register of board I/O base -;\3 register with set mask -SETREG macro - move.w \3,\1+SET_OFFSET(\2) - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 destination register to be written (e.g. d0) -READREG macro - move.w \1(\2),\3 - endm -;\1 register offset (e.g. ESTAT) -;\2 address register of board I/O base (e.g. a0) -;\3 soure register copied to HW register (e.g. d0) -WRITEREG macro - move.w \3,\1(\2) - endm - - endc - - ;read with address shuffling or direct from SRAM (affects $2000-$5000) - ifne _OPT_ADR_QUIRK -;\1 = address register -;\2 = data register, offset -;\3 = destination -READSRAM macro - eor.w #$6000,\2 - move.w (\1,\2.w),\3 - eor.w #$6000,\2 - endm - else -READSRAM macro - move.w (\1,\2),\3 - endm - endc - - -; wrap position index (in bytes) \1 (data register .w) -; -; if position >RXSTOP_INIT-1 -; position = (position-RXSTOP_INIT+RXSTART_INIT) -; endif -WRAPINDEX macro - cmp.w #RXSTOP_INIT&$fffe,\1 ;wrap Dn if beyond buffer - ble.s .nowrap\0\@ - add.w #RXSTART_INIT-RXSTOP_INIT,\1 -.nowrap\0\@ - endm - - - - - -; ----------------------------------------------------------------------------- -; | | -; | Test/Debug code | -; | | -; ----------------------------------------------------------------------------- - ifne DEBUG -ExecBase EQU 4 ; Exec.Base() -OpenLibrary EQU -552 ; D0:Base=OpenLibrary(A1:libName,D0:version) -CloseLibrary EQU -414 ; Exec.CloseLibrary(A1:libBase) -PutStr EQU -948 ; DOS.PutStr(D1:str) -_LVODelay EQU -198 -_LVOFindConfigDev EQU -72 ; expansion -cd_BoardAddr EQU 32 ; structure ConfigDev - -START: -opendos: - ;libs - move.l ExecBase,a6 - lea DosLibrary(pc),a1 - moveq #0,d0 - jsr OpenLibrary(a6) - move.l d0,_dosbase - beq error - - lea ExpansionLibrary(pc),a1 - moveq #36,d0 - jsr OpenLibrary(a6) - move.l d0,_expansionbase - - ;expansion scan for first board - move.l _expansionbase(pc),a6 - suba.l a0,a0 ;find first board - move.l #ENC_MANUFACTURER,d0 - moveq #ENC_BOARDID,d1 - jsr _LVOFindConfigDev(a6) - tst.l d0 - beq error - move.l d0,a5 ;board - move.l cd_BoardAddr(A5),d0 ;base address - beq error - move.l d0,_boardbase - - ;tests - move.l _dosbase(pc),a6 - moveq #0,d7 ;no error - - ;Board test - move.l _boardbase(pc),a0 - bsr _enc624j6l_CheckBoard - move.b d0,board_status - - ; MAC address test - move.l _boardbase(pc),a0 - lea mactestr(pc),a1 - bsr _enc624j6l_GetMAC - - move.l _boardbase(pc),a0 - lea mactest(pc),a1 - bsr _enc624j6l_SetMAC - - lea macdest(pc),a1 - move.l _boardbase(pc),a0 - bsr _enc624j6l_GetMAC ;verify - - lea mactest(pc),a0 ;verify MAC r/w - lea macdest(pc),a1 - move.l (a0)+,d0 - sub.l (a1)+,d0 - moveq #0,d1 - move.w (a0)+,d1 - sub.w (a1)+,d1 - move.b #1,mac_status ;OK - or.l d1,d0 - beq.s .macok - st mac_status ;error -.macok: - - move.l _boardbase(pc),a0 - lea mactestr(pc),a1 - bsr _enc624j6l_SetMAC ;restore default MAC - - ; Initialize board for sending/receiving - move.l _boardbase(pc),a0 - bsr _enc624j6l_Init - tst.l d0 - ble error - - ;---------- transmit test stuff --------------- - moveq #100,d2 -.txtest: - move.l _boardbase(pc),a0 - lea txtestframe(pc),a1 - move #txtestlen,d0 - bsr _enc624j6l_TransmitFrame ; - dbf d2,.txtest - - ;----------- receive text stuff --------------- -.loop - move.l _boardbase(pc),a0 - ;READREG ESTAT,a0,d0 - bsr _enc624j6l_HaveRecv - tst.l d0 - blt error ;bail out if error - beq .noframe ;nothing received - - ;debug: disable recv - move.l _boardbase(pc),a0 - moveq #ECON1_RXEN,d0 - CLRREG ECON1,a0,d0 - - move.l _boardbase(pc),a0 - lea readframe,a1 - move #MAX_FRAMELEN,d0 - bsr _enc624j6l_RecvFrame - - -.noframe: - btst #6,$bfe001 - bne.s .loop - -error: - rts - -DosLibrary: dc.b "dos.library",0 -ExpansionLibrary: dc.b "expansion.library",0 - cnop 0,4 -_expansionbase: dc.l 0 -_dosbase: dc.l 0 -_boardbase: dc.l 0 - -mactest: dc.b $00,$80,$10,$b,$a,$ff ;we write this as test MAC -mactestr: dc.b 0,0,0,0,0,0 ;HW MAC -macdest: dc.b 0,0,0,0,0,0 ;MAC verify - -status: -board_status: dc.b 0 ;ok -mac_status: dc.b 0 ;ok - cnop 0,4 - -readframe: ds.b 1536 -endf: - -txtestframe: - dc.b $ff,$ff,$ff,$ff,$ff,$ff ;, /* broadcast */ - dc.b $00,$80,$10,$0b,$0a,$ff ;, /* own MAC */ - dc.b $08,$00 ;, /* Type IPv4 */ - ; /* */ - dc.b $45,$00 ; /* VER, DSCP */ - dc.b $00,$54 ;, /* length */ - dc.b $A0,$0A ;, /* id */ - dc.b $00,$00 ;, /* flags, fragment offset */ - dc.b $40 ;, /* TTL */ - dc.b $01 ;, /* ICMP */ - dc.b $00,$00 ;, /* header checksum */ - dc.b 192,168,10,12 ;, /* SRC IP */ - dc.b 192,168,10,255 ;, /* dest IP */ - ; /* */ - dc.b $08,$00 ;, /* Type, Code = ICMP Echo */ - dc.b $00,$00 ;, /* Checksum */ - dc.b $DE,$AD ;, /* Identifier */ - dc.b $00,$01 ;, /* SeqNum */ - - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 - dc.b $41,$41,$41,$41,$41,$41,$41,$41 -txtestlen EQU *-txtestframe - - cnop 0,4 - - endc -; ----------------------------------------------------------------------------- -; | | -; | END Test/Debug code | -; | | -; ----------------------------------------------------------------------------- - - - - -;------------------------------------------------------------------------------ -;------------------------------------------------------------------------------ -; -; HW dependent functions -; -;------------------------------------------------------------------------------ -;------------------------------------------------------------------------------ - - -;------------------------------------------------------------------------------ -; -; Purpose: check whether the board is operating as needed; -; -; input: A0 - mmapped board base address -; -; output: success/failure -; >0 - all fine -; <=0 - problem (codes undefined yet) -; -; notes: The Olimex module on the Matze/Scrat ZII IDE LAN CP prototype -; tends to boot in SPI mode instead of PSP (parallel) mode. -; That case is detected by writing/reading data. If both bytes -; of the words are equal to the last written byte, the board is likely -; showing this issue. -; Please note that this call will overwrite Board registers and -; buffer memory. Call before initialization. -_enc624j6l_CheckBoard: ;check whether board is operating correctly - movem.l d1-d2/a0-a1,-(sp) - - move.l a0,d0 - beq .err - - moveq #60,d0 ;let the board settle in if there was - bsr _enc624j6l_UMinDelay ;a reset or POR (unlikely) - - - ; ----------------- quick check for operational mode ------------------ - move.w #$1234,d1 - WRITEREG EUDAST,a0,d1 ;write data - tst.l 4.w ;clear BUS - READREG EUDAST,a0,d0 - cmp.w d0,d1 ;do we get the register back ? - bne.s .err ;no -> complain - - - ; ------------------------- reset device ------------------------------ - moveq #ECON2_ETHRST,d0 - WRITEREG ECON2,a0,d0 ;reset board - - moveq #64-1,d1 ;number of loops to test (max. 7.6 ms) -.loop: - moveq #120,d0 ;wait patiently - bsr _enc624j6l_UMinDelay ; - - READREG ESTAT,a0,d0 - and #(ESTAT_CLKRDY|ESTAT_RSTDONE|ESTAT_PHYRDY),d0 - cmp #(ESTAT_CLKRDY|ESTAT_RSTDONE|ESTAT_PHYRDY),d0 - beq .rstsuccess - - dbf d1,.loop - bra.s .err ;error: device gone after reset - -.rstsuccess: - READREG EUDAST,A0,d0 - tst.w d0 ;should have gone to 0 after reset - bne.s .err ;(see above, we've written $1234) - - ;---------- short RAM check - write phase ---------------------------- - ;---------- (device is not receiving after reset) -------------------- - moveq #3,d1 - move.w #$3000-1,d0 - lea (a0),a1 -.wrloop -; move.w d1,(a1)+ - clr.w (a1)+ - rol.l d1 - eor.b #3,d1 - dbf d0,.wrloop - - - ;---------- short RAM check - read phase ------------------------------ - moveq #3,d1 - move.w #$3000-1,d0 - lea (a0),a1 -.rdloop - move.w (a1)+,d2 - eor.w d1,d2 -; bne.s .err - rol.l d1 - eor.b #3,d1 - dbf d0,.rdloop - - ;---------- satisfied, return our sincere happiness ------------------- - - moveq #1,d0 ;all fine - bra.s .ret -.err: - moveq #0,d0 -.ret - movem.l (sp)+,d1-d2/a0-a1 - rts - - -;------------------------------------------------------------------------------ -; -; Get current MAC address of board -; -; return the 6 Bytes of the MAC address in buffer at A1. Please note that this -; call either returns the burned in Address (if unchanged) or the current -; user-set address if the registers were modified before. -; -; In: A0 - Board base address -; A1 - Pointer to buffer where to store 48 Bit -; -; Out: -; D0 <= 0 - failure -; 1 -; -; Trash: A0/A1 -; -_enc624j6l_GetMAC: ;current state, not necessarily burned in MAC - move.l a0,d0 - beq.s .err - lea MAADR1L+2(a0),a0 ;after first pair of bytes - - rept 3 - move.w -(a0),d0 - rol.w #8,d0 - move.w d0,(a1)+ - endr - - moveq #1,d0 ;success -.err: ; we land at .err with d0 == 0 - rts - - -;--------------------------------------------------------------------------------------- -; -; Set current MAC address of board -; -; set the 6 Bytes of the MAC address from buffer at A1. -; -; In: A0 - Board base address -; A1 - Pointer to buffer where to read 48 Bit from -; -; Out: -; D0 <= 0 - failure -; 1 -; -; Trash: A0/A1 -; -_enc624j6l_SetMAC: ;set user defined MAC address - move.l a0,d0 - beq.s .err - lea MAADR1L+2(a0),a0 ;after first pair of bytes - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - move (a1)+,d0 - rol.w #8,d0 - move.w d0,-(a0) - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Initialize hardware for send/recv -; -; This call could/should have been done in C. My reason for doing this in ASM was easy -; testing with low turnaround time. -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: -; -_enc624j6l_Init: - move.l a0,d0 - beq .err - - READREG ESTAT,a0,d0 - and #(ESTAT_CLKRDY|ESTAT_PHYRDY),d0 - cmp #(ESTAT_CLKRDY|ESTAT_PHYRDY),d0 - beq.s .goon ;this state is ok for us - - bsr _enc624j6l_CheckBoard ;preserves all regs - tst.l d0 ;board reset unsuccessful ? - ble.w .err ;-> bail out -.goon: - ;-------------- configure clockout ---------------------- - moveq #ECON1_RXEN,d0 ;no RX, my dear (yet) - CLRREG ECON1,a0,d0 ; - - ;33.333Mhz clock out frequency (see defines above) - move.w #CLOCK_DEF_CLR,d0 ;clr mask - move.w #CLOCK_DEF_SET,d1 ;set mask - CLRREG ECON2,a0,d0 - SETREG ECON2,a0,d1 - - ; disable crypto engine and all interrupts - move #EIR_CRYPTEN|EIR_MODEXIF|EIR_HASHIF|EIR_AESIF|EIR_LINKIF|EIR_PRDYIF|EIR_PKTIF|EIR_DMAIF|EIR_TXIF|EIR_TXABTIF|EIR_RXABTIF|EIR_PCFULIF,d0 - CLRREG EIR,a0,d0 - - ;--------------- RX configuration ----------------------- - move #RXSTART_INIT,d0 - WRITEREG ERXST,a0,d0 ;set RX start pointer (end will be $5fff) - WRITEREG PNextPacket,a0,d0 ;set user read pointer - - ;Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,filter runts - ;"not me" Unicast == |ERXFCON_NOTMEEN - move #ERXFCON_MCEN|ERXFCON_BCEN|ERXFCON_UCEN|ERXFCON_MPEN|ERXFCON_CRCEN|ERXFCON_RUNTEN,d0 - WRITEREG ERXFCON,a0,d0 ;set filter TODO: pattern matching stuff - move #RXSTOP_INIT&$fffe,d0 - WRITEREG ERXTAIL,a0,d0 ;tail pointer in buffer = rx-2, wraparound - - ifne _OPT_FLOWCONTROL - move #(128<<8)|(32),d0 ;128*96=12288 high water mark, 32*96=3072 low water mark - WRITEREG ERXWM,a0,d0 - moveq #MACON1_RXPAUS,d0 - SETREG MACON1,a0,d0 - move #ECON2_AUTOFC,d0 - SETREG ECON2,a0,d0 - else - move #ECON2_AUTOFC,d0 - CLRREG ECON2,a0,d0 ;disable automatic flow control - endc - - - ;--------------- TX configuration ----------------------- - ; no padding, no proprietary header - move #MACON2_PADCFG2|MACON2_PADCFG1|MACON2_PADCFG0|MACON2_PHDREN,d0 - CLRREG MACON2,a0,d0 - ; add CRC by ENC Chip - move #MACON2_PADCFG1|MACON2_PADCFG0|MACON2_TXCRCEN,d0 - SETREG MACON2,a0,d0 - - move #MAX_FRAMELEN,d0 - WRITEREG MAMXFL,a0,d0 ;set maximum frame length - moveq #0,d0 - WRITEREG PNextTX,a0,d0 ;private pointer, "last written, maybe still pending frame" - - - ;--------------- DONE: enable reception ----------------- - moveq #ECON1_RXEN,d0 - SETREG ECON1,a0,d0 - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Shutdown hardware -; -; This call could/should have been done in C. My reason for doing this in ASM was easy -; testing with low turnaround time. -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -_enc624j6l_Shutdown: - move.l a0,d0 - beq .err - - bsr _enc624j6l_SetOffline - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Bring device online -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: - assumes that init() was called before, also please note that init -; will bring the device online by itself -; - it will take a while until the device is properly configured (several hundred -; milliseconds), therefore a delay is advised after calling this (preferably Delay() in DOS) -; -_enc624j6l_SetOnline: - move.l a0,d0 - beq.s .err - - move #ECON2_ETHEN|ECON2_STRCH,d0 - SETREG ECON2,a0,d0 - -; move #PHCON1_PSLEEP,d0 -; CLRREG PHCON1,a0,d0 - - moveq #ECON1_RXEN,d0 - SETREG ECON1,a0,d0 - - moveq #1,d0 - WRITEREG PLinkChange,a0,d0 - - ;moveq #1,d0 ;already set, see above -.err - rts - - -;--------------------------------------------------------------------------------------- -; -; Bring device offline -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_SetOffline: - move.l a0,d0 - beq.s .err - - ; disable crypto engine and all interrupts - move #EIR_CRYPTEN|EIR_MODEXIF|EIR_HASHIF|EIR_AESIF|EIR_LINKIF|EIR_PRDYIF|EIR_PKTIF|EIR_DMAIF|EIR_TXIF|EIR_TXABTIF|EIR_RXABTIF|EIR_PCFULIF,d0 - CLRREG EIR,a0,d0 - - moveq #ECON1_RXEN,d0 - CLRREG ECON1,a0,d0 - -; move #PHCON1_PSLEEP,d0 -; SETREG PHCON1,a0,d0 - - move #ECON2_ETHEN|ECON2_STRCH,d0 - CLRREG ECON2,a0,d0 - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Enable Hardware Interrupt -; -; In: A0 - Board base address -; A1 - Signal Task - task to receive signal -; D0 - Signal Bit - the interrupt will send a signal to the given task (BIT, NOT SIGNAL MASK!!) -; D1 - Interrupt mask (pass 0 for now) -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_EnableInterrupt: - move.l a0,d1 - beq.s .err - - WRITEREG PSigBit,a0,d0 ;save signal bit - - move.l a1,d0 - WRITEREG PSigTask+2,a0,d0 ;lower two bytes - swap d0 ; - WRITEREG PSigTask,a0,d0 ;upper two bytes - - ; enable interrupt for incoming packet - moveq #-1,d0 ;magic trick: the board enables Interrupts - lea $4000(a0),a0 - move.w d0,($4002.l,a0) - lea -$4000(a0),a0 - ;WRITEREG $8002,a0,d0 ;only with this "sesame" - - move #EIE_PKTIE|EIE_INTIE,d0 - SETREG EIE,a0,d0 - - moveq #1,d0 -.rts - rts -.err: - moveq #0,d0 - bra.s .rts - - -;--------------------------------------------------------------------------------------- -; -; Disable Hardware Interrupt -; -; In: A0 - Board base address -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: assumes that init() was called before -; -_enc624j6l_DisableInterrupt: - move.l a0,d0 - beq.s .err - - moveq #0,d0 ;magic trick: the board enables Interrupts - lea $4000(a0),a0 - move.w d0,($4002.l,a0) - lea -$4000(a0),a0 - - ;WRITEREG $8000,a0,d0 ;only with this "sesame" - - ;disables all interrupts - move #EIE_INTIE|EIE_PKTIE|EIE_LINKIE|EIE_AESIE|EIE_MODEXIE|EIE_HASHIE|EIE_PRDYIE|EIE_DMAIE|EIE_TXIE|EIE_TXABTIE|EIE_RXABTIE|EIE_PCFULIE,d0 - CLRREG EIE,a0,d0 - - moveq #0,d0 - WRITEREG PSigTask+2,a0,d0 ;lower two bytes - WRITEREG PSigTask,a0,d0 ;upper two bytes - - moveq #1,d0 -.err: - rts - - -;--------------------------------------------------------------------------------------- -; -; Hardware interrupt service routine -; -; In: A1 - is_data = board base address -; -; Out: - -; -; Notes: assumes that init() was called before -; -_enc624j6l_IntServer: - move.l a1,d0 ;no pointer supplied ? -> return - beq.s .rts - - moveq #EIR_PKTIF,d1 - READREG EIR,a1,d0 ;get interrupt status reg - and d1,d0 - beq.s .rts ;exit quickly when no packet pending - ;CLRREG EIR,a1,d1 ;clear interrupt bit - - READREG PSigTask,a1,d0 ;upper two bytes - swap d0 ; - READREG PSigTask+2,a1,d0 ;lower two bytes - tst.l d0 ; no task ? - beq.s .rts - move.l d0,a0 ; signaled task - - moveq #0,d0 - READREG PSigBit,a1,d1 ;get signal bit - bset d1,d0 ;signal mask - move.l a0,a1 ;task - - move.l 4.w,a6 - jsr _LVOSignal(a6) - -.rts - moveq #0,d0 ;set Z flag - rts - -;--------------------------------------------------------------------------------------- -; -; Reset Receive pointers -; -; INTERNAL: re-initialize receive buffer in case of problems (limited testing so far!) -; -; In: A0 - Board base address -; D1 - flags -; -; Out: -; D0 <= 0 - failure -; 1 - OK -; -; Notes: - Doesn't check for Board Pointer (!) -; - doesn't re-enable RX (!) -; -_enc624j6l_RXReset: - - moveq #ECON2_RXRST,d0 ;RX Reset, clears RXEN - SETREG ECON2,a0,d0 ; - ;moveq #ECON1_RXEN,d0 ;done by RX reset - ;CLRREG ECON1,a0,d0 ; - - ;-------------- manually decrement ESTAT packet count --------------- - move.w #$100,d1 ;max. loops -.clearESTAT - READREG ESTAT,a0,d0 - tst.b d0 ;ESTAT_PKTCNT7...ESTAT_PKTCNT0 - beq.s .empty - move #ECON1_PKTDEC,d0 - SETREG ECON1,a0,d0 ;set packet decrement ("frame", actually) - dbf d1,.clearESTAT - - ;oh. ESTAT didn't move. This is bad. Full Reset needed - ;(unimplemented yet, pretend we're good) -.empty - ;----------------- restart RX with proper pointers ----------------- - moveq #ECON2_RXRST,d0 ;bring RX out of reset (RXEN still off) - CLRREG ECON2,a0,d0 ; - - move #RXSTART_INIT,d0 - WRITEREG ERXST,a0,d0 ;set RX start pointer (end will be $5fff) - WRITEREG PNextPacket,a0,d0 ;set user read pointer - - ;Multicast,Broadcast,Unicast(self),MagicPacket,correct CRC,"not me" Unicast - move #ERXFCON_MCEN|ERXFCON_BCEN|ERXFCON_UCEN|ERXFCON_MPEN|ERXFCON_CRCEN|ERXFCON_NOTMEEN,d0 - WRITEREG ERXFCON,a0,d0 ;set filter TODO: pattern matching stuff - move #RXSTOP_INIT&$fffe,d0 - WRITEREG ERXTAIL,a0,d0 ;tail pointer in buffer = rx-2, wraparound - - move #MAX_FRAMELEN,d0 - WRITEREG MAMXFL,a0,d0 ;set maximum frame length - - ;moveq #ECON1_RXEN,d0 ;uncomment these for Auto RX re-enabling - ;SETREG ECON1,a0,d0 - - rts - -;--------------------------------------------------------------------------------------- -; -; check for pending receive frames -; -; input: A0 - mmapped board base address -; -; output: D0 <0 - error -; 0 - no pending frames -; >0 - number of pending frames -; -; trash: - -; -; notes: Interrupt-safe, meant to return quickly -; -_enc624j6l_HaveRecv: - move.l a0,d0 - beq.s .err - - READREG ESTAT,a0,d0 - and.l #$ff,d0 ;ESTAT_PKTCNT7...ESTAT_PKTCNT0 -.rts: - rts -.err: moveq #-1,d0 - bra.s .rts - - -;--------------------------------------------------------------------------------------- -; -; receive single frame from HW into supplied memory buffer -; -; input: A0 - APTR mmapped board base address -; A1 - APTR buffer for received frame -; D0 - SHORT maximum size in buffer -; -; output: D0 <0 - error (i.e. frame too large) -; 0 - no pending frames -; >0 - size of received frame in buffer -; -; trash: - -; -; notes: -; -_enc624j6l_RecvFrame: ; - movem.l d2-d7/a1-a3,-(sp) - move.l a0,d1 - beq .err - - READREG ESTAT,a0,d0 ;number of pending frames - and.l #$ff,d0 ;clear out count (ESTAT_PKTCNT7...ESTAT_PKTCNT0) - beq .rts ;nothing in buffer, return sheer emptiness - ;at least one frame in buffer - - READREG ERXHEAD,A0,d4 - READREG ERXTAIL,A0,d5 - - ;----------- check next packet pointer and verify expected state ----------- - READREG PNextPacket,a0,d7 ;get user read pointer from private space - ;lea (a0,d7.w),a2 ;read ptr for next packet address - ;READREG 0,a2,d0 ;next packet pointer - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - ;verify next packet pointer, re-initialize recv if this is invalid - cmp #RXSTOP_INIT,d0 ;bad pointer (<0 or >end of memory) - bhi.w .recv_err - cmp d0,d7 - bgt.s .maybewrap - ;unwrapped next packet - move d0,d1 - bra.s .ptrcheck -.maybewrap: - ;wrapped next packet ? - move #RXSTOP_INIT+1-RXSTART_INIT,d1 ;unwrap distance - add.w d0,d1 ;next pkt + unwrap distance -.ptrcheck: - sub.w d7,d1 ;length of pkt - cmp #MAX_FRAMELEN+2+6,d1 ;must be smaller than max framelen + ptr + status vector - bhi .recv_err ;-> reinit recv (am I paranoid ? -> try ENC28J60, then you know why...) - - ;debug: collect packet positions - ;move.l recvptr,a2 - ;move d0,(a2)+ - ;move.l a2,recvptr - ;addq.l #1,recvcount - ;cmp.l #65536,recvcount - ;bgt .recv_err - - WRITEREG PNextPacket,a0,d0 ;write pointer for next packet - - ;------------------ check receive status vector ----------------------------- - addq.w #2,d7 ;increment pointer - WRAPINDEX d7 ;wrap D7 if beyond buffer - ;lea (a0,d7.w),a2 ;read ptr for first control word - ;READREG 0,a2,d0 ;last control word = length (byte count) - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - - and.w #$f800,d0 ;verify (should be all zeros in upper 9 bits) - bne .recv_err ;receive buffer is wrong -> re-initialize - - addq.w #4,d7 ;increment pointer - WRAPINDEX d7 ;wrap D7 if beyond buffer - ;lea (a0,d7.w),a2 ;new read pointer for length - ;READREG 0,a2,d0 ;last control word = length (byte count) - READSRAM a0,d7,d0 ;move (a0,d7.w),d0 - - ifne 1 - ;D1 is the distance to the next frame = stored length + recv vevtor - sub #6+2,d1 ;STATUS VECTOR, Pointer - move d1,d0 ; - - else - cmp #2,d0 - blt .recv_err ;can't be: SRC MAC 6 DST MAC 6 LEN/TYPE 2 CRC 4 (discounting variable data) - cmp #MAX_FRAMELEN,d0 - bgt .recv_err - endc - - subq #4,d0 ;subtract CRC length - - addq.w #2,d7 ;increment pointer (skip status vector length field) - WRAPINDEX d7 ;wrap D7 if beyond buffer - - ;d0.w: length (without crc) - ;d7.w: read position (beginning of frame, dest MAC) - ;a0: board I/O - ;a1: dest pointer - move.l a1,a3 - - ;generic loop: check for position overflows with each word - move d0,d1 ;byte count - lsr #1,d1 ;converted to word count - bcs.s .generic_read ;read 1 byte more if impair byte count - subq #1,d1 ;words - 1 -.generic_read: - READSRAM a0,d7,d2 ;get current word - ;move (a0,d7.w),d2 ;get current word - addq #2,d7 ;increment position - ifne _OPT_BUFFER_SWAP - rol.w #8,d2 ;swap buffer to Big Endian - endc - WRAPINDEX d7 ;wrap D7 if beyond buffer - move d2,(a1)+ - dbf d1,.generic_read - - ;frame copied, now advance HW pointer - READREG PNextPacket,a0,d1 ;write pointer for next packet - cmp #RXSTART_INIT,d1 - bne.s .tail_nowrap - move #(RXSTOP_INIT&$fffe)+2,d1 -.tail_nowrap: - subq #2,d1 - WRITEREG ERXTAIL,a0,d1 ;tail pointer in buffer = rx-2, wraparound - - move #ECON1_PKTDEC,d1 - SETREG ECON1,a0,d1 ;set packet decrement ("frame", actually) - - ext.l d0 - cmp.w #14,d0 - bge.s .rts - - moveq #0,d0 - -; cmp.l #$d8803977,6(a3) -; beq .rts -; moveq #0,d0 -; clr.l 6(a3) - -.rts: - movem.l (sp)+,d2-d7/a1-a3 - rts -.err: moveq #-1,d0 ;receive error - bra.s .rts -.recv_err: - ;serious problem: we need to re-initialize the recv buffer here - bsr _enc624j6l_RXReset - - moveq #ECON1_RXEN,d0 ;re-enable reception - SETREG ECON1,a0,d0 - - moveq #0,d0 - bra.s .rts - - -;--------------------------------------------------------------------------------------- -; -; send single frame from HW -; -; input: A0 - APTR mmapped board base address -; A1 - APTR buffer for sent frame (without CRC, appended by the ENC) -; D0 - SHORT size of frame in buffer -; -; output: D0 <0 - error (i.e. frame too large) -; 0 - no pending frames -; >0 - size of received frame in buffer -; -; trash: - -; -; notes: -; -_enc624j6l_TransmitFrame: - movem.l d2-d4/a2,-(sp) - - ;---------------- parameter check ------------------------------------- - - move.l a0,d1 ;no base PTR - beq.w .err ;exit - - READREG PLinkChange,a0,d1 - tst d1 - beq .linkup - ; link up and configured - - READREG ESTAT,a0,d1 ;Bit 10 is FULL DUPLEX (ESTAT_PHYDPX) - bfextu d1{21:1},d1 ;get Bit 10 to Bit 0 (MACON2_FULDPX) - READREG MACON2,a0,d2 - bclr #0,d2 ;clear FDX bit - or.l d1,d2 ;set if active - WRITEREG MACON2,a0,d2 - - moveq #$12,d1 ;half duplex $12 - btst #0,d2 - beq.s .nofdx - moveq #$15,d1 ;full duplex $15 -.nofdx: - WRITEREG MABBIPG,a0,d1 - - moveq #0,d1 - WRITEREG PLinkChange,a0,d1 -.linkup: - - move.l a1,d1 ;no send frame ? - beq.w .err ;exit - - move.w d0,d4 ;still need length later - addq #7,d0 ;round up - asr.w #3,d0 ;size/8 = words - subq.w #1,d0 ;dbf... - blt.w .err ;size<2 ? bail out - - - ;------ double-buffered frame copy to send buffer --------------------- - READREG PNextTX,a0,d2 ;"last written, maybe still pending frame" - and.w #PSwapTX,d2 ;sanity, leave only desired bits - eor.w #PSwapTX,d2 ;swap buffer - WRITEREG PNextTX,a0,d2 ;remember pointer (d2 also for ETXST later) - - lea (a0,d2.w),a2 ;write pointer for frame - swap d4 - move.w #8,d4 -.txcopy: - move.l (a1)+,d1 - move.l (a1)+,d3 - - ifne _OPT_BUFFER_SWAP - ; byte swap in 16 Bit words - rol.w d4,d1 - rol.w d4,d3 - swap d1 - swap d3 - rol.w d4,d1 - rol.w d4,d3 - swap d1 - swap d3 - endc - move.l d1,(a2)+ ;save to SRAM - move.l d3,(a2)+ ;save to SRAM - - dbf d0,.txcopy - swap d4 - - ;---------------- wait on last frame ---------------------------------- - moveq #100,d3 -.txwait: - READREG ECON1,a0,d1 - and.w #ECON1_TXRTS,d1 - beq.s .txrdy - ;100 MBit/s frame time is max. 0.12 ms (without inter-frame spacing) - - ;wait 50 us via CIA - moveq #50,d0 - bsr _enc624j6l_UMinDelay - dbf d3,.txwait ;approx. 5ms max. wait - - ;hmpf. abort last transmission - move #ECON1_TXRTS,d1 ; - CLRREG ECON1,a0,d1 ; - -.txrdy: - ;----------------- set new frame parameters --------------------------- - - WRITEREG ETXST,a0,d2 ;set new TX pointer - WRITEREG ETXLEN,a0,d4 ;set TX length - - move #ECON1_TXRTS,d1 ;issue "send" command on ENC chip - SETREG ECON1,a0,d1 ; - -.err: - movem.l (sp)+,d2-d4/a2 - rts - - -;------------------------------------------------------------------------------------------------ -;------------------------------------------------------------------------------------------------ -; -; Generic HW independent functions -; -;------------------------------------------------------------------------------------------------ -;------------------------------------------------------------------------------------------------ - -; -;delay at least D0 microseconds (<= $0fffffff or ~268.000.000) -; -; Important: -; No guarantee can be given right now by how much the given delay time is exceeded. -; All this function tries to achieve is to wait long enough in order to meet certain -; mimimal hardware delay requirements -; -; Notes: -; clipping/saturation of input argument included -; -;Input: D0 = delay in microseconds -; -;Output: void -; -_enc624j6l_UMinDelay: - movem.l d0/d1,-(sp) - - moveq #-1,d1 - lsr.l #4,d1 ;$0fffffff - cmp.l d1,d0 - blo.s .ok ;unsigned compare - move.l d1,d0 ;268 seconds -.ok - lsl.l #3,d0 ;us * 8 - - moveq #12,d1 ;1.5 -.loop - eor.b #7,d1 ;switch between 12/8 and 11/8 -> 1.4375 effective count per CIA access - tst.b $BFE301 ;1 CIA access = 1.4 us - sub.l d1,d0 ;us*8 - (1.5 or 1.375)*8 - bgt.s .loop - - movem.l (sp)+,d0/d1 - rts - -;debug: collect packet positions -;recvptr: dc.l recvlist -;recvcount: dc.l 0 -;recvlist: ds.w 65536 - - END diff --git a/Driver/enc624j6net/testroutine/files.txt b/Driver/enc624j6net/testroutine/files.txt deleted file mode 100644 index 6b9d726..0000000 --- a/Driver/enc624j6net/testroutine/files.txt +++ /dev/null @@ -1 +0,0 @@ -enc624j6l.o \ No newline at end of file diff --git a/Driver/enc624j6net/testroutine/make.bat b/Driver/enc624j6net/testroutine/make.bat deleted file mode 100644 index 93930be..0000000 --- a/Driver/enc624j6net/testroutine/make.bat +++ /dev/null @@ -1,6 +0,0 @@ -@set ASM_INCLUDE="C:\Users\Matze\Amiga\SoftwareHacks\NDK_3.1\INCLUDES_LIBS\INCLUDE_I" -del *.o -del TestENC -vasm -quiet -align -Fhunk -I.. -I%ASM_INCLUDE% -ldots -nosym -opt-speed -o enc624j6l.o enc624j6l.asm - -vlink -Bstatic -bamigahunk -L"C:\Users\Matze\Amiga\SoftwareHacks\NDK_3.1\INCLUDES_LIBS\LINKER_LIBS" -l"AMIGA" -l"DEBUG" -o"TestENC" -s -F files.txt diff --git a/Driver/enc624j6net/testroutine/vasm.exe b/Driver/enc624j6net/testroutine/vasm.exe deleted file mode 100644 index f5fde5b18cf7a5fc839a906a08d8d5d0dab465b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 282112 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%0Dw$FX}A& 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ೡ%;uUsZi$%NuHq2 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�Q|dgNQJLI|d4tmrk* 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 v4pIUgY6C6Z}^`h2e%Zy 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
Bb%F!Mx=i42dx9Cjg_>2?&(I9v3 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 H=MMZ2XC0R> diff --git a/Driver/enc624j6net/track.c b/Driver/enc624j6net/track.c deleted file mode 100644 index 6560ceb..0000000 --- a/Driver/enc624j6net/track.c +++ /dev/null @@ -1,153 +0,0 @@ -/*F*/ /* includes */ -#ifndef CLIB_EXEC_PROTOS_H -#include -#include -#endif - -#ifndef EXEC_MEMORY_H -#include -#endif -#ifndef EXEC_LISTS_H -#include -#endif -#ifndef EXEC_NODES_H -#include -#endif - -#ifndef _STRING_H -#include -#endif - -#ifndef __GLOBAL_H -#include "global.h" -#endif - -#ifndef __DEBUG_H -#include "debug.h" -#endif - -/*E*/ -/*F*/ /* exports */ -PUBLIC BOOL addtracktype(BASEPTR, ULONG type); -PUBLIC BOOL remtracktype(BASEPTR, ULONG type); -PUBLIC VOID dotracktype(BASEPTR, ULONG type, ULONG ps, ULONG pr, ULONG bs, ULONG br, ULONG pd); -PUBLIC BOOL gettrackrec(BASEPTR, ULONG type, APTR info); -PUBLIC VOID freetracktypes(BASEPTR); -/*E*/ -/*F*/ /* private */ -PRIVATE struct TrackRec *findtracktype(BASEPTR, ULONG type); -/*E*/ - -/*F*/ PRIVATE INLINE struct TrackRec *findtracktype(BASEPTR, ULONG type) -{ - struct TrackRec * tr; - - for (tr = (struct TrackRec *) pb->pb_TrackList.lh_Head; tr->tr_Link.mln_Succ; - tr = (struct TrackRec *) tr->tr_Link.mln_Succ) - { - if( tr->tr_PacketType == type ) - { -#if 0 - /* simple MTF for PacketType search */ - if( (struct Node*)tr != pb->pb_TrackList.lh_Head ) - { - Remove( (struct Node*)tr ); - AddHead( (struct List*)&pb->pb_TrackList, (struct Node*)tr ); - } -#endif - return( tr ); - } - } - - return( NULL ); -} -/*E*/ -/*F*/ PUBLIC BOOL addtracktype(BASEPTR, ULONG type) -{ - struct TrackRec *tr; - BOOL rv = FALSE; - - ObtainSemaphore(&pb->pb_TrackListSem); - if (!(tr = findtracktype(pb, type))) - { - if (tr = AllocVec(sizeof(*tr), MEMF_CLEAR)) - { - tr->tr_Count = 1; - tr->tr_PacketType = type; - AddTail((struct List*)&pb->pb_TrackList, (struct Node *)tr); - rv = TRUE; - } - } - else - { - ++tr->tr_Count; - rv = TRUE; - } - ReleaseSemaphore(&pb->pb_TrackListSem); - - return rv; -} -/*E*/ -/*F*/ PUBLIC BOOL remtracktype(BASEPTR, ULONG type) -{ - struct TrackRec *tr; - BOOL rv = FALSE; - - ObtainSemaphore( &pb->pb_TrackListSem ); - if (tr = findtracktype(pb, type)) - { - if (!(--tr->tr_Count)) - { - Remove((struct Node *)tr); - FreeVec(tr); - } - rv = TRUE; - } - ReleaseSemaphore( &pb->pb_TrackListSem ); - - return rv; -} -/*E*/ -/*F*/ PUBLIC VOID dotracktype(BASEPTR, ULONG type, ULONG ps, ULONG pr, ULONG bs, ULONG br, ULONG pd) -{ - struct TrackRec * tr; - - ObtainSemaphore(&pb->pb_TrackListSem); - if (tr = findtracktype(pb, type)) - { - tr->tr_Sana2PacketTypeStats.PacketsSent += ps; - tr->tr_Sana2PacketTypeStats.PacketsReceived += pr; - tr->tr_Sana2PacketTypeStats.BytesSent += bs; - tr->tr_Sana2PacketTypeStats.BytesReceived += br; - tr->tr_Sana2PacketTypeStats.PacketsDropped += pd; - } - ReleaseSemaphore(&pb->pb_TrackListSem); -} -/*E*/ -/*F*/ PUBLIC BOOL gettrackrec(BASEPTR, ULONG type, struct Sana2PacketTypeStats *info) -{ - struct TrackRec * tr; - BOOL rv = FALSE; - - ObtainSemaphoreShared( &pb->pb_TrackListSem ); - if (tr = findtracktype(pb, type)) - { - *info = tr->tr_Sana2PacketTypeStats; - rv = TRUE; - } - ReleaseSemaphore( &pb->pb_TrackListSem ); - - return rv; -} -/*E*/ -/*F*/ PUBLIC VOID freetracktypes(BASEPTR) -{ - struct Node *tr; - - ObtainSemaphore(&pb->pb_TrackListSem); - while(tr = RemHead((struct List*)&pb->pb_TrackList)) - FreeVec(tr); - ReleaseSemaphore(&pb->pb_TrackListSem); -} -/*E*/ - diff --git a/Driver/enc624j6net/vasmm68k_mot b/Driver/enc624j6net/vasmm68k_mot deleted file mode 100644 index d5301314b9926df2b788a6387091fcdef205e640..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 363476 zcmc${4}6r>nJ<3c$x9f9F&)zpM{X7l!(=*yAv3aB8u>&zgaE@BLzqxYU9L_-^1cB> zGA4mWHa|KEF-D|rL~B{=dfi@sEn2RmETz=t<3>tZYN?;-QWssXakcA@q4wsl5AtQT61fFZ&}&vFsDu z3sq14@pLR@3Y(l4N#)D=VxN)QVQaT1Tr$>?<8%pW*y0s2kMWVz-|j0CL)}A1P~w$- z;Vl!I(5jvsUQFq=^C3|bDcVufGrvMOm;O$;p8xs$sIZs+fbukjIQe#;jL3j+z1`>C zEbKQTh6D^QPkGobf+x0WOFs+Y$0ios3G;cXjCZzc>-qXx;hyI6fnw7y{ z#FydQYr6BFL5wnvq31u7_^|w%#7X!Rap;G57a242XS%gxW#YAiWunT^TOA2IT+0nx z>wiIt7s{_Je=xdPxI#I>rc^#^@+@#L3%|$k>xEyQvsw6ryTLy1Ht~AOZ|Ly%CmL&o zc)d6U_Y6EUL!$f#l-?JSMZ#y=WyI@39^Fen(NbQ!kJ{yT_L z^k9Ps+$p_bsWxGI3s}iXuZjzQ`Pu>|MS5z2S3nV#4lw3IFaxDxbV@UNp4`w6VDA zr+{*Z-w(8lMB~!miuIt9l=Zu-YD@H8Ew{K##nYvgp}BcyiL_Har;*b@o{-Gadx zyWh0?{<3O!?0(}sm6R^+s#ijycF*b$gcD^VW!3GY$}KT{q3cjw2|@Oap>?Ynnsa6z z`>ti*0n4}EY>#dek8sE_3fbcH5zKq4SI2gm?vO);)QZA;eR1+L&LaM{?D$kitq)=M zn1Rsrk&x#jh#49A-s1Gv0A^S09^-TxqG*S3Q>i)Y*R4)C%72h{r|abqRkznPY-r!u z(%iP#Aw97UA}{2p8%>xob<#`y%DL3u}a4h;|lsyzRn?x0B0s1M5E&E+d!9Pt=8i zA{=r?0c&W!qN4*R8AB;!MJCLh4tw@76=vqP+76_QeB|LqxqhnE8wJ2$KI-m9|JWql z)qSEL%s?=nn@pFax;4q2bDyQ(gj4b1p`ZHxoME zXF}6LIh=Nz?R84qevWE1uSoz8{wCoB1qtoVe&Hb%#0~Qb0!87MJ z;nC`=S0|?qpnn=JU`JBS^%sBvA&w=dvwu;n+jIiP`3lB$tHC3s&$SeJ7rSIPetk(- zS3gqhPC7Y-M2Z3mm#+S9uXy1u+0`y6o~?g)c=&@vBPfhYOrQr#MQx@hx=q`SQeG|p z0p7YQi|Pa}Uofywgw2H(CT7VXY9+`&BtVN!q~!joa8M3x2zOzV2#W$>QgSM{;YsGG zS}M4Peu%*@1(**dr@-G;Ut#6$QMm&bI`Xv>9GtHcxb!7$UAq-EF;2yH5fHZBsM8+- zsWU;X2`U^3Bj3X)$xP=yE2JZ5XLcFll}s6K1v{X&Fa51>#rqR>O1;6>DZWIb{8_^2 zP>)RcYtZw>r(WRMqkPkN#+QZVSg&b|-^sN)XE+oVO!3D~&?wrsYRl%9ts9$7*;HHC z&?F1nq|w^4Sr#^Jk?k$?0}fGj`_|gF&BYspXlrP1r^u}hZ7oe(8y0+{wzZkQjiy?> zT3TgoI}*3wk!+BK_4rU3RNcP0rGBGvhiu!ptwFXJ43H8EY{-ygN_*sEjfZkQ`lQZCK`JjOUZ}r?t;g;2Nh@L&p9|D>w z!nMIc?M!@0*pBQ&-?)WCH1w&N80ltsYtTRD2@fdSQ~8?E4BcCkuz7EAK8_SQh?NJ} z7ZQ$`+e!AfVT^XLYYJjekH0P*gL9t_UxIE--)AUX;9IY7EGJ?u0$qC3bQ#hV2k_1w z#RG(GA4&+OOF;UEIXyuq#6#dz1%TCM^(c!oo$oJ-P@m$K4x7%<0>-{}&DnLUnFd@I z4U`d_vHs07MyG$fg8Qj0DF(hx9LM%bv_t#)SdO#&w?c;U0hty#>HF4~Itj}{C!VOC zXBY`Tw~U4mZ6&?cp(|x|D8Ssyrn`d#tAdDNEglQ&sB-QdRZc&b<6vCuRCQSTfhY~x zEgmh>qnmlN42kg2J`p55?*=V|mWmSZ?AU%0-dxNz(;(}V5}to4)~yZ+a&0>enOAa& zy3iRXLMuRfumr(0AvB_ZStIQuE-*|}0n^x#;!O^*Bcy=w-)GQBE5Sc|D1G}m8rQ@T zjx`Oj6i@CmJfm7i?AWUy5xY6&6^NOn5hAwRw8n7YpbR*mwn<}PzbG*h7_IGQuD3|o z6Stc-ppj1 z$tp>RK}u=ol;$E!t}Iqk zQsBo^`giz+)bH!|2|2qs=ee$+?PN+$_2#yVn$-Q>M()B+z@p>b7Md1)H-{t~H%mBF zV@M-nCYOKC7e^ZxU=-`Fd`-VV@D;XUSj3<`Z}GIkYZo?Q5U;zVy`gXejh`9$9$1hu z$d19JXoVgi{~9y5zsvl%RrGgZrJi@>yvQ za@xVmN&9ak&pN?zJ2-9MWu(pd688b5E#tInFC(q(okpu%upQJ_UQXISCRAE+jM9p; zmytHdb<9fJ$7v6bo7Qj5eoM!1E35np&SCriMh-azO$-IbN7bL(8`|1Q4s2*LMBT<_ z(bn1kX%M`nrEU}bHg0LYjecuews1W9Zs=$b?JaGB=0GwW?TGM*b8;=u+av8lUI&hV znY6hnR4$y!g_SlTmi_^LuRK5Kuf|yA47qrw8v*@^U-c72&>V28f$j}OD#db6;cK-E zd4o4LUR}*+(`o7+w4?$r&wC=Vy%;TKC^trHJ9<_%l||ze-1W6$#*mN7JN@oXaFl5w z8@RZpX4LIYg2#KSytM{%n)|w=RgU zX5Mq=P=74OGxq~j6u-rbG)+Z`ykdhQ9lqx`N6*=t1}&3kFQ`U2sCWB_m%Xkkc~ zf_b^pW%Ogdj8M^Mc)|T-UT8XM=b+lPc2<*) ziRbEtZ4QC?55%{^HZR&`WZYaVXgvGJC4rDA0|p{nwZlhHcdbQ;2W4BCfVOsl;b&Js ztbmj~Q|7$gxAgaR5t`<$UVHc4Um$h?Xr;Q`HFDVlGomy@@ddT$yPaCn_VI z1XJ1E-;=;5suN;rP+`e_e1e)6OT8vFu%pFq(H-fETJSIgRFC)$E4Q@?k^8EZ8#JKf z@du;a%55>{w$7y7Ku6=`wl0J54uos9;)|eCl+bCFFl&Mm9NelH#d6~+=F|%l#LUZ- z;6rSm75hbRtUZTduj#%mFEe6)IBLX3TTb0d7>+iI9Kz|>-clpU6s!JIA3!eP=o923 zw4!f6%WVZ!26UvzY3WnE3ilZ#<8Y-}1=;M|diZxrs{Sa;+MaxAL6C)(Ncydj71*LX9_Rw$r~8 zQW5oIt@?y7QoTA;{`K-!V+N&%oQM(#8;|ZO#;hkn^IeU;e<|o&rHHuzFSR;R{M8gn zG!&Z3d5af^R2dP{BccuUdsVCCMkmGR!oN8=g3SP7b5}Mt$tSi8vq5LAaBU(g(if?G zr+kEb?Gv?=8L(o#j9AkriiMf;Bi!2p;(9R^D=^STv}$voL0jx1-gE@F>w@pvj zw%L7O{q@h6eln%(k~Gns}9~t zW0S@uiP*EO*!D}tZin{ZoQkc#f63SZ#6D`pK5@y|LBxK*iv7LGTF58@)s=)GP2_xH z^+%?_ue}AChGm&I2SG`sDXFmXyX8`)YmXuJ3@diYq%AL_cVK9G6s4!E(wW1ixq&vM za>@DRQe}!TBeN2@g{^pnA~&yP-6K2MTQXccCOz@*q)b>F(x-mh_7 ztNm>g;m(=n-c!Q~L&0SO?f zXqi5C^%<@FTS}#!OR;;cN;?Nh1*A>wUQW-ea5w2ZzbL6*4c*gq9NrOm6AQ^t z>*J6;{4NPap@+W%F(0eqIfndN!pR}WfK%r>$V&h7lO*6GoeF6I7TmsNV*_S63+fx{ zwqO{8MnOQR=XuZO+S?jv9z=fWXF&_%R?^dqN>$yC-!}EzBoh+ZqIZ+wRzm z{F+-xHLvpf2EI4fb~LoMwzRe(&*Vmx27a4sH((~Wg}kY(wzkHNMmv?Uq473e5CEje zYh!H_3MK!Bwsd*yTF@axZE+JSkGWqlP5!EG|3;k_lf_W7t)`XO_8vHqreZy2v1nF*HeUj?lam$g<4*R6Jb zQ4|~b&iNuFG}DgX^^nVLYwzJ1gI2w#FhZJKF6#l)6`+zH2&lEZ2duTc2Y4;7KfRW> z`hyF!roANCqRXNdy})@DB%r(y(Uw-FW-Gyv`W83oK2g0IbvVc+V4TO8;Gx;o@J!6R zYzZNr;4&kS0fe|$HVK_)co+KnR-~X8x^d)ds5_n-fE1;Ry7gE~(3c}88S~yC?XH)M z3vgL+Yx?LL5O6=YAShDhV-11JAA!}#K=f%JL*!BV!{M!=D}YNUVxq?+Q47#LG{ZX2 zk*NMR`~kSCz*t7owpP^>h;Tbq0Gm6_5@<`U8Qf|+uY}ADQC`rXTi9+l^Z;7(yT3}< zi(=e%Cu84&4nEU({?0F|t#MZALeR3b>029xGRvF#lDbW&8lhEbID72&WClz@JV7SuYZ zrD?rhqOYR8u_}qV!A!&90+!mfQ>lbKo{IM!Ox2z7q1Hl;5FV_rQ@uRiMy)0KYE}N63dn5BT`?B|dsrw4o0In9Yqr!KX zzk|Sy4^IF(cTZBZ+r7~>-3`TF@kXCZTZa|;Xe6w8r@eW1eXeUT-c{2LmmVJcYPTHx zdUyRNH+47UCLFhPQ|Ov!hcC!!N^ef|&X{}Hbg|6zuvc-?hb>O}FxPeu>M+LYCcN@?}>)8}Ml`56)R?H8qU z;v%^03|k)DC+&cwfV5TAzlc8D8qC6`rVfE&?i(GdFR8Ypa)4{n9%8K_1YIMo3O~pk z%N25XW4@>1|i z2Vu#o#R|^R?u(!ue69KpmOD5P2ep;=9<*JMAo}AVYZHlYaeY>=SW&ZlZDDv((-yG> z_4)d0rt}IU0{m;g7G^2`>SmZq0wmh62_A$XFOqjM-=T&0AZK1@gP5T{bN$&*|)XQ zOL;1MGUZg5`OE_%Hcefw{JTVI%iWx%-@*Hbt&j?%$O{A+o z=^AAG8m4H(|t8ewnrZH#RA`a5%gk}PHJ0czjG07Vm*-7U#X3E@#rSn z&VhH5M%V+cP#3bPehy0;;kAvQ2hn#rEiA%#y#3}n_%2fJEl%VzT~W_=LB^0Ws&pGMJO7 zGnee261MwJu#Q?LNX@f7KmcdP?w7zJofdN|f&ts^_lJkZ1; zMF(4))(F*uDMfFq*gDJ@>S^&w4OXmoAbsk2HTJ=DAJyRhZK3<9k**E=h`d zS=AN^S|nXMwCcAnZ*7&ba$|FYtZdm(EM<*cUAGDLJJ(9fu~0(Pt!dfPx}kw+nDp#l zDcgo}a;Q(UwZcuhAGC~+XvsE(iC3X2rNGV`g7B)LrxjktF5oMle;LO zt%qe{fr^X#>>STQVZ{hb*tQEfH3aBw^&#d|ZRh-u5CTQQ!@L2ucw#7HLqKx>Z9)cJ z?IPCO(s+12}rEqOB=NctdQWQl{>7=!A38gALR!753(vf z8Sj3oyXgo*{poy*Krw7v`z^q8h4N*)+EbYrUuAf{WxUS)>m03lRvCK-f@GpwP*A`z} zI`0b3Ppv@<;?cT<{M|YXof@Rnm@qz;TGbZFWv@ftCY^st2-dcc=~~D}I9U!^M}|7T z3G+-08tS*8d_SnhPCR8LsD)`;T>H8&5}K~ocUwDIVgt8ku8mO#`45m?pg$z~FdyrI zoRI1iv8zmxe*n6GLPO;DAlHiR!+2M=Zd~<&sD{hHvuXM7AdM|m{OpEZfF}&ew-nsJ z61H%kMReR%csd;DjrQ$mij(9is-YE?)SidJi6`~SrFhxdL ze5cI0DfL$0+kJkqZiieJY8<{Gf=wQ=AN)iYl^9Ed6)BWiK@cRiGj5c-)s;WN`ixF- zu?ka-QMMxK2<3Q%-xggOU3T>7@xj5PFD#2LEnhm+<)58DGujn>W;gM!un#l5iE}g# zW1YW(>Wx*=7EvPCcyFarQ1|=+7uQ^fN8>xWRz>62ilKt#)#j~aoyqlS+K%*>s6`Yt zuz7`VDr!)E^q-Cm4*t^%<*Ek0Q8g&mUY)cC1U=wuG-u)6gxPJrs5JBO-efxQ-e%_F z-EQP6tU%KsM5Ez=UnACFZ1J7!)5Jba@X;)vP1qTuao9Gvn%LD2*T&g5i{Nac;d2l3h>1wGOUE{BB^M09^HO-Gtu;_IVIPLur4RFb1G6*&y^@ zglt4e34WU?#uafZMhnL%fPWjO^uVkZDZ=MN+9j zj=2%xLR-sq(TrImG+Lde(GpPVd0J%<-?Q-I8;M1fECa(AK({664YS{Tlw97~iS|p! z;oKSx3FGiZA#I_EKBMRiR#<;WF0`U9udZIr@oa_{_5N~5%NIn+`LdRnx>TU9Y^E5yIfiST0Xh7q!pz;G)f`u!(BB?03N)tlchS>FqQ92F+Ob81IfqgUqXi>)$Y8XLF6Cn__pFxliMFLqY6H(}S9Cig(5Dj@`9Ef4Xaf9=p;w2Z~a8^p^ud zJkh^>ZX~y{)QmB@j2^;Olw|Xi=_fl+_>mU6g8ic`v87saZ~SC>I57+Fg$d87lvw>i zN*y8c$OY_1^T?`^IS_aYAPQ6^g#ChrE!+0oiArgj1+KS1L`UVXb03dDI-F(oaXVto z7tutX)w6T)ElDMvoo?k>hD(TZqkK;hg;32_9>Ki&2hlsea!ydXwe)0a4Bb=HlA0c= zV|-V!_fk5FAAuH<)Au0-S<_W#a%^Ns*8^j|L@CWPINmrZDFsrlqle=}M^a|NbWtlb zdD9ReWhQi`DmPlwLv4jVLjB1=|JGmHFOvBo0ee)J#+D+l+r#LYnyIHSQEfG0yQ|kA zj*}#sFNkE59sLdJORJZDL9~N6w@+RVhWB*~C)9EYdNMc(aLr&_tT2bL4tg?}u85^J zk6$Z=lW3f4b%|P3dUZK4( z9(@;cbf&S^@CyR`bKUbtVXev6Gjm>nt<>%7)$>6P#xE9(o_zy=ns2S!L8uo^6 zL~E3z473Vl+++;B+{AcbE|SY@?)=dQqN9#hpQ@c<5nd+@>1`1mHFsgYjnKb8(eTko zn0W^4@EukyDJyO0F7(whIXl+Vk}LJ+F_vMRv0J0hB8!a{tVv-c0o}Q-m!v_5B#d#I~zX9f&HSQfnt_oB_5Ls5$)fPx-vwd z$x^Os)C?wVJR15!(-Ez51fOJYIAC#OnF|ZAZSh{L4Pe|iV$cHYhfca2SgSsL~J(l8j8gkj3Z@!oBiEOB2HT3)QD zNwS4xc)Zf4oQU@(%40p7mjK3&(DZ-!`390$);|C9_?`JKlAxfc2#46lYAmEvcEx*Z zdYYaEoE>O2M_OjE^+3}}bAnQu6S!Ox<7-MR-Ycip+yzb!1wBC!?`bL+7urRH-zhUM z4?_LDbpFQoA+4PaO;6WtGN|-}@!l*dZ2hdY(L2+nng1Ku)R&}F8^@W>!V}|7&j*A( zOF#QaeVc_Fiq}>QJdG&VR;S7mk0 zmF)uDpdx`?va3F^J)12di32QMu{ChE6fPkt%~>Jz^8Q4#C4bErk$!mIgBY?mQO%)^ z#yFwj-o!!P?K1=%`HDYr*OPe+U}3nw^0grKA5_O7@{zkknR3W9udnOz0S) zgUsW?L-0qec6l{8UORYTl;%6k2ZLkyU|7yZ`k+W!9B>Ka(=ZnSp9c4)*5{8-)|a$K z3$rhPOBiE$V<4M1_FS4bYBNXiM(9iwT*hJxu7#f!E-{pb3!~>ImT$pXK_BCCN%1|3 z{d9NTD_qVdvl!)ULj6C&K^)`rHy!+HlU2rxs@`U?MUDOdj|byWBc&>#R6jjh_i9lr z0nY9EvvK(V#dLrRTxE#g#bvIwL#(=L%lwU&U6S=%Ra*sB1NJ3^7vLa_s@ucYF8uS7 zzgYC;((7vLHq)K?m=&GGn(N(pj)>Dz9U-;$0&ry*|#|=RfRRWztG(!5E z5@G5+&xCE!NQvOz@`X0v?5ZuHoUN_{og!7QzwtL~mL2G{!{*~RfAe*?BwTO*%~zMj zmfoiS&%dczRwCZn8!ay{f9HwlveYw+MA%l66J2`jnSQKv*DM?As{a)8;GF2PcMnG+ z&n)%NrrgOcBWw%aA%xh+HE`kW6ds(1ak%oe2v+Byi?p%+c)(iQ9N^eaZxrWn)N#l@ zD`ekAAqTCHgV`ZLUVo;1l`r-dH6{yjX2)q>={m@Jb$RDz&iZw$GjY~u#o0GOoa(GN z17qT#)XlZ+jT;*p8rrbgyRLTRq>r?Jean`*iTvAJYnw+>jKLf9vy45$+tX>hO@P;Z z7hKv&OScZ1oh*X*}iWoT#xb}Ku2*1)@bMzJqvU`IW#IIrsQVlFR^dU7t9Z5i-zuUj%a@gxN0&v*U)k|W_cKcedK+?$+#mf@y{)E;ERqCvKw|YY?_gJ5 z0JX4H{Q*+Rri0Mb4G-6Oh*yNQ)X``J`oN{#N5fkA(&$pc_E!ei{Pi{w>%PqqU;aYZ z^Qlwan?5eS({C#lC~IY~jM6{7%*+jlzMq}!@h*jZ8d4%WH@fV(qsNa2#GW0|idco= zDAk_s*`U|-Cf@YsMwd!kvF6tTluO0Y!NH$BckKAF=+X}HLgZg6URe1r70^FN%2xue zl|y$8?I;$0P1?QFcJH|FuKF1@z0kHVD_^!yZpBDWzl6rJ7QNG`CozLKy|79 z7pg%*46j3d@V!+&xct4x-`(4tBKi*JR{wS7YdO3p6g9k<24)crG&q4JlHE3qw0e^0 z;VHB^Y!@%P)$^=Y??5fO6RnqSbMLZZ2n!=^KA7F+5v$E3z+ePzo;pA+ZbysjkKFyY z-G2LncirFHA*HtG&i8)!o5$bV+r2|kLDlUs)JlsgE8!dVl3QL!Z{piR+;AGtD|lYV z^A?^nc+TQMzr5iiJm>LT_@?zod-R|;xWprPpCg|dK~^M@z*MwD8Kh*J7q+0h?l5@l z*oi^4?r^%xH`_ZKGC|2<(naa99wV19Z#$bT!Y*>p0H_uxa4Emj*!S(>(-pMXK2c!I zgmi#7rej_wVrc>=kC98q9xsI3jrj7ju&OFUSW3lXsnjNdmPSE?#sL!G&~7DTuUYGd zMaH2E;7O`HI)zGGc2?NEee>2pPTeQmMM11Y3vv9Zo`!nluKVM#D!jo5n^o#x!qpIN z)sCVbu9s@Mz0;0jg~4Bk}rK7UnN>ic|)%2C9)!WX*cTU z#tAV!l4zG~`rpYaW6I}I#-2O>_2*O%AMhiCI7g;ugV6GorOoQnnS;>K0i)Q9I!n!K zu=i&Q_YCa$PtR%qS5-|<{7$5IA5PW%U%-QS6?kyVe18*055hOBHvV*c%Y5jHcB7tI zb);EaqFL%bH;;=hug!ObUtnB&5u*I?K(FD=(4Y$`r)8)0@|-Ubmbr&h8~mAgc9}bL zrxllHg3B3~T#`=hOcE$roxu)fu@82Ngzq&j=>QcDCxmzhJptzdY?Du6$0+-pg1wd} zsde=eZQI0PznM#Es>@&}QGj!O$i~uRLKjpRp*}%&p4=y%K%ZCyySj9rpjdi`En(}> zq&{?Cb}zsQVmiudT!tP1D^#)&(e8Wl( zPC=ry9v@k`<;d*94;RUEW>RF1X>!*Ve;ghHZTLTn2F%C#w~4{cKbl;sZ9D zLAFxLc2rb%tXqwooxW;d>P2NgTIvP>)7Np@a#w2DZq@DdNNHhg4{q+zde2&WuU zt=9(GvfIhAB<*t3s*^g~Z?hh%MwigbOS@^4N2MJUn6WXF5onSMRKBJgX&%Lzi(P52 z;(P)C%VWgR*-p#rfPU5qi$k0!lxX&E!ulkA-Hes@)#m!2{<2<|&V)@)m&?4d&!@MN z73lCyu+Yy*+x)?XZwXdaum^!p6)RxtET^+kd#*1F z7XQ+fza9SQAHY%S7x^m5^3IIKieLxy(E(6s!~1x9>d&Ya!>$5OKTKyU(y3c6W0pUr z!n`+t8g#iK{Uz=AE>Y zTrb2x(c0Lzu|o*w`Iw3qIpvL%W_X1kZDq6;eKqmw*1(H^2zw@+7PL8Df?+YmKwb~~ ze|B{zOkeCcSI393%q4ezDFz#=>hk-1)$4X*3~-@;7kGDj*ZlL)msSanl?$vHk&Dav zx*=UEdLza$j1NvT;=AFN?ss;UKUDq@#qXc^o*&#XHzHhfQD->~eUay)(u;OcXV#_LM9qPmvK*z9Csv>x$}NcD^XaF) zh}VIgH+9O-8&mB(ItE(gRV%zaNpm>RK?Qmj<}eFUH|a(FoL7o(7`cl&bKXzrc>fOH zwT8YGvz@Jicq1M=o&r2{hM*JStoXJ|^Asxeuo+}Kvctr~_)N(ZPVG`5YR`UFi205hC(67*AL^k!qR@8Y zOiHsCJ5qIpW%hp|q$ zQADx6zG~HbLc{8+n^#w}_u=d2`gSa(jvG=wncWwxKMHnZELT=vu~4Hi>wwwQ8@c34cgVa3)s15jf1G|FGZ9lSV6m~5wz1KCa`^6^cUQ^<=f zrxLb&cYGIxnkUK6JdSszIf(Z*^C`SHnFsN1H=o42$lN=7sff;ACRSmcYZI;Z@fvCr zU+vZxFoiFe9&=ceh|VZ5lZVPgp}7g~4Q4&w&E_q5|E0MOqlz^ngUemhzuAKk1=3x} z;fuz1dUyJ;ibeJ@3F~aH)uqG_inVyJOPjz}&2Bu=p#j1mmnp6o05pF|7GGK%t_^Sn zu$CC?FB1&|Wx@svF0u)0rWjXz2p3j}O_8%CA@X_;sue~X&f5i6p=p|;)*p(*x;y1^ zFV+HRm(|!hfSQ9iDNkNplZ>rTDeSLif&PP7!C9p=->XZ}6H4J1CLipSMrd(Jl)&=1 z*GZNp!=eN`B9QmNo`##Ll|i$?SdL+H|I=6qJ~I}P_W`b>sUPgAKS1rOtTrG$P7h7R zPM*Eht802{db$4MDlhEm#Z?7Z|Apjnl^Z=G2&%ZnAPWu5hU2?hVa5)qrkZv?Bvk>f zx0TkztFGMP5%I1AMCY>Mb*yPeW@A;vO>y03YkmQ8SztI11cg?g8{ajnAYq%OZ51=9 zuT6!1B^I-plJb!`@ATpHi>ZSUSRDTF1{a0fr z#_&jd*Lba3#I5?>UtNUL$=WlF_OxtYSC`5Nc0!{CCEBOhPVF~vVR#tw)DeOZT#Q!x z>><_;rdRv8PIsv~sTv{vF0?fECs12cJJ0+)+Iit+!9Y~eb1_wXvOAk9zUU;X_+oDP zRf;b1FN}xRAmjCKpR?!-yM$d+C+xvnQS;Vxy$e2%ddo>lqgphhMFkZy)G~;Qd@rdn_OP(egUtrq#cfL`Lnp9#1u=%p-38yPjuFMxeP2dGV zqNV()pyctadp1JefSoAOj8^rhmd0z35iSoCxd}>arV_<5rqZWBmlC&LqC^8FmZH28 zCs{Bpz&JuSBqbSrT!{q7e7BEAXKigLY1hF`lXfA3bQY4uMYrOtnCXxtw&5hoXH^SZ zArUL20wDt`B!L<57>r}ftEms-O#ap?#(0=9Ui7)t|56yQWsE<@7=Pq*DRF#^kFKK! z<+($50H=+>C;h@U88#s=UyRX@J0`;D$G4~uv{w*Mc*6du)9AqS&jaM*y6*Ks6P&i0 zLfe(nL%m~VqmT6cQ~Ozh3bDpxB`om5unHYiU&>TQHW58SzIlSF?=j$ltgBg}1Y2V9#pA=j_p5e9Teq4st?*WB{McG6{vBr^klZ}F z_5b~5oL!pgPvM=GZ>Cw}e zfmmUBDEFwcyvB(?EWe3qB_#1o0}9ZNm6$J8&c+M{7NZzr%{)CM{tUmqui*>`lq}2;+BkkFS(qWzHhw5un2nQT zho1S@S^K&UN#-rs#V@ZVxF3@1x+F|wUnANYV zYQ^vNShQo?+Hx^h_}w-ubjifh4R%RgvRq)h12``FPsH{EjO}|rM{J{gCm0JVOb1HK z1+B#rknCC4k%jZKI1__->Baay>rf$tFOzxz&O+lgdKb9%EPS_E-}cNL!NGf4F%GJ+ zZsNAUd@x25680gLkj!LT$Q;E1oqBM>RQlLd+67K!N2(dwVcfD`ZWh`rtP9C1i}0=; z4~9gm52LX+7dzE$bgqkUw%Wx6&dIxY(tQ2)w=f!D*AuiyQP|g4(z-AnZDJTrN72-W zcr?YCmBKqEQ^M8QcM6+SKvd!rp&UQ7h`-)JUu3B_VSbwF@K1e^^7}Grd%QVg@+(0O zQ7gX^&M!J?em2wLoB9Cd_qBwrozMNSFfb{6M5!b4{bfi6`$frw(tU-w_y|GbFbXED zzi!UpIChKsez}=v1fQ-z8CP{W`p6HOPFh8mW#{85rHE)GTgN&!pd_#vp>!tp~;H_!MXGDRb{uM+h;KjA)V zyLqu5=yTC{kEWY4?qsM;!VnuY>PnMn9G1QGP55izo zh_K@bJ3bNy&e%!iGu@@_RLLIoA!T0*n*ch8%>~}8>@aN57-01XD-(gFW1!n`l1&Nh z!LUMT%utpn{%HIj?>(+=Yo!8frXjWlY(4FTxGk~2G=2BplEtWV0D1G-O<6WN=aZ`_ z$Ii%+w2jU?pTX{A@n^QhQFcGOu_D3NIEgygEZjU&6Wl517`W4zIm)u;PPH;ib~1^Z zfP>F&(Gq}-i4Q3}xZSHCdD`U~*PY%q@w@3fIkEeRjvakoh>NTCD zt>c_@x7r^7*%8)t30J%?<}%LGSEtojA?ryopYW>|->w9=5`k3l3YG$YC0Cr7XyvFQ^?~He& zpWG`kP7`II{^|q`yGoml0l-LSdAb3ohvB@1$2p=(wO$rr2-8&gL#9ezL9^_m(s1Dn zyw3pB_Xwr}wmT3D)4L?rsGBAR$9x|f^L>Kaj91+UaW^4aQ5>_*w>>f14xTYRC@F@r z*%(a9Iamc||AHW4*2Q)xWMQBzEe6pZyiRD-RXcHNsocp(Cbb+l^|4H9b@tQ=POa=} zPGqI_jhp(!*wp2FLB-tu8P{OObpkGXCRDj7)XrzwoPb@1ThUJWlV{u;Exj`7zCE9`_7Q>7yqoOAy`dE+_Et`l$_fprD!;+3t}H=2}P zm^y*hGQk0_7(yPu&Y8@hsV?H`oY+*|5a6Rf?feH3InLiR(4Va;M$&J$NfIN8-< zZQim-d<xc=Mp>S`0^aE2yChw6Hes)bGhv?# zOFpVALYy4pM2HKg7g30d>W&aQ?t%mN*68*mkKvM=a8pU+@G#YS%>eXcTz_Tj0!s~G zs_J&w3HZoPAlRZgi(0gTK#PWR?KJmx+I~)!mVAaJ&a#r^{`zC+%Q&$-6w(TCe(ZH9 zH$u4&kzUY4vk0xv4~b>F#wQ$Ue+jJ|aD_VoAWivUKd`Ve$DX;nB{mSm{c+ZbHMyJL z4A{2wxbkaPCzjX24SHHyfAaH|=FzD_;h;`XBz=`OyNF`-Lr%eYZhv7Hp%UB-3n;gp zWGg?MSwJ%_=zyr+I9G`v{k1xyP-w;Alb1eUNOouf2vii5?7sDURmwmU!agPe} zefl7knA?4(UkXOpHT-(LU4^!F6O14MTa^bq|GA{Z=1iP6QjE>`)0z zJpX~_q8l_m#Vt|R{VA>l-7m)WBz#L-K=lrG7oZ(oAv#SK_ab02WZii1Mgj6y=TQP{ zWEo}c0ec0su1@>~RY;t^i+-r%u}iz^Yhj7jr!xbYTCDq6$-+f11b@frs>|s7$k+}e z3hcq!^G`ol6nuqGcqPj!9V05}8Fw;7S1H9X5V_hf2>`GTvm2$Tt{ zS0|lM30(4hOk{OLC+c}Z4)i(~^?h~U$$^td;~9Da_m+tV_M@b7KD*ALiTipHG#OSYKU z!Qe7WeNB*M?@6lrhl?S5@eP)SPu<;Wx{`EPEAFO7`{380+kowWPM?Q!g3Is6+Xc({ zQ8(V=)=jLR*4_;H!zoiTf2iL_r~kRJ#nBG?R(DG-?i#mSkV!MZkUFuWf*^H*0~6#< z+!*Bo2WIyil#xBZe_1{~4d#bnp%@@~R;m(yz0$z9I6GWl1*+^QkkN3tC! zq;JPmcstHW-+nKiNAZwf_OmbhyFKsV-3IP^O0=&`VwTn!>Mp8?1w}Z;3nH}Ph*F671J2^Bs%vMVK|vf%>(Fa z*WwM(x8vMis$XpP=6rCf{50qHf>Y6*#287Yh3FK?5~7CobM2IiGqf;B_iM4nzWrPr z=Sn7X2fCZj5G~>M@P?*__J(?~vAGR*#@6%QuC(W-Fey=9n9eMvGp42YHtao_R>QX@ zi!16xPOkhboESPJ#5WJ(IfW@s4A0GYu#cxJ4^I%!5ACY zD}DfYV(C&c@PK1)D5r8{K-h6VlDbK7Ui$0^l?!y$VLBWPIe5}JSa7-yB8P^jElBAk zTcJHY8KfGYB}v%PPNnlA%s?vWWhtVPYJ$*bvqFJatx?sGxYq`p%LAXAte68?F)5!V zNNwSBi<2P3op6LRah&erSiHaI)zuO%PJB1iId20Q#wC_ zO*}<8@Lh2ZauIeDxjd@^t7Mo0bQZ7{8Iw~tcn#eJI}i87(c8{%T~^2XO*^G4s!r%P ze1c7xS0J@Noti>WHxKa|oQZ-joN$?`H6RKgb}$PrBYg345Mu^Vi>qBn!j7k#keuL30G9KH_)xp;SN5O z8~Ncz3RB{;3xW+-IXAQ-H#)y~b3z~C%0`1X$SZOn?_J}RUtOwbMbMa_=Q!WL2UJkmjk`-BiSOA8^y)4(e3 zrzfdJ$)_W?CLX=ZuFjV2yX_@X62DCiE~)z!|tOu14eLKd}Tod2Pa$3}2)d zNhNMpT8%$3e>%MfHNZP;o!)aAddD42;?tAhUAYR6x1`=lDO`$=d^zv#4B66W!`(xt zbUBaG++w&q<};&Jd2R(P2x zWxH@AWqWa2m#AtxT$G^O85e;|efMH6<>Y;U;0f!fpW>JK0i9W%-ESdx@I4ryCTj*8 zpcBY%Z1+j~*Si~Lc?E7Oz?~>H-3|HiF1o`Y{L)u(V*%|rrMnAoYXR>!l?#OawG{Si z*}sbOO%s@%jpXQy_&0;Y<93zH&2?T(NII1sd08i`XXS;N)a5{^@+yCTcC6y@;3<&K z^x5bm(9&ED>jl_>hqp65U*q<1BUVoBDH-7qDRCDI$?M>Fc7)h!pBfzkKaHN+?~U=t z{sb#bukGcVDE12{cGIi2{N32LMEm#d8@tqA*olRE*|Kx_$CGG%zg!TE@Y+mMnjIdi3)=?INcX9 z8V{f)-dAYFu_MkCUhEOX9w?kGtw#5|U&k&gNjs?2enA?Cu)j?PNXEw;$w#v|RmL== z-;@nE)th=Q))w42cin|~%8t#BSa%EdGYxb%5&od3w8^pfqxzz@J>Kd+Uxu1iUt2D6 zc@7L6aRzs)Ou8N7=$PJi#7QLeWk$gtG0n_*B&<*p$&A8_R zvaL8}_(36TDf%ya<_?k%bN*9F4LW1Jx{vm*fDZu%akK+ywHP1bzO2gbP zPsOS3qx(Gm*RZ8$9Hg6Zu?8FqDXsC4(1_chvI#FYr~LgiT`JiYco_U@{jw_ zCMph6%;SA^^MG&O)6Ms;sQXlgn4b-ym2BzM;Im@db5W`{`#*Ui09=^s)mdVvPSAM< zIGx_9zW-$peM1(v6V@Vv&)>(1MP@#z^MWtpqtW%6LTC=KiaTGp(3gt|Hckyq8JCuT zj7YM^b(u0tiiltA7dM+C_qia$A}RD0w&|T=x}d2OHaESeoW)6h`Fz90(00MA$PRHc zCjV!$a2A%gZce7Z^IfZ+k+&x4CVKKxM+;E*~jRxF@DyCrPTE=HN z`^?PpDMlNMDQm450jz#&o5hrh%s2X4vzStn5c*qOic8!KmB*{zslT~9D;KIYG|!oG zu9LSms}+tRShPmt>h9zrIu&r$pt6>JA(ap~XLlq`E%I2H^=%*zb;I{Wd3+6dRAi-C ziX4QVo#zVVA@r>Zt_dLd@(U@co#{g>c#Ach#DYFMH3|yuAIsH&gCO4wc{S08q66YO z|K)7-gPa`dIiRkp&@||qOTDM9e>h7o-8!(hiDyAeI1}RKw9n`^ZNcivcu>1ttB&%l zBPYydi|I(0TNePO4T3vg72=BR(*9IW*%S_h8hVR#M1u_MmbtT?QR^d&jG z4z;P{+Ek9zhEiu*IlMVTNu#01?bQ|OS{uUlak`G6Vx~#ko-7}xNn3B057VU0s=w2s zN!x%`Za^?i+8)JRsCtAZZADo*DBSMN@*#?(d%n4ckEVo)aSAGMVUO_tL0p2~vN0e|#CY(j^#eoc%Q-pkeG&VOi#_;-$?MZ9A z92s}gV<7hWL@;*!l*;tyvmM(Ez=Bo8njIK>c9?X#@e_qBNgHST9{0wQ(Dap%Li{gT z|8Di(im=|o7EvKwcw=b9_ttb7LM0zW>#Q+%n!47lgO?S$I__jcG0SHkxZX zsO9wc8>sFyFWG_bQv6$na(WeW?T%LDTWQ2&!la}1l2ir{5ofH^&3gc9T0x( z9;#Dc)?KE6zcW#62K{yJylE2^mhs^^!XE;A9ToF7%Qj^b#A~I{90))cqNH zMG>gpnjNggido#6LV6B2vzXCKE3ED^M8pbKw=>5)1v~XEgZI>XAkv1m& z_o^x@oByHCC&t!!#+AVQ^_H#U(8!Dtm(*N0RyL>=?>h+}hlnq_a5h73GM{*3(uH>( ze}9pw;L1t*z#@gWEZxP}dMK*~qT40dcg3`qT?^oe_AdF%Z8H+FXl?PqeCsZb`x9+PQN54`l&O+wm-g7;A##M|H_ar#U zy9g)Oo4pyh=48lnFySWJ8Rw>Jd63{`~2ym%z=KF~qROkcmddvkvgMsgu;D zS=D9YF~q$5F{CqVoFg862^fEC07m;HFurpUjAQulSQueD;hg)=)E~-!iudW{43-&R zK`&i`JMW-N)^__TWJpP3B)O1mHIgo=af*p#dj%}Q&Pd3CzXPoK3?&KjF? zbeUE|W|WhgY*kd4xzPGf$E7nqp@pZjSLJShwGWn6zG}=E?S(b)sfL!= z4(lx43}*72fiXIr|J4|y({7I;zVHNn6;;!Tv}Ot1suYz%xm60~rW73%>mP=ia_P6I z`l$ExMdGK>Ez9>gq#(<#Yg^*)&fO;=jY@=f9u9b3us5^6^yQ*@mYN z&x3f5;(1?)|JR0R2A(jUD4sezop|=(If3WA5Z@2rS%;@j&L*vI-aAwWFQ5s)hT}A> zli^p7Z=E0{zdg#YIy+uvAgXiB#S{xx98QDIjGL!sR2_nIo|TdG&ZbiU z7bv;15vPPW-CXC$HCLZe${%J+*fXe!Jp zcc$ZlC#NB&b4sjx&L~AD?kyBIjhPdSg)3s&etpVsQQ8ks146>tk9rvD0t#X5u51^l2 zZHTESxo_V@m}LGi!%%HUSk3I^j6y>UI@Sv8tm$316n93ggx1=BTK$6#g6K?Nc}6&I z{6K_*|Em5m7ofZ?F2H%)shuvFcXUkNb}R2lI&Z1?gMEDd@B`QZ?nR&9+k|JY5RaGR zc?DAlC!R7qM}+txet+13=OCVQF!q&rHsQhdzE6et9}zs=c#aA2WGCfiMrT^F1TGCScilExFo_a5Q+guiOwpfimFrM0w2#>SuPn>0RYKPPIF41G}? zzttut-G-P>5za0R?r~dje6GK^Q_R2_Q~g=Fjirfk%Qt9k`m)L&pI=$!y9keI{ARnU zl(`2dYn$9t+3~a8oc7$LY4>Eu&vsK<-=s8=yB_gJ(Zt+!leKYfaBThsYyFx}$Q)ea zi~G~kwWpHjb#PAY@NWlo^=DC+59e3C`Pp;&(gTy`G^+ko^29I&_Dq^nRW?l7Zpt-H zwd0SuiUy`Qvr}cevvU}K6jnLt&t|8}c4y}>{mnxCsXG*lA#6idrZqr~1Kr^@Tugw(V zUUucc^(ech!1Xe_Xl3Occ3lbU*gSUO{9J7jyS@n5E$qTBAgz~OSHblp*2iAJegy1E zP1NL! z8eO$B+4--GX6LV+r2MH|>pY|$$YMe}l$|1K-I6<5Kh%20OEFo$)8gZ$n5>^^a=a9i z^(*oIcqu09N8-qMDJJVTVkgg^uQ6~YJt)`dgtUnE)A9W(ePibA8r6?n+=B}E4LcXy z-C)I{xfu6FlAt-AC9^iAIXObF#)%B+T#>U#g&NUwIuYWb891!Q#0Nzy&tg9FMYv@7 z{l5DH-zswR2`DqFSEE1OiM8H4&6x@Ryb9q=l!8|@-FOyf;#)E|{98myxbW^oIN2O} zqa8Wl8N1$`S$SJqwI#i-h8_r7`^P1I-24lD!&>NpDsh_dJ)q2Ox%-gI_s8ZEgSNn& ziCu7Xvnya_Al#k_r}azhyQvO0HPcNQF@f^Z~ z^gprTL7bmpj{lSGXs}K^i1SkyzMoVw{gekW@5C8oblP4BH_p@ia>_$iy&_h<#Eiq1 z58XmRH4!tukGjZMH!QN8vHhYH+(O513HZzfSl*Q|HPM~|A9?IllLo4{R@|c+kp|X=%A=tx# z+5ua3VQIanw2^Ner9@;-KjA^+-IEcV(-Xx#xQK^&yT{BU7kY&!7!bjPty3`OqW!&T zyyfPBkv4gjFZNX#XyC!tmdiPEgpJrtKu z3yI)Fa-7c4sv(Y+6+_j(VvulX(Nazo=Tni&_FJsr0G_eV{-ZA7ISn(N%7`^wa0O^c zzWXcOi5W&s94ZfvU-8D{Bk^tLvO`|~yR48G0X^=cLJ1Y58v#7X$u_7;9zYARRs?%j z{(suu2RzQ|I`F>lXe^C|a0W4PR99o_p`P=bn4+x#y(ui$iFz*p9#-%}zBK+)Jvxl4?;& zs?pi0hSXw3&Y@1zDs5`S>YWML_BZ=AD%CHsgsWwg^m4!(e?NVO+cD_?H_?q-QLNi} zXLj9l?d#4h)j7qzsv?EILB0yoU*6|Rf4MtX<#t+4SXKc`*Qs^bS-(L_;5MpxR(x&A?XX>@7O&P~Ab za9Q=s_MhBd2NNPu^p=H-b04JU2$XthF+X#$patTWRewixORiW7d>|z#A6UCpG*h`P z+#0(?+uvI(NwjKtRFAwpr)^xYrjoSg+Q-1s)mB%^)VGZV>*uaI$syB`qz~LcVHK;H zPk)4dfFHP8Y?AcbRc!H1l-D%3JYB_VN>;EZ(IUdq0XJ{4D5-0h#BTMdK33)nv0=B% z^;a(w`bqQ;(S&%0%Y*xP9_4x4nE!$t>c2dNQHNfhBRt5H{wwR$<5fIuJd-@rJjkH_ z+ZrCe|J!#_=v>Y7M?7bZ`PQd-NOSV@Jdg1Zf3gm3%wAs`v-DlY){{eRC4B2OZ!tbE z*nf-za;Q*iY5LN4$?M6X7RoDHpbOUP$)Og=Tk*7%?@4 zWl6tfva4BCDzAE9aAvOhpm1h_`&ei8IkEB&4qxyLP#5~E^j)Cve=Nb$ z7~IUs_g|7H&swOYS?!lLFAS3>&swOY`cjxm-=$Pvj-&hNUVKz3M*n)a9C)I%^wRgz zng%_tCsy&nu`#ftwA9k~(i(<5o-VfN*QmjimRkB=T0?(u4>M|y6D#}RH8@`_Ew%K$ zw1$kwy~cvSMh$}h3(i@8#Fel74M*I3PdULd_H#a0=<6N8#Vy2niYG}p578y|c+P)G z7CBDkL&k(lF;n_?A_~7%ywxGS z=E*5MzHpH_$-VKJ#EbS{4(oxnVxggRu1sOA=!LAdJXqODc(6wo{FHYyrvN#n=$3 z^?9`?9!G)dU1R?HRXoEy5Apm2TN4L(?&W!sC(iv=wZFq}(Vv5r119ad8~849YFWVl zrT=|-pr7V}dCReKK|jrb()`!XCmR$iNHO7f0-y5J`oB`ACnNOByUMRq;ygJaR*K1u z&8TxBF31bLwa_hR$E7kxd{u~S(^aYDE9cAW?-g~Ycy8XWoiFc@H=lJcdT!pG=gaF; z8@Fs;n3Lzrn_*|g9d^eJ%$L`kIbYtaCkaqFz&S9Z)y*6SBW3P)===Mh``DK9=lmj9oRD}Nb(C~)Fks;_JT2XZ;==5Kat`KUHEtVG@ZqfYIc%g1RX$$4_%qv zVP<#JWkbeg7kP}kp<)+wA9y}%pCx*X%P8F6}#7^`{Fw&%_zi-gNNrHxsyLL+CS=Jcm>A0dBy(@(&`h@{ZB zDlhG}S!wHYHKbjJu2q<)in2D9#D~*M2x+k)yQ?~|i6$ECz8q9+5&XVqu7sb|N3ZJd z_kZLb!istXef;(e4dnX!#$3sV>5^STgVrCo5$jl3-lJFUWEUxNyYJ_I>-ZNkV|<)GVqW1GA2U5nni|a;GT~wgR+se4-?5NB*C=|)K;J2N^!=CJ zYF*2ha{IfIo7Po4OViOf*oBp(G4p$}&Z(V0vHB-E6ZT6qI}0}Qq@?Gj(dU-iE9hN% zvw)tFIwg|Vae)ZW{-o>YYXA^^SKrp2$-h{g3qA>P%BL=$`OWm@cPMzK#4Tvuq zKQ!|b@hdHuA^n^(@dm6CkT<4z-LkIz;KedGK+cKk8j&}d8LaK+ZA|7hS8VnxUZtc@ z!d{)rusmb1#F>bd{q*3o``vl`zQxV=C&FI3%<}?;*m)HD8o(g-^CF2-80um{N}8-* zhTWNYN=umMCp?(G?*=Igdl|H+;I~_EASSqZ2e!{_jhjt3rI5+Oyge?kEY6-pBC2lA7O-;6(wJX$l$PN5xD%!d77S1MEn=idH#9XVj?GQiM z$s{xoS{S4Ms~eV3)AI?lX`tD!TS7XEA#umOKAx*JUwIn3w>{S7ZjQFkcXJV&A`{tE z!^PId=N4?cAcb_f?O5qve<|l|O(t!v8HRLSvo;K3iI0m7gm?!l(bvGi<+SsLx$Cp_ zPK`~lTL(tFcgPJqoqyPoHMO+EmDSAa%PNFap9I^LUo)QvaVE%?lHb@eF(8n3M}3|t(2TYCV(O4tt)O}JTF9&ZlU0*>KQ9cV=7NG7CuzkGI37YvSf5;hO5-%9bA*&;D%K92%z=k>a+eR+|OkdQ9Q+ z=8LX#HS~$tCX6&-G3D$#)O)kGzbj_je=wWC_T+^!PrZ=}B_8nFOl#G@Zz$FQ*Yv!l z)OIeqP2i79d$HYXVw7KlwJfRO<=HjRGHAIQ5IZAYExsMuFu0mZ(3S=2<5q0JrjVs+ zq8Bf`+o!>enz^`Z`9dLpyFVncahm zKO=oTqk>0Rm+O;XYmd(2mKbsS{S_mw#k09QWMDIJoMR)$a&dvRC0rcb&2joPQy0Zb z`~3VQ*3CRmrwVJBwNi4x{RQkSF~a@9nM6DsGZJ}sX-OZWqRIQUj0T-G|V z%N&xDoG1M_ZjTV-XiQdOP84HuAxW>Hg|evGEri}%lD4@J`uSq0l&!Y>Z7KU^#{`PC z-ZVQVSd8&_WNEX{oq7M#^TwrbRC>m@jK5+pdImI*i>3AP(FKT z^X_c_(2nkYJjnNT-)w+E>@4>4yL<5F!J*F#noo*P=1`Q8bEYo)Yx!G$N5eEu0xnY8oYi+=@&H-h(wB*d!+xN3(w}|C@TK{eN+am9GS$+f9;mc>1M1`xoL#)OhzaQRL zEF%Y@J?o`!u!HL$BY}_Jyj#mYblF?*x5lCG;gy2i^K-Kvk8El8YPly7W6i3~)I@KU zlyHbOrMzL>xWUu=Z^&EzZS6bpW_Ene(#J%i0>o?FGHlR6^Ep-iK$hd4`*!3k_Pv6d z+x?)qTUNCh<$~d!ig&nl9>3}F-A#gtK22!2px8%HFr}zjZq*76&EnsV*hRJnJGP)7 zA=c6od}D2kdt5SeosN4}G@Ghn`Zrg`n{c)@@VH@ibl7nh&it1x!tL^iuK{|ec(2}$ z-Fs{KRZg98-0U`Eg)$^oC>fNH;H=(bb4kM<>z8rcip<(lNOA$MX2tm;R00c6tzWl5 zbM}OkX)SGu9Z}@~WQDd|QB$@P&R(o(U#QsGEUo_^BC}xbK=H@SN(r$R+e=f1KX|h2s@TViy%cX=|F^?V^hNtmwFh{|Zf#+NrH#lE z#&Pa2PCqEp$!z(`PrxBAvHVHLJu4Y=WI)cavvQpYuH0m5R`z2*s+K-tUFbHy*xUja z%M;;Y%&R`k3=3U`3`^z`dK#3PtrA{QEP7#?tWw^sRWiX}9I9Da#2MK?>71RE-PmQ{ zBLAeWD>2!NTF(g|&Ffw^0WV%pD`~7O)(XAL&Kxb7P*yB3Dn5P3fZ3EJyEJRDy_EO*q|?1>Tx5C#`yrn3LA)%ZS``^!Lh9YxBMm ztK=7SKTO}*H#4)3U9EUkUfO<)dvtJc;Fp{^Gc!ol4!_z+h-#peQWb8wvs*FZpCHEl zMRs8_+RPS}I;E=#!FnNou{+3LSLU?c{R`c5U3hPiWmd7zTIRMF;bbJGlxp#ig#P9^ zG4J7{qGL;R9n>p@&R&r5h-8FwuT*-VJ^Wp`RhcbH4>#DhuoIOze~teooVnOVZ@U## zQ7Q7%)|<^M;6v&64`prA^;KkU*7ie9JmKsVj}y*4JqcM;P0eMmJ3HlDpz!`4p)RL+ z`(@LF9DxhebXX`?J0H%G_{P8eS4q3^jhUHf!s!h!JKkg}v*rA~Fw-2V-gr{JGv(Ok zy)Z2ndMp3@WG2vguxmWCtmR^@=Lj4cGCygP<o?y=Uc7^xJVrf(Qa(QFyoe%!RSuE8|2zKTDpRD9LuAiUCkY=ymu z$Cv%tO64%V#`jZj)U5rvi-`@@N$Z|Sx9aaHO>=MdD&0laWb1`OpkE1`&b=Ae_Jm8D z)l%Y{nI-O`)06uCIu`wgySkft@yN__$s=4Ilu+W6gX4lKm1k(WM^gJ2~Z(d(MO|v!U4F zSN;F?FJ#j$G3o>2hFDkZCZsSo!|To~HOVw~PQ<&&lPu(k{;E9Lr`cIf^j9|oz|#|c z?b3&QANOHQd_3MI5(X?gq;xGEW_6RXjgac|eky5C89sbxcyjX_l&bgSByj@d_}K2 zx(jRSyo>$X?j1wJqq_#P_4V~Suj=aR2D-;~4eTCp2X_zb=o=Qp?po0Z7TddfcJ}pN zN*YZo`7_vr?|0d2bPo?wjPdNW8|pFcuEBF45PR^FZ{1sJci3sWl~!Y=PFFf}c9me6 zw9Uqsy&>^sXAAMwv*RnCk@(=Fe*7H!gLnCiCHOzsrS*6s#jofwFQxY#_m97y{R#|9}oR4wRenb9;Q^*3%wsCh| zEHQI7TXWgL`rx_Y8PDT|ZL>levc1y%05w4Mq%Vr$WoNq&&letilyzvYjoEw)Fa&`o zboiL58i+r9%!K=0*ZJ|(y8j(APz{mibDn0uw@u}m#}C1cksiu>DSQuSL3S^5{Okqa zz&7K@jH!T=yWks0tF=eFzbdUy?>K(8;+cV3i7%gS8>@K6#w#qhX^Q6KXUpEODS{`s zC-8<%K`YFR*fI~Nm$y$1X$@uXP`hK}oukAzN&M#BI3eiEf@MRwzTxgc@D~}8;IFrz zbq5Cf28ITA^|(zdM%I>ui=2srHycd&;E?MZ!u6v@a(z9!GP{^E#P1p$?HeAXBE@%^ zDYFrH#R%)xtphuT`n5>r1KtprVKU!V^vF>k74p^7JvcZtO7zH3|DHbAuS=jyy64WW zocK8?%r1pvWOR79g@i`8 zM|SP$>%SH64|a4i-Mjk5MTE4+9}LeK#jX*zf9NxG)#%Rd!2)*Vddz6|a2973;_^cA z%^lj)H=H4@n*cAY_lwkcLu})eYFd&#FfV8TLyM< zC`^)p?w;WxH`hJfJ%GQPVTI9;!wrVpyK7jm7&MYzx2ctsOBtG1VPHtX4V>jL`m<7< zi*A5#Gt$D{1K`RCc+%4cE(;zPfpkC9JyIMTcl0y6dcYIbfL?EY6lPZOjN2X9jk}&5 zeQwVXetWtHM@Jmg?Qcoh%1A^czh72h)+NT>h0qM@kJiKLh-(XLlyPXjzp#`=#@IulzwhN3c zp#$EqGEE9o-Q97kyBoJ8n$Dw3#rlou@7~eZ?+!AW(g&ITT|M-#dLQwr)cMjBM%(o6 z+Otcv2Bf~deZxbg_01kWul=q#PNAo|`(=o3rM21?g-zpRIF*_ZK^r~T2cfKrUg{jh zm>mqSO#Umq3F0G()NlQ<2vCB7u1u@GUY%Ib2}|>O`+EAjhv{o2U{EG)JHuKCpd9+X z_^JI}q<1@kaz`JOrhE73(3L73RlKxqK7YS1oTk{XgF}N?dgIl-19De_yFdwsh({W4 z9hnbzy>9WyND;>h4FXk^0-^A6?%cBw7E<8XMx4`le3kmwap&&mPLsVQQm z@zKLOpHyCFcbvSrC!Y^{u^H)e%AkT-AvqLdpVLuq30Wx!j4O6&JgYPc`c zhkf}TMyfR0M@64X>NH?7jr6dVQ2*{hf5~*Cef=YSQAHM^?$KSDsH`0&@q@jD%}(I= z@2R>r&`d`RWUvF_)DIE#cPo>3zIBxGypPgyYlM$I~g|VA2x-`DD^8^n*Gd#p-2)pBt z@4&7xMrXu_Sh%5^`)>Wr&~PvOfJe^hH^0X%RDO(-C9Ut4-7G6}*8yR8WJLS>GOVvG z-af?=Ot74d&_+vyar4y2Y6F(r`7AD@n7DLlpU)g3eWtLSf}1oP7C=Tvc(TFKZd9#ABp_w_FzR~aXC^#ZY>1hUODa$a zorF-SzD$O8&%#3?e1gY{rLv`x`aD|d^AngTS9RoQ2kdAcWmz06 z%p39XCH?8ab~zmi?ehrYE+(+>NbcNXj2BQ$It+am#HTD-=j1GqPVo_$HFqS}4<1YR zxlDga<4-mj=N;W6Ah+3qa6k^TSk_fA0&ZVjqLwtQVy{V$7U94sgH;xg}7zP!9#f znBJk?vb_48B;m|fhLN`Ey!2y8;tfh+KEPeGePO%unO(i3I~(khOTNOIcJ6XkQp)CA zl$EgpkSnih6#sHp{Z1i)^3gY6>G$X$jIaAUtCXXcl!c|t?RIm+Ls|H8S9v<>_ju#N zcz5q$gGWDkj^zsB9?9{7g;GGO*tx3vI+~SG^oDWj@2#)rkNVM5zL8GyGZ(srby5lE z2nWT$>c`X7yP3=qrX`(QYEmkYHf45=nH|*Mvr`=6u}-qeLyJlQn~nRkVnjydwX+l* zN@(evJ>H5Q5CyKsKQ+FRavOTi8f+a;V0`u3cYlJ@+hH^cShte4< zcE7#ptK%v?vUg4~J|xU32xIRq;g0-HoYhcsZoDkQe(gflW%f%A;J55$P-=njc>Mhe zyDhX-MR?#@TlWIq&#Ka!3v;U}ng3Ap9fbkQxa)`ddpAJB{EpNuB%PxDw4np^^{8S2 zeJINxpPt-qyT}k$NLavH_2qbT{b$@Bw!&FD5zJwUxVaup0%)JbpHk>c6W%nCV_(zP zedR0^DNUU$Bxm-*6R@9dfIv&x?3V{e`gQyh>x3cJ6p2()KXl(q>YOQz8XM^W8E0?r z;fEK?(FjwDOfq*%^OVNT&F8n(&!X_Gad$NJ^sKFCVf5mQ+2$sY{$j15k6oHj*pe~3 zA(*nqD#n%U*fPU?eMYCrm3|G(-67e{$}rD@c=xc-0_~@65G}`kmdWL9kVgjC0^8lT zKg^~iOx9R`Pu({tyC6nkzWrv8t~EmATWEz}RFTLRLWHmjce4Y}o8Z5oqwWxk43+Se zu+Xx)GEHuE5w?`JM|TD=h3<%KoMo3Mc(D$?pq@(V3-gslS=o8_vXtA?4P+zkhAWki z5td)&E9CR|FoatojgX!Z;Z1)x`Wm-@k|N)-VlQRYbv?BbHdkiI3Y|-z8Ai6|v6Mbv z*F8EqylV#pf5giF{0VM%M*cor>4Z2RRrX@VZV~y7+^jB6$J~U+;F}DS4)wis+p}PnN)r-axC3`n1Hs2z;N~Jrh+07P|@kS1E z0N0yzN7*&&mJiJG6rOy3&lWmsjnUPiAUd^Wm|2aPHB1nwa|WuougmNbDJp4JSUHD4T|j z%#kLOS~{U=mS~!gP1FC9^rtz|a&hNDjV+hhp&I^n56F9FsEWVq2FCciVQ`qgctzvy z#|EpV^f#tXSNo->>k04H*vy>RKUg}E4$n&eyGti#)%bPIYis-?-q&gE8-_j)e35YV z#%WGv$INA$!Gs^wiq5`hEn2-hw#p-YoN>!pPWbYfnd!$sv>DO2z2OJXOr!T6){qdE z+wM4DeC8E*v8TT!`tRY`R^W(c1*Vmm=J2w3dwX?u$?@uJW#>WOg2$^fKX)q+-6>is zz~yw{KabN)tf84RZTLYZ3=fK;^Fj~5Oesy7*3N@kN;O|=vsGG-l)pCf_5vk+{hX4H zXbBnB!3q4~E9kxDGuy(|3$;4aMES|=Ra#eSR<7uIatTz)%u|2$R2Hw7v)kyELCZLI zs!9jG{GG%>(H^Qr&yO)se~Eu_swa*Yo+vtgmDyVUUdY+}6ro{4t2DG+Lb*qQM@i0G z89QRiJEz*inRjiNo;?n6AEO;u>az*{HdA7?xiMS2AmnA)Pjw!&_#*wk4-dJb9d&M4 z=1tMGl{EixyZUE6Xj`gxn5wHTrp7RTv1Y{I8`0UR6rG*oIi}TXigl@8%MF}gZplXC zO9!FA3cy4Pt?uKWUJ3D1wDa4e7|bva5gG*cXg_!!K{p< z0pda6qI0}osIR$=x%JO;sqbt1AFUS66kzF4SgJW;#TSyovs&Q^U-Bsvd6e_qOgU-m zIuFvm2zOX$b=!}pjo9c^%_Er$PRp6U`!*O80qWxlSMBWit82sR7~1>HzMA+}pqo(W z?m~Cx!*ihn7W4(f4dycGKhYC=?>@mt^bU@huTxtI z#X7xuc4ck`zVO#j(x7`s1B&i`X${yWdhh83w}a$t72KXfYd8ZIKW2f4PU-xU`(Wt9 z{_-c%qU&Uh6HO>x;~F}3Mua>nG#_26mJ?+u?GNv5K)YoWn~t=Ov+VAB6njNeGenGN zYk6th2GvhvwlRy=WXd~_nGjmS6SPgVoY3eM{j#*ZAB9Gg)pY`@A$w1$!K=@04%ckk z!b+A2Ii5{u?gWWtCZwB9KEgiow?W>HWuV?+doyo~d+$(Xzw&*myb+yS+j5IvLLuXu<-~ ziFTFfLq;hkUO7m+k0*P z`dHNEh~MP&awi};kci)8g0W7oRP@Q5Z_b@(lCJ-G|BjzuR+RRtCXUH$m0#``Y|`&w zrd4(2gAI$(OlZGs8oiYedfyR#t$!EMsbfKO!i0)mYJ}e~zcu`Z;Pb#KwYkX6L+5Yi zLL+$P!$7}_?w(K!x#v@hg@Z_T^Bxns*(A8z(<+*L6|4K3zQOFy#F^uv=qF<6+AeT| zDd?7^cXsZV-pGb*-hn45voQEj@Q_+~M@@AfM9h%L#8Rlx((-cw>e>FNNz@cE1LC=1)9g)W!MCiSj?j=XueX#HST(Nq((376=@6puE$JW zp*~s5u~iz_I(Ob!K49*8E1FNtWV^p=L<%GKR~Dm7EWQ7>l zw^$pfSFcSrn62P;2Y9^=4BAeMH_6j|!1FPwclOIjhF+m7ntT;aYD=+3^{8Y=sGhvJ zM}lrJ_KpJR>bsqX&}pm^&n=?cC@{v}=6-KK6eclh8m^(94JIuVpLHP4-N&uahz_}L zy8izQnH6_0cAc&3f9}0)>zsIWV(?YQ6kp2xZL%v{O*%o1k4_9l*JC41^8W3#my?v< zyUqLZidLrsAC&#}CPT&Qp-%3@tg5=-&Z|uDkN+ke{P-JaOMfnzDu!~aBN#=`dBymZ zTnCF@m#&stR>(|uL#dXB7ZYl6vSRhXLzYhk3z|n+9oxmqvb~|^^Z&;Al*|RF9ovxh ziGj?C2f0I&uKRfM`5q)p=+5;stjL0nNc36vaEuk^OEo@S{6ce6A+tE;;nM z75U#%*wV(lW_ygkDV?)&`#12Xug7Iy5LP|aC(u4`Vr7^ZT*JsW@w6)UxWTUb0}*ZY zF_Q|VRva@)X|=As%DKtfJ35nI10Gx}7$y`7H2ALZw}xwwSA&LjJ9ofpu8SGrC883u?ibIWbt%0 zHU74RFZMARgN`luHI1xjF-d!G3!G?de>j=S#LgY#oO60YceWdC3EY-bzoLx#({`VA z^oZ4>%)u3+(JHoqupnY}t+99+;eIr=5=IZLcwM$c`*g4PIFT5YCMR6U2 zYi4Khi+7>W^nuQ~Mo-^f=YB!oUdn6r$^-v|tJw0^FV2c2N9mQNAI<%d+`T%B*)!$- z*uG^{Ul;BmYH7E-3m6Kw7j$K-IS$qbO&_$YY#7bQ-=0gmbp2?~nlkI9lsk-0uV`MA ze)%;}Q_I7BG%tPPgx!W zO50v+($Q;vR_0(Iy&QuJeY|S|z3i78Bv*~6;a}5!QD!-qESlY6@X75q@2tr=E1Ol* zwJL3#M=4$OW#N;%&07z9w_ea%F75rc;Sl|A^Z(1c7S`scxsOu=g=1|1Cd=!)z!G79 zEW74pM&H_Y`dBQx0^Kdxx;EIlGG79URlf@Af0>*GbwHq&dKTtPvF9-*>qXT?NEG(z z%5hP4RQf`pwe*FvH?+Kgu-HHUvdp%NU5eCDvv3WxwJH-W)KTNrA-7{n>d4+(_?8_L zJ>ch3hn7%C?QHc+koCwf!`WubaJF?)hSM={+Qz^= zCg5oqALagAnI${t&XUW%BUC`7Vq4y_`>)PxI<8r_b-A3h5TSAx!wZod>U$gx=ajrRw6X7D zS1dPEyCxpi z)we&$s`bN%HC+aMbm7`%#jy8Zeb|&o7U*h#&W(blKqz|hwU0dDbo2|}P=d2*Coa5>k*}vT5&i{u}!n?byL%I$l|W4;Z|$arPn!%$=pgk%D(p~JG!V%%dIV! z-Co3gUD}D9Le~u0;rpdIqgX3JFx0kp(Om-ni%r6d&RGA;HM#=V*|b=kj!?VXb*P`U zY*7Z>{NHnN)23tv>!&QFH1->~`u!T)4_T|pi#(|0R(Fv$Ik_x&zev3+zVMRUZ0W?Z~=iLqT8J1ypI{l>G88_GOufr03%QD4)Aa}Kn zxECCP$I{z1p&k>M#D~G{1Is=7V12WSEdkj@EwiJ_O}LNW4L&-dKYz<4`wTa*KE@Za z4=@i8_W$%^LioZe{4b`wav(eEWUBejTI9=@!ae5zwjc@8um@%lB`9^n(%Cx&3!iIqxfiN z^*>z5SE=8{QZM9txDYGe<;DL%vMOPs_-U>3-dA!IRE_+$LHx1)sGOCm5!?w%&9mxF zl+-G=>MZ0^=aRw~HD*35s(^_oVRKkC; zrz`Nrf%_-HK9Rkc_WV%!m-5d|r^nbokIrg)lkK7U29tdJC^V+fYWe~m#_J1X9`*Z( z5ylmsv^iZ@C`o!eq+xi{Y2QDzL{iIlH zxN$G4H!tU-pKZ9PL2u_aZ}nb~@)&;psa&z-b#71Im7)=+55PHy^%WY&zH!7u7t z^p1x=f-xEM-fJz@URl5c)g&eN!;y|K3P;F?1huZY<%<@wD|T@+Gt~0`nkt?!PlTuD z3aty7q5j5ha{4F4ZIrF^`?(l3&_%Ke;s<7Iy% zZ|N%gtA9iK*Q4eQi=(uz^A7Ajq@p*rAIOFp%Dc@!ABMIyn567~?3y^2k6FL2^IFk` z@WWeGuddhXCGXgcf~wU>5^WthQ{Qnb>Iq!sYa3HZk@0Q`zdh&s9eYbyZ91^V>Mo03 z!s6PD@IKePP7fVsjR{5%yLY!7MYbNY`y;q1Jwrt95fP~$zC!+tz7T5{8{jGRE_={) zALY*aF_Tz<6cbs1y>tC>_Kt8k>@5oRwA|)PB}M4cb`x}uB&MVmd)~$z5euaAKHfby zu?|q>HnTbfwG_P{?Cl4un8_jR7TnK0w~%K$MXX9~;uMUqjAu_J6aC9K)Pjs{$^En> zlnYNkAifny&74XLHzsx}HkGb;IU{pU_KT`Rp!bmNK9p5A8s*k0r!{xrP5gr6cPNLT z_8MfLuQKVEeYY3rEO*H( zf3oRcu|9|G%_qm7$it}`Vya?gW0$=CCnxt$Pqc9grl(8cC?%gB@5(nA;U?T_9_-+X zyt1OzvkG-WWf1nxcS7xJdUksBHgBD8`{x-sLGjY=mV5bfyAsPI+}Y@pIe;#q;cAx2 z4voq~*Xuj_q5NX=2Aw>U>(@u)c-OcQG*xy>X39`oI26KF2b7Nc4ObDE!<%nGfo-Ip za?xkeJi{wS66o%%*nK5`twM?agPx4q(Xq-f31cpI4frr~rsWtk8-Ld zECFIu&z7}GYyyJmQXd?o;d>g+0{ai*-AZVrZ=<)rx)2f+k8H9+$17sxU_n{it?SR| z`HtqmCNQHZbh1h86E?CgrI>q-@@S|?f(m&wrMY&e*{m_61s6*NdUznhEc#6`N)wGT`=j)uV+Y?4od}ShbNqUKmsdEyh_4ek;wzo`* z{h(SKmehP>cUb#LydjAki9VOUk$PIjsj+tYu{`~qbn3O#d$r#G$JV49uGPMKZ%WfXJfi}`dpxv`7u^@G!No}R*zr1li>CDI${TRA&) z7w%sfGg36mA^EH;fzcAg$~vzwkf8E-H2 z+!Uno_dYBqv(kUf#r_M8D%7s@D*e~&_g_gbJ&|tn%2_LvHInZfZ>)Ecrmn%bPkokCliE`U{IqCKs7;(=%9FQGPd1droVaPg+P9W$ zzB~!0vl_5I*GCt{D*kfZ4gS~sc~S{Kl3)dA$YP7!V1qO4m2~$wrHGAEr)Za(9hpc~ z7dMoh7xsk09`j%)?FWXv6KMF)D7rv2bL26ZeMN{e$@kMXwXgzja`!3t(hajpJg1Er zAzur$KQl|SLFh;+K3JSz4WRf10Pn|q8aSC+{k>8dAkut-giMT~DD?y50icoOKl| zYrrghU0iE@jxH)|ZNyt^&skqRcoNglK@XxB?-7M5#hXj0K$YaZmiIYu5tGQ5Ayb-C+>MtDVSuQ!h#|kGc6`9L32P`+S&wS-Tx|()2zep@CXd*@O1>qjx zCerQameo5?S#bwF3Y=#?M_Key^YJ@SG^>mNmjikf7O$J)C#U)k!)4vwQQ;MN5W z=J~Bvj67%lp$Nyk(LT5eN*dt_yFum2o2kW=)a}?hXn8HP)0Ne;q;}lHiWgW=A;*V11dXubK8e6UT^Q$ zD!V*-t4$v5X|={jZkOCKFSdv+eyo-a595-rRi5G~#VgwP$I4rDkMHkneoyno!8_s@ zo0bU~E6MNeGQAO&os;09`w?PwzoPpd$L25XgG8CGPRT?-*Ctu5la!x0GXCX!Z>0Pf z9Hp^(hr^Dp3N;?IvNx5}BCkfQ&&z7s!Wo)yur<%^=iN^`r)BfQTnd%U#o2A1zkI(W zV3~tWrKNp;{JDIhtS)fR_#fwc!$?YH1+E!3wmq{}3UnVV&vmtork2TXhdk$wDxum7 z^P~{$^QgnQv8Awi{a@?#zu#kXW*$A-rX$|E06whN*v2A0Q0rECiX-&?aiYHLZHjf=?lXssyVtbe zIh1x6{b*|4&qDaX$;nQo++Q&){c>+?A8*OWIdvE{W9~f%q=lqnT~X-A}NdPB+Yv z?g&N5tk(Fai9a=OJQ9o0H_?qf=hR&Dogm-wh5%IJ33#YeR%#^W_BEeBKC@ZlA0z*x zn*V9?pDyO_t>@%!>E%P_xCthXnFo1$)Ku~Jgi7+JT8^1Xo;=UKvt`K<~!l#3m5X8BHyX`@*#N-x_NR= zYtF|cCz>DBh&44!nY9qgqJs*3$lhZa%yXwZxY+swIAtCqe=ic z8*=Wczruv}sSMa+rOW^iFP$~d%UVnw;{P`(@v~w#NvvHvtTfT$F%o8U{e^o;1g7#f zhh05vd0JX(R`|jtRsG768sBG0;a^$OYA|Sd%Y#ULkIYl%oA8PuurEn3=z2M;%}{c* zJA;X`DcP${O3V4pCoUmJ;{rKWm*lw1%Q2O>1V5-dx7~?04JY02b;@YTxaER}_A`=q zq3<5dR5L^G>dJ3BC|}v1OZdLvy~hYUFc50_%YM^!p#L3m5b~p`|2f@q%p9t_!XSrX z4lRmu??9xsc^2l9`6GL$L!Eh#uCnS|Nv9ptQrf>z3Cv=r?{Q!`)J}av2{84LlzDnT zWy&3)Hwn2HZ!Xkb0w7T;%jicU3S?RWIiOg=sWOdFQ7@y4B z@zge#a10htX~})m_q8G)ROBhvD8`cFC@CJ46w-R&5G^h4c_BcM9W7V zUmD-L;r&1(cs?H_J`_7XUs`*8gE@lBHj`Y^{`nzf&u+!(19p_$a`cz~nU(D#UD+Dw zIUb*mSgz5%G0q&6IdacxK7<0 zjhZ9lQM~tkG4BTI(Dz7~mdUOIgILQf;tI9nt-M%b>=M6B33oY%IJaE(XA8d{ z8;c6#q5a8tV9!)}joat&8XjgAR~NzV_WdmrKEKg*;IEz>xUc2me!~oEU4Xu|`Sk7b zR@P)FVq#M1;id)BcZ?b-zs;w#{R^ba`Q@HNX-5~xF;=O2EqbS-&{u>M z-n-4);?r-Q9(w(uS!I5}9`g44Wq6iicTn%Z2gfqYj_>cS+_XM|au(+uJ2tI1&ZhOF zsLZ8rI6l$W`Hv?%%uP#9hn3-ayy5XsAl<+^KG%&QNqcJrRxufST(!iGZm(JrN6SYFJ%n@T3yw z#=FQMS%u0>c#oV9;3?=!6N8me&L?u_wfobR3G>7IfBfJNk50(xQmswT1p{R6Qu0mZ zV>7K2&HMe;xJhMf+y0aA&`ninzcsDXGxXwl_!(Uh^<*~I9?S+q)8-OeGBBetOi6*{ zt<3lbH$OD<64W=`k6%40Wsf1`@lF5G?CG$i1PYPDSN(dmQ>)&sY?AgPv)^k%6Xp_h z%VvsjTi%AV|G!i3Ax_iV2~(f9t@FaH-LjnfjQT6nRcI`?A|$_hqoV5i)f)71LLD&8V3`9UqSls?Kir}=VX zmrcvx;j16c59+-WhdZNYolV)XWmav+Ooi1XE3L=bc`4dM@G-XndX265()*oWw6J!I z?f$Zzn|BL*WjizBS*1P3jfW!av*KF9syTSIg~IBGd1Y9Q)!0y|OQBCkfVSCBmoAr3 zsnOa2U-t%jTvIKFF5Ad$Y{JlyO2voled&&=SV#PD>`rcT2HiW^-vh6wLnU@Ug3->) zI*93T4_hBMUf!x$7k6@(#1G@+@FuwISylwV0nr=}qf1qGdjFoYPv!+`H2RF0Y~L?_ z(ab{v>*&rs-2KUggwL1n>$ZBgJVdAZBEL1;4#vLC{gNh1`1@E{wC%cyzWS*7!Bp7U zHW4*#%_%3k_|-dl%fr*6P=b zJLzNBg_Et~tm9{~W*7ehGNXS}=-o=uk5fM&l&>WY*;|hEZX-Q8(O|fxSHA9znRn!b zSa1EA>z=oEAXF2rv|mrAm&3!_KA1O+_JMcj-F4wUseAoD>xqD*6_=ddb3;}h_ zdH@t11gLJTe_6ERlX}ZDiM~LhG-j^;K_>WxzqWV-9(@`pV#2F) ziUM(0iQD1^(fd6|qrsO8K_NLWmlM?u`!`I87TxUgs!Z_iQ|dXz5kI(gtz!*ysX^|C z)QG>dTLHa>Tf`E7NK zJ{4Z{VI-Uuiqbutd!y`lY^uzQ=~Z6(gu6)eVSZ(f=jDbP@HWnd_v)0w+sGbB&K^=x zPU&JB8%({YGx1gB)QcJ#{h_GPAx;E`aoKxY=<)rkXVnP2|9zge$xXYvsQH3e`ENQq zp8NK5Pe$84|GQ}VYd?vUcX3Hy8GHUH`Zfi*i+b$MoKB++?d4wO_1XK+{oQ|?Hmv^{ z*HW;eQ3V(00)0VI>1ibEa40u=9iaU8gHwZ;}<9!hYQ? zdu@tY$G9~FxNZKT%ye1N*_qT+QX^+Vsn&^S_oI(wEs7^zdg zDit(DPj2wgr1#Lxk4i^-819?8<&5sE*dy`V=AY-(17#gBF^`+TvemTmc3OE#JpO%C zTKISj$r|H0i*i^hruTPY^Yv~kW9>u{U$5G$)|?A3!siT25C zNA+VS4_C-earA2T+OxjD;$ashhIYCNq)=NrRg`b3;SIo!>N1gd2wC|oU^hR1~sGPXQ}3( z`NX1E?uv7|W~Erw6PD+hzWw56=IrGrz*DA@e_3&NDP}m_o)$lkk@WTtTK>f?^rfyd zT0Qo48n60HuUIfA1yzhpj$oLqY8+N086%$Qr7!2=DMl3wsb zeBQw7a?^JIq}1w=H=?hd@YA$GAEt%g7U+uVnb)-E2fUjSKmxZ+3Un{gcKwirVVJuH z!!r-(mG@NNgg@9PGfMd5RSibYBgDRtc*DfXMI$TxD|u_f0jgBlecbDZ3H|yLS{zQ> zbhdwN_`x~3tRE!kv2U-*(vy<9I)-c9z^g|~YBDn$hQsHC!DqZOH7k`n3nDWU1|~PX zd3NY~@6OHl-s|U<{@%0aLh;_TlxHDl7F6LYT&Rtl0LZz%P%Wn`E&Tw^lzr0dKGl64 z{TabR!{KbbwNa*bKW@?;`~rEg&2YHyd!id`@yIPL=U_J0aDmm*oqsetC;sx}j+bn1 zU=;fSRoy1|eO;f!-Nyx5Tdvv!O4SX)Z3(9}B>I`^&216szaGOj2^`Zmq4|HtSyc*K zL@wu#3H_D3aaHnmf;Y5|k8tMcCOS60i8f|Of?F@?(8hl>HHj;Y`{D#rq1GDi!(jnq zeZi6$!@z{c~gzn<>wFJSTUwOUeXix+b)| z*WE=}KT;Wp?LWQs;&j#8UG0GQm=#FG0*SG{D71IRW0D5fL zRl(Y$8*NfZMEe=NH{0iM<3qFUW5`)uw>k5vC}udh%~qYg z0V{a*nbqxetVF@igXxy4I@5rLbco;W61MdqHZbcRY^%nF%AMZdm5-Knjc*vA9*>zL$G8E?3AyZyWi5n$a}V%; z9aTCQ>VCr7Dzx)aXfkv%-2IUFhlS!j0L5F%tv*+80awY}!%(^*cABokUZ~361GK)| z@$iYXF#$4RmoTFp$AOldE^$G{-G7ggXkbJC!653 z8)*~zMfE`>g4edK`|k9~Cr(YjysquqmTRB?Z1fUVoRoV(Hi$m1&R%D0ZX@?rYi?_P zJkKpn1K-@jdQy`Mj2{xqc$u19P~wqbIxEq7O@~(QGl)6W7GEgSdd*MS4+;m8*Hpp1 z(C58qNSr?GOEMG9-0ZFLXvJ&m-ZakopR&`KT6rD*t+BBOCBdp+#-sEdW2C+UZ_SfE zJ1HB_+}Pj?x}g(~N#FFPhMkip8!JN-h3Cp~jt{E;nIdNoMW?San zMyIQ#&zo;A9Hw0nH+*Q)&HF8szDjr4b*N*^4aP3^#vl;8FfJz%r<06hZsz!bjQG^9 z$%XMEZqm!$a!<;|zR|YxnqGVx!&`&z;QT)J^=kKz^&NVzI&946D@@=AQ%IezFlG7i ztAyfSVS--BqWt)3Q-!@VR+g&pmB!gPz4t>;< z92%{?6I~>dfnl>sORttPzV$k%MShM^6A7Q5@KeW}A3WePr&a}}=A22DMa?VYA6aJt zmX>^^*_06q9%*Q>5L#H<_5O1NybBBdD(r#Gs+K!+GXjBwa@iLVr9}E&0B6dR%h~@0>IND2A6?(y}fGv(=OXWZ^KSB#k5G z*qhSI_sbd|jsj2ka)Cmju2^cYXGFh}t1K^l6vdF7t*(@MTV=!g7JOQ%ZC5S%&rEButR^5Ue(K&o`?)=dD72|BCX`KPl8atAsFPQ>dp{i{Cz1X`D;ngcIf?vYWQJ z!d%V2RqWe0OqqrUeq4Zu+2Zrr=P9FdoDp;0Pf426Qb_i?wgu*Yc;_b)P6owRNA0On~$j<_~$Z=0loGb*|sI4~$IM{RvpEyXC7r z+XeoZa|b?&ep!`T#?*7e|ID6`5G-V~?&&HdAuWXP=*mVLL^c${GDx8N5o^`5`Dw9+ zUhFH{hn!|K_M1v9TRjc=$q9-Gvv%LSUVisglpkz;DUqh zbKg>#^79h1Q9_Qt@U7t>=a3@h-$NfiH+OZ8ePPATP|P4UnEs-c8>cxdG`N4LvhAH)9@w6cXNW#~JUZO1@GtT!qrjN2m zDeP=SE)jV!0O(n}N8uQBh- z)vtYCop~?kAuqOBV{_hDUcW}|SHQ4F+-jV^Rhx)n{|I@D_6?_uXXtll@qIs-0`eK- zr(C_6o_$fYZ0HAT*Q(;a%%{ap6}|j1df5c^wA$L16{|9HY`@k?m`R*J^>?eJhMXg( z=oR-_9x#=HCPkv1@NL08!AI`s5AV6;kvoPe*_D^K=yrdCJU8%sng=E38wYvz@Z838fami(U*h>H&)0b#qDA1Ij>6m7X1}+8IpK|j zYx`HR`O)cbNLuNM40Dq+A_uvRjF(6v)xMUN^G+5G*7w@T!|h+2M@z%tYoW9-sH&xj zM8r8j`c`<<+b$Mp`n8m|2_IAmZ_cL7RGV$h zeIlLK-&5&r`ulXcLw`@F+w}L@v~B(K>DBuEN;)ODYEtQhe!re}<=gq1Z@bSqIG5@o zePIsGrHuuf_>oLVPsUrbavB(--?68oR&Z)p3_)ds)|%%XhgeHhX1DKckx88uO?ggH z^mIWif7Ie(tmhr~Re-MpkDT|fDZsPRj2HHx zhFz>-onF{+4U1^lS}*K`hJ9GW>b$T=HEgMdE%m}4)3A?dnDEjv9@83DBVoV%Cok*? z4f`z(d(jI!rD4l7>`5=|X$|{r4SU!NJFQ_@fTg^zdSTCM*uT@TgI?J48n#@+_H22} zY4vCW6y{$mOZi^AhH7ej15j$4S3{!VzQU(wW;Xjr+f z3@Q3s)13Xem*#a%bE%{``>LdIzDAm;et!>a-)7-jEj+7Ol&ncy6u+D^lf7lH*f}Cr zfskoTW;!^pfkwgySv#_3H@7+@?ng)Q?-5u2ptk*Z(qO~vUs<_o8(8~Eeaeu2S|mYeb`hZ<6wfVnJD5-TSc$T!3l znRp}<4_zZ`OsNkyaUqBOA?xv5JaLuycf+L|Uidt}Zuq@(vwef&{}umv;`nS&-vIha z@{UJi4eRM2)?e|?DdGJi{Wk4x`-^Wl{Z{|b*0Z#J7roTov|IfDNnUwV&w+R@w(&MR z*CTGX(Vg1USCZGpmHG_ioJwKy{YLuV0{1Om9R5Ok#5cUuSA;>l;CW%vIZ~+ijpwjF z>&w*E*WKIO-7vCy$1Msdo#3Uzf1!jBeTzo>;YGiYxOL3hGQ=z4NDk+rUS8Y(J>tGr z+gBV9W5i*-+r2}*AzGh;^uy5Lh?L*4aXpR^@!QM0dSVlo&iF&j;=)^kM+o1EM?LWm zi+5)Ad@o_J=c!Z*AHDp3)calK{r-;k+vxpXWq(&=_CeCG{=Ytozwq4d-&sXD>o;7v zv1{Fp>jW16{fgpyOG)^8?|tWI1R-piPpl)9eAmbezt?wl==X+>>-F~&pWwH<2Ow9c zq+dqXxW@SQyfWZ69*tM@x{1t+v9U4ngUYa(K8|-tEB+d7M==pBI&Z!O$9dv2UH2)X z-;Gwfd0*QvSDor z?8q*=ej*#cZX&zvll=a{M0P2^mB{~>>P~4HJEf($vUD{&r6uf?D%mNOvr}S)@%O5- zNB))d^k*y8D#7Axc^dso%8;|8k}`b%PU@qsKC?8uOz1s)#2WSWRE};*IDXKjU*UMP zpIH@5+0>yX)0Pir50FOwd&6!_ZRE+G4Y(@8&cnWcx!&yB<4vYtz02kF{TBT@ zl649HOm+!>$FgoZm1=TKI+z1pfE}JJtyo=RmUMuk|W?noUZRS+&4rC(8<*^`drS+^v z-dk`iln#s;BzGU$IGvwFhhD5}3RkgHJ$0?%OzuuvH$(UnQu5xwH}jdBu>0Sd6@Om6 z_#M00tizw%#il#cSapSA$1{-R_jipm7%Pbj4pY;x$X}g})4ESj<;SUSIcd5y{|M)M zSC|ex`?~_sk&_9GeyBY#(5CHb7VXJQwJ+&}FBps?DNcurA!px~5LUmXZrK}C)q#!Q zk{aChty77qbRcmsjGVZ($@=YDD;$7}AE_F>hk}Jz+2_z#X23Z8V`k6HK8_SQBY;Q1 zKL{ckPE2I)YwgF^QqO_xRT9f-Xlfwoz5VWBG+egP%0R{DY)y4|g}(u#{wV&o&?>Tm@ZOZBCT+hr)qK*;11ZpC~KQs@=YA z%d)Z)Wdp0ji~L+RPgblp(TPRKCskuFM4YIq6F8t0A*Q+Ad#WSNgpZF}_kVXP^$jeOAv28Y6QjB6EiwYS`b0vh2O4 zSpR|Nl6i=H%q8>nf5W-7#5?6`k1%V}mh0V_T>>84*&>!-u9CTe4bXf>=0J<$_l``B zH$TGO{0K#u4M*@I36}f#>7Dx)`yn4N{w^C2CBI%jIO4-nXiD9`VLw#EyUJ;wG2hjm z;Qs0Yl;aWYjWT*;m0&tt>jUJ;8%L&tjk6+87;3mu6;Da6Z?r6MiR2B9LEy)y+mQX6G=&AG90+L$jTekhcV z$h`p3*Q@2sBsH+id;8r%k*e1+Z)zi9?Te^i$1h)wKquy*8*gL7zxqUzsTeBgbH_vJ zxP%M_sijimmhyHk&Ee)hUS$qsQ&59)Xw0HzW;v8$pf+5wak@4C>3oqgDAlMqQPKZH zs79SojdSCnH0Mx@WkM}xwccy%l^I~-c1D2?LaCMr{qW)~{qTAb`tewdUMbLzvp)S; zE%Zaq{$y0JbqdxuWki!i&Mn19>)Ol`zSc50V#(Za>L(!mc4-q0fRlJ?e3+M+16IfYTt(e(SH8LbIYKZLDo>F*_b%+jPO z$FO(ORHQ5Sn1t|?o4O{^4M(oia3Qjp8|s>okA&MlmmMv^i5T-ApPsDx9ye#7v9?P6ahFQ;l9h@zLycY zS2>DLWtOA@ZPR*Qly5YhcWN5p(D5`!s`+^ICXWXZUR`+fB6+bGRRc_m| z^3J%P}0aQ`8t z(s|^ToH|2U!h%0eb4s-GL%GoSp>#brS?Xk7F85A?vJrT_iC*cqfX|g@LVkKFM{3h@ zv0@)5XCB(P$4KaHRZ;WS{YmGp{SsecUday&Cm2eQirqH5&uDPsz-^1&z*|Q}(_s~Q zDk=0!{5xp&z9?&v+T5#J)X#NGX%4YMFY$N2(_ru{T4nv^YRI#3>qF4|Nk{BXbc=Lt z2^-2mvtCZag}=1g6{^wDfnHu!3`<+t4W4G5c=gotoQI!QYMN)Ce+*5z2$Z=h+R*|& z|Nrd04|rVFbuYTl%xE+g6EO%Ogd^-h7DAY@Bnw4VeN{)u!W|SL6xmRhsAMEdXKbNA zgGM$&)x~3D9LI6gIF#xRguWpvU#4PCma>A%2ucXf7o*<)t)rQbOE>B;1td zy2M5A_gj0PGiOGBj7i$-`+d*WnSIXwyY|{^uf6u#Yws=hT_{>ST-%1#9gHZxLvwRK zopZQgz}&%1`-#drRf^G`wnemwF9j#XS`cCV<93dbz}D)H-8ueY za_m(^9;3~n;L3?X8);w=CHAQwzfSAnq%-DW@FI2V^pHtT(%uexnKFQFI$HPx?yrVC z@>jDT-h#77BWSgWZmh$0zYLp>P}`95IrbgMeF8Pmvvydzb&#{Zo?J%`u(Cz3UfP_! z>pM#(BfJNuVx~oX%nn9Q;IMN>ZmQ4Bz>ZMZ4r=24!OS7 zxND>rGl7ZsR&KJSPrdmZ@o6Ah2iuFMP`0=H;%xcFFV|sB4sAG1J;*a~*F#@$nXx+MJv78oa!fw@zCvu=1wt%@LqPE#oYdyrosawlah-v1SY? zU{$Hl!`8N0b5!9bmJM4qz|}yw-qi9RIO#33Jz4@()nc}5cA!m16KO`I2TP;}kPEDe(QZa+*ofW){NQGk6Tr-R_9#FfbMvoc{_t7ufv7}y zQGDf1s);qU%i2oN$1I)-K(4AnkqpDc4>WPhEc8;)2+@L$eG$?f_^DHZngz#-vA+q& zQaHn{#NLuE?MJ9TIA62N=|apKy9sy?vjxrM!ufM$ml#Uq@WUR!8?rlr+gjrGrw239vPM!g8CnZUhHHNY5F=J^F0 zA}7=Rv`OlWeFZp?W@crp8YMjrlWMY(0_WR86+eCfF>Ju@@{U&3QK$Mx27r-%cYGkE zTHe)=He^dPRNVxsz8<}gvryg;tXqLMOEmz44bt}lo;*bcc57CHngzjqo03%>CBr-m z9~_0_)h~S5&`_tQ-STLI8O}+kLT8Xhg}%3Q4kb+}>J^C*Bin)+flW8X$57J5LNR2N z*xW%5cUClmL8lhiV&uTM_FyuIGkN(@nfXp5s0CM`9AcSh!~NO%z5}Du`Sq0+2Yz97Jf@o1U*CPstx*g$ zYM);t~uovv6po`{Jo=< zE72!m5ajq%=D~ND3;*w+zA=KpBj*MC-*Q^ezsyY+lX2v8RKD5 zCvCE9&qDN=4;SwKTQM(XTvJNNhT)ilr&-=w@QeCPVmYXllIT7=(&S?cB8EsdznEj4 ztTMoem2cFHV=C}1wGmlHcq?ywUA%`8%R3i}fm%oGUR`TqMkE>B5s0yJo$xH7*YET6 z{!v&@iM*wIklW|%d37geDt7S95|SIkPl1Ac%C(?zU*fGDBnuf@^ejZ;%Wzcnou*ghDPVw`yJwXfDz2Ee+h-e|jCfA{t!X7s?nq1+&7m8iSZ|K}obI{hP!WwcccZL#o z;?C|v*+7HH*=<=pawtBxzKCyXzz9dgDHhJq% zo%5F4oVd!vQ=q+j&|VI@*3uc+t1BTkt**m}{wZ*apE=w^k$1c!*|PBUG-4`iGg~>??B*3o78?nYS|R1T6JG^xs2@XQq>nJq>vNznYOGPJ$kesn@y&Jp69%Z`RQ0ZrF z92dTKxKzb?pHFy%cN(n&b!hp4w=J#*Y{-e!Xp_%c*-{sf!Ds`w4!jIYf@*RGDKY=F zz(>}hT{#Ma2Woy6cv|{RvEGyVb*1MzZr-pmH~94fzrIo4U(FO~;r!L0-oS4tg^*w)>Km zUtxc}29m-w+yb|E1Xa@&V+ztuBB-^SkY`FYjJbU~hZ?<-6J}93uL9*{INNA+Fq~23 zU7(a|yFzj<;CBwyAs5V`R;vQHNBk~FV(W91ZWoGea$IG*b3*V{%;z+Bg}hyZF=A)~ z+8Ee=N)4HrT2$FGQ?o&bcAZsu*`7@0?#h*m)<|Yy>T~lUfSkG=y(@t7Mx|7l+5O~c z_!ZoWQrT-f<+cLLoFO)$+$NM;wkH!?s@(sG+6Sfg^DO26h{xsh2CEiUx~E)hG5(z* z9X9~7K|I;Ym*GVpZtPDeE7ffL4iC`bxb4jo78L>e(l;S3%xp_hB6YE105B*c_?v zP%|Z*lj!e``VMQPWCP}nU)>y8+hNUsQW1KTG~^=--hEMl+pE!{w5^2pvGm%LyFd~#YO%y`W9F-eU`YuLB+kw4fo=@8 z(9j8;fp(1gx)|yKZ6LJ?$zap8DoYe&r;n*ib*t3oQ+619ry|*%D#du!JbvZVpRzfF zqz28z{n8PEtTy!@5Tk6o+{D0nn@)_cMI}Z!)dFq9+o@~u`xEq+#^25)%Qo?jy1nxI zHh-;tguVbge#)+{#9mT;3RwIH=A0MSofK=e(M}XFS&s@#Re&k#oNS6XfjT$l%I6WY z0x>5+336IUHtaVKlR^;IDGv`cZeow-4SRDW(CVP?2rdIKd% zze=i0_tH<#y6s@I%(DN}i`BA52>!yHf-U0vN8eao9DZ_cE~8ZGNF@BEQoH6<>8N{; z8t(Runeg%v#FX&zQDY^Cv8JAwdgv)dxxYg6m5qt2r!k+(sF9MV0ne_vQAbxLGV;gIcss?wtBvpW`=>_1L z-w}@gM6yeAi{rNxE7+?3a^dWOWE1$I4=WGVPJg4;I*d^Qd{tl{#+jI{0`~*A5zFX!0mo>a>_(j7xU*TycY!>z3lk(b! zrm+ptN8ZDk8%D`J2x)NPP=V_B)Cb-GB-9{5E~NApC_x2v6y#mt3N-~(&$;lP%!BusU}y!YbS^UzB9*FL zV=`Ruh^1E$;?bb!Dtv$Vm(g46;;J#X);=59Z-nmpuJ>LmpQrtOX#X(I z1IwwEZhx$S%Q+^{tT=6Mp_eP6QM*CtGG=5~;L3U}i!1A;_|zq5b91#$Y6`KAOV2rj z6i>SS&%#>6WnWKue&HA-7H`=UB2w z%8lgamTVEKZE|Xc8SUyeq-3jGC7zlDQ4^jwS|l>HU7=;jkmPD*Gh z>6QrjoIIsb{9jFOAtb_eSnCdc;iQW4WUD~94R(d7GdS-Pswx?yRCUFD?BfF4P8YJ_ z_*Bs|IdI)6`9EUnixb{8FY>8mD`>0*wouJ1p$>=rsB+8-JIOWdD&Q2o9Q9uA<_+#t zMEtsS)_t)+IkX+X4wYp(-##a4(CL`R?FS-V6403_McoHx^kjpu<)QjHn z-?M!ZGsFzrWLb?1omz&o1DAcr3tvJl3n9lLwuY9C?7M_Mw=4jM&u&|^G|UHCTIkE! z(n4QEY5P%{r{9M@XX>Fshd3&Pcne5{jkBSJs#FNOsED7O`U5Yaeh;2nA-_4}MKsxN zD4nBZv&hmznr~BcJ@*d+Rh0)S*uE^|Ou=oVgbD=~trs{Ob13{?HiyD*;g+B?xj7U* zEA>ht<_TS+!kHY1RpC+3H*`6LIM2cz^Hian=Z5~uTBt&<@Aw%&h zP>}a~>QUHYu)7VorEa#uzDt*ygHLPBjJk`~+RzTHN1Sn2sWT{VMQ(ZO6_jIpXoqvV zn7w&{GJP`dF{4Kwr5f5%``pr|;#0t~mvXk5nk7)89zE|6iXkP;rcC~TZGoeV)DqeLll#$S#v`X9}f>VG&s zRd77FZTxzDJs^m+Kd5B$G?CzN_1R3A<+EECt);`M9?q7k4xrS#a$0kzq0Ld0Eh8%_ zN!n3U(yxqj1#)QD)Am|!0Ozt+yPS(WrW5`CJ#sGfmZy%dV|VDwd6<0(d2x(!IM){8 zT%Aq^T!=)#=oFSkhAuJ}4{pKP zXilzDaTf;QR|DaCvwDKF`T0tmUkT1&m&fy3 zpJ>r1Vry%C>m%6f5x{Ad&=}Z7;FUqz@2kC9Zw_63eJw5C3!lwEH(zQr_77qlyL1*h z_nF;EYSlO69Kr{aZTQ`nY++eC|8LS#6PAIn-wn>x*9HeG77QyynAXmRd-mcyqP@^8 zxAV4co)1r3$W&kk+MPg!oP-3Kf7xWd#XL?v(r4IIphOjj;<^FsWPPSZ&fN%KI|jvf zK<1^d=ER%P@&4N}j5VQXrn0-_DfPk1?#sv2N@Z12s)ZHrs#cuW*L~xds#d;e_cg#T zcPPNB>ADep+VA{4tNPS`+k!m9CeIrrPn@J`@@#PPY%+P`@VhOyIp;6Y(lY;i5pChh zdSkCd9dzu3t%0X`X%{OwH*%fAaT$jXY#YA51s%Pr9D^O)Wiu_xHxk4z_9mhI z?y9U);g@l)BYc8(CGx~s)*L;cF=6=niOlicqrr(?$9E5-DIin4&wjc%+r5HcTlZnXXI1kW*)mR8AeRgRXGzR)661_79 z+L3OSmMp_>Fd32j*LPUSAS~l7yU~dYi{2m6qF1lseCm}dT6RSerLbZ5*~QHDCY-xS zEutT~<1lQHa4sj#{K5_uKWyVKgD#^IbZXtAt&R%2%?_*Cr!W^J4p0y3osGWvMEnPT zP8--p*a*~PGsynf81Cw%JuDuakrWB3kAMTXm|4GDFcf;OvT<@wqy+}7OS7F<|=iVgL`i&IMu@fo$r4+154Ci*o8sbdHHQv;bCVLWS^0)Sycn8 z*paS`s=+BA$Dp-ki-oWjU1*of8#pIuF3k7t{hF3=dcg6PP_i9-cQ4i*wqRck&ho6o zzJu@Yulx{n8o~kNDeR+Z48cy~2b+5y;JO9)+yi4lrnO(J>p;4X5QaF*Mk|H?6ga8? z%_#M)@QA9Vc1FF3H=kO8w`T!C7&JxSXUuyTai8RSbejr?sV%<>p^rE|^ko}HMVptr zAO4}sptDsLW8e)tvhFZ#;9w84F07j|rY_6+ig`y_*3*3VmSr7veDcat);`F1>$|>0 z4ZUbPcS`*#(dU%afK*Ohes11bmml)oo4MiIJe;uTFZd0Zv6J3csaxoHwJ-PHcFFw?l8PDMUi{_p1KFaqT zcn>)~dGPWqzbrPkx%u5C@w2t)l3E0EVMsI^+=c8~#MhXs;+v=brMmvPDcg==`#otM z=ijZ}*tkY%8n5DRhsy5N*JE9@oAtt}Y)^p~IkpmUaJjgo+n-dy-i}Y;_m1P!v$M(K zUp!cX?Ik|)$U2L57?W77RS-0|( zjGh@+y|B+}V14|DuLr$;6XzY0E(=~3m`>yE`S?^lDeOi~VO#?$I4-s*T+#U6Nt`nQ zP0>@TH`ylnyynTL5_?9_EC2L>*^O{I3GHz`^+RrMz)$%4ZtP^hX=Vkzl3NFJgOx1W zs@&O?(66JdbF1cA-^#48@5$JKvF-SO?~XFH+9{+-qc=*03Y@qbj{bhz?`zp3+Kux~F+SEQ zNFn#JC3vQj|15T(4qV@=qTp&+5f7}B($0EnQkzo>=anuVa%uv=!L=}7_O0ierAC#H zXQ(Z!E9g^S?!+!rhNDe=)PVB7BTGW=(w31@YY!HLK2U$$7LV2AWBW0}cIILNBXehz zl=T+ht})alzS~sjnwwQAAm5wZsA=R2Hu!sI_kn0n9V9@~+85 zlu~gDW_+slX>Uyv+&>-%Com%i?p<-|3U|!Mv8;jLgz~*(>M<)crqqcXDpTqSw_cxT zy}mHx*6Xy;HM*asF1L1XFIl@5)GEGItuS_zYv?)!m#&kp32M=(>DtFVP`$9Hx{p{E zuEMvsRlMdYaFxBub=Zd$S{$Qp*(>5xYq(zIQcl7%3abqH3)?G!JL;uByo&=JXXK5$ z{~y;q!}>gOSQag4&rn|Zvv;x-W$k4M9?JE{DYEp_uIcB$RNo8b7|@4`d=5T0*p?o6*}3;>}cd4_KrsWy95g}$vZHz^$2DEtDP3YKz4p_)@+;E=sztExE>pSt1U9Gs|{$0YX@aD0Fxr`n6r?0#qb17zdq z-I0~+&EB_=#GX#}N=Z+kJ&H8#JpMyiWx4zU{usQSlKYoSDvX3RO*y&Y@C87WGwvi* zO^K=R7QnMv>f5D95NOyR9BY$07mjjIUUqDY2|SOm-0NO;%H682doDh;`lZ|&U-z`+ zpFv&spoD3Z&~NYb)Od(FtGU?+g`3aWckK4G?1={M6Tpx2J9FF49YMg}T0T_sOUxrg1uv$*Ii^4AD zUi&V}7|t!@+8=g&!dBP5uJLp2Ym)DgEcDFdTF;u(wODhyzCACG#|6$AhZY%tyY~yNsTf`#$L?-nt`Qr zV;HjWPrl9BJHlTjG_psyrBBVAfzGB|sN!|#oVtzPL~NN|jP(k}dP#+>7tbRX9oxr| zqTSK7fGS%xO|Ek7L;Ce9DSFkaeh<7MjN^o~D?W8yEVr(!^j;hv>$<8|>WYzVRTXvw ze+ez#ZCBx(3jL;56-zBUbuCRR21Zro&xP7`dk0jzyHBVcZQhQVh|o?h1}mS2zEQs6E&}FLn{q9rJlb; zPwYZnW@5=4AeFXv@6Vx&yXWU2cUUGU!3th+$Bj^CJt^}?GmtmCW#%Eg_?jlCKV<3W zn#%d~a}92uzBaF~MBkCttVK&;9RnTRJkuXNK%+5Gw*-r@H76;+vNPXzl!qCFVBz|kCA zc|G&-*oLZ=Gx4caw8`|0SSycUyu^HWUbRGboe zKAzkR*|}TjBQzR!WQR7&4xI1K2=(#pI4rR-@^bX9*q?>4Vj2*3Ic9hxPd zAv_hdIT1f>v-h<>XnIpU+R`HzRMdKMh9=?~?ptsvBB3gZCEY2&5HK>Y`rtc+9(L#I zgKs&~V-4p~M_d`Qz$-&~;HXAzD$h5MPn7C>x<9FYAEQ_XD`}Xo6AvHEWTE}wM0_gB zQP2bJ2NTDqZ$jODr%YSGe%<4W!ikaMym|9*--r-o=+iLlWMQT$e zketXufOSfNAlmJ$ZzMKz4j-TN^TZs%u``ngJeJmG=x}_KrxnKUb9I9!urE~WNnVxF z!!mRIdZ+HJ=~Wq|s_O!+>D7U&Ql@5IroDZ3`y%jrX#T2oS$thp8=qQn2)TNw=qf!+ z#`u0!gtT*25xMMD0aHeyt;)~xy#ut9EEZq9aa=AxEm(RFbE@)ZvM`iC2^jL`-sKOQ znt|`eLv}Ap(fWJx-LRJUxdShQF=|AWZ=+<1oh6NCUW_|(-o zJU@Zc-b_h%9iQ&%wzs$?amCuD4A^YXFE{LzI;O6C!)d1;DfP;40jF!SEp_E{$ER@y z6FBCKaLgI>Qk<<%DH(Xa@(JSk%14RkD`n;=Gd*>stcy5&^vXR*Ju5ulJp%}-hQ+rW z>)X~#f#pye)_pbSE>?Ci=vnla z+4*?cl+&X99FOkgk?0nQHoz-I3hjkmhu&H2z=@v0Y^D_)3CeeiHDG*>($FdTwK`K!2* zCZg(R{}dDA+EhDcP3?9C>_LXHdW_Sgu%1&alp0on z=>ce@v6BY#nqir}?UMTr>(oeQcct9O{^2>SMpJKMYKJ$y7qPw0SA~5IC?Q^@PRTAz zmR7ZrFq2E1!@M54?Yr1tvH7+g8t)!J+RXL!!a2+m8rw41`R1>(s#RTJQlCDrKD!qq zBTjVJH=lvBLG3PdnPf5Q+*t>y5dW|e$1glQ{i9PQ@Qd|0(!YQ1CDgiFRr$wPe(zE2 z%B1eR(YYghLRLa5&0XvJo>GauSOqY#F2Ss`oln=7ytlINc_6bV{!=JIdeN(UIo5FW z{C&=-2ly~{MJWDLzaMu_-lD=AeyY0buF?N1v4g%QMI!uK_zuc>KRgSEkZJSOh zFa87B2WobMyZD#Aph8>9I_AOAu7BkHeP}_kV|eS#Zl@*v-j+<^rjJEhQtq*LTQap9 zds*5?TSSYH!CQlF!Mf*eMJ_FMz6o^*)S%R7aEmdv)XD9f zqWAo^r$!mh?K6yKEKqbiJ2Zw98qr!WF`r#HQ|HQmc%pLUZnmdoTJ&nP4^L8#=e8(s zm}iMmKVzd+o1IquKTadZgmZ$bZnN&38O4=3GN80r2)!wdTH#c7(_-9Dk279eJWGpl zbiAyVGx#gtS!f2IyhFmU<7d9!4=2$v9jx6K2wNdxnElTWvsL6IdI{IO(ij2HcyPPx zrHqGKGCu*ejPF9vR)=>>&t3`WS&tlg0cGu)n`@&5Q~3Nn*mtMw+TV>6MsaM{#ID1j zr%GSc+PU(LqYiBoM|dK?`BRnAcfqr*Hi}Hge)j1u!jTPWYp=F&qq9G^jZzl$M+1PW z9$bx@;Q`e4thcro-ZwgSgD+k>H}~G^YK^*732i}@a3ZI^p!SuoAFWzx>U_!h>im0m zB1R}%=M~$8yG)=p_By-1ywj;^#RELmvcXnNB;l7a^`S3+G~LvRQR0KqcodG z_=m`2A~%olw;T!RU6C0xkauy@7NlHjeO87MizZi3U{yi>EhAS76QUMUl%D5=_jgcI zKA4pCCUE8R*pnQ<`j?~-8_D4JOqkjUrcuC|6!mW2A6xk;2)6vCR48 zk(_$1_hJ(Da;<%e-Y}S>M#t!ULn=AX!sU~lIr-(t=sEd4tR?diRdkSVv~Vffe&xuC5F; zFHdqU(D#^N`4Le26Kofe1I@aX^{}Va4wzQM>^bSoq-i$^ZLg%;=Gi}tQ!*Ssb9Moi zf*ha!>kM}H;oPS>6)iYKi36(_(Up+28bvHZojD1!fUBEJr{%aZZUy;1^(`CgR zMKX|?N7OQ(neRe=4*gt4Qb=JVLn4puf;^UhOz*=Ub?(pO8Q!=97hk0k&ef(Okxsw_ z6Cu96d``hySobnOrS*TauKw?o*8j1FdKEa)=%l}pROBb2c$Qm*u>O7Nw{u!ng=z$k z93xFDh05q-W?EcnCzlc(N8ve%>$HqMPl9a>AKfn4Q>(RYuO#ak7tnLxHQ*?m&B9T5 z9B|mVa1EG=5Xxj9*3uSHrW%j0gvtPum zNVJ|DaIGf?AWILZZ7avPW-OFjemf-PWP|)p$uG`qgT>T(p}luuEfsd?h;~$Zbq8;& zL4Un=+41Q9yCEys+jGfW&qtn=ei~U_2jU zR4$aGb<&|qq?<9lqIaZ1QlXqt_P=d9cTzlJ9WZ^W7pGMqZ|JRhv17iTEq;}A?uUj3 z?Tz?%q67tVWVAizpY<8=L)iyVe|)-M4Ky5|M(gR`bI|QQhqBspYdPA!w#yw&Eum*x z=DFHPO1#uYq7)f-4)&>Ud>Jj(?NEuOAk9^9_5)GuU9nChOg_wJkVJL<)nTo3Vh!2u zj!sn8kD{bVrPs6GW*$fxG^He!U5c|H-pTDT0oH5L zJqcJBZbaL(Yy19(9s=$<@!f2`_uzY=`!-;z7jxJ+`p`27ZDc6?67cIZrz(C(HJcvM zq?&=3X5DVI)HQo&83ZWQ%j*V{{OE@1zfBno76y0vHj&VxbBz}I1wtgm9c;6Ha zI`&B7xbbyr*^|Jtr(V_}r~l2#X`pXG!mz3VpSIh31v&$s_E;)#fMZ*Ug*i6Xgn=K9 zP}x?o8XZ5URV>-V!B|F`fa=DTCOV^6lAeECfzq{P(Vh%}C$}e8C%R1!jO(-Tz|Z1i zdaP%UTkrNlIWsQ<-N}f^1dKPDl?j&Uqbl3})7}~;M^T4>d+OYWG=-wC!0P@jWp_if zs&ES#G^@CY#g$7>%ZQgzc0Fi2hTSWXWHs`Mh%G^dc`L=uhR3i!f_$e{=W8U_7t#No zr~Iv+MUNZCy#C9w14gN*iBT;xsK@2q$m2Lk=NL|=#KI(eX)!{3I$0Nk4V|ouVKtHV zjjnZ{J)rG7xicyB8g7ok)+xR72z%q>3xw5hl-6^tZk4QdaE=--cljIidxbgc&o$g{ z^^}@UCaSR?rwaRWU|HHRfqgo$P_hm7B$r@^PH}E&JXx=@e*SKq|N3|j&ot$3oju&G z6ARg2fkYpz>FzjaKLOgQ=gr*HJflC}wPR$*@QynCq@%0qW9_5SHS42tU9JAaovR3{ zy*IjQtqB~QoTwd+Lh!^sUZ(YijqIGlXZt9kGM&yBvE9TIX_HveO1^9IGmhR69UV;O zlwsg=qvnN6K9hOyA)CJRFbijh)I(r(;(1_2RNNZuM%DF_G95o+1ySm9a`e=}$<#qk zZs9pK5_|%xHBK5&p5BOT1aI-CQKT|_NBa;eUVp6IxTf`Pya%;r`!J7wl(m)tY21)( z`~)j&YWjZddIsPs<>+KBc8a_C#PY(1byy#X;wGUH+(6t1@UTn!CbTum;nyl>gE@2M zg~ZM`%iWo-1I~4G7&r$Br?ifSYa}`_I6OEZ_YyPDk?3F_cDp;V^_QuG4jZY<3myRu znbeJI>x`U?6%YnU=My@vF5b>6RM~bN9@{qbL^|oObEq17>lqIob>6r-1riZd5IJDv zRmj;U!rji}+s(HQ9~2MWGNWS?3Kuu?-ew?#dAQd&vmqHKcRoA#cPiuYpET`4tk>|w zfa}>XfI~dwTmr^$QW}3JVqTH-cGK#t+?333K_XyT+ehyP4%zs8ld}i5;!16e2ZI-M zBXlM31XCz+<@hxiKh_`qcFS05eeGm))kth(w~&GM0cORAFy{I&z4ie=%f`W-&)!VX z2T^`qHawjdA)On;9>@zH$O}&=hx1~W8xNta9SXyH-B5a* z4T5XV>-y8+QyxF(6~`o8@AXIA+F{1#NfzdQbSF!GGl+Sb^oY~4bt~wNCtOHbE!XgS z^$pE9X%gT_0C6Lv)JZ@!1C#IH(%%dhHo^ALFIcZ>Zdr|e^B9k#m1C-^^s-x?E#qG6 zui>QFKgBI|a^`?_XtLnMo@8XQ@WdWFGU+?<0Ia?rz`cS#%oZoaH$G{dcmU^A`Xp6j z#}}|eHj2GAi_TzbS`)ti^deWcAACi2p2kuEn z$pQQ}P7dR@W-=u{_u#j3GL7G|$$RlzG&#xlgi?FseEAy=kWUi+nbJdGJXv`AjyS=P5+2k!iQ;2FrcDmd~o=J2pH!6^k%%m(B{PvwhbfYSm> z!Pt+lEZVHd*Md9p5yBn$>y#4<){J@k_MQD{purPPEXdwr@fR%-PAoNL;OqzS*ZLi` z-|^>;2sfXU;|r^2?TcMDi8~!%Xv?)PR&NuWtqAlH#}^h7iCV|E)$uKbZ+U#mcV~R^ z(%;OdOSW?bZE1jUjTh|I4+1wQG~VT|omI}<#)D~PJv_3VBdyI9XJ_a6X*u}ps77kH7HXoFM<0i@2n;%t17TgZz1-d<>>+ql`9h=#s}rG zeszHLDbO3vGKVrdMqa4tPE!a@OTm07dQV6#bf!ZMw3up7UD!)a`rMK)M}#T^<2adO zT-8_|yX`GKpTYbj)<_IRbgh!bo;vwfZ}QYb&L?&EUWp}BwbbIdOd_yTHIWY$%s!CB zN#Aw1V#^s;8Vq$;V}?~T60OEB;HtxoUNugC^x&NH%u1&%vQXHbe$;V;svHhnxlvVy zhyS@8rytNJI0DO|FR_>6e!$PPeF=nFq3?#iGhEdwJ5a>lfTua1oG6u>8-B43xNb$y z(QRaL)@BE<98))_YoLv)F?Wm#FPYENFv>wKP>pz1I9VIMOLBUxD9Y+|n}TYeoO$NGuh%@brjvP|~ zw4ha&YdL@uJb+1aB79Zr6nD0lCc3k{Khe%S+Ey=-hc7RWh~$ymAA+EW0=67VgPj)Z z8i%e0Ep3&*g80}?Z-uK+-@{mWDk*%3buPtkQL^phRhdKP-R05RPWfxfYvJT5Ejo(0HAH*7jn1!`q-Fi z2j^}CO*ez4TX3>a;b<{`ZQhEDT>)bi(Bi^oAaYYaO(#@Q4`LQzK0}kK>vmqK1;<@^IIhj&*rpts)kl|mLc$(g6B8>OoaJNUUmFZ2 zxVnw{Iq=S~cl+&1fdMUs?P6IR28hFRXLZUfUa<9qsbCANj^x#`T(==wraZT0kbgAU zbwBASDw=h!2D6S)qf=)cbqH5USw|;C*RjwJOj$xh**X?vTN`z^0Bfhy-oeM`!RyB< zF^2>WWcHmx8Q_tGLnd3TmaXH#X~1#ntE6~ zIMk`v1Y_=sL@c+4u#Sw)6{(w6C3~r=5A9J#A`{ zdKa_anE8}$KD7A(+zStg9>$8IsdvRQdV~pari63ma`?ys`$(g<2B)U%KH={eN1NPF>)2$|XL%5ASjddvgtFTNv~4On(p9=7tw zkZ2cX1e9Y0K61i{hZD+Z@;`s#)WR2+am~W`^##b43-ZnXIqSw=j@Yul&li#Sz6lG% z<_1{(^s5cYbx*_Q6(h|-xWkaX-iC{vF4nVf?}0l3Hx0J~?!C!z{NnTpD+4+1S!lXA zig)$wn+&y8c;LlOTAZM?UPEANuB?YRehN1WbEL&ZAGrI&ng;i)a%zuUhw*)_=eyUG z(lH++KYuN+gnD;`mJ(zv$9>9qB~TLfl%U=*C9Ie~`uu##!J>Kvd@W44cz>0QK;?E7 za^l)s7&}c~LO*On_d$D5U%3);DyC7{b1d`a;q!g#`?}=(%FU3QJK0iGCo$GEMB7$wQ&EgLbgxlsVWZxp=ik7Pg?q{C za8jWUr)j;*-yiX0sg2PLFvdGv8#)dpqqU!eoZV1&8GZxE*IIuTAx+n`s=#X8{sntO zgtk2a4UZ~%61hWl5N+!?6#Y1DBBMP22PbFpl*`a-e?5y3#Dun`4eR%d>UaUSxltWf zR==UvgTvsINlJw{&yvk<_hQrFWig%E9fllPG~@ILak%9UGgYr;;6>RY2Nt!MfVRA>!6* zT>`hD1B>!imJXolhF>_x&rd&fcIkW++aIUNnz98h#rDtoNj=m|ga095G&wE5Jr8mB zf7wIey~!;PO+zDH@z6AM*fl7Tl1;WY0YEXHB{i|IEj`VpHld&&haUS z59YQ7&&4N8v=)dQQ+>Ar{8aQeu4Y!LSIH+aB1E!hoAJ(51s)lzffZC+CC_)=2rC@u z7}S%9E$_HvwamO1B7O|M`V8AjoOm2e7UQ?jp3!zM zzB6CuRVH~+Rti5uyf%`Cl9;D^@`!p$DK(`~dUs0!cWwiB$1sO8aMy7>=$Hv(uWKL! z4PsjqML=&MiL%*{lSb^MFf9 zQM68JIHp#rz*fS1xq}(Zf}Pj}IkBq{JE{tDVzTbZy`zb}j%E4(zpE~oHlt_JW2g_i; zuZ(e~>7j%gtp0?>M<^fx?GZvPO%GA4awX31uNqg0s3%n`_EGG%1LJdvBDvRZ&W8TX z6CU8&mgJ(KR}kqbnW$9Vw|U}3M8;ZgEKM!79(1t2j+~vP>)d>xkW2d18;?*@1c%+5 zgQJOXsVW=^;x}YBRgl)63j?dl+8TnNW&67KVRZvG0t@80QF6pROA6;blpr2*_Ha@1 zSG5lz2l7LrfkVIdoy_X?o(Dxb4-Qi@1^4O2&Y@o%q*NSjtE$1hD(au_L`c(RW2#<7 z&D&bVHKhjE_7As^o=@h^4~Go?8tfu?2XHe=Yll`@EHbA~VukA|RgR}3>U(2^4 z)C4*DTFB6_Vm9-t>Q=Nu`3!Ef#ePNJi)%v6y|}O@04DSvsS3#5_m4-P-ZM~xxHZ|h z=9XP@xBnm%idHhn+OU%k;#XzkyY~&pJmH?QUwEvVeLo^=u&(|XIhI9zAI&6d z@W9&P5M@-#p{4RhNpsS9^PzY6j>>JadZqD9a>aP&Y2ad1-$*^DDny@fozugN#*Nq- zg4HY}2H&XM7tDTGM9qCCsJMfi<{;ILi-92J1$oAcqYj+=XQ^YafZnEyV>e+Am2N*)gk z?j6K9J<|FLN_%aA(l*LHyjx7IR|8+IXzv!!-d8JnjQtCz|B*&qoFi7V6AS*lli97k zb4Rf{vjlW6l1jh_P64`lKzC+7bm|F#?hX%hiT4Fvcme1-1U9bt%*UL*(YOYD<8eUt z_B_an>wKuQrf%Ffi*@kwWG(m;^iEh!fW1-!c19%v__gYmp#=7oSbWH<6OffGN_kZm z&NuS;Nd9;H2QAHlvtEo6-+~1WMxxM5V@kb%xwS8(9BY(lOBCG@r{(ijh)3K0#2Z>y zACjG#nj?K9%+mq^ZJ4rW=%wLt9XERy#nSc*pq^IT7>+zl`i2WlpPcR4b6m>CE$ZvQ zPpT#q?2nw9ef!V8hWfpd3U~TNcVK-pj{75cZa(UJUf7_M*C}b8^v!rjDili6ron?N z9gdt3{>@p~QHA2OGtf-fU3n>s&YQAGQsPc(owDZvU1}8f)kOC=wHyxq+1GFfPCe>{ z@yiG8)aBRY)1lk4J$bOYHubxd9{_8Rv+??xpn+LU_6R1_3akn^C$G`CutE<3(jmA zhkPTkgwr!thI=EB*UR1Ax4{xml{3fTgbznd1tey@&JR78A!kAT2O6i?bA3V*P_tXCMb zctgaMb041Fo$QLX%$-rQx}<8gZ}+ON5o3ap-lUw+Y=vic+eN-F0iZv3!v<`mRG6nD zkM^Cdp8(EY?oO=3jA(bVa^lZV$+zS(Aom9Oq84)BqjOKl&E_g&7b&zTNRA~w1xcV> zTLz)V&@l?VSRa3#ZH%%aE1bQ9p`AYDqe3rYe-KvXAv@8sq`Ybqj!V+r&>-NUUHkKm4+P)E6a?$G{?nP_X&KeOL%;@KD8IJCH` z;~dbs?G#}HS1a*`*VKnXu;wG5LjEH-E!r+6hr;NxJ`Bssu6x>k z9dQrJ?|%8+E58}}otEE8`JIs8$K>~@{2r0tN96ag{2r3u6Y_gperM$OnEXB=zc0$~ z^YVL2erM(Pr2M`lzp1VrV(*}^b2SQ!3H)w&rw~?b3!IzKc=|mChl2iovpu1z%JmmRp)?3sQpw7Vc2v0@@XeOHw1bw zAjc-$hpcLPIkxKH*u$(jH8__){ zI9hc1S5g1XD1|eqbq-D8dqS5}@aRHyvLk@eX_MCwd!vaB{pJF#T4wM&knR0QQ)1F| zFPLV%Nz)4#lFuvW^mx^$ezDhZ+SlYHR<>lh%D&StX@b0XIB(?`k|(;qehq-%9|W&`Jb4Ob$;hn1fT+>xjwO9w;^N=_O;n z1^xBUP0WcUV{SuCL;Zm}mW=r(Vm@l}#5{h1Hge!RjhK@r=JG{jO0Pl8E*;aqFrF(r z$d49lr&o}^*rcCbu%vR6K5##@8TYHp{{p$airLkxCe^}tT)NZ=q<_SuzjNtQCs8WY zbf-}2BvSR8RP{@zf`y=OT3!AeQenrrFJ@AqFE4=grD4q^ux6su`@Zo$((gt3VP|DQbdiQ;#KaBLI{?-c%rjIU3p+^&@_SPc{ zrY>{n6V^$-DRue(jW&NQ(X26MrIt>!6KQs;%PA+llz{d&q3<<>ywSB|bZkvib93`r zk;O3WT9eu~*_TeMH3Ne?Q+-?28mQ#gqzA?alfR+XAo5shLR>qwL#;{nrI~I`I;q|9 zzR~31y?x`O+ehiMX6xAK&NbMrv-R%534SA&^nD}ag9C#o3F!uhZFrmgy#_lc zS>Cp>d$*2n=l(f)XQA>Ac+vxkK&&zQbL1U67bTqjvJ(>N_?`x=bg|LQ4aasY_Z=IY z+;&)2QqZf)1<-GF`L^e7CZr>I&RgUJDEG z105yF4!$SbBVwtq<~WbI>kh=!uePj8-}gUx(?7w2y6DiMo8E?-87;<$RM};u!Gy18k3bQGg|?czfAt=? zmC;R$-4c2EtWy5{i6A63xYQ%G;AYJ@?nte~y`GfK-8G|-%q#|j-6&S;s{hgLH(&l>ln zac7Ks%(zb&H)Y%xjeE+?%a;rpKlELbe;^q#e$N~CxEmI7!yLKhh#MAh^Man;X%c8iLM>68iK?Zv4m1jhw3ROCj+xB z>hGhiscUBTC#T0(KfNEb&&S8>;r5TOm9Iy}8^k>{ek0s1<8A!1!sG4Y4vcq-TQ+{H zxV__Dbk%|JZut(4e^kC-81E7Hnek2HzJqpaHg#Yd#?1S?`WgR8Z-vkGB7w;CV8>_*7^gG-J35EGUBf^6SADS1wLUe|>*@LM*{yI2N zYw!N3+?A40A+DJQkZ#?)bk)3**_=ij6RA12>ZdBEu-gWCG;Tp2303$Lq%S~v-@Np? z+^DzQJKb^%pV8?GU!I?i_DL;};}gC=`o^knpghV2jZBO3?$`A!d~{yA#o?`Dde#}~ zdEOf8TeujWpzF%wiFM>m2uXsaqsU`2Eh@U4xvGNa2pi^< z$oZYf3Kc07zCC~R3?MevB+M+dg()~9+=smkZQ5*47UsJ+$@ht2ve-u5? zN|X^hjO(Fm$ZC zw`i#R&zIzmJ1$K`TRZkACuYuJ7ZFyV;ckWd5L{Zc9))Ye{UY2X+>>yJ;JyGC*t1@R z3+!2Mz#WDAHe6uO=YtFE`66(EJ>Lqrz@9G#7ufS{#GGmi>RQpKeq2H-$Ai5JIS`i_ z|H~YI^R4gl2ER1lm*<6-=6zq0_g$9veP!NvdEWO`dEd+PzCY-E1JipuI9EQ4T`F4) zbOlbR`F6Rz`Tl?tj?`7a3U+TGc$}|Dd_%du*4yH%cLf>UC`R$`h_5$aU4~BjT&~5@qwRYt*rI(B zEuuaxY249A(oC|SV#Ns~;b*_T>g(uC98rSJ;=_{#P_jFcNQ#XMj}jNk^~i69^Kopr z64(VdOo8t@Hov1|ILid90jaG@ZS6}Bat^k2+uiuYxe|l@JCblQPn_uMS8C$El!S9u z$#|1Gf=c~{QnGKe1v9V4s?NGjRRfEQ+GG=VD2K05I91cUeH?e8!_UmN=8quY&C9+A zm}?k6az&m#e)(b{_8X{U&7lJ`IM((j7-{S4LZr^^lgni^8;N0zC>klpZ}Dge=|@JzLd>nGTg9$( zk7l(~=94W3t}t@v`jHEnjkP)9X;(Yc$uW|x^=<&v5P@{}jm!T9`EFs}5%P@9hF<-P zra0oMt=}F+34Ta-C-ds6SH?GwR7w7uSw=TY+8m#pn`0U$e^RCBMe||wP45S^%`UX1 zfHvwW8x8v8sFJw!?^f!-exedI*U3+Id zsfXJC7}q8lXZmg6r(R?(Z3EMbG@6FchOnGbg_J-X8pS;^Rw?o+L>cSm;p82Y(oi30 zFDA67jy_Tgt0_nw&*#S2a+~R2G0^T2_Ap2GT8Mtjg?=HIghnXa6p!8+2{_bCdB8sm z>q(W=TFSTW<=If-kiW+I%GrXg*$|!Xnooq41KIR`)EZ}k7&|K9BSBjl%FLHKIpkuf z;D;Uz1%M&bkAu;97<$(!Wuf|&N&TK-{qDqX@#tnsin@1t>Q|NT+lE>@`3m&V=49hY z-G$1f?n51<+qaWY#oUlTfV zeRHuCp!DvcBlQY$038)*n#}SPoW1wiuRHb8ctT9fC;~^}OYWlMMzH2ogn4I8(=_&Y zlM^vc261wER7l5B7U&VyU$~R$l*~HhwqV$Rzyh%2Q#ciX=PuwYxuWA!BisihGm`I~ zGWmg9$oQ5!J3);|6S}APzvro8!3gg%b?O@$wUHzE7*2AawkccNu4u;{`|IM$*roxx zYJn~bLE8mDknogQXs0wz{KxXj+!F2BoKxm^pO!Ltu7}{jc1u5f0rmHJ>t86G8!h5* z$SeJhd8Id2DyL-3tg>bElnb`yd%(TV_SC$elm(=j8|6p=k@LJ!3AuV%QsW6zhICsaVq-Y2@o$Vvt`t_9YuT z*aHXbn5?=CV;0EoVdpwnT3CqonPbNzp-^$j=RoEqmd2{kxrexEf)I)-)w=r()^VA|>^L7--N$SnK*0`(f zDX}-pf&TA5XP_$<=u5mU0vQP>Sk~96T5{RBIYRhDGfPMi52QXV%Y+j??l^0a6BrUR_tHPWX?E|X<_&{PU)e>tnEyBkOakdbo8yOEn zIacG4?@TXxOKPD0wg$bXJTZ;DB08^;lcnf=Bh}irTqGszlU^iUdp6zh@pBk) z5F^EK=bTe7kupo^`);5bs}Hn`usRHO{04&<8LX~c++g2d7K0NSe^za79J|*kMaIce zz+I~Adv}FH(JYx~aMy|D^xveSt@<4AC}oB!glewAK4TyR?kX@JeB6}pX=U|HZuu^Z zLDYl$XD};KpUaJ7-?)L;cOE|f*)Kdx7~chmG4`Srk>$&*TQW#-*ovc zpW2o9_!hX~YPfITghJ6?x8B}%6H4E-88iW8ZrU8j)243ytsZszrfzjdTMyu448+Cv zEqI(d-41*c_ua^81Mq#z&D|Qdo4ci~w(bq8t^2n?V{tsUs-D|!m9n&3Z@$;6o|}xn zxbPQut-6&NquiU@ofuvBY`S@aMAj*~?m?8bw*ymjJGI+jz8lQLH z+hD#MI`#LB=KDr|_w{eZ3N_AEb=@@lmUwX5Doo(W~VKNqG3ILFrWjN?7~^lwWmd4|VSKc8*e z^)n2AK3lh%hwpeGTgWqbkLu^M6XEh8Y$u-7uzp6651%CB^BJDdPZBPlVfx{L1%o_* ziHEWFZ`~&R^}=1AINfzmzp=M?&u)59Y&rTb)a9|kEbl^Hn-xU5tP8;9+qf78(h3)P z!`(sGw#OuV`)E4HCBRJQxcVI9etY=7e(}F}UG^`+c~QDabY{Z0ePVnN);RrlYg-@C z2S$7NU##wZ6PO3=R9j(f_MRTt5sjce(05bk%}2%==)IMB^f#!IU1}@rkA6ju@MGk4 zK3Di6;+@we9U&gnr{Ze3w~y|mytWl?%DA+ZqJ951v}BH(GT(q`pnn37jR%Yg@dwBd z#RW4I7YtGRJKx3y^AvwDNO8d&#RYTJu89W*Dc@j@;(|Gf3kIpbjSJ?;Zyc@t%euq^ z^D!>CihRFs*U5)2&Wl&?LT(ZliNJ2sUcwzg&tv$4?)FiQ z|M%gJPXT{OcR}tD`tcB37p{TQya@eoN&{B;|{U)p%c^y4AZkB3Y@9y0wHu1>$h zq&NL|$n@hO^y4AZkB3Y@9wK$JEK&tsQi-_cn^Yv>1{TwghfF^nGW{5?hS~IEgzIn9 zkB78eZx4?p*J2L5l-t1a5N|P8`WM0%byJ`dhA-rfjOlS*8|tegWI;8(7rkT``3Jd@k>dVZ8IXxZFzm*M++1 zR-EtJ7wQg}bQkK5j_L7td{E{C(AVa>>4~v%%`?Uav+wCX-Je`{YoClq>3kRbP)0n~ z$?!wC(ihW)AHp@?njfYOKTI2bm^S<{ZTKNv9pCW7wBd&`;;|g?!?fXtX~PfGh99O4 zKTI2bm?qRrWB4IlowwnKX~PfGh9ANe{s(_2p8hucFm3pub05$GE-8rR<+>0r1&+mC zO2jtA&wN+p9r!Qo-ZQS@yHGdH1jOToxdSHtg}S&jOV|H=E+ewN7I6oR|6(r1bEaRy z6+DWVuH)r?4~|lzu_qRD$NN%{H0=qG3vocc9akhz=8ZVH@0u31zvtc1s`%%;d*gWC z4K3?@^f)i?7(cu&x|e*ru8~_9hh0wa#COwo#6RafTc$|CrcUgZZrYr8Pkhtwm?y*- zfx~f0cl38$bY=N=T@P#yZ()3ZCh=U?t^8%JKk`8JGsFj|kO#$6oTZ2>4^TS9hl+XNFzad^(-0N)+F$f12sf_QQ6b!< z)4Hl5D)A*gfXs2VygkIJo%m}y95VCvAu9I8-*ruTt&u-O?=0lMBF7F4Cf+7MTn2&i_8PQ$fW3U-{ff{Rv=@l_O3|NEiRV`~LC3 zen<@$IadjW#^i;$D zZ|kNFKgqf>HjI#Mu>1>l4Zlen7xy_!KJVX^^$g5G-k*yh4R?{MQDd9nx|qFkCTbp8 z^T&Ix3&za5a-D~>z4!NQN4nexXCBBn<#lgtAZ2vjL%)mReMkCUnd=aq|Ml+!FoYy- zE?##>x?d5#i`Tu^z;|)F_nP*-I9+W&kfKqLz~z z#=Vr8Yr!?&IIM>F?N6I;eI`w+UyqZi{(DXMy(WCS`QC26_4zZY{-pWVbGDS3!=3=0jR+Da{oY+F(17jKQtrJb zd_gyb9aCtl;Z&c8OVv+oi3da9kTzdfg2Jq&%JBFK^$%igpm-=tQcd@#(10Z}C zt4q5i!go=+5CK!a%Ex1ilrlC*skG5Gq>Zj2t##z7w9z%BjjkbWbPZ{vYcRU_RNCko z(ni;iHoAti(KVQJa#LxeYe*YiLt3vFr(k*_x|oaD6&)(zyLes9p#;8*(-oN*@LiPd z1nl!D`~NCjj={|5mvUi`f-ae&U5e{&HQ&ZX7nN|=b^MKsE-T@#>-ZZNU0A|h*YP(l zy0nD5uH$c9ba4rHUB}pK3%1q+aH*LD2iVr@=jhMj%G+o9b~85bs&qQitM zYj0p>vNv&jY*^(!`n}*@rgk^BY2Q6HcqDdxO)=kwV8E1 z*M+4CEg5M=DGy9$(tOZP@_^-$?WJLIBM<6Nc9@2#jXW@sp(zs0v*dwEOj;hq!P;RO zCNT2A^d-#)CNJ{9)P<&*G}n{|rY$tl)Ycq;Q;bnB(1m7L(*0Yxu-=jU-?NLYgv2@P zvi%}>2Q&i9zll3OJOEo8u*_fPk-de;V=-6krx2d+iVY+D^IchwhQD_2?Gqd53Gk2! zvp(Tz%&q4gX6 zY4zrHY4yf$$EDR9za5uWZ~S&#TE9uS<8R{A`b}FP0v}*n-e^U$t@Vu*Gi1v82M|A87 z#cpq$c0G>08CqG}9XWPVVvj@{6xy4>o`ly($e5Mo69PBs!NJr2$J_hBM_HYT{%0mb z7{f@%H07pj7GK999b?Qyn(IcJ#t;KdV+t`)Z`L2HLkKg70mcw$$g*|_ND-}{)Kbe@ zugh9L)mpEzEX$>q+h59c{jtjWiCnbQi~i81ik4dHaxE&7-}iaW`_4>4V%xiWf1i9# z=6&Du?>Wyo=Q+>woaa18{HYu9;Z%YTr_yL^xI}##o$pmNn3^Fsc}*0Xd;`xqW!6`b z`rPra8?yH%Ia5+o{{g?3$w2u%i9q>NCKM{hLv^X+TNO@6E*+w)VtQAcNlbTqiD{0n zJMa6~x%4dIcYOHP!Do`(m2hocIUdsR)mRDC)#YDVZ@5WpEnKpPg`a$^96TwW2?w&X{`9|o|TnSRh|I3s9vOj6rm~7*@I@w%&xsf|{bN;f8 z=j*$t58p%4@a4uoL7h#h!i9IQ4JQiM2D!teD0=;b7@f>;JA1fH*>n=PCMh@Ik2=mQsDTi z{LKx`UmDu~!q4{aAO2EvLu13Cj1y?e3~SDv8@fV0kxPFjJ=Z&unBf#e3^`^ue`){z z7lwxRANo@B?8e!{8zO37|F6#_i?Y2E-X}iF{Y?YgG&5?iCOr5YQXaD)W)p4eq8Z$YUEtF;YnKrJzm_WGe|IuC z`<;<<+*9C}+f@SGuA+FWrjC%-5lc0cw+J>qepWFDeuGZxrvLg}*NxDaiey`u+9vGj zS&hYbf}W6~aUZvoSD6Y*4dPX^u~^^;(Ncj!+ZyUM+8fKG4aLPB^TAOp8E79!+|1Ku z_}m{@6<9EkkXr}}vVGV{+~*X-ktBY(!#?qKr!>=?JK;3UIWaP#eio;<_)^pHa4r2( znF?z=Biic$=F}E^Tj%_qGOF@%R97FvZ=%r2C|-r3mDNyZ^#=EgqtOQEtCYg6&*n({ zGu)2%f|kjxv~j<{sQ%e5l&2lT>a!PLrt)_8;qr#~6nT1B{6OlBiovqf%6{L|1KrCU z|65!7gHLBx1bP?^J^rX~!GPnRo3TFdq)f-}Jxi(F1RQSJxGM1Ne@eLb^V&M3 z{4`Q$tik$y*{8>?-PsE|gJh{K@sj6{cXK zQH+n{0C(-x#4^+T9rJZeFT!hWSE`c#-6@Cvx9k7asS=*QmJ0H}FIAE#r4E0hn*V`B z1^j8*YeSi*{_cXJwtuVE){ zLT}O=Jgfh|Er+8Gf-N26WvP;MaOYF_`W5f*zC@AwfY*MR`DN~uwqEJ+&)ha&=!p77 z3|g$)F(NfA-X`VA+z_6^Vhx@m%4~JwE%*WyU$f?1sm|1`N%6v{UtX^hU+VbVZ&i9x zvbJDPCKYm@C+*23D`ocJuW>H5lu<^`Uv06|DmMWi-R=a#zet`<7_-aG7sxB4kTT>( zZM<~)3(qSf?3OX;ma%ez669t`O7I;VTY~zCm6)f;#w5M6xi>}OlQ!$j^4jd{$h9-u zW`TD(BkdOGW!uE`GHSNT8nz@g^*;@y!unj4nw1Ex^_Ooc`cus_Lt*@lTs?_ z+w?ej(&Oa8C#B^1oy^rb#!b$LBpz$UD=>UyNmsCCLn=_dLH#>hFWAfrN-H7fPo*6~ z3CluuoyD7}J<$o#nFmaoid|I(Z$sc-&oMvlr_(a7wAJGTDs&Dp^yt$_l+ zL4DPV_X=W}Q~0xWZ;5&TJ)u&3#fv6X`iXdhsZ;va2gdg(t@h0i(kI-0ORA901aB1A zsP9Xm+vlh8W{da(wz=H#sk9)P;+|{MIja1^XdSbxx8*5QovH%ULHgY{Mo&jKu8z+jmDFq>vcVnHn}wB`3~t- zxwmFy#KP$HjYpY2cfwMpdAC!Btcv0XIV@oebTjh5TL^`oHLs(6Tl9bL;(gK%;`ExyP5PQ8A&q<#~EpX;?T*UfL5bIWzyttYd^)@0)s=Ecv|c$3&;-7;??iPAI`0ISE_l^SEead?yQsFbeJ3N zqe;1`H(=L}=Q}J%aM?ogI_H1?T&0aKciWjuv18cAY+W|$?trka*G@UKK>B&H`PV0b zK97o=+a1OCe^T!8aMvEjRj(bdKi>|$(;3rn5D(x6;p%b2{7O|t^ld+H+((U1c1sZt z*D4nyqpe=sTn0A733ygXw_(tQpi&?JUnO`jE`i2|;pNOoC-Xwbl3y-^00 zD`hPSqjvz8W@Kn%PY_AD8Oj$y!Y($SOUk_-L3>j;ZF9XYn_yJEE~n%U1fOk9{(TXY z>j>6qc`tq7>o^9F$_jG2lfD#=+jr9edTENTKd?ZwTD%PV`VW$;l-tQ?5$8f=N7P-F z>Jyxi8!Y1%Y2T%c{fmb93Qu*O-!STo}`l}?tEmS%V z?6(=x^PW6rW9&U5&$G7b%9(|$V}6hC^&dLuJHYpwlFy~@jH>)RQX?szu_3oiW{ts|_^Nj?_nT>>F}Gt_FvrR%ygc*rbPMI<;oX%rvt#G< zX4}`=w~U?BYu$HuY@ANI@9x+*%^h}1Q{1s}+M_WZMQI#e-pH)c<&8u}mp4*8y1Ws; zzH?_Ra%P!$f{(V!{OUMXf!xOEc?J1RDUQy=3!Tv5R%W5zI+2}&2%0Vb#e`CK2$t{O z$=x-djb?1G{9+Kg6>>6hJBIh=sC~R>&aWA*!clAQZ5JF^>}-7| zhYwm;D(M)B?&^AWQ23}+p=wy0b)LJpx|}uJj(@?peaq#0zJu8kLT3|j8dSaxU3vhT z&5Tiaxbsf)l2e|V->R)8Z<(bVX9oojE%(6L9+KOukS6x&oL`tMy7U8bv=J8S%wO13 zl{UM=Nxu_pDNVj#Zc;_Dg6&f3!bGu6p)qF%x6IANjMJKXD-R5BY)6(AeAJ(bHk7Z^ zQd=U|M+=rG0Dkz1^f4y@ON+FVi%L|_!RF3~S#?mC|Jz0fD*X_bpWXp{l_wh-L$cE!*|3|LL~n+&FkROkL&-#G6(YO7uqc2p4ElXO%5)g_I|G zrqsBwo)#$G*_wq6{>{QBcP);AZH2)Jua*;G1fW9>iw^niN|lI4>$`kkWW-pVIq8Zu zo$!E}WTEK968>);&^hU*Lk7*`8Qs25meVurX;dZ`<@)GE|L8tCI~bvlQr9?*k=f%( zzn+d9{ZUEoeo;%~1xD@N>{#`9L)tDfn()24W;H(QzI6!Yv-(x~*YYDi1CQG=mT%`K zP_S(dA5eWex458b{vkKlW$_ekPWZoLwVKRp)gFXBXl?Hbd{(oZg-2Idk^NkF`aF2p zR{-AVY`bG}uGGD^$(LKvCX*KYXLXu?5B#YtG`ZeTjAZ2x(HN*~X7O>qtNNQiv~lJ$n>nrIU`CTY_0)bUI({)gy9rE__u%!?5${4A3oOICtF=g!h1Ix&zqYN3V672kFR#+Mz zU2IOs?aV^^L=Q1e{97lo@quyU4`kz2!!x%0w;s#J3r}=j{cml_#slBTNM8P(0^eK9 zvhlz-PJDAV9{9$Ik7eV5Z=CpGHXiuSkAL%o8~;|V@Zu%NGnXb?MJ@+YcO}~~9CKH) zf9Zh^mZ{_;DJ%76=&anE5IMQT%0d6qOv+Lyos4JY9G^Ea=vB5<=vTSWFS)xfJMWos zCsjr@FYQ*kJY_`49UZn!h67cN%)@RVc; za-LsuCmfyv`ZP_xNq@>%RLzat5G^wYjp`dB|Is$L?#kp9M=RC@FuUnNm-%=3RAx5 zsDQ)Hr2MqRxqQa!dnA1p|L9xQ7NI2h(D}J2Rry#W8Yq{`+Oa*_0M$Ax7|E{zEICje z?Zdl{=b$9*;qlT6R>w{K_ynl~W?IDE^iV0o-YrHj^zJ+*>aNPtV)*VegCO`e^0 zV*|eM)%Q@=wa>dxZz;pRz~z(Bx4^ZkzA`5f&iU7%&?6|8>LYWbYT1OX4knwirDziE z(yP!`dZ|`hdsVn%LhGGivZRGrRs!9BeRZ4UgQHaY2dk}-y&kx;5Y(4J}He?zLC z|F@)SC&WNOvTVY*K&mExJiPj>wzN1m5?-}y*1Mv!V$2n)<_~V$vyeb9Ci~{$=t9-s zb(S}L`=8L|_&VnQ-Sb_o;o_ZFquB@~%bY2ee|DuL^KvlK5W8DjS{}OGL`O!FGiLt^ zYo*{s>6{B>YzZA=uWcXpVRFB$uehwzq|D@pnUiQxl4kNf@wq1IO0qNbH=2}r>?>do zp?Mwr++M-*D?-!w`o%?z2yTB>?mA|9cQafrl2B1@MP|fB7n}bn>wosn)U!Quzwin( zc{<~Ia?r@W+)F{{cAh?*9O-2w_m~9(w@nR~7JoKXIJhD8UXK~vKyA|FzWQLo6dtoV zp$y~_XzCJGSbJ_hHK~TsZwQsr0-y z{ZajLK4671kA^M}3FORuj?(uZ<$Q|oM@}W)KrY*g2^q9_7 z<6A`f^=|q_UV3gnm-IXH((iQBSK77(+BccBHj=8ejnEUxbY1^g$-LQQs{EOb? z%m^!xyF5piYs@CM1MGWM;o6qF>hw1n%t*`)HUwYEvah7eRzU7STI&L@*TA}=YMrv^q;l* zzkyL_???9k2M4%>YSe}&DplpdWQo84oB60Naxmaw>>_HTlYY7NrTx*T7(rUk&kspG@IkS` z`>18%C1|wU?*xBP$zUucc3WWdC6mLn?k+48oLQdW@NpZLh`1Q7Oj!%OO0~$4+?|a7 zh)^6C#%Z?H!|!T81qHs9>^!@5Wdx2aPDSt0WcPCW?orFIQfz(d`V6|9*eY4uDx-m4 zZjD#RL=vcxU&fTL?ZC`TEYQBGZT?=;tvJ%MX=Si+S1Vsuogx1;%f)Qjl9QCcrSko< zJ}1qYPATP!X;$#F#5B!Yb1SGEPuIhBsoaTj`XQ{%Th$w1a@uupC}>lI zpZ;?!O)g5FX~a@EA+~5gGT0_zbqSB$Qk;A)(MUdT=XwS z=$k|AN9+22!#y?*y+Y2GwBJO)gZaf#r(yO9?m1ouH7mWe&6jrgI%SziPS?$D|B~pJ z;V)~WaU(W5yKJ8FhK~8{t^#4IP%PffeRF<=j$f^fk;mJKowjo@C9;dFYg2nWneC1Q z=Qg<2mAkMKdP1KC$kHIPsFO_lgBx4X&Kf>Nwo$J%eY?ZieDe1|EcL~g1s z(>*b-4WiGi6MbeKBUO5-7QPX?r+Ax*%7~XSjD)%>*wxxb&>@3Qmb+ zcEK|unFXsW(jk)wRCN0m#V>^FA9eiTN#tMuUUqE-OS`u+_=ct2;_!WS=8}~BpOI=_ z;6n@hc)}EH>F;_vSC{T(X6xEy>+1KtlDYIBv$fV-^39MDXvy933AyLywLxX&Y`K-T z+=%(*UA7%B{tQmk1ZyrGEH%zIJ$d(nXKXG0;|ml*_w8kiJ^u?Xw(6LcLwVSXCPT40 z<9|~73K>tHg-XDi$@sDQu2jF}{<0eSYx)bG77hI@S8EMrk6&g-lx-mJw&6Q=&Nm&!Fmw}X5S2a2d7ar-)@IE`z6A}4J8I|Gimxl)TL8q>y zuau&P9h*i*2~=oX{{=GUC)ajkd?K|@BoFs2-j(4T)+eNJ8qyuZTGq}jtFG}Nn5aC3 z3d^z_R9^dcZ(Uia<2ux`b%k15I>0J)c)dt{Yi>c0Bc~W=c6Sign3PUXHtSc z`z6qLpL2m|K$snB55PJg)U&kLeD9yFjQyK)vJ$l1o$6pmZ&9+H6{;!~<9|ac!v9-R z6HEIAsi-HBr>0w}J5?N=vTZ9X3Hr;$<~I+!WhX?2M}qJ0(qk{?O7QfHYJXl1V*7zk z;NYxSM(BT{(v{<*`EvYusRK5(bD_1M5S>=dw5$&Zg$qdB@-N|4h2 zc~Gc8`$k*V&W)YBW%Pfs>C{isUd}I$Qd60>uQXM7)p~QO?w?(7>GLvY^t+QRwe3%aU8y3gp|J6+ zE^o+_SqODLqBaw4qpd2U4RB$e4MuG;!nuWsPOh!mC3}YVRTMoSCAMj~wW+{*bX)5S zoWkKd?T%^v8EG*#9FwB!B%QU?h_pn_A7^=Cd0$hD)w`6lu(7(scy=Ez{v(#wC5~EU zq&fK)V#h%AJ5?;R?Q_}|&Qm_f+G;y3*L~=FV!VCnR!7}u7#@DAQw|-*EQcXEe zQ!X1fWsO^A)GNCYY)!6q-^j0{(S2v6Q8P4GV06YUubz?QhnIUzM$0R8Zhpu9dgV^` zYK`UU5lsR+yp(KS7`Nn*o0dF@eogn}C#D1DM7yTDcl>nBfm=jpN4g44w{rY+ZoQSH zbG5d&v^96k#s*pV*DG-Sz=d{(-)_0-@`|pdYdMK*u1GKITa0b~6{~r}ll~RmU8}?s z!xi1DxIk--x#DY!d${Ong`O3bbG=wrt-?9PV#i7gymxWymGk+kE3f>d^Ss!7tPnWH z+JSg>7pr(&Nw)FM3oKd90bAld8+OmGz03VBXAC6mElW6_ zA-_ydNh9z2%R6a!Ravs=9C^mTE~2=9G8x!)?5(3S2xw=DInBc3A*J#xN2 z)xD~dD`(8DEAS?SWeayh>hIT0@+*1eSMtiQk29E{BiBc!``@Gv9#}2@tYuKM&6je zHQ8xyO|I1by*0T+p6T&3b;eDlyJYZdIJ;L;Gcb&k_IeSEYmH+jZ_oVx- zzoHZ9amO6LI$rtJKI2#6UdFTa|XU(HM9 z=pk%gel;(@nwMYA%dh6;SM&0#d6z8iQNOWEmn@?c=s^#+NP#*1Yk{TJtFI|CX2H4@TwW}X;8D*d+cV+F z7~u%~+^Zqs=A-+J|HsQ5`G3lu@K%2j;^WD&GtygAuB@ugdWdjtT-ANs(jKRAaZm5E zrQItQuUskef$nv&ma8OGf5vI}(n)GqfW>{O*c2$_zWVJz;N*5-+A}YH+bI&v+I9$c zNZ*4K%hgWV#1}JV3txQo_IX?0vv8Pv7Y<~~0kN)~f}QS^y_)BVymb5W(w)+Dr$~2F zpHA|0LUI_#<`Y|ca6OQHi^^De{oSaZ)HOp0>9O zK2BP^X7`LGeY4c~hoskYD|(8ET+WzWwg=QIv}I#z*39eZ-vX_l_I~_+)I{KVn%^2i zLSa9OlgPUFpO#V@Ptm$E=3z*5GgD4@I+!UZW@3H8oa0n;D&Sm~C=`ti+PR?S-9%m_ z6K|vhu+x~gW)zIEKMKb7|G!`qxtUh6mw)a_dMOS)A-H%c$;S)dt0lN`rTKAKIK|EN zZ*S=__%E2hUvv(i8uon#+pI|3v}JKEXQF51=L6Rbx&Ehgf#bPRa0JOSs;)dZB+kh% zZ$daq&V$3+d*u2&3rDStLyD8Ci%T(Pu6MsYJ#TWqVbTcBJW?P60;*^v=VLn8W{Dd$#-+UyfKTGa!k*venta%$y%OAfwPWJEHcOce`Ej{6|M~pc zKi9oI+jmOyUQpYAbizUBKgkY-$df|*WUR^xjuiR1pX3}TaIWUE2xF)Af?*)`VwnT1vcnOM-o~lW+w=_iyxvJ7Ige`t5=c)@ zl(R48gr^VIakf9Sz@&maU6d+J1d*tV(!oR_J5a||FGBfMIC>JkAI<`cYfe#Dg-c1l zI2GdmwA57c7bm6-2-Wl_rs}URQK-LxmT>Zr=Pt6aBFm-a4pLz=t zh3SCwfScZt^z=*}$2s3iMAH79YJ1NP)U=i#Vq0G1+-gecwVFhsrunVlqOPt29u>W1 zB{&gl_GqtZ{C4BE#_u@o{o$t{!vlr!bvo_NG83qH%#_3)!;?qM1R|UgEFX+928iPs z7-tZ~mfe^=U(KY}6X-noZ-&wK%)ncd@s;jXe?>e^?RTEukSy#)ALH{=lRUFqWZuVT z$p%D_cY6zXJ0ZEu8(uDR#LX2T?x34%63;_!uD!j5yzSClPh@jF?B*&W?tVAd6rQ)b zxdwVeiS^{^b91CMeV})8BB`kZy}`sHO?zYS1&MZ2&T~`FbyJ2Db#BUw60f1rSI(@}x%N}1MeEA3YZHd@&W$kUWliE+ zl-@0+M{Det2(>xB-iwd#koaif;ipWU$3xA#?}*IO^_1>_!H2a(zm$&NP-@cBQ)zkT zBx#8Kj=gGW9WB3FI4s#`f+lgs)BcgJR?^M;wv_0>6v3B^)E)UlArWZ?Ud4B}mL8CG z&Yl&d{K|M6*2(7FAtxZ3OX^X6)=Ct&EbUHm5Rmz5{X$qggGVPFL?#P1J_R4R4#@jV zI6cCblK5>%5T*PtF=fO$SQi8@VJAE7yM*-6+&VYdo~W085KBaUqgD=c9H0v2q>e=y zPm`#HYX4Lj|y^9Sn7(9~e8L(5E#S=bTT#Pl?C&91g&e(T%J%55T=5OGe zA|>|Dw0y(Mr*t9uQMPr zFJlFmk7Tgb2sHl4)RZqk@--v67cJw)H`wd!{;`Yzo;Qj1-ggIdeQT;*<(f0SUAyr^ zkSuO_T;~8@Nuc?GNQDVR+mVQ05#K1zY-q0FtT`T3m<|HdB8x>N?X9V(<}StulZ9F0 z#paE+%xrK=I+~RaPl3ab9qAU2*hUM4XIkqVKedFs*&1>2B&qDIqjuk`r5;{R9myXF z^R}_C=aYRsDT#8Vq`>fon9*@`(&C(Q0$9L|;!<+u%af))VpETSfSzY`&&}4)*|OY7 zoVQJB%MqzT&K%C8XKpyGQtWAsIZeMkD6_Z@{unuQai@Bd7WuQbwmfdipplO5lQdhI zcI3BGmc^0$7fuJMQ)!K+qkql)(d&@%jJX$&GIFB6D%I~kInXii;4|WPBH6`?Dt){t zt$rwyYDar!Gy9tC$DNtiG2iYaie-(pENMT`p{;X#eHWk5@$7zIc;5F4mjXt0%$Sk2 zF-FUj6E0+rXCVXHJc!uGbzus+Foo@Va%DOpFsG6N+wb16F#hiG9E{Lui5Krue$U_6 zzZvSA)Urfnm->3vtXlR)D=XnIpdB^RBD1X5lsCXXVujJdT;ulv_^?n6jTf_^+rb}z z3q^@o^|`Gnjb9j_8ZQ6~j(8^k+b0goPG-12@H9OF<;jodwEmd`HeOGy;+uexWbQB# z@7cV>xwOO3WkNN3zeIedy+>ee@47edFxYN`OP}}$RoB@_yb$NUS$i_RWWv5 zTlxCK?)k~;Id8+Gw&zv~Ib$6!wz{j<21~mnwcw)VuH>-QTIpH_-%wpA_y_kfJ&(OC zW-)(1EfCCa7Hfpl_%vD@#5dR49uw_G-{JK_2u+`Os`7m$tR6qSkyQpa?nK(+7ddV8 zMZl(M6$nC!X=?*}q(7!Y#~e2%jULhu)RdR)g@Ifz#1?`pGqTc~jXpn`NMp`gnM7!o zE$8|z_KW^MGtRdo-ZvnLY8l%j^k!}?5lUcrC0mlTt?|^wx0xxXn*X0NSCT$FD!rfd z^{&px)dG;FbW|EC6RW-aGN~!V*ABia23s4-7XVeWt}ES)0W;-b{6e_2Le)B*20J$0 zUg<}un`#eS{%=V9tI~&Q*52-PsZzuB@EkFx1(~Sf-zpOUtF#i{5x(FW!MCmy@~w4r ztCXtu=C}_xXXoft*%AaVedon-I@Zni#3#f(J35Y&@O_KTuMWzI#gh*-_y2l-bN{K8 zl+z$s{9U4gb2`6%60YkEGYh{3#I`l}zdOX&?ULf7o^jTvz3%$ta=~s2)+cS}aT|-j zjKWu-9q4dnO`7DbNm294fXAy61K;hd8x3>pYI2=S`-eCEdP`)|@P-PrV3W5NS`7G- zqjU86b&WeYCe`^kEL9w$=l8fF%UQS9RTn^gO1-Zhd~VD9Zp)5(E&EMndBb_@`fX_a z1afz@TdkCB*imU5NjHT zdUGvqDxWk;TZgB`yx3DwNqO?C10H`REomNuGis@k_VC@^WoT{CmgGSUwH6+;O}|_H zwMX;I$y(P@N2K9dzkV7j!3)4vnEZHUAEDM@}m%-C;iepQby=7SthBZO7QCxq^tTx|Z=9YS~BIo{m=_7i+n zy7T^rL80;@QB9s^#=4ra0UrIV{P-M^ooZT zMlC*|KDq|Xgc3FBhMhl#Zugy^;{6?(q8N<(e%8jgw&yt6J6C?RD;06pk#kcE8Z+#m z^;skkWLUN4??ta*PaMy?y`rMRnc3ycX`PD!lx%l9OICGba)Q0m>Py%Ir%mFowBnO& zw5DLsXf?XnW!<)PX?p33bT75a{sVXs3t78gE~hATzx+s0_REi)$lEU$2u5$0&#JmA zyIn39DqJ<{LIv=Nj#2dYWz^v~?dW$aqXp@Uk3HP_ff1f!(X$(#$v8Ju@I5wZ{lzCA z*?;HIrdUA*E9v(#OT_-H_K(fgB`1;5ZlH5Q24cNIUb(iu^*3fnCB`OBxiq9q!M!c_ zre+`oK8aKjj#n8uF=Rcc(?^vzw%nV11G%Z8@hR3^&1>_SH<3PTq6=92&=Z$ejMtuu z%cV7UT>S2+)-0`>Fm?4fsTYyD`g~lCU-pvP2~&?#cBkv(`E_h9U9CWE`({@vE$1v; zjl~u+Ud=DJcpAi*0Uu2jP3YhRgTadDHOCn=z~HD0J?Xg;q2H>b6g{c`wPnl!b`_W- zzE`8ks~86jbKWtPqGvE8L-)a3#Ni2uZ8_}}AIo@J4!$S-?8K+%JqBVi|ByT2?-;r{b z4kf0g16uD?G#ZZ0*(#Da5)6{K`ii&%2g$<6R{37Lv(mh}No7>p2wys50sV-^TzuA7 zS|1@d>{S2j!XKhN{{v_lV=0f8E$LiwMcUeMo=3}c=P(KtdnF*W?A6_QvaXLD0BsWgkU+@XKD8+*tsGJ2!V3|MWg~ITj35 z_}};@8Y6$iL<8KN(YXJaXNHEJIn-$H&WK*z+!GW(Xc9k3SP(&sBd?dtMrPa6sl?qDFE^?zr^b zCt?z7p`(?4owbaMrRL*z*ta=rd6R0jK4Q#pN5YDd^w)Q8T!BW?>MC3C!k@TC>19T= z=fNYiSF~NwBas+`XxUdycj@WIT->pZ3kKTeuY8j=(4A8)TUHcN_Ldd0rn0+iOH&=8 z?Ei_C9FkgU2K&*|-4l+we*xXY$1E`ccB0?(_DlpW*?F@2!|eWwcH6-Rh}iX8y|(Na z%ez0#uCwxBIvcsaXKO0Loa(rdC)>F%lP*_ZGAGrPx6 zu!rVR%ZKKiM5EyCvXtOO1MQ_peRH1a^lqidzh!xCO8>W$rh3(Kw_UWw>h4$v#&27h+qN>! zxK5}y9Yw9JE)Z(1a1Np+rU$ieL=UJwT^S3Gu0{iB(Ss{`=_C2=Mwc!+Y`AX5ax41s zl4#7}qdFOqXW8ZDy~er1R1eF#E~&~L_MF`3={yJBXVKwuQwJ#max;iLo&AuRC%^B} zXVnTFYp{ziflbbJm*(NBdu;EkMqhi{?LiiG0z#?#B6zEmm7|{TBIRpIc6g)E7J~`2FZU zeLkYko2_i3&mTH|JrgWxRyqaQ=gw#o7^(w?wF(3G-mu5g<@Ml4`*{jz3AMQ%{-}~X zrOa`$48iJ7_W#B5SodJ02CK36wJ)?I;={9c_O~B!-%pa?(Uxs3p95y^klholrQI8Y zA2qYT5_Qw><7k9E-J!%23DKgztE>E06DxoMX6->Z+?p zaUECIj>l$LyPw>S&5fDkTh!)A1rSNk~ zkE)$WoY@QghhCLLFGK&2mlG}xJC_uG-p9>hy5d~FMR1T<@5Qe5b9YIZq;PzheGSGK zYRFH?e6Z!PcaxVgbAC!W)2pQnjf&ISS&^j`T01bydL}mT<#Bu7pELn`UigN?UExBx=tmmOU1KxV+_VKbcD{s?2CcVn# zl&apq>zXG#TSA{=|U6!@$3iEW4SZB%o0tIg; zrt0rIi9-GT75)bfxzF#2m6q;1%c*(s?+|MQ{!mG@5h^o)obaq@5JF*2?JE4PRRn7~ z`>s(|FlKwG#IrXJl|Uab4@ z^}oqoSz3i!YJ2WVv44-%7gk`z@tdq*)eod~-Am4p=gMWQw$9L#q?tPVT{H^R7S`G# zH=tL>@}If%16SUxPb&u!D)HpYYt^Pag!e)5DD7)2FL7Aug{$E08p?fwa*f&URGQ$B zmdpP7R_WRPeU&OhmOc`dk*?b6`ZMJX=|E*Bu3n$6J$nVz_loPWx%qb52ZauPu0>!6 zGr^gy;_)7AV0n73w4wofDSz}ri^D$Ok<6vf2sSUbR6U^bj*(jlbZxeN^}~sB_PhnY z8Jq|Y`Ujai|93jb{R@?uhTxEm(0n*lP2X1OT zyXP{ls&%dJF@Jq9x@3tv&ah=B#?X14Cd)wlchBsQ$)=A3pwlDn(TadQv-iC&?!AAsN z{3ptD-117j@q@o$wOj$OQJa;XRCD z><@(>C|T>`mtlpt0c*((sj3?`FbeMj6Hl&n_P`k> zr@|)%lEJkjyoFq^97DD13r>>eUe>7K4cJ){qIy<6oT^Ez9Vf@VjJBy9{x()^ z;&Vjk0{n3@@SW%6W*_4#FJjz^WoKBeI)4CujISxNYIeYVyXzVB3sr)D7zP@474 zvS0IVBF#M$rg=!yY)mY3dpN8qi@efQg6gBhX`1e?G4RdOuUiroiXr+XIbQx+O|@A^ zfq3F7l@`jmr6@f^&xaTbO(t~79233-NkvX$d*dK<*4kiK*R$S6S&w4yy<+zvcD)WO zfzYucD76!1<|c}n=kmp1OJ%=_XCdZ+%v5-*KDkqd^`)G7S|TtPKrd6YmZy(pF2Q@L zFRl9R$i4Gyu8;d8lIyNi4XfW&H1K|fUs6=UeTr9+67;tLe&P9LtyX&bpzt{7$(7hY zK?#+IP(Hqz_UQex<&5xNyyj~^;AhKsP4vb-_=%SLQqE7_0k#tCPZ*Ewn?jEppJB`` zWu`!B?n@qnLk;iUCto?{_rBU7ood;%#F%$zXAQAsPoFI~nG_%J@Erxev(_~(Kc%-? z&{CDQ?YG_lc`Q#9fXdkz%V`PKbKg6JYbi}cq*T{~3S5%D6?mn!X`1Mbv36F~o3tIR z+K#!@pnMQqyJ!I2GA$>RP)JoabD`3@T&}%-ujM-$4q{=~s#Z2XXy3SpH7-=Llv6kK zQXQqs&M+1qUdg-#(*EHAuP)1jCbae0RLWrrw+)ZSexNr_8I>|d;ZTtq#SYf4@p>-H zm0#8FzU3)=ksI@v$T+4I3#8$w5h%dI>}J0iSvDdot4)5U=oE9*MrnK8_~taKK(3^IbTpjy1cSqNViWZxyk9!nT) zWHTJrV5)+ZI2f5X?v7DVM~J_DlaB6}1)_9mwBYr}<5Rh1i#>yk^rGq#uHS<798&hb z_S627Jwg=+xZ_fO@6uZzeep?NN>a$|l(FjOjV>&g)1AU`&ie#-Diofmi^&o%w;hGK z(I^l^uU9T}mtX*GGkZWfmgFn~>k%uN%yso$hYyiBni=Jk%JKT7I*+YC`4!Zw-QrS?A%quE$By; z2g|5`%PU)PC$pj%>))sIYt@n5ERg+H&SS;|5B@WR(;{CFsl1S6D`&0g7pn?;_X{Uc zdB(y*XQ(`5qhz01?Kz>tEiZbPi{J=)D4swCo)h`-fTw`q>9-Z5;8867wnDHWt$FVW zy$xcT$o-Tes{_1rl-0W69o=zJsr|QVU*=*JD{+yHM`5;fH)9eR$N0*yM#Pdw*QI01 z^=pr}`UMu$SF80#BcD-w_8UQ5w5SFpz}Uh!xzT7^aJ8>NLdU2?4bqV}3= zzlb!V9B>%g;Mm$^*CY|cQ=f3gYFiu%VQ(sRFf_e7K0IUV5DL#X>mL#Sl(L?lS?1{a zkjDixX9aWUgwT9xo8L~BAQ^5*PSv*3&!_fNukO^@FVb&HjYD&!f7u(Pr%uX@&l`#I&Ca@y!!36vXSpNwZ7*KlDchZaZft(;D3-CJ9pVHA`oR-IhnbTN z%t<+kh+j!CUXz`X|C(P?u3Yll5dh~=z>}< z%TNE*i~po~cxDr+>^u~EGUnm?y5_s}=g%Z>9`+`>Z7j1OZ^Y+ji^P7?8}0hT=P!4C zsdkqe)gZfKBP6HI^u#D0tHk2R$apzx_Yp+?(DyU4yQFdivX9u$h<7GVQ;lr&zq(~&-5y)HFN#gKPB9TbS>>%gXooS>jORF z48jQKNwWLwvp%r~x*DmskB4F3BQqHC79cb%?1`R4)mfb_nVxN_#u2k2u+I3M|-GQWVnU-HK#`ym)sjPwocXM)K}S^D_Nat zoCV120pWvuJDdfvw#KJS<$67Ri=Hba0Zm5;-N`^dH#_u~Cj9+nXt}&p3&lSS%dZwbA;av7QhXZ0IxJ+BDiyCF#IJ zd3v|0uHLOEQMBG93f0G*ANiDXLhMUyW+i#J<<3>cbGfg%PNnJ+RLg%e_*&wiZ~ z73*@RfLf~)p}6=v<@|1X#9GQ&olLERJX4Y$QR}K!d*@>CATzPGc^$mNLdm0^WCH4E z25%^0*%(S#>&H-+rc%xMIH_8dXHzTk(6VevCe&-6H8v`z218MTqfZV`Wg1hh@726l z>Qg08G2KZlWhb%QN^W-FqSM>AXj2VQxt!=-(Ih@mLS-#G>r65hE%@bD`+mvRn7hN& zen!8<#J4tHS!&Q%31=;%!`>~3wq3Qr+jRf5)};~^q$yF(3DikTZaBDzwBYN0NzQUgO2`I8a+!YTtOZj%ZY3J5Dq%_w_{@6NT3)oN>MFD~I!_z}))MkoeSY*^(*( zU!0d~*^+#p^)L#jPy!W;<9F**Lr)n8k2Rm#|CEVlHt5&NxS!pm*U+$TVLzsfnq}t_ zZIAZ5$n5qEMz)Vt578=m2<_oI?cvr5dbk9uJ@nKvI?S=8^mkbzG+X++jsAWnJ>s3! zLlzOenD8gab<#ua3$rumfSiKt_dR`gQch~ZNqqaCA{X=;R=vkf5Z}$Bk*{{&0#9d> z!QPA4$_~(LtU#nl74`aJ1^VTnd*X8*RF@SpRYWKw%;4TM`a^c4n61878=}>C*G4zo zdm;bt@14qjx!s-->Z{9N!(^T$dewfQK}ulu%5CyhtRC);7k%b?wI=G@l-=|C!?7zNWaRO4Ug%&acr&9qi~k8e_kD*g3QhO!;aiA z5S1~mXV`egyLhLO6a{XICnW_MJ=M*OU3!Yh^{7l9fU^f7evbn!@iRZS#LJggyE|DzN)*ESr(97?Z?& z{GQ-d>Dv9wVcq+8RBtL{9eG?d^;@D9YPnI8>Yy$(2kPCSMxU*BhnPHzy^q@~)!w_? z&n8rJcqjcVIBo#P1Lxs*3iuVRGq@!L32>z!?Q}JxqPbXab))Cwtyboa&>L4b%y|!H zW8VC~jq+S7LX7LVfb{lco1?lpSKBk!kYZ6bZ~hvrCCo)DPA{ir-qee(xdU0q_i9_} zX3CSbTvu#PMqtY%Y37K8P$Cw`Ion%LpI}6L@BE&$g{(G|&+KJ|$ntA-EF?|rQZzGK zYG^%PI^YFmmn9^7EOE5ErZQ3L?!0*4O8FLOgrh?zUTN1A-zyHdD~IQUx|DeIpxo8{ zi-DHzP|FBh?vB7t`d00_*q^vi=U17NUT@@duFA8b^}An2Rov(r&75?&ErOw4$ljmO z$2RC-i=COAVcv-ixp4w*tlEMrp#`*s8qu-YQ{z3TtQycy0AS{!_H3$@WR%#py0{{s$EwcY9ut|T$n?WcN4fgb)7OTjM9 z(R;$MWRnrrc*<#S6n`2e0-Ni5q*A;Vtk-?Iapp@MjE?7D!(lCmq1$1-6W*%Tq!#wL zZ%(?^APtCqrNOiJX)l2{x={8!po7dAC`k9qnYiEPk5{)^&dKh++jG~I=pBc|H>7w` zP#yI#Xr0iQj^1mZc?zE*(_epFC|AJh?OY*R+QjEoFDWokBM^3OlQCv&1n z`qQ>P!g$Kg*8qJi`V`f8C?9|qXXyjdOC0_%^5Qt7nHQHB6}NpqeO2Ju)Si+di+0*mO=o$9l zEOfu;?7X(XJ3H^{p6%Ir8-wndp0zuA`8~)8NQ&pLGU~D^MK=V`C%1YC&*#FX9@0W( z(uVdkqM;W(qPd?n!Fp!dgl@1zYS31m7Jf#`VSFvq5tY@rtGCgKJOJ3-4U$vO9SCi* zt*|lD3idjcmeGo+Ih^ytu-)BDSxIZ093*aQ-~yEwld-9`&z2t6AEqUlle}1?FBTzQoiNUvtAieHF$9lFIn0Bmi7!(*R_du>l>3NdC)?RrlXd& zhlTf$TcN431fA^TK#guq{wp_eWA&xTHoZ(=gH|3(X$nNstnuGf^c`9ZRz4FmVon&OaE+%cci8E z{3Cj<#!Gc+|5p7OzH($7i!Eu{TBEY_HvK=S|L@WNJM{m9`hPoAqnkCedhkc4a;0bj zgnBF#+>R{c_Nfo(?|Yb$tX0V>xs%F%x#Vtm44oJ4XWBDwY#Gkz_wAw$_*|2#4Y+)? zHbAMtHg}hOi`M=KJ>l2Ux7`~@u3W!e<@Lu@u76DB`UkUVAIwW@<@zUN{mK{}osX%c zEb~B4Q*bj19F*nVMUt`hj8{o|pYry}drG5wgaFF`MRz-O0v}p9X;aY6M{IXU<#i51y_wBNe zb-cMRFGm`LRN4fI`;xf&A}q z1>6bIoLl)H$d7e%Nh@~cf2X7}zCFUq95)AqirBT7o>P28L`Q3Nu3;>TLZr{04t3WK z)%$z+mfLONwL__LWF}dsW~lsHDjc*(My`DN2=b|Km>a4cpVc{wEXbNF{-uzp;Om3k zRyQE}KFWkg-Wx@y3Y1ZmmXJ^d+S#o_FIcOp{uAF1?k8xkly>i;~HJ=0fI!ME#w4IPrbih3{`&1qgZuMl)DVrTjtD6`ad z(eU8SoY}-s?+mqFNKHCI=CW%bSoCB}WVX1avRWd2iEYQdh)Vxi6jI^p(l?5oHj?^;MQ5CZgLu`eWS$?I&}3OckUgvwA!+& z@Y4TI8@E_#QFxg#eB;AdN{imbgdT~YcVP?(_q7&zMb2sFagp&Nk&nR8jX+Y$=#bGn z)|SEYg5z;wHU>^iPZ*5PQEp}QmTAp4bskTtwC1gP;VYY*)*Ss?AKaJel08e`tBF)# zE&8dorb2e}ok(j>(7`im_{EgJ{jLQYmcNf?CfL`!kG-qoT4tzcRqqNDDsf2eEA1urA){`4u>NC%kr&Y^Bd088Dj~+2He6KDPJDMG4 z6Z#tEeKrZt_fa_`L^L#($4SVj(6wW`$SFemgf=>|=XufKprwV^%9%E?t*X95?q*_K zdUpNwXJQS^hVSfKm_p z&7&38`qhV=K3%Mj)Fv5g;bchX8)vdE`&P*4?0H$wPwW?a1mjzUHwC6+noTj_jJ%WTonGwW?4ByyHg2glG2ymcw^hxE&78U@R)P$>ZG(*G`?ZA zf;+cL?KZ9a-g5eWsrg*nd>gm&c-Xybnfg`2*Ylog^)=dV?$Uphn%g(+-o&k*-RdKQ z5h8V|@43xcuV>i$TbZljpflO-7G?JWdsnTt{z&Eg3}Z)52$f1;PkwF`+gI(mOdOwe zE;l}vXX(uy?k~KL$1kaLaDO*E%ow<5Rkng^mGsQ-J8AWlm ze&%$rrvJ32|CFR|oBzq_A_?A|ESQbFGw$jL=W2U`5?g7I6oDmMEU_cK1sQ^&J=VS{|kIw zVAnl`KA;{Ct7((287*p~B59M+^d#lAk4PNr)|=itw+0jrZz!X!iFQ)@Nf{WGa-a8} zmoi35UuOiHBOnTSW!~q#=Tb_EOO};uYoFaW!bDd2;ArCjke4#2R2Fqx&n~u}P!ag% zMl{cU&7a`9N562D2}J8V3bG;X}uXrg^1zDwe7)OfG-l`>O+G&@sh)$f}rAC-Yw z@?>X<%OTf7=SVYYnuxL2b)Tf7?2pDlScdM%Uj4h`_?`Gk4$ zVWZ9yQvTj~GTF|P8RyND56)#_wev(_Wu9aqlU~Rl)gK&OFQdAanNsSGYiIU*%f^oD z%`&c+F|HZ4x{shz!`>HVMjZ)1h08{JR#QD=g^u(%yE2`kon(B;dV^){fwuX&yMIDw z@9`e<;s(`&92cFj-UFciy=7JDQ@K>ro$xd%veSc{x6|DlskVC~$(a5=X3FsY&Ta{k zQQ1ndA!1h~+J+w?&I@v`A(#lx`8E3TD_DR1t=E+rWT`T2=ly+p`UFkVtOa;glo;BX zNgn5%Z?s>|0hi8xuS3>N7FHR>BSr0Z!kOK<^2D}{dj?kF7jnS>WnrR<@ zfqYvh?SuD?n;Q6E@kLzQvKia?m7L`7WL*9ixYcm{iqYBwrC29ZbYYOeXBTicjH>ReFynLMppuL;{`Q4F-dR@Z9 z)sFq7_dG5&t52`cargJA`04;xBF)!}##HitEOc8e=6?iklB0bWRblfK$EM&RSs~1K zHev^6y*6>G3Td0YFlUV4BFbCXKE`WNRYA=E(1yRpe*|Z=4kV0unsFtyF~a`f`Zo8o zi;FbjL>OV>S7}1nuCb7DGB@N*%6U{`rFy#k&b0YO27gLghU~ahO^OB{+VCBLEwJ=i z7jmfuk4y2uD9Fvo9j?UxtUK4h-upMl7J|`xIMZ7$*!$=dTDx@a}#E;J*#iKRqDoF zJlAo~ChfM@D7LX>cr@F8W8zl7({+-J@IAY9yxQ4KqK-_03X9oC~ z@d$zV8N^@wkTDU;j*{+khm486%$v-o8uRG`lo=qN zx{9i3Ul_a{=Uw0gp2>uuz*tWl?YUq(FuqG#@=T%JDFdV<-;~D*ukhRme6NAKGGHkI zSJUY)oGK;p^iYmeWs5# z0aL|Q^fPf)#8ssUloRJ$92~`o|4b`^`ldaL`{jF$DVsrf(3n3B10Tc|4#t3bmNgK+03E<)KseGgE$PWmo zfpH&r;M=8}2}g(rj!MJxL!_s!&)q~nO{c7#{JujV&t;T-8D&*8@SS?E93mVv=Fd(N z-Zy4eIRW@SPdh#jJfA;g%om!CsiU4++FuKfu9iT%t_J37x{0UGFVMcLY3J2v`Bp<{ zAuJ?N*EPWT1mV$5|l1oB)*TiL5IO|uBg2=|d5 zm}g%@pxoK?$y~~r`y}BI)M^)jJYTNkcZgrow*Xtqeq*k$CeV)SspER;y?!TQH-Y%; zY4i1@zy2A*0Rm;T?lI;o5-4{bzw_QRWEEFu8UjW-e=Fs6e(>i|C;)c5CpV{QVjzaZVs31e;{?iTVV$dllAF~5t~6HXb^ z`4BfF&*f}1X}ZA4(wDh8mHL+(LJxsDm%n4oZ7T_H7}E`m-L!K>8({~5GFDR7N}kiS z@Ae3FPbZu<=KrGZMYQKHnt`JM7(#@8!b#vDET+FYH&cI%x~Ee2Ji;F8Z^ht^w%-a4 zZl%uU3#ps>Zre{iozy`&w-dJrxc&mTZYED>1?AjNIBc+-;k};c$0_SH@726h=90bC zvx@+%sZv5Ap^-qFQt#51N@IGSCA`Vav%tLi9&FzY;RR#X_zBd#=3W9gTk|C06=S{z zuD(Y5zxDtDT=apnKHl%3O?Ob<9n^hC4WX7$M*t6ZG!ZEO4q&>2cHIHIcXSx@b@F{Z zL)b*vLZJSy4-&Q!wi6yC0Q=V;Av{KSg0PdryujDT^Sb@`Taf_#-&jc)!elT+;Q21< z*%~BJ#@3_8-0hHOFJYK)g1j>b^v60H+z;N?(NF7WV?TK0$eHOMAkgl=n!Ehk@h~)(T=}-k95!A)Pb;mDgj)qr@X%c_kTs3?#R%F z5<(285VU0z_}_Glck0*xJR6AL0E`3R_3H-+$Jx!LoD6Vg_7LYMID{4gc?KwVpozFz z!W(>}z75@kd-&c79JF;)B_UzVoe{z&0%dNF0)H{T?F8!F{50XTG2f@2@Anbb6Zrmp z(tm#of%3jTNZ3Z89p8VDu!Haj;W5G!1lsfc-GsdaVEg_M;TZz$c$9pPlJ8OSJxabu z$@eJv9wpzS%9fU^+j}d_B?{^Y_>F@Uv_QAH75K0MU z1cwkM#0ZsyYC;X6mQY7%AT$x039W=S!a_m^VG$ug=prm5bQ98qUP7NS|9yz?4B-Ib zAYqtrm~ez}lyHo2obkM!K%d?H3JyIe`@e#(eju zY#>w+G6c&0>luU_35>J9-cLBg6*VP5w;L0=RcPbsQ*8| zY|KM*3Bdf&JI4GCdH?1C0{M3^E_c)uZUP?0>R_=k-+m9c8i0p3eK%sv-ySjM5q=*5 z{>P3P^TU1wfp)I7+evuen13MOKk)6pQqNw(kIDOE@b%+;#{2}_$#L-gZQz6N&#c51 z6}bL?fbIGF36BtVQFk9HO>VqcK(Ea8kX|BY||Z3kr>#Q{%@aE$g*?zarj!13(>0XVnOzHPK=+k3!3 zS>O5phK|IA!OL_|bHf&{O|SZa)=u1i>d-dJO(agn;NUp|HyYN=(dYpEY< zsWs-t8cVG)#1caYvDCUQYltD%b*Ult>QX~pV~9aR4RNV8hEi*Zp_W>!-{-k^?zuBu z;yrnM|MsjL8xsLxbxSRcWK7FBiotS(nK+Zn;JxVM` z@o_8`b`fVh`v|$!p+9_@mb_kLS=}jOr@wtGpb{)@cnuk?0{w=e$j>B#c&Y6$xsI8=o{T@b+m`k%%w%wv=%?9w7c;|e@76DRS!lErq#*DvY& zm#q6Geg2YojuYGQ?b!5Uvy#t;Xs@y#Txb7@N0UxFiFPh6G%u%JLyM0FYSz4;mbx~a z7UEU5)2sM-wHT^d*NTrgAg*6-1|JY}<6-u@36RIOXlFkoo;Qf$4f=WmoBv_iN&LKd zik4j8B!)Lv3vp_l5UtejR24Mw8UJnbVJWPFwJbyXcA*ew&I)ms9NtagKf%g?#jplg zb}kn1`5t|CWCMM)vi$8**ek?4%b<+UN1zQZ^WO!L#TMfYwC^Vq#t&bnmq zz;c!yqA%vpRRDdR!|!{E^jQEhC;ECnm0#$nh7&^kZ!utV9?g0BIKK=^U<;gsYpiG6 z{_kSob7vYXWO+9&Id`)BI(=U+1oFO4f7kJIoj$Hpv+KlgeFKosb>g@&g<(u;e2eXS ztAZDlrU=8V7KY0MJB1N7K^W1znHb$BjKTAuKo~LU!iY_ViLeBY3u9;u;!=b$ ze6}zWVj)KuBQl{LE(;^^qA*4t6GpNL3HZ+kV)`4~>2I5PEQ?O`;G1W|L-0F{Sccue z<~ZxI|Jy!n&N5Fe{x$&)3d6v+F&TLG#W+NaZnQGC<**h#@eIorM*MWZ-`}P~33k)4 zW7&|EP=)PQ?8qg460lz0C*Gv~H`y0&vYl^TA~y2pKZrJXP-~d;g)s=*LHxeo=yH}F z#{XiL@24MPO00lBmURQI84JW@mVy_y!XBXCL1(EOeGj@qt<&HL1#c`oCAe3fK;H_@}SWkyEA{@ReC9jKB9nJ3f~{EB#QXNju;K{ov!C zBlNWZRs(%crat#lZ|=#BX|v%ZdJlc|ky8$!{d@=c5bx)cp%C`LO>7f+wu}7?{LScw zUjEBA`kuKIieWA6hI*innbduz4~T14H8cxjHukfzn?nq9sK=bWfd4s-!thi9dCy%X zj4!0ZHDNq(Q5f@SA1vTK^8>7>2A+MwxPKa;yPv%7zky~e9KkjVHp4+-d@-Ls=D|Ap z*#_vpxC!vJAVnDSN?<>I*D}8mDu8&n?=}_?|AG_3c*x|vK;nNWiIyA}?tu%!_{V12 zrLcp~^qU(6lYqE$X9ImNN(16qv>eI++eO5_sGC<_u+Phc1yBSVgz=^6unKCRiF_;J zBEJdUCk%dV&saijmvjnaDKRZ2_k8T~PYdIbnZW!b^MGym$U?}2C6EsVPzd;Wgd85B zW{(ixBc(uGk8A)hY=&~6R*zHw{vW9V{5(<%d!P>Lp#cs;BQ$|e7{9~!U(nv7&s+3) zi#~7B=PmlYC709ZE&9AgpSNm+X`T>f>}BW`=Fo{S74`~qSf()3;$X8d@0x{9}8~Cf`vd|<9T;w{C3y_hoKcN z!3|;Fl?eF0YXNM818`B8cN5dyUBaB03hM!%8S{ks*$KkDm$>g;4&*cCpfEG>mAMJ% zn{$RaHJR;oNf`ep2G~#5#|fk2m@r;GD~$cr^py-@G$a8vJ<=nL)-~9%FD=Ux#-qoD zQOf#l>_0zUCX9>Ne>hJVzn>_KKU^2a6*Pau?&@J-+?*^-7yewt7DZj6s3~K^CS$#3 zbULtn@FZxa_6vpa@MK|poo)H`E5cZv2)V-e#${oY;ID*j`|WmNd?!{IkMVgUac?B9 z$5UXgFudgA?H0xptlzW%IF2?|0r7kfo9}UKeD8)ZHm`=Qupiom@g)5`xlS10$5;6^ zVQejhX6O~h4^L2+4q-gA61s)4gZ<`5eCFETs6Q!MJ*bEni@iY4T8S@8opdQ$k+*28cN`&!W z1;Y4wjW7;#Y#hEWjMwPDDGjJaQt-=EFfOrLSY=82pfcPOaO5mYZbY#A(Tld1_D}f#6M0_C zgF-j}Y~Me#&HtPUtot+Z{COuF<{Wg0V_-jA$+5o$I^e1> zC$$Ol9{RtBc5)uaevdE;sB6I%&XJddu{;i@0UDmAm_t`Wg)rmB!))w`zku^gOcTfa zO=0w1=h&Ugd4^mH6Cn-%)x!8n7Eq6`u#LWQ1vbJF=nzH`ITuY8#@DV1qjID|#%CF@uYRi%_H%xxp2O&W0_UW= z6VbBlb8MqkQRv8N4g1Kq`TTX-)x`7-;xE}HjJ2zQ`utyNS<3b=C8zJQA8jCy4Qn|s ztp~RKOC2;UJs_ z>i7c_a$p^_K_BNTG(T)72hO!z-YPfQ zGoYPwbP;*h3*+CWK_TbA^PK;v%`2Il``FeE)bucRN2rO9I{gami6fk2sMVPpoI_60 zCw`|+;CqDq{9fXivXjqi_&y`PD2|KoYzON9Z*1?g@o1>aclN<$Y{)t4INz7ldp)tN zFN12fR}r}i)@KXjsVL3~>`zhbKTl=S(*IM7X;;zi<@|VnxX}K-5s2wB{rw>k8aNMa z;+(Su@bxi$e|(X1!)4A3_l|Lr?i7fs7{9Zc-o z*(U}Q`|+vx#n*|+fS>*)XF9_)zwf41^@EiLmWw^0vr zYd=fe9%6J8AKH)WI5!?Ak4(;aY_Gmt&KWUm|IK{fP2Q8(A1)AMBe76F{_7hvmg97& zV0)K99dvT8qgLsMggIgp$N3)irK{*BKrMZ-JcC?5EB7aC?;*c?XeSo{`g_;19nnuY z!uE{@mQ7uVb|<=ebgR%cqnQu1lRdBtT`|6IV9)2NbMdndDwyBOJT?9fv41BAu=@^n z>p6DTlizycX1kl~$!R^geK$#%wFiN`Uc&E7`7GN9EyCQ801M!pFdvJBt#DnKT)&v! zJYjA+EX=C2!hA6bSiTFtyU1r3{(hVy%%2eJPv~nm>vxmyZtCz;eC>%B=D(H0d12Pi z6z0p!zfA33-UFwFxgVeVS^o<4cr^z98-aK?P}hwcfLOiweu8{AZH8W9eh=I4q2)L; z%j4jZFn>TlTXTf@!&SoEK3$jFa;sX;ZdSMP^o&;eK2H?aTr4fMT{?U_Yx^ZCqro)?*$*bY1!GQUTx-(%aq zu$}$xB5_fRpYZu7UBuT!?p4r(%^_hvd4L$V0&)L9#<&cw3iD|<@fEQzEP-u6ygLhF z5B<{r<|$~&Yx8Duq2H%jR)PPDaySB=XkyrhQrLf@Ad@`F=lNbVCjtLYP6qma5`Rw? z3v){>Eq=bg1NMQ84cqVEV1I2T_t~`cSB`!8c;cns3bxOWuCXo1r568tra~z+vcHjQ zIm^oPiE)xJpC#63D_O_(y6>;Ph`qHZr7VEfW<70aF{*5^;L z?~qet({<($N(A1`LT(X?+Zu3Aj^Alk@Tm^KsN2m$0>|x!WKF%G~WiK)Q zyBik5S|EqIjchOCe3|X`@)gb}3uvd|kG!}xFdL@AdSU*Y_UB84d6?V}C-T_~o zU%QDt@iesq{k)zI#QpkypdLq3Aq&<3eH|g5Bh>O29w>lHI1N{X>BFawI{D_pa-cuo zPB;!10AEMx?5bZ&L+P@vjsGZOQ?IyfTC4(8vVOiLf{ zlh^yi`u-kaULuZ5TZGx^gL80An7^3|`NI5wJb%*wUBdkBC0f>9puQLJaiJNmvz$6z z#LvY(?03O_Vg9XDm>;6OMy;>U=5w+zKdKhypEH=h$UM1yi2o1C=|kfA@PsgXY5-q7 zJ#Z8I`9NP+69C=SEXaYSK+IPwfZAT|6z0c;KutcTkB`ZrcNs9>yAP-n_t55_+^`ey zagEsenD6sIE-Z&C*bB#@4Z4N-7cY?KU(x@y4p{eB*8P?3^;hEL@rZeYn%_t#hs(n3 ziiHWpe*%c(qbX3%GGgu`??3g@Uknh}^=rcX9c?##|BiLPL;pK!_=hB6{xKCDxpkxK zE`+UU&!Sr;%->IgOXPt4^*zG8k`3)>8bSK(puLWN{Cu>8dJyYJ1+?ANVi*17LlKnF z-&`R7YsC2%)?cH3*Ykxdp##v}94}lvKQV8vgC5};bWpgWCkfZ!?ZOqCCCppY1z*E?g#k4=bW|12*O+;TnDd zF7dfZxS}$l77g0L=V|493_kGhA~shiTxT7`ZiQ3AH5A`NyM!w)3g|bE*y6~M_dZ>5 z737p4TtiqsD3uofLs>tR7={t+u*=xsFYYFvn}sVLKk?h(2FuQ|jCI3OfLMmjg)OY3 zzj)$`&jWnKlYe|0IS^-j3w5PNjP1J8h;PIS;o`ZHD`~NC-4V}xC-YNa8T7HdShz;A zZe$5;hkBqMBQLN{0KOTkaiwJOd9rYg&gJt0Al4-6#e1i&B;p(u3&b+2mu1=5xq-e% zmkC!YeU09U|4nd!d16mp2lz{E5Uw%wk$Q}_mG(MuCks~wJ~LAJOpJGCz#$+mH@@B1 zglk;9aNRYYW%x{A3wwdw#-bZbjAQZTCcbesK)>U$A3qoHJANO!U97((ToWpQnD5#n zgqRNOM1p6LJm(Yhc?LOuHt<|={usayaLx4?L6vPAfvj4<5!;*UL^>)BM?%x&)vyr}{ymVxe@>w?Y z3Rny0-~#XUHUNFa(swMrhV6jEyx&WlNi%t0HVueBc^lL~C*U_F9f*tiiu6L*EW}vi z7+U~a0sZ)?&&`JyE7pR@Ok$p*bY@dZSFoL1miG*`(}QD5>h;`(AD1&xl#&>eB5NXQ*eHwA3#{%{l zUZ@828Rbw3Y=7 zM!#))g*cN8EI&hEXQ^xIJnjc@`^3-NwD;NyK_d7pLf6W9BFLUiJ@6Mw&9-EZc@O4tG?g}5*imH>6R zAm`iRGNAh{{rxr-$p5#~@qwnJ3dsBYgFp@6$M^f)a8-!&`{9rf{~HJ7{J-NN13$ar z0AT-{4k4~j;N6BeSO$#u47$Mc^%!96hA|u?CJ9dPe4VkSAvwGofK4ppZLy3I#hwJl z--a@FHMAU>;S{tBgE3?yjlj?d2m0vAAhp;H&4Rhm30>$|7caF{ zP!B#h2aHt>kAid{mf@99$20zkFdY^^J}`!rxDLo6kv1^RlJz8=Q+!>57VAMOJBc$hv4=&ykI z3y7m&5@f@CSPJA`K+OxNO~F2BhhAYk!uEUQIGltwpw^FE6~^*tNP>yrfhDjERzWGy z*K+b(UITl9vBTxmWjV1eKLzx^`~qAC@_JN2EYRnp>5u_aftoxzAMzj{3ZWQEpbYTy zC^dVu0;-@+7=_pst_Ic>R)SpC1g&rp`h@XiYVl<^OoJRK0Q&s$W}u%h*Mkq*pbKsY zV?_c?fNWR@g|H5`!)`bT_*l`)GmI6mMi@oZ`d?VSYBtXST6i`ffY|;OyEQRTCX8>g zExy?Z?QjLC$69=?T`Y`J`YvVpx3K#b@vJ+*a|LQ%wg8qhhD;5=%QpRP2C#m^CSg35 z%rk@zo*NMJrfob6AkNK~g|T%HW8l>EhjSqpi0_9Rg~51&QE^fj&%{9*EP*Y6-yLj= z9oYOR30VH4eL(D$*-#2QpaID3S#smuQR7)+d3F`h=T35D{J_{*$#YHme-6LTt%f$Z zDvYXmKu%TIK9BF`$?JK1KhL^qYEVr-j7=FYq`-El=b7g;pwAlmthvOq&jO%6yjN=M ziUJQ{x9d31LX(8CyBx6HeF%Et2G5`A`=|8zZ+$#RS_tU(dI7t=#PaV`ARnmRzn4N4 z+!RI~vHr&~o~_OY?DuVhW}dMUH)FR3?=l)M)j=oVr+zxncRexG?}9dAyiANQv+QMT zU&fX(2V+0|?au@9-MBfA>pzQuxc-xEaA-M@ z&wo*)|3dR$*#DOow!#UX4X=T9KyHWme3%*?-Va^Ecr6|l0`{+A{~9(;aWEUGLDNdW zp0N(2iCkVMzSoK4NE#6D5&At+2?uztOrDHy7{AyK^}^sCSi?6Rh?j8 zrLISb`DhDV5ymlm9>d=;Y>(0BG5S2#1Ze(yGAsc4`0ssi9L@@(c@oeU?}Zx8#n1>o zxGaoc_6p;TGN8`C!tPfbV<#^O}D!6*6HVtO4v#)xr^BycG>auoKX=ZiW*) z-zK)VJE5Cr+-@M>(=0!Ik>}keBtjbG!WP&ij5cCy+X!3X5OnYiD+)B z&*s50AeXbm@-F?qyN~BI^v8IF(cS>$_3LcF_SYwYI{aELyD5xw^mh*1bL8+I{l7;n z?@fUPkPkIbFN}*9gz-Tvuk z>iFR~VRVfLa_-s$yWtej=kH=53l0n8_vOO4Obl1hUcvSXzOS^v6=D1lKRvAfs8ASJ z=L+NF>B8tGhhBXCiTYhbb8WjY{=(vj4Q;NkPedp+t`)B7)dPtxOOsQ z8DkjA`k|~JIvu#r7+MI#FqA%rZiOnI!>2(eR0HD+ap>cGa2(D-H!$`w41dFtf%t}b zU;&WFFvbvuVLz-Bt_U+e72Gfp@Et!DvSBvN19aRgoAFDb09HUTkSq7kX8d~a!WP&D z+$V9JX2$OV;^SVzj6V;TK>E7|H-yP`n>n03hLh)T#z7Kj6Sl%ZI09Y596=5vh;IaO zjA#JzOGL*#xXE>$nYan)Kk*oJL!U6YhBHSJ|Hwih#*sULI7Xg?i^5Ebg9(7Yq$1b` ztWRQn66;5?eiZ9Rv3?ZmM-kH~@)<=;qp(RSfifWH6l$JAZYkuJLT)MKmU2^=cSJ)x zB*P?_4fA0cP`^9Y0sY>w3--c(I0Q%FIFRQZ^p}cF>Q2Be6}wdIQn5?LE)~1fQ*ai} z!zGZKYjBfi^wAIx$&d~cfo(fxHp~aM>6m<=PGeR9+j7iC*aF*OC+vc~K<&pg3e&w* znB&g!9G3liViX971^SstttQgfMEaW84mX9F!M^+13Sr)x2yDlD$HR130QkRmpD?G) z6lNy-Q)Vr2{#ZVR{WqKIy#}tcqIs8~Oqh3_;M|r18##}a0>^TD9_NuH&KWH0y2`Op z53O*G{rWolR2JGcw0utJ;Th*7o_C$*Iae|e*X9mkK1uvf65Es6!rYPq>5vI%x8y)B zu)Vfyg57WoE(r7crZBfR@QmgNH1kYmB9Qk^G&@UR8?Ybm#Q)A-VLq1x(_jgdLM0r8 zHs}@Ri#5Xh@m3&@TH>fJh5c|!m_MBh#Jh+3?&%ihD`~*K`3muK?O-;>9jq zSeQSX&9f!)c-jLCcowpkXCWtqd0;W@<2lG0z^-98OlR2vVIC&0qpds>AcvDzc-}Ep zn6FW<*H*v|#_;PH!^ig3f*uOt}|vtU(qqZJ$>{FelHyD;2p3VP6!dh z{d!C;)CntHJ|7BTdO;J@#HEXJP_fHppsv7KIq>EeJs6I$V{ z5F?0d1j|Mw!d%D!e2v%$n}I$@90ng8higFpi6)RoVm2_2kyrxjU;}J|1JDRZpqX)_ zNw5_5!hWF7B>G5N0E=NYYys9M9R#@^pGnjo7=g}}8_Avfb23~ui$Sz`X|1tBK6VWJTC;QO8;z~&xeyQdt8@1DKT08MZX z(A?7l*BSGRhD1mO@|sNTCU1gjKsOm5_tM|J6+(Oto6jxd{~3s5KSm#gT}&;tx&+s$ zK@w1d&z%M87e&8O)Q+|UQpBupkC*U-kgHFbQr$83uK%Nk5*9cKcZl%El-^*BnE7w*frD@a@bj%xZ~?9`PMiR4Ah&h7upCywHmCvmT1R~A4ns4bUDpoi z*Ij0OIU3?12~uG^WI!em-?wK2F@BpGe0w1*g)NLlQ=2lDm66wXcL04q)&i|S|BsR5 zWAy(7@jXEdPt@}}zU1@dN+6FXPYbby&s)fC%US3aVjF(8ErUW>5BuN{P>XGCa8Zb- zq9757^(o?fiWr|-0_dKizo*v1CAcZXc5Jtk&vs(nPT$+8Ccq?E0j01Fs)Trk<!01km~%SN@6Nff5a^fd0Uf|&)x=Xh6VO)^M>TO&Z-A{(1>{)0 zADV!=Rky;S2! z4!hzY1=4{Wb}a;Q*hLPzR>OKIhbq_&2jMUr2Xfg(J%1bxi9jDeo&wXM0Epqo)bqz1 zfEa#E3_q@g255rQa9#)&iCW^QO#(O2M=kl(l20wM)E2@z*aXB-TL<(}dkoIO1?Yww zLi~i9{3Hz~0Db%<7wF?B1+YelH#{(32;PMdr_j8`vNt<>cLZ4e z9&vTJVFj@K?F!h54Y{!?M0)~|@B3)q$DVY=`B=bjXEw|5^Zs7u(_s?N3b^-oaWCLH z4d;RJ6c=L_t{Xh7;2xiQcVo~I#@M+(i00mYFk=kzo!7yYa8MXr6B$EUAGZM30AmGl z_54oaGFTyu;oE?5h2i_b2gl(g;BWXvz}JWg;DLNt4kfS^c0d*Ef+lF@*#iDY(kIW& zjFI@^9@H3l4(KO|bxDape@T;J8hD|PXAF$RjKbfj%YbbP;~6RR9nE-2bR&Jwge5#* zU~FUbdZ5qIHvrA(D{u{aljjS^gfSD%%ISq1IFSVj!X#sfJn+sE^V zJwV^ZCxr2x#ju$%+j&q7Yk=+a)17b;x`nZ45@WNaz&O}{)G#hP9hiR!%}d1nQkO95 zCjxoYpMxG@yv*{K*%teYfOuYsf_NaFS1t*oVLj{-#;e5k>RKR{1H^ZrSr|XdhGW7w zm;%Ie@VGGklQ<7`2%~YfFb-3v*U-FnO&CpifbHu`;HEH+#K2);{DQcBi9ozQ?2fX% zk7D=V9>Dg$Z!o^Nm9fP0j3H9XH&?)3#tiYzyI96s)bFiLa9S9x^BE_k@6+^snix+L z!#kNk9nQ=I)}PtTeenjst{uDfrHtiGV!RB0eLi8_%;nygdqu8=&6FkFn{&UIv5Wij z`A`7z^L{wVwmAqFpoMq)^MpC}3iso+!dStwN3RMq<`DPS^H}HO9{ZFq-Sm4G_p!s5 zGtV8-UA465gvn{d9Lv3*n|r_Sc5@HTJ>+B40H2TH|FIKro_Bhu@NO(|J(0+L`9$u= z)8QEJQF34V!?oON)6X;5Jd?${gzeA?^!LIwVb(-LJR||SnhAg{-wS39@zmg_W(}0V zX4npuup9OZ^F?y6rT^L(Vg95|n7e24E@1_n;-0yIcLw8uIQC6}^?-KYF4zN&a2hTH zvFy9adym+^l*YX|+EBTOm$3or@pLJ$?CC8~3;5ug$>e&;tRU`+Ec_AYtN3}9 zI9?@(SEbzsmUr+OyI1jFv4r`#(8v5Fz{i1Aj0@}oVm?ehhl%@e8=Qx8a1qGk@D0WY z*cPvukN|Oz2K4jVG?)!JfdAJDpcshvwJIQo*XXAy29f~VrhF)ca@Ya*Z@K{Zc|8Rt z19@@WnXeP)>vhn{`-SL_WCHyk*#*?`$Ti+MjDqQ~6t+VRoP;jkjbxqA4Ko41KK%MB zzy}@B$G8an9;M%-3xU3mZiYR=m+gEN`KG>xM8}(YIpXioe#~a1z=9&D(J>0qFDX)vyt; zdz*gVrY3KnhbzK7od(lj2^7I*ps&;W;W%6Z`g@1i-^qqNAjfy=gxQu1EN`P`ZTUbf zZ541?m}g=k74Uxs&6y3b73llSF}MiSF4ZJ!0v1zux-y$zq9y1dls;JHwoN8 z4DaIW-4dt-YVt1qz1t;Bo{gC869Aib4=jY0um)?ITgb) z>hs1Smfv9ebPMxMbS<bRv#1^^`Ds@p)}Ju>Q|m;gT@>Sl35iedmSw7i#pEYr?!vJbz69{QQ+ZZft{t(7~AA zZ2HCD)dFGu37bDnq#v|@UCDaZ{cXK)iR-*SmeYe$vbN%V|8W`Fve)ohlyX4F+Y=WI~VV|xh4U&u7yB< zt_sE#O(2e_dd4DqcrUS3xQ65b>xXnR9*K{k6Cq!?hS5LIJX}2AaPc0OE8YjE7_X#{ z;lwzc{&@GqHM|jy0b_{6iF5cB#xfZbbO5oYM?*4Xf(Pg;eFYFlIzH2zp%wasYb^1M#qU^ZGM4_v?t?>c39c}XOU>NW z$c^63dN(<`*D)qL9q9Wm;<$?(?jnx6N?{|^Fjh;<6KdfsT!3!jx*K12)8F0WVG?A) zOrQ_OqFi@x5U$VcfMa}K39GpgVRBss?sJ4GCWx=x?^yQjNBy(%b;rPD&}4uanEiaA zY#)7e>HYuokMh&!G5owoeqxfglE7q`ri&@cng;coq9aU$|36MK|36QGB6$4G<2`}7 zTUPt{M}c{+B$?ih0q!Z^rj~DW-~G1Rzc}=x|NNl9s^8|&Qt#guT5XxtR#e^-jt&I~N?%ClN4k1i{YE~}p|;*tG#wOXyL zC-c9P{m3?hmVSS?&}vJpwvyFyz0aDzNK4%E5cId1f#uy&hh6t-tF5)#leF~PZN>e2 zcVPMNJyu&tOMkzwu;!&b{rvuNpuHSpwK6`IUtVanWma1iXvG57`K)DaR@+63?>|^I z|HA}p-V<2=hdgV(*qXQc{DX`|>a5!FJHLVX7RyfdODtDt{H@z+r&+BPF0{q zT5k1s<)F3P7g#PvV!}#q`HkYk5zg?QzrMvuCC? zzr>nfZOvQzMURYuetRr^Plq*sBVhkgN?`t@OsmbaTB}AM?Xm1E{YRbF`o2JWb+Xmw z&=SwpZPt9f)mpW@Dr?F5kL5NZo{uxEd8wlw9~W8k71sI&tF_|oO$f|$-Q?HzT6y=D zSo7spTVu6SkH6lNR@)P3|77|7Qy%kfA^ucswO*^0dN<1(t+w52Z_pC=wG>+Vy(aeo z*{-&hTX|oTdCTQKYk8;DqL=5BKYN&`75DSGjAi8h=So`o{&SNx-(t-Zvs~VnZMAG; z|2#gWj_XA}&|ajW&%aEz+7eop|D`stUJRoRPIvLW+QnbyyCsY+e&sfxkCipB2O6LWTA&R&fj(Cf&r16JTA*ge*J6Uj(`?x`f&oY| z5|UsP$SD~(2MDx6m>Hs@hz=@xbrpk$SlhhM>i=$9=M)>N?%S+U zQQcrh<}lG|&Rl$m1hR zMkE#C+k5~8c4k%_KV?)A_C!%0+}pDfEbH(sXgdbK$ySTvsP+4h=LQc%IzD2Q4|(R0 ziU?5|p{UX<>+sAS`)*7~;YJ}NinQ;Bq6*e2k|N|IgZ@9=HqW#a17)t3ebZyBZZ-K+kEICTOKkg9P=T$PRc9%_KW1$n&Z~?q>YR8GYY#*^i$*I&qos)8!wC6k zLLsfgYvnwPh7>-mbFSmqgg+VzAogeU>7^HW%LyD(*v|wO=V8_sKJY z2O{_|LOv3(mN|r1*RjoGLOxQg{v#OvaBL60cO%zIDwGeej$$Q7YQNg7t5815brf=JM)}yLt57~FbQE&OP(CVk z70O4Ij^bbJK5BFo%15n^VwK&;9$kgWg>`N`>;#preq7o!TA;brs4- zqmJTV?LL}x70QQCN3q84qghv>e6;8&zG3%qQdgmTwCX4d?LOLc70O4uj^fL9A04_1 z<)aftj0KHtvR!2up1?h)|9h|t8>tAt3b2h|NrfCq^(%TT#cW#VG=KsF^S(ZQ4txbL zHS~=h;|biKOCQ;?U#Yl9esD~@e-oUS3WGa(ze46972$adppaMk*$I{+JdXhs*qYfX z{ES>(Z>YN2Zc7m!mAzIdg4NB=uoU4@4WPi*%+BOzj(+%SCCeMRx+qk2J(eOo z4|}aFg}=HvmLfcl0TkGp*?IhoTwR~7y7`tOJSuywP^jt_T8i+f22fyYW*74_a&>*S z>XulF+wZ$5RCUWNMR*?eT3HHzb-k7%JdXhs*qYhp{ES>(jO1vPe=n)96t^9dF)&iq zt+Es|X`Pe3x~!238Z*0=pOLGJk=l3bEXD1si;=2sgQfTkt#h*1iZxQ$J%mqDp+((3KFbkE?k2KZ`0Rfa5L$128b~31w6Z>;kIO!+fxvv5F#^pT>Y=<;C|^x@|7GLX^9 zr>vnVm8X`Y0<$;ymC^*MkUlc_DHW3bij)BrnU=Nm@i2rY=|euZWpen)WYxB2L=7&wnY6m#LWdEByZk77%4 z+dLeK5}S|yQK>u}iZYvz{tA_cL*Ye{3b)O}vCYeM6w-$o+!HG-#ceZp_^8rRIDFLF zqUxWys+Ge>osPocqrnzce;=y44j+v=3WpCL3R$P{?cqGm?^MTmi=_y!ZmQ$>2q{`^ zKAd?tkMoeC-R7ge!k&3Z(TQRXgy-Qr&O?eWOA(%j^EeMFdTc(NQ8|zEkfP7#qrYOn zJf6%?V~eVP=Bic>A2~V-hmSm4RQ-LZ>NnI#P3Q&(@@(YpZ~g@uQ?PYEFWWA7y39k^f5=)hpTXYH^Q7=#%HM#ii)InO>JMIGydKAd?t&pshVgQW=1L;46^mxL6JD1uiR&h25#gZ(O`@L7u6 z=HXDZ*nE6q9u7sT%}0NQ%EO^(N0AEp+oMxQA$_Q`PnV^*ZRQ-cp<4CmC>%ceY*F>k z+4|64Mttm&|ZuDx(Qk zr3SCT{r3hL!85~*36{c{0}IK{+SmIjGFUeU!hM*Z;6t9rq$1ph`3XKUu?`+le6&qA zAJi(8$24q$-{&@SKH7XZ6xpmx1^qnaI7vi>^by?KXLu~dK$%XKb?+ zG8gA$&)i4mJg@U-UV)kP5m{lqjXR?fYkAa$Z$;Z1LU9-b-?^JnWhp*K>zoEs$i1Wn zGwCCIyAPni&YV%p&m;>P+hlta@Kq|QqS}Lv%skd+8~7-%GOQ_Hh^@glgl5#SP+Es? z51WspUhDXfQPpGZf!iJ*{8t&V%7@%#q#{C8MkuO-mUVcoobMEc6pbikME8Spawvv` zqH4lSMifaA^5Mf;Z@&uei7ncS;GWoODF&*QTJ}w^ZF{t%kZZ#CcH0*GW}i*bX(?2H z%m*gBf_{TGGc!=k2ir9sb8@;jw5(TVE1$|_ z3Ug*ApCc<|wn0Ug{AVkMEY`017wbYIm^vYsTk-QE-Wg)BEwQ>Mdepy@>6CWK@q5~KaXrZ z9|48mhlih^v<21Gjn^02=KMc)pRBND9{4`@Z}U79pR@%B_K|-ZMVJqN=7p9bLam}g z+q@V>#BCnT99wf%iKU3J%|ll*v&t-mR#bi;UVdt9^MDV3=H+@mY*AI9h=K5XHQO60 zuVN5<_k32RrIm63l9vmUnK?A+z$>?ii4ISf)69)qY;I)4zHEt?k*;zXu?`X6zT3R6qOHa=_8UN zkz&-|12k`7Cuzn5IJ6#9F~WfbxllsG5bJE=!K9JRqcu?I7G zhZ=sDYFFgg6unr>{%@}+w<-E8>+q;-_qF`BpHNgcEFU!eCfglL4y&Sv1xD^>OSAC) zfhhrL`m(oRb-Po2N&3Qif0UnxX_n0%o6uhzkA(EE79(b_zc;bQF(I z^$Ncaw`CpfBhem}NO4D7ieUc{6+AZxM3rgzpy@Y_3(d1*gnVSPJiLEt+)tr=cvu&) zx>toKfB01XKMU@JXXl`ZSY4@5)y+c@%$|?7$+iWh;_<10yY1Qe*vLG>bFo#I{~j#g zE#It>Q5EVcROZD4_Rm6ltsFi|bQQ`+848{17O3iaQRq~+KvlOKg-&$~RCOy*=v22r zRkuo4p)#+v6g2%N+nz{uLq6)T3*X*S+)tr=G_WpWbvZMnab^e{wT&nu)=DbWaqdGA zu~t32Xb7ok<@!>zt{g~fDN9~+E6cO`~ zir~IGCtoKjcGtMzzB{MTQqc69oJVa)QH-5V9ngkfIzrojiuAJStG=GH7#Zxv# zl9pn-O_8Rhc-p3LYbiLkgWJO+kMYR0dd8;6)KcuQDdaa!WFJ4WDLh(=N}D1_OYy8t zk*B5DX;a8=oXB}RXHyhvDL8Yg?NO|yc;2Qc(Na{~6lGe97ieAmrX(4G!#F!DQZ!~fc&0vPPV&Lt}?QNSK*#I%pzWqNk#CA%+r7(10wneesg*n zE$eWF?M}Eyi0t4ur^lzO2wstST2Sa@erNCsz|)FCCyzT-9_^Y@-Kp~Ev=lV`Cg&AE zNYRCzP9ArtJSd!29(Slb`cTMi5ovqe5zOO$j0domOPzUy6fy@%`1!>4{JbZJfh%il z>HY*wg`pHFnhH}X+?ooPQevNaXaO5xE|3|0y%t+hR3lp;@4F+?fy zH5IW+QK+dHsuabVia4bx(NqjmiZV?_yi#~I6~mRHTvL&t6cw6^5lT^|sYq0cT1~}B zrKrFMrec&*G-@i6mBOc~7_Ag7nu-*qXw_8Qp%m?!id3cO)KrX7iY`qBzt8FQ zk0;*Wqp9FG!z@LgrXoG4n2SK`>@!v=Vk|}Yca-x=#vQzpnVWz@=Ss#Mypoxlf+7PV z`Urk=&UIVX;R@%Kj63+vIXBpUL`CpQW^N`vWcJ|-Tjq@Q6$Z!K=VoIaF>|RgOXksx~(V8yQh}RJP0+RVxgRs?E*QRjADKQRrk|q%to=p_6%$%DfnbPUb}_ z^AZ#~nHQ;Cw4%_- zBVFauZYgN`P0l<*icaiw@))b~=t7~B$5@pIrPj)0tjeR$Qqc69oOvjP|1}1kJPh*i zkBfdmT1PxHaC{iSGs71WQ0QcC1T+6a3JRSqXaqC=f?HP+JTrV@;E3p^-R*ND0HeT|2~(At@(uAOvCSjrG7}LlOC@e#i+Rih303TJv=sg^eM@msOW_~Ww-jAkiV9mE zJz5I?n7-vhe&a+wqWoj}0mVE78VdiIzNLuKQgBQJx5vB$Erowf-|`{9aU$oj)8@mi zrSOmGTRt+h6je4KnOX|}n7-vBTT9^|)3+2JErowf-%{jgDLCV(?UARYc+sZF*HZY$ z^sT50wG{p_eM?b{Lhf7P-#X53&QZZ@xOpX5%dHqu5&W*5S7up%EFVa~M^GjG zg(l~jL6Eus%JP8}Omwc>Mew@)0XK>a2#>0tk6^7H2wKa?oYM#)?*;r*k0=a9mB}L6 zzyD8F1lC(WN66n24NOwund|h)`MWY23U46uLab#(wtENW z<)`;UGKceFRK?{;C72H{aT6t<{(EQNkl zeU?Hys`&`~+dMp~k@i}3sanmKdx#|5heOd9QY2tK17y9NlNsuzN3^Qy&QHPYA0VP4 zSl#(4PBa)Fhr?Br2Z$OccneKN~Kv9TdBFM;`lj+}1{$R*OM{RAOR;`$&K)538sI?UBSZf}&mZB4d=22@Yx=_f7WMs}M?5M2`elne>>Z*mKblpD|m14pv)oSHG@6veFU$mACxtc z*5L}<)e_~o%N_0Y*XlvHt|EA~^q`DL<`VA1mN{2_UkP39V&+m2 zyjptDV?`7ml`ZqDLVP87o%mpmu0my=he9Xwuc^%QQRrm;HI;cG3Z2ZqrZO)^5pkQ7 z`PWqDCAtcgc^Qg`nX~Vvs=eKdB4XxJp)xN=5ixVAP%nIbIU-QHNdlUMR)=6v{^f>mpW{y?vS5uNqNAtgck3>iSSbtgck3{i+2;#OktN zEmQkdtFA(2-fk&q`c1Z4Iec_t7qPlhp?q|q(5dcnRb6%&t?DjU)$K!}Q{Cmk>gFKO zs_yb&b#sC_glF$O!z~YHo|9ntkiMLgv$`Q4DVT-#FSY#?%7JO&@vq zFi7~XsdE3+R75MqK~2SArD)Pr#3)6xrecUvoYYjrDn*;7VyIGdXe#2A;-aQv zm{MHURKzPqucl(SQuJvm5`u~^BGB4*M<|6nE9e|iiAo{AKXeo$l_Et`k)#xEO~ojs zkmo9$sFIaJet+mFMk|Fp=jtd@l)|H_xI-y&G!>~zk*BE`qZIj?iZrDt)KuK56vdi~ zbfu8rI6BoGs}yA@vR+ev|FWvPX!Jq6Iry z-O>H*<<-*o;4-cgGgTg~EX~kSs65)SmfJhrN21+_$W(cBVlATz-%Ff(qN$?l!dgZZ zQK6!u41Viyg>z3dRaAWg_Rm85bvxZE#R9obCyyxd@ITvLAgv?bbFw|6f_Fs=5>V)5 z9u>@dK?(|)b)?Lrf|)OH>nehGEDHvXh;I7TD&!;6@*!=UlXKsVQa-XVi&$Omw(k$# zb1v|ph*({zP}R*rF>o%nJy9xx_nZszP(-XQ_s;hR?>QIb>nc>{g_eS*-(;(m!$&c8 z;oDn^`ze%<64u2GsB&ihfU0g8);iUFKvma^LZ`Y9sOpwm5ryYsJ8H@N0ae`!U4_cL z%2Lquo1C=@`KZM%JR&LXr%*oXSQoLn9OoJ8%+P=$Vs)iLRksmE#Og|gIy3lCMBI0K z=vAE=T67gE^HvlQGv|mZR{K>uiimkgh1yFxb)sS~DOP()m##wPK^e62SgrEtL!pz$ z>R=uZA&9&^$YXUdkB5Sl4c{A`$H(em9uFnxN0-QW4y*9&+pCK|zNH z_p65nt`ptZk0^&ClXb!DrCn&Uov(;$h{_`ylY#y8Q>Z*VD0GgGAu5j?OF`3bvYi>o zBc#Z~PA88#96k7_Kev>ngkfH>;)PA;sStGQxr;H)XNnZbG z)I)rZJoRkA#u~qR$jfIPABOT#9@&Es_%M`@3QZrT@*&5sB2M@)m5(~ib@Fg2A96G* z;)D;E^5Mf=$48X%A;*>?PWXsYKH4$Y@i9pGkRwGACwvT2J~&vkd_*fBHzGQ~03Xpo z9}8nNeGCrzSeT&cW3cj(qUj?>`EYCch*3T=G<^(FKBj5<7@~Z5G=0P>9}6{o#3~>8 znm&dqA4QrzhAJPr=c_p7L!OBuPV854%7;Ar=o}xzl#j}Y4luySFy*6G(?`7WAbQ{GV`R|BKgMYKNK!r$be!NLN%_z{Cyr7++?qZ{DIXb{c_b?z znVLS5m5*#qAET9zd73^(D<659K2nsA0!<$&%15!Lk2{o)QcWLsC?8%;AF0a6HccO? z%14!^k1@)}9!(!(l#d2YA8E=*lctX}<)cN@$DPVYo2HLDm5)wMAL+`6e0CRc;y6!N zK6KAlV}m|&Bla&1@G&;%BUhfUB;k`8TEzX}^xz0ft~_7K5ti_&pCUNIk}J8A+ZdF8rU7k+OpyGWEj0#grfFu1LIoLt$zmLhmZpPPw7W*)9`-q(%@-a+Qd^VPt9 z`YBW%9;^RwAGUD@@))7=$Qdvq7WTWN4=M6kC-VrOhK3eJ`S=SJ{C-suHP2lVTK>tO z7PPPqMY);V#(4Zp(w7jJXrm8H$U&5vzqudF6M*g?$P)qEcK_nmFo`MVwD4)`e1 zRSZXQ2Y;I*SDtqx`uHkFLxVobbQQ|S1|7u;yAQ9fLiyONqxg#5N4c&-`HL@<)czZ;n*Hkx(el^Mn|y{Bel(Ibrs6T9v#Kk>^|yr70O4wj-uG^qd`}pd>qtK z{EOX3qpm{vXwp%vvitDqDwL0A9mUt}K3a4Y%Ew6^g*>UL{i;=0p?tLIDE`&%qg_{_ ze01n2*4TY?>ME3vi#m#L*nM>ADwL1QIts`6s#jN`eB97c*w0ssqI4BOAB*C26!!0r zMM=5}=3gx3f zM`8c|SR@M<@!MG{l#kUq3j6oRqEcOj^07fjVgLSEv{_f7d~DNE*uOs(Rq85~j~X3? z{rh9l9$kg%Sk&b7K|<;R@T| zgS@{bpuo<|o4`-G1!KWE*?o9yiVV!gI!&#)`$J1>JKFa@qal-@Nzd!RN>d`I|xhzX8hKc3wV;Wx%q2Q>qvhTym3N zv|vmofq65pke^Z^aZahB|C`03D8_6Kg!?c*!AFUu2=`%rf{!v3b0hh^kD|8TV*M38SdB@TeTy+@@$m zF=s#@j%{vJ_$)=Z563pQDOylyY;&8U)l%Hn$1VO)v)bF+QKUk6tv)G_|Ch2ifUn}Z z?|jc(WDr=!ibIK_P@=jDQ3#Kjtygi0SL+g@^|IbuFCkhl>(#Thep)}CpXySto*&Oo>qmHcUTW|6KXYcz zIddi5U4RkJS9goQhAH zCzF3it@!`+zDKSdh5Kivsjt-E+lq3w70u)Iyp_ia6yj0nW92bbW3{S++C}r2vRfrr z&cgk(($3>`TT#Wf<(e^&mgRBQG9xys%rfj@P$<^!XZEwM72s^1+;?sArq4kd{Ry&VyHjkmRw6 z7q%ky_zlaW#!+M~1)){MLzh98NgfTnh&|%{NA)C+FpE?kjh4dXAR6)bcqATVk>t_D zi?m0ij6E1JN6~C478>(KiASrYSZK_Rq8)|wNi=E%Npb&o`9<;n6@O0$HAFGj9huCX zu#o8Y5=AGgvQWe$FdqB0qKHReJi7G$f0dcyv=u_Fqh4JbI`tIav3RyprO0 zEHxg7*(M&v6viV*ZJ+VTB)xl7D~j}$I+7@QQDmXmco>g9ttjFV7>|Cv|6;vsJWitU z84u$zpgoH9uJJgnJ&Gxe#~=#%M6(p!azuCEaHHuMcw?UzY zb4R9(;(}HbdN_AvmSP-*yqowGxaDTPTNxKxu=vAO;k$`@CRiy)V&Qu=>z$VzM~PyR z+Uue4xAiiX2NjmY9+!FXSt!h$s|)MHvNbPPXIizHE6x2xYf*#qt z_K-W7X{}h$BUXg>K3DbrrDbkOvY-)p%VUOWa%btUxJGU1T`xu0s#$7F){?zjtX6Hy zTdlf5HEET%VkecuR(UC;RXa;id=3haE9>rON2k0?t@=QykQ}78sN8b1dAXzAQk1dY zz5c}&v*G)a@YP?HhYFRW19lRtUxUJPV)Vo!Qc#svh4(%?SFlPv3Kd(zXB>_KVPwqnfq94uyGG9zV=kiW*&8 z`pYfWarIYhN&0FXFXXuLSJYBlS|mN}mW(xmY)Sg6ju+zLuc)WCc*vNz#q#)Twj>^# zcp)DCiY&FoL&n4{R$u*qElFQB@IpNN6;e|?WE9Ge@ham)V))r+CN{5VsUu2cxHIJA0`n_dW||US1mZm7J+EJNx-5na_1c zmaHq!T8aT`%UOZF6qIBHx8~WoJWu4xxpR=M;)+Uk~bKc24tC@{k^OilV7!(Wlp z9@5Khv1aWL*do{3yo_KkFQl*h75&tf(UVbhi{?{ybuq6#UQn-VJWy}o~!e{ z!&H;npK`17s^D6i4d12SJHj^4>$z5pqSy|F$L<~S<=d$2c$m!jR7S39_vTqAwMFHY z73P!Q9lsMP5=Z4`(|^~ia!ho_gDYLj zG@GS17pzpVzQb}|HZjjb#SF33F7yb@XQS6kEyXPH&0596Dz=9lAKK$SsUjYta*ORz z!KPRte!l=7*Ym3Iz1n@^Ckl@%PE~k@yHET?;c>;$9#vZ5amA^U_GIp>;iu>IT(_zg zh3EBLx2pdAD8g1{`6*Yl!rm>oo@^aVZF!snv=7X%5%Omy8fyg6N3|k69 ztB8j#u}5A!Mpzkpm>i^L{HZ?SV9v^8)KZunL?Ip@mmrl#o)u}2NEv(7q!eS8Vxcil zz6WsMxTRQV%#C6aMIDraTda3?f19V1^gY~tQ&gKzkz65~*rB}h`Y6wp@0&)k9{fFK z7Ely;1mZEP6}Pf9lw zHee3QJK%PeD2nD0E2x{^h@s7rw7uW{$=0QYrBm z(TX)J-I7+s9%rdm35ER?7!TRilDMx%wW6@U=1@>Kv+KN86h1u<*bg6gZNfei~qKHReJjPM@ zyh}BT3EiU4#4Sjc?o$KPs!8opOkq4OqmbS$JQA&UcjB8IS5v%re@Dp`t?)lernSQV zD7mT?{zu6S3dvfKr)#FjZ`a6trhGTc4|#ts*VX87 zNO_mejlU1~g)&x1i==j1@!>fY6}o1u;-xMX^LWVIi1+V$RPdd<%1G_Bs+M)Kf5H8n zUh>e_LPx<2PVz`AK0K$Q5rwp-&_nW=%cDgrMCE!&9&;($_5Q_UE0|*C@t!>%`>7(e z#UrgqJRC)ju3hM1<>4rfYDJ-km4~C~MIkfkZ&@!{yDqo`+H?2%T;3<-;)$g)aC zt}qX|1DLB-jam`6jF-A(c)Kx|qM7ZnhubRgn5$K-S`p_GJ8sMKm)@h<`JzwO=b1%-r!9@KHD( zgI25N?JLJ)*hk@bj99Hod(3^5jQS`Xk35RFpJYr-ap(DpWS);vMHI2hR@n2yD8{YY zZXWJDH;PHiBdxGAH;O3~TR?Jf^Kj?6QA}$^VIJ;0H;Ng{!)=v2&y8Z%@<=P@%;Sp) zyyki0@kPlto`dPklks58jiTK0NVh6EUpa~j%OkBw@^BPYC@Mi(lx~%M-ZibN@ll9J zJkP&as}<6sv`3OTbI^Fy`zRcbtX9bW)0roI<#;suC>)Pwt&shvJ(AvaJX(Dejz_!R zx8&jWl{?RWE}rLK?9__F-mP@5gGSM1dANDF^V}$UERVFp&fF++D7HXh9_~Chie9ZK z%)_1MM$vD1xUF*Mxls&Q9%;qgc?_cPxt<%3VXas&560XmMl6qXtCC~aQH)w1X+@HU zqsXJE1po0E^HGRLGSA1gV!_OrA13ojABE#FWwk1udD2&o$Fz^a@tCn%mG($_*YTM3 zQP>{gZsUHEF)_uR=O2jY`EIEtidbbU?6as*lv}k!!$jiFbEBxxir6O+aO~Kb8$}gW zwt%$G&BLANMp2^`g?YI1+$d@-4>u2Yo*PBI<&jp*oktdh&pbCCjaso_9*ntBG+Q3& zRwc)-qiD4}(uyPxN70U=68y)b(?=m5@jTz%r40QTTz(?VD45EnpNyfw!cb=Cf^L&^pqKH+t!k*_wF=Ewr^Kj?6QH)w1 zX@#A+QRGo<0m;G5!=2|wF{TxTdARf3D8?-hw^i;uH;PHiBdwS_k0}&B^W1n$YsG?j zFy=-vV|k=ol^nZ{V%G9VE0R2H#g`Cx&GV#HUy@O)1X&8ESR*JN@jU-hIaNd_6?1^seJk@1t-$vU=Z=huc@~Jij@f z=U-~nio)J?@7s-{+46AnaOb&Ev|1i%g`K%kw4>Mpg?U&<34LW0omx?thda-WqRaAd zTjkDkqv)|b(u%qB$f59==fueh22oUk|9A}h zD8wU~=ObFNVCK%4kNPMakG$2YbmmE4IUZv^3ddvIYE{}J>0QTT(nsNVOrePTNyfw! zcb=Ce^L&~rqKH+t!aj={#f(+k&BLANMlox7q!o7NiK0zfu>~XtHxGB78->&oMPVN9 zJU5DRtq`T#DtDe6MTO;&R?MA86$+nuZaiwVV!=EZbEBxWJkqU7j$KDlZ+WB@Ngj?O zi=q;wuLM)(8;?e+6jg{vJkQ&jwL)5y_L%cXY-{yVI3Dd$m-8a(qB2-|xw(Oj|F@;)?HDiheJ}5lb=PrTCtu z81z!`d3KV=u$SWZEX9bI;!#U6>ZSO7OOf|dFa}8;V_u3suoUB7ier{y(o6A&mSW0F z(Pt^9y%c|BDQ3JB$1TOIm*V?I@nrjxBFH5a>#-I|FmN6JZiN@%EEWKsBB2aTdpD;CUybD~i+TOR3FCF9{JS}l*XBFV#1w48o__+Mh?6R(1L) z#3Q~Aez{947R;RMhwmwH!toeH5%-fj z9_~E;9VN{(GeF<^P56-geBVh}|o_>af1k3u|>c|M{Q3uf+&`KXV= z@yJ`PN@t$*mE$qyqi{UNtyZNylHPSZCVdo+#}taVpJYr-ap(ERl6gK&6;Z@0TVbC? zjbg^C?dIXmbEBBGJkkm~^F(pKv|enVqO`}HN8CBV9Vh)<#?etMN9$i`?`%il$z3X`N_$VBY zoZh$O;r5j~&)3BB{Qh38DC}MLdTtc`mWP{%JI{?`!172d?97c~5XBZK%)>pdjAB?T z3iEL1xlxQ*9&W4Ld2SS=mPcAKcOH2ZKJ(mojA_M!c`)WiF>ZOJTa_HUj$+dCNGp;& z9K{rhO7I_#X&;4nB=dYmD;CV0`C&4j^-DegQsidw3~wcR}2d2ST-S|PR53OjS7 z$Wn6)6z1X1bE9a~inwLG)Wx0WM$ydn*u!m=JI{@xRVxbf5D)YI+$h>n_{?*o=+ue@ z^I*)4qRaA_HxEbAV|k<%Ngj?OhoTbv$D`LrAs+EOZ|~QN1v6)Un9K)!6pqKB)v9#n z_B=Np!#)bfW5jAz+9T;*Cy!Adh2xP&5%-gfi7DQz*887R-Y&H;Qu0Bi*Xx*mV>YmPcBVJpW23 zRYVc1Y=u3~jiSq{?dIXmbED|7Jkkm~bEC+i*aDJ+n}<8kjiOg83iEL1xl#069&W4L zd2SQ~mPcAKcOHW%e6HulV^}K|%!4sEiV@2r-Kyl+brhqPM_Q5O;VAMbD#3p|#(Wgw zk<9aPtynN~=7-6A(nsNVOj)f;XP)$x<1y`{a6D$LR;4|X-gP`?eH6CGUIgJ-6nG;0iW*PFO^Kq`Q?WQv z)O#wHB#Nx3LcSdx^)6%MHG)eMMYE@3S)yq5RLFNZqgJ(hD&$*Xk)qR6aZ94;@>DEO z6g{4bTN6bNMd4qjWM%wULL_X=n!ljDm+vqo*Fc#ornpzmW$~4BFW<89x^f!DNv)9m zyJrUX%4rnxS3IO<452RaZri+rG>Rd%ZvpXe^Kh@6MsY?f#3QY+?*NQK{_aQY;pX99 zIgR4H<&jp*oyP?fK37iTA%7{v=MLE@CM=J1tCFh$=Ut)P!6!N#6+#&0nn}77zDt zMv1;o@mFM{GNWqC!@vJtieeM%=2qOLK3$;Tdj8c0){1AL$E}V>Y2wkefWr2O6yni> zV#k~wZXVKC(wfXy+ZIsR9+5&kI`sY}5BIMRi${jFlo?fT`f5Kb;=Xbf(pPDPcyyzP z`^r^FUm1nztHTQ@Y!A~{M^VIm<$Abzn7-;;Kw*2BzB-AbX!)7kg~dnW>7v!CFe86F zPe!npz8dmT{7lX}vBwCpH4`kowf1MSI#!Glud(WxP>+SInBlJ#hpmzk%(EgMb3&^) z^P?_0N<=Y6op{Wx>V&u2Gpf#v;5ggj5p)%Gj>5ERl4^0Q+%b2K#7(AEQz+tAxe94j zawKjtt(ry=x5`yWtBk_5YDTxpt<6f#K1u)1@VF$IwX^do?wUhE@5-bN^CE(EyK8^e%j;N?C62HDl8-6w-D_QZ_uA1& z6;Z@0TVdbz8AY>I+r2uwcdtg#YI&p;_VwH-+EHu)$-<y?Zr^POT`+!+q{!6kV2w z+bZ|&)hK!_kF;X$JaQCBV9ay-U-6pqKZ)vB~d(z}kwq>sY! zm_iZvlZ=Te?mWLMndj3~5k;)B74|$giW#f6n}<8kjbhgFNGt5j6UEo06uehvM4G+`bscmzVT?JN>PP)#Pj@X%~~NXN_)(CBz~>cN8xz1YlZAToq5t% z%t6z;ojwZ3qf0Af|7nk;cO8!&ABE$Q)BBb@+`e+>`Nnvjf2~(53VYZ6UWQThTOMv6 z?mRb&0m~z;uroJ`K@?k{Fc0^*GKyiXD9pp1=SDGNdAO}|=ebdgS{`Y|+ZdG#ZI*LilBdtjCa1>K0D#3p|rhOFRk<9ZMtynN~=7-6A)<_d>`kUpir7rF~H;QJq#~yC0 z+<9&kty)o-hj^H$=SIf^9?K)GNb+zLITV%PKOVh4 z3h{{N`M!RwSTJ+uhsk`vN8xx3TCGZFZqIY$G3=voJVvZmr9G0~b@CYXQ8*rX6mdVv zn3&?u^V(#dk5NSwvC3B1cS}YwZq;`4aOb&EOj;gkg`K%kOrh8Ul7pLvJI{?`S}O|k zaOb&E%vc_7tK4~R6tk8`S}|uHUq|3I&l8WYOSW=mSTGO9+$hQ|k94b&W7knsSRQFb zl82+HLQx6cs1*z5 z!I&FGv*nR)RdVb)idM@btw{246zwP~!GAnDeH7vm&-2bMtynN~=7-6=$4B9KZg>J_^TU5JlWiGA5?D^Zd?ao)1$+6tT)y*w=HT7_n-* zdARf3C`K)hw8GBZDDo(_faKuj;m&iT7}JWvJluJ16yuhM+bVaS8^xsMkygx|#}o>m zd2T$WwPL|M7;~eTu{_ePN{(GeF>86G6-gep;sFF+^E_$Q12SrrAWOj%YXrq3p63sg zQ$-ZgqO@YpBk_R>ABE#lr4_RObmmE4F$YZ^H9iW*qgE?q|7nk;cO8#evF1D!0z<6gHquTqL2R&;5_eRC*&IbJuTx{~jnKhUEU@_jP5 zWWxX7JzO`Vx{V^oD(S26Ka&nO$3L7_wMPoRU-CdN6(kQoh4fWFwZ%hv*)5Jo_`e*> z49Yw(Ks7l+MCF!x`&%zt%~3K)wRqf%E2LG!RFfm5s7G>?jA(^q@0L`nLWOvYQf(&` zRU}7Ap4xJR6jdZg$r!ce2q{$jvfWn)&6tlj93@lKmj9&l zQ{Wb-ue3t?YMN?tgcR|}$p5z;9VIimc9C<*XQHD-j;mR%C~{`_Oycn%g0Mx>GPgL# zZeSFpREw_!5}V@Q$yCI5G7pwhB|hh-754SRC@Qof_HsSU^LC@CvOL^#yZiliqo_f# z1;oQ`m31BDYG4$#S`lZ@OI_SM8KbCYd+g!1%Ds~@imX<|{iO|9h{s%+H?qy=PR4jN zYsG?ja8)x3IXYsGdGl}-?UqMck>uehI#E=D|9EuyD8wValX*r9G0~b@CYWQ8*sMDB^ySF)_uR=O0ey`3O}+5vy#4JBVx&U2%fvOLlX zdjySQ8bv$@=gor=G>RFmSTGMqF>86GTa_HUw&EKI!d6M`v?9sFQApb>L6-C8!Lgg< z@r`mHg?PmC{2LWoAuURK%y}e!qsm9&c+_Zx>_44((pOF%wLS{Rquy#&+9T;*$0O^b za6B4O#Qo&#WZdARf3DB86`YNr);=0?#;%`G4~ zxOuqq+$g%VB5oNkb#dppQS`7q_HbL}&U2&4X+>ck?)BU#dQteybED|jiUspv%#C8e z@|ZUdM=@x5q!r0{IErBumEb=fBR&f8Nap#dRxFq~^TTAG_fa?=V^*uuncMT+c#Qif z9FIw>RcVi;cbz<@d=!qyG>W*NWK2wP=lMsHc|JoGQN$`+VV^~fV%Dnd=HbrsL?OR| zm3X8TcIHMQZQla2bn|fMxlxpBMPVN9JU5C8%foGzJI{@x%JN7n=FX!Ah0i=U9<^Gr zU>=OQQPf)==~gAjuA|6W9%)6AhofjjQ3?Lz(d?rTk9eN%Z`FzgGiQF7%-ekwjz_1} zs&wW_UpXFKJ_^U9$7)sDBk5hoBj=-VJbF>Y{Ul>ziaXDj#`Ao?{QjUQVwJ71=ebez zTeaOh+<9&k@*9V-M_OTLZWIG3wm`At$|&S_6h%>(hda-WVo)o@!)=v2&y8Y8E8<*u zsf&9(H;Q4l`^bXg?UD4ZlgEUQ!tt0ykvt_QHYH=i|DGk5 z-|gcG!GmN3fUSft`gr_Se-SNVkWCp{IqueHBUv5C~kNvGO^;fN<0;d5=EJ( zq9jqQ@KoHCC{}qY7AJ~oPsNf%vCdObnkec#6-yJvCQrq(MA6`>xH(ZYc`C{hMT@86 zmPFC!saT#UIy@D(CW`$i;&YXp7fo@mwYSCB+TZG?iYQ{0t+21PMse7x?Vd~AYpqcn zwLH=a`|M*BeJHj-v2(jooYacKJlt!oQJl6s+*Y~QTB8`UJkpA}^EiXT=UQt#&T7Si zd2rq}iu0C7x>d>b!%VP|d>>!`T}iXB%*QKuDg%Xq1aJI{?`6We1Cw^i;uH;M+W zD9ppXr#6Zv6h8CZC|a~)!8{mqqiC}{=FP)VbXXo~MKT_aVn2#X@E?zEABA|t^ZdYJ ztynN~=7-7rsE@+&=(Adt&fK2o#^a=q!tpq5wJPnA^sbY~kdMOgID;bYr-kPEhmv`I zRx4r^FLiO}xlx>FdtBSi!=2|waX~Ajc3NR)ZWNcOxdn-aWsf#<$jp8!f zV-L4g?mRb&D_T*Qhda-W;wlQCd2STfv|_I^KVxBC>)P)O_6mdT-G|xX6&+~7#Xhp2zr7rF~H;Oj4$FUEFzY6o=U!d$_G~=ebcF)r!JA+<9&keJFh9xlx?diUspv%#Gr-`yRD%C_ob^$NM>5aPYsG?@Ge1n`7km_s$0e&(>CEkUZagM@6pqJb zt5s=_q<5V>uJ|Y%kE7um-@HMU zxfSxa!qN(!!*!LQkRwFC3Fvyr-wHE|(BlumDM>h&P52J8KQ2u*)YVv*RuEQ+loLE=_vudUXfqV;I zT6NT{pFf(B{pxR$cl8nbcm#>Z$@%wew%`#Y9;ZD$GKt5K+0*v{Wu6{O6OR@1@7Zj@V`-en zw^n(2EK5A9&7S6u@K~03tn>7^Iq|5Qf6rzM9ycc*n>;9IWV=rDVlKf+^q;<4Y;B= zmSyI?>+iTfS+Z1noTZxFmlP^KX(=i!#ps;1#m&02`+Hk)o^3_*cq4D+L0mkKDLan~ zD2nDWWw&Zfd$33qE05Q0g&dVd^Z19nmB$2%;^R?k_3mX9Mf3PO?!}W4yrMl=q>7ct z-`k3-)GM0DmAsY5H55hjn6mS@fud+0Q&y`EmS_(asbb~vx~(Xqo_G|N^=8$MZesps zf3R6)4x%nzc6^&U%&3nt2M?|wcK<(scn9LH%i=u2O;Cb@Bc^!S@g3^uS$l9*@%r4R zKNKm#R#g!f&RE%v)mKfq@c%L47ma9DjaC$@Zsv-t3-|ddh+D;Ist;=PcD=9_>@QK& zv%PTtBC=Z5oR1V?9-G)!^cyL$Le7Z?vnYys++%w*_;|#M(4*1EW2f!Wx zcUltOz}ZeLUK1k25|Vu_E*s@$vYw?Qzz}BUXeSqdp#c zY>)Fk9PeD&|qlP+L5NgvO{pzDu0ryd%cEW^3Oyu`xfEHwfAMff(aM7n zG~>~z72=UrBp!~UnVNAPuENU0QM77Bp@)@+qi9DVIf%k7&KwMqIr!~Ps!8oag);{& zMHjWjV+**&njh~fOVL9$*?*zJnjelLM{V(N`-v6&FJ>88NO{lp=w*d?6e=taN6}Ah z@ethX-8uNNWDd%eGp?Oh*z?0EhV{N<6)$yh=b%x@6-V|R6W8Z&1~_xjDDqU1{R?gn zTgNVQ&?qkH+TxK`B*(6!n53rEF7&XDT}N?6D+)cVW7kp4=>3a_JBn5w@7a0W&<>4r*P>4_LMW~B=T-_8OSKT#ik86vMDe}p7W%QE1 zGKyN(#d)|2_qZ|&`<$3o%)CT?28V{#cjani5Pb-q~a1_ndjPr06)_6Dy z`<$3o%KNxlEVr+3TDx&4o+l(cF=^jX;t#9Dv` zeQP{?Mi%w%2(`0N_`J{Y2$m)uXSJe8s{+%iQ4~_UFmvnbyj+zUg}ld+7JUZX;wYAy zR^_QC9>o;K;{vs%cm2m)u7mT9N75VLqEZRZ6Io=sC-^B_3O(%c7_$_YwIbOcucKls z@|NNXo8?F>9P_|DgDjy!GC!_rh5xa8O)CmVaK2+#uC?-hurTvan)z`L72-3)L()W1 z6t*g*i1T=;Oe+fe%K9AV9{MF7kB4N|NIwE}^m6kRBa zUTg1}O}CZ#0XW zxlh!^QS`F14GKLf=ke&*ib9Xdc{~PC_~fxD$zxC}3O(FBjAB@~s#qRIF`^ZP9&R2+ zF^b|NP*~QQRXei8@jTC)_47wN4n+!is`k(rana+dIXbS&gH0&L=ijs0(i|OEkz&%v zLm#{49~F-&v#0qZee6bxX&;ZBb{;eH@7ZkGY3G5ucwgOXc}PbWFZWs=hf1kmbUa#Y zkMiOU{HagdqvCygRK0JH8Xu4Q>^y3HJnpmesDIxc+4t?y=;N`=&ZF7KW0##rtB=PQ zY>##yk1yCBojx9|wnvwbN2~48`1*vF&I_89T;XtO;=eLTKwd*ppQzHEDp`FQNHJ;r@J_ShbiJ|6em9#cLZ_uC%R zD5~aES$D|SrGkFvb!djT_&qh1Lm?irANk76JRa7&i5;!f(svo(DJ9+w#qNDp$M;v?k#|L+D0c5-6jjug zr)h;A8RtIHDC9kkC<;9?&V8a$)KhzFF%O=R8AXFuEa>4Vno-F0+&_;tABA|tzwPv$ zPOX@$RrY-zGRR21QR5Jxd+DWtaRAPxZIvLkV+bjcqR?ZU zZH3Q7MPZ$N{s%8PmxS*izca~;yQM-wu@!l>NdA7iyyyJRR6)%-R{Z8Gtc=e-({ogq zbJgz#?@`#4`Oa09>8Vxk1@C3vTl8MZdpEte_`M}+Nw6fdWYLn6B{wZuT>9QpsTr1V zxOi4H=aMs7xW24#Nk2v<&Xr|W*2r@wDJ-+HTqHjzEOWAqpK$R#M|mmx2_-B;FFDqw zgfCcDhp(c25oYyxuncR+GNXbZt{yJqeX-!(Xv#Qx9T1W zcp2#Z-1?7Ey(M~?(bugdSEBVnywuy{>ss&+QInVG zCG9B@MIhH#%95+mGVZ5Lb@X}(4(?6H-4s z1*xSa(E-1-gvloBOIC%;#U-nHRnXeGxTO5|qveW6qh(pNei8c*TCOb?KUvCtWGU)k zSEpW{*UKBx@(Y{vvTt#gb_e%OEY6XSEVKBAuVp{HmO~);!sTe$T2)$F8aA|4=Ucj{ zBc`SWQGb;# ziY}|AOQL=&y(L~>k`48l=;B|RiTbaU$HCG1<YOGHI5|i>NSx8}5b+`%4--@Jvd=SNsB#jYC8lq}_&hO(R2W|%j?RLa4VQ@HI+ND= zE74gzFZ;P_#n+VP5=~!ys zqGK7H0P?`FwV2;&}>aypRphgnLI_$bSGKYhgFCF@VJ6fcQSvnf1X&1XfLpg_kW2v-v0z~y#LF@@&2z6$NRrZ9Pj@calHQ<#8T*! zI?+jySdJO(RaZ_dUZt#G!BV^=mg9t@BjC3p>Q)gkU&6SGnEA4r`{Ft|HmEOmKXtWX z9L}k_I^q(>i1}5wiCEreO58v!_q!4|5iikki&ekPs^4MN-*46L4(mt0hr{|&d^D^d z#eHG@C_YInIalF(I*P+K4-xBmR5whl=TY4mVm*)QMu_!1syj=p=TY5gxXW_+gsJX4 zG5zyV>8m`k^k*6I7_s!{D&kATB|07_ma!{m{UmYRCzpxiKA9qxxi4+LLagV0-86CB z<{9F+&9lUDn{N>7Hs6I!sc!RK_?POre;55x#y07PyUMMYaWCW82-jB;qY2|0E3PG` z{o(q0Vs;e9Sz<1nVcbN_$vKP}-!eW=3*$Drll}?g4q|=$+_j%L_F{Z*iT8h)m}5Jv zf0USGJB<5?m+6@Cy@hx9;ri3WaeIb{MHdF@m>0m31i(Ji9fB^OZ`vl!=zeb-G1qZPg`D}w!ETl zR$+VMLr?Y-A9`VIwP(YI$e@Ed8#Y9Z2xEQBNc|0WMs=b%YD5%A^`kgyP!vZE3gf%1 z`gd7%?y~DdogUSX1~rPK&I)6la1=)e!H_zndxVpiy6evP*r0#z++dEAcq&Mr+_^#b ze;Av7xHIlsS^sH07GZ4Fsl6lVhdXQUNb(|1`hhsfkvPebILVPXZa;0lBQhWt?HZ0< zU7Sm&I;2NhsZMoQojx{}3`-m}CyJxyL~*pID2~)o95pA3Bik_6$4nGk`_#uwwBFih zy|vGJYoGPWJ`dGJGggJ#y68Z^X@oY{Mdv*ohmF>8XrSZJK*!-ui7CGgTmz!F-TJMs ztWOFTuJFbtSusZ-b)=;0#;=PlBX!}=c)#|Ry}bAiaB)-Lh7OQ?y5Ro%Ki}N)Sy_Iz z`M&V=Z~kVq+@@duTG&1J-{15bY^E$a&$FNU=n3VbQQ}Q{{RnXbF4!<;alQT|@uZHYh^KTsOME4~GgON% z5p!=PWzit-aqJx+p%{MJ$Itb$*XNIV{z#9-G11mXb&mBAXLT&=8+AND z+)PY+jtvvH>h+_=c9Y@chl*6T6)KF7m3Jx1TJAnu9k{6!0KE{eauiMUtCjl}&{ zos)WfGwWrH=qou6&kaX$f0lSe$8E%;QT@Nj5$B`0U*a(xbIhC@*YPazBr$vKmw1YZ z-2eDI@wASoiD#ntL^<)Sj_XzC$AnVO21Nvy}^#8KiEQi=7$#1%RoC$1t! z`zPe`V;Lif2Z+~2@yQC}S{>IA*Aug!lTt^L>v8$BE7TcaJvk1P5D!Lm{=AQPm>5ME zk3{if99N@Z2XUV7BF;+%I4?uYC2Ov`u}b zF!e6-xAmrcLE<8$}lFY73@PY#Ks$m`PNRkU5kC@!+S zB7U(x4l>WK`rXepZBv>5+O+=L-CvRWLzQ_gs+W1AUuFJrKrJf2%Gwf;XL{nnvkE2q z{y_B1SZ-Z;gc4Q>?>YmuXw^xzs7A&=E{k~GN!PNkoBy+3xr(J67q#4!bU`=JC&6LJ z!7z-#DCA)b#$ghsU>as%HuBGuvMh%RsDc`(g?h+BBQ!%Rv_mI!K@a4h7y4lU24NUR zU=;E&2IDXZQ!ouPFe`@)ltMXFKo!(LE!0C68lf3lp&dG*3wj_2z0eN>FbKmi0;7< z!5P521n&~OOYkniy9DnNyi4#dnT;O%-c-u694ep+YM>VCAq$Pr46V=(ozMk6kb_?6 zhXELbVHkl?$ioG|a$kbXYDfWmygtPz5zm3-yqNMrejsXopVdf*#00FZ9Cz z48kysz$jdROE3YK;R;-ZYjA_d#wAb&D_|8=Lj&NsqzUj{(gJudX#@P1bO3EwvL9&2 zl5U_aOAZ6=S#lJHfOaf71GHtyS)e^j&O;t9z!+SDahQNfxC~Qp1*YLD%)m96g&Rth zDkuR0p40M48mxc{SOry34K=V1YM~D5VH0Gb0UDtRnxO?+p$*!h1NOsZJ}Tl_=TbCF z55f?rIE-^{$N)Y!?}Gt&0dDZTmQz+4`z$*F7vMV2OljLKeBa`h zK6nmhcpQE^(2nJg!YI7S>1q}1fE+vnSClGW3ADZZVK@V?aXKr9th7P;UzwPDuIpA36H@gc$bf&YGE&&go`lCM^bB{4UR(|-sYpJYS;z6@GM;ABdXQV z3`gKByrEP@1#E}I@H9;Ek=1R`0Eb{0Uge{!GT01V@B~co5!Pa;hX>&_yeNrG8-rY=a(n z3N9;k`*O&_K^THpl={U|xEuDv<1o$_FfvdF`(OZGfE#>SW<9jS3Ag~)m0D8+yP*%B zgBhhhemk_lqc93@Dpf<`H9H^&&%hO>KCu!S;bAxfuPL>*9JWF?JPDIZeR3IWf&(xJ zFLB8#fsN1!kHIB)SE*0c!d^HD7h#q!C9Z`wI1YJuTd7~FhF#DL&%#xuYF9%u9D%d& z2EV{l0o&m)JPlJyZMY2@;1CSMtGwkegU!$dPr!syb&H`M9)#2IB2T)NJne=KI0a+y zj#3-f!5-*`=i!=CpI!s4a174FTT0be!A>{|=U|%u0#3fKlc@DyBD z>Q|OS77oG?yu!y3rEoXwhsR-@FIZ-v4)(zSyZ|?p+Pogx;RIZO>wG1#26jUqJO?vM zWp9TTcoatAO@6I#73_c5@{SEGJKz+I!8=NQ zejV(Aes~_PDb>6NTHzR+hqsivrwVq$Q8)+FO6{zKCU^u!;B}?$T>;ym2cCk<{FcOW z$ihJwf>)HfuN3Zv{qQ)9E43>Fb+8Wx;03s$)ECx6JDh+Ea9yd^8rThe@Epu2^~Kwv z1s;V_c$2T>t%4npgJ<9hU(Z|#jqos>f!FxusdCr~-S8w#D)r@Mun7*pAiSj1o)Xvy zo$wf3f_J%NuZ6vE5-!55QtfM@4UR(|-sVof8g@Z1JPTKq+PfN>;Ru|CHo$nQ*c?S-&zh?I0!@V zic$wk;cnOukHff9-^@TA?1KS#0d6SOwI15x1YCgYN`0#ac0(UL2Qx|?yd7HLQ5c0c zdD6WKc0dlEfh$UNuY^W;7|y_JNTm^Yhr{qROeytG zZi5Cm1jF#EQje6uX6S+^U_z6kIOO4NrT(NEc0n&Z3s;poxf+_`2%LpCl={;O*bax`X_!*#)NRlJ zhhP|9RqD^mU^8^V6ELCFz+$L}2jMilsMMb;*Z>`H3dZ0ar5;-cd!Qelhigjx#TsaZ zV{jhcQtEUS?1ZCm4yKj*%Svd1M_>eA=W)jh*akiD6kJy7pDu?i9E2fwMXAA3xEuDv z<1nt&UuB>U_Q3$W05_C+Vm-9O3Ag~)mHKBjup9c|Ihf(I%G;p@9)(eOQ>lNx3U)va zo`EY$J-HGZ;bAxfuPOB}%3&*X!;>(n)bKLc1P5RcUQ+4@C9n}X;W4-b?<)0FE$oGp za1mye`s=mO2FD=}Z!2}C8g@Z1JPTKq`r&G5h9htm-cai43fK;Z;c1vs>R;Xl4R8pC z;Z>zZ%3w2e!4oi{)W2E`_3$8^h8LA0b@j{!=zvo&2Ja~KH|t;z^uzOTO{ueMpcRh6 zd3Z~yA63ClI11-rTB&oD&;*ab2)wS8Jg5EfHt2z;;IdMq%OMK~VF+GP>R*?_-LM}X zhjFEz%|IROg8_H}ZYcF{)IU;%aDyBXAbpQ0k`@upJJ=(=esf*lo}NhhP|9 zRq8*K!Di@!CtyOU7ZyW3JP4=ZMWz0uf(_6Cr(g`;QR>n<*aQ9WJX}-iKdpgQI0on8 zEu~(pf}L;_&cU=&|G5&H;1L*s*OeMy0o$Mlo`TCt{V&TQ3kP8cUQz0$Qn(xT!{acn z)XN#DgMBanFTf3@Ce}kcoPY~(U8(<41G}LQo`V^sUb!7w;87TbH$_ z{N?s4*a=7B984=UT?tL_2#mn%O8uWJU>o$nQ*c?SHe4#E(;qSXIY3U|YPcpS!+ zx|)GH*arjf0^CsQ|6UL6Z~`vCb*0{_f!)vt&%umR|Ih8v0*}Hdys6a8D%b%zcm}R0 z_1{-QBRmXe;5DV*E{Cnq4Nt%^fQVMs&es~76L0~pt6)hD?1nyg4rWwPdONfLzrRpA3U8`l=_=R(Id}%H zs9@PjXoQF147{d-o6BJ<@coFJpM*&jlr4izZ~zA3B^B_!(BPJh&)otAbnCLK_^1JiM)f@@m)xz3?ntRlx^VLo*zKv+#xrZmWRpa2TG3DHVM1HfVrD zFbuD%U_}{hhAwylCRFfqi=iGKgwyb%3RWuE03C1&#^4gUnhL7RVJmdQlQ5}*k1c~uZ~zA3B^9hGfsN1!kHIB)R|Oxhg}rbR zF2bw|YSuy<9EUu-t%6Tf!!GEBXW^;})~<$TI09$k4HbN{0=C0pcp9cuuGg=26Y z-crGaD%c4};T%k>;Lb{Df=6HkUROcg3fKlc@DyBD!ClKC3kP8cUQxluQn(xT!{acn zf=_3l4)(zSyZ|>;P`@79;RIZO>nix=8rThe@Epvj;O^U@1s;V_cvA(xvI=%U4xWK4 zD%i9V8sT9$1FxyzSIc25bi&mYhv8|MQo-kLg9bPR!|UN{LCVO9mZ z*FqZ{hdjKkf-hCWF6f14;i?MSRzou!fwS<23cg$c+u<-g4O1%Ea~m|kAsB{NRd9b9 zY=$m)0wz?@z8LD^K{yRBs^BXMHb4iQf-!hU1$)=Q9_WYX;hGA*x&~U|7@UW&qbv2Vn?aQ9)-Z+ztETaTr&@0~x4; zeJ}tozzr2VxE|W!1YCgYD)>eX?1nyg4rWxa|8{7BM`0A+RKahpf*p{9XW)to4y=Sm zco@#WYby9=Ic$Y)coHU6(6tOU!2uYAmsIer64(fx@EBZzcU5q(7WTqPxCpZ<`1V?8 zgX55gw^h(x4ZENho`tI_cxW{=!x1Zo<1#E}I@H9-R;5)ZL0~~^3cvS^GWw05# z;0c&e!EY~ydUy~{!;30-SiuJ9fKxCA@2KE+*1;a=hv(s%3J$MLlzFg5WJ#-@0P;dupb_WaTOfNKppIZ z0eAs!sNj3+p&d@Z1-Pz)qcyM_`rtX3QNi!s4lVE~jKZ5Lcytx)fE+vnS5)x(E1?k{ zhBNS*3VO?7D|Ew?FsXt+SO%Nm01U!QDmYdG8=(^(gG=zP3jVMb_QFZH2(v2aTMKP) z9P;qC3jU}Xc0n&Z3s+Ted^I$~5jYEPsNnk*upJJ=(=eri{@b7d4#6R=xX zzzc9g1*g|TJDh+Ea9ss|Sp&PF51xY=6+C`Bw7{b<3U8|5pRR%(kb`I7iV6l-LL)p3 zXW%sz{8c$@g>HBfCROmnGS~zMU=UtX!9Od3jnD~?!6kTC1w*y47f!-Om{q|)Ukhz; z9P;qC3ZATnUC;~9!c`Ugi`CE!N8l{Hp@QKG*bax`X_!*M4{n17I0VD+stTSegU!$d zPr!r<{(3Rg!-H@dUR1#u1sk9PPQe(wqk&%-qpJiP{5;TW8Uw^Z;it6(P_ zg>x{if{{vSf=6HkURS}tS^?Xj2cCkkH(N(Yma_|gXQNh1n361bD zoPpO=@N7A3g>HBfCROlnmcb@C0E6(73eK0nM(Bjc;1ay6f`3~Jd*LKpgjp3lw-(yq zIOO4N75uwu*af}tEL>GVel;}15jYEPsNioapb1$26XKs#0XhE!pP$r27Rcczvb`1B zfj0f53wj_2c>JUv24GMH7xx3(E*=HeUpx)Nfak?LkjuqMppP!jzzr4rv=mlA6|94L zXno?`8a6#_whP zUdHcb{9eZIW&B>o?`8a6#_whPc+3<`;5UKa1b!3vP2e|y-voXNw@+tFsp+9QVQj;0#-p4)WABZgL=q912jQ1v_cznKqquTHynl>^gNsBfey7cHXV91C& z#!Q$pW6pvlYc@Rd!k#xiIE2V1N{j?aQlvR0OOA626uF>Gl^PA2T+-%>F4y$AVaP3a z+%w^U8ILS@V$GIkUfJ``M~M6ph!Q8k2`Mt1az>6k1xj2{p-PM974pmmB?Q)5+q5H=9DZs&M8pjf-+TVG-z^3n=86p)8~dE zx7=~hga>9kvfzm|Tb_Ak&pRI>vJFIuli-9D8BRGPN1g&DE~rqYPJ^jN9C>d-^(YQ&f+bC&46df|oj_=&nZ%-hCQs?bm=qXjtMgsta)Z{PsXRe`F31j-(Q*`{Mr-#bBsbX#5|4v n^F9ll=}RJnp9>-Uk`3Xv`j7nMNssye{ar%vm5IAcX#;Lo*}gsO3bL8KQ8RZ# ze|K+xqLaK&0l{e_XeNChzTZHPK{J>5mJt0rgv`D5B+#w^1(H01*rSsX`xBsH^xg)| zW@LZ=S1E!4&O~*|t?BMd_Utz!@}jTp(QVeaW)X6oHVrn2*P9rd{@wCn9N_3#BM!@> zQb@k8Vw=dvSMNsT+;fcEbvhD~0@roEnQbF*kNbqU8*elErVZLq6Rpn8#(hNkp0vB0 zANLV%w#cK2J7#7VV;;WL+AzBh8E!`pcB0R(+K6);4m*73a3WjL-J)HgE|wa0nB#Dw zdSV#Cz!v>|Pco?=FISMT<7)R-D^}<(cfkcw=>>q@S90qWWtFz?H^EV|a+h_x`-ll* zsMqHLLKkbg`Y^3Cw#Ogi*6rUHAWo&CXIxD=U_y5OX1V~4OPAG(@?02p%b&$!f^XE% zu&=jxT`93zZ?vT}8g4Y6^taCUv(ERoe&%QGbv{Y7U6RwQBiQo(`J_|rIY+%N|5keYsr7x@RIMK ztQO*HFoueshU-5JdF0vGFI^rZdwz)KO;ne=PY8@OQkUxt({H#bEBRiRcRr2{Ie$|Y z_@0a1E9<80>Gs!0kcQ_4x#vTIE#=>HadLEL zQ*1(PQHOH~6O=_kwav~;-8R0PXB`*$n^4lGS6CL8LO^2qjR5oZ8C!OowGZv|X5jtX zFAjzjYmD^?FgC-BQAI7!4-7nuc1>sGdUg6cIQW;I5v`=SAuwgUNAT4)wm=hdk?TqF1C>qHS6D_(f1#06) z4X5pcS2jlc_uV~U@{Ws97l(Cvmh7;&m}-nlt)|ex=7~pHxVW~~68PcAq7SEbSg6@o zhB?2t@M>7@mFi9Zz6x{RZN*-;TIm%O#8%gDH793{yfXtRYpg6wl$w1NthG^Ok?Yx% zRxc_zKsAyYVR4XR{d!|%X45J;E4;OsuZ>&diWe;MMY#&@Hl&UBfE84nL(qFxSj}hY z7hHUZp{z4rklxZ2Y@k*Ixsk>W=AdF*cW&NgSsJMc*HQ5~nB?4%mxDX`f`LT$pW2yh ztW+i97@ScN8i=x9;W5G?A*IdSx?+@kE-A+ZV8BXBS(Ft@9Mx(=TmKUrHhmMR*;zMA zp~2FJg48=$XorXPV�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 diff --git a/PCB/Gerber/Gerber_V03Front.zip b/PCB/Gerber/Gerber_V03Front.zip new file mode 100644 index 0000000000000000000000000000000000000000..5824d8953abf54fdc5599d566b4902578982592e GIT binary patch literal 59177 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 R{Qyvl<}x0w!p?w>)oMoItx literal 0 HcmV?d00001 diff --git a/PCB/Gerber/Gerber_V03LANIDECP.zip b/PCB/Gerber/Gerber_V03LANIDECP.zip new file mode 100644 index 0000000000000000000000000000000000000000..65d6be54e2276958c0db12cd1faa55a738e85b1a GIT binary patch literal 242416 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�c@hjoAP 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 QExQ)e`wXY`nF?vcuZ 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%0Dyk|s94>DSXbp#TI-d+gL+*w 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 T?#CyTb3ZKv0F$&WoJaoy^ifT0