From 430cb66f53943c3f9c5c37aafe478449e4ea0b6c Mon Sep 17 00:00:00 2001 From: Oliver Lehmann Date: Mon, 18 Jun 2012 20:04:16 +0000 Subject: [PATCH] fix errors connect MMC-/CS to '138 --- .../Hardware/P8000_WDC_Emulator.pdf | Bin 35794 -> 37224 bytes .../Hardware/P8000_WDC_Emulator.sch | 400 +++++++++++---- .../Hardware/atmega1284p.sym | 467 ++++++++++++++++++ .../P8000_WDC_Emulator/Hardware/max3232.sym | 136 +++++ .../P8000_WDC_Emulator/Hardware/osc.sym | 68 +++ .../P8000_WDC_Emulator/Hardware/rpack4-1.sym | 88 ++++ 6 files changed, 1064 insertions(+), 95 deletions(-) create mode 100755 P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/atmega1284p.sym create mode 100755 P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/max3232.sym create mode 100755 P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/osc.sym create mode 100755 P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/rpack4-1.sym diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.pdf b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.pdf index f0df6ee4ab8f1159e913e3f949d514d90e185c08..c4b1470e660ed5ea0c39c334fa07c9eaef0fefba 100644 GIT binary patch delta 33404 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

Y9rV#Wt3T_aWl%il-N&#zx1?*L zV|b5K0z{XE5<0t|3O~_!d>U^>nvG$Dt#viXWJPX?z zA6CRu-^x#>;amqN=-CQi6HH>r!@Iq*)U6R#yU8M?5_O<3nH5kOsUZUdB%qi)mE<;2 z6+I%?88EA{>mRq~WqfqRh?-)QvInYxqJmK_qY@C6D06Uu{KkB_qgG`Hih%URW2VSv ztm%6nS9WzOxQQXmaySJ&D9KFrBNzt)!(0+&{{wGi&Q54i4MIPW#@R8yK6LiRs##eo z*x8xDb#f{{7We>l_gixbw)K{gx}^=Waa@g0OIjCK3i`e1CjzDZe94y5z&Vj&ofHCG zJ|1!@+!HP#a<_&N$||^(z2n_No?;i{^}JL`^8TG9+8i{Z?{lMf-PD)H1Ra-_m=BpMZBgg!(z2Tp?*rwHXM{ zS}mZ+;gB%EXx|BCu|+=6OE{5wwDe4gsjYNYWJCV{oFk|1h2IBXg*gvFAysGZUOFA6 z@B6xumG28jxl^xMAl{ldTYF!dBmp0}4fG(-pVryy)P$?=9+!@eLKs@1$OxTBhV}Z&_ujXYU!uc20BeypI-KFC0|Rjj|Uv zO#0&JM*`)3Pf2vr=i(;%RjfL0#wC6o!T*3pFtS&>pL_1}7V8CAPWyNX&#B&2-k)zh z4{|-#9lt(Ou8qPg4^o^HzxB_-Eo7z_|V?JQ_34-01Y~}b~Mc=iq$7-$PQ34?x z3-Rz2oo6pCl5WvcReXTGp<+Af^y6+FIs7B1^c6U^C}ZZ` zRm8C>C$q<;ih{`{^ zy*4+MS@EWZ0>7YPnlCjen#J{m99|OP|C-VGg1vLlV7w+)g<3`m)H$=m%q4^IUs5wB zU$SmX1CsxN+5R_vxO4s8r~OJNiwkGs15~kmltUkR0tzN1XPgdOh>0K9tnU&wKW=tx zL{F~@UJnNVcSmCwL{8#c<)?xiMeq3)?Ys)amAc6MtCfTx+`(V6}B3cK#;ymR}-cPCqRjCuHkZ(Wd;an^*l*p@h?jrtU+lRm$8G zCxBzxvRp~6S)ee2c)cDBp+A5We?+;2hyea9dZ|H(4g~&wwOX%q=o2=s*xyv#Ohe;J zc=LC7V7z0bFo3AVi)PQxXGn|;+`>lR7AW$NTZrHd#l^!Xt^#Me^$YT{dUtja(t>@= z&{=@JQKEq<-80DBY#w)+yL*&9Kaz~jYWb9H!Ns!eNTRjJyMpKVIqLDZZ!iJ{ZgqZ{y|zpw%K zu{d?g%dyYjmo7BiOG$ajgx|h1jW=;2Aa4`G^eYfX#t|_p45zp9@CE0s3fx0WJ!?kM z@iCOU;&J|5*hZ)APJv4v>lbKsk5F8zdqj>3ODf{0I*`jaBC;HN$dXm1 zaSra{%B5eW6cpypaeo2gBPAcP68>Z71}Bc_b1&DP&@qZDhr?6>r+h6 z=GpIbMz11fO;m&maO=H?shVaj!qr)P+dX-pSK?Qa43_KCaDTjr`Eu{MSjGZ_MHi;W zbN9b;Z0=EY0_SHlK3ePRr6KK^Biju>&+&wg&?7(M3Qn`t3u72h>)AOsNsStO!mt}5 zs#c%YrKPy2?N?WlK;|{3a6a9dX26;fk(m-Qr7&5Z3A4=3x5{G0V6#j8;ieGp#1(g2 za({nQN->;QGe9p-(}4QF8hHz#xPoq76o=sM5QYSIx8MYKcZcBalEDcMfuO()E3>Yb_DyJosqcdzc*d$p`@efH_ZmcWXG7u8;ywql15Hz>8Wkknz1cLs<_FK+rLe$IUPrO-2>ON zEjhbEUoALJHx%A418J_Z5fXdUJHFD&v`-8trc77%&zyi6m+a1->${A1d`PIn2|~zu z4w3l7>uZ+t7=SUW>Z3e8%1N|?3}6ck)k!doAWgCE8f-MLxN?5>@ndtzDId5x*hl?y ztD+2{b)<%D@0bc+4B4o^29j|#CrR}a}#$7 z%9hcU=swQfL~#Eg5YcD5`L%I|RE2bG+2=f0y6BX_gdruX!qMblKvrc8PnNn@%T~(Z zR3{h>jO`0qv|T_~K)cod-;JhGvvyT5B8=LZv+QQ3q@ohqGFU{Va^l*S&wkV=&01P+ z{G=tS&c^gxU0tlIyh>IjqhMO2-&~kLk3qOkr}qcabmdm2dDUAJi*`*ghQcL($_##! zu5jPm>D8;(SS?tyrm=Fs&%W)h_KpEqP+f9FJy^v$uL)AHXS7Hv;Y^*@l%Q7nk(pAm zcXyD?Ej(vhl7IMQMIQ(4*&)NsjGw%2RVg*o)XXd{KRt%x&2m#gy2Ki_L!BUo6m#FU zsanSNp!b0?ch z*26kA;7Q@Y0@IXQBsrvQTQ2LBc=IE|M@D$jeSeSex~{c5SVX2dB28FHiwa7H)O72S zvALg)7k5&N^Q$s~(|9$@4Uu4)Z7BXU$$65Cc`aWNiIZyIZB9Zx{a`?`U@JB>ZusdN z9`CT%pR0Z{Xxs7I^GhX7WFWvq2oJd&C#HGqp<3aqhjii^9VpNgEM1y$#@F}!7 z_Fvr#LKUD+=v{q56?B~a>g9Sa)LVADQHj&GZE`@Xrl-zVo;e>jtOy>jHFGvl!{)AJP@(+S>>?bofmj=B<0Ysi14I8XS6v&6GA!ig?3lMLFY(Hecmz#Ka zZ`tK*(c|@`64i4LH#!D3SaZK0_zrqzjz|8;X3#P1^e*~8nw)2^d8wT*7C19_cYN@4 z^p}||_r`XUK2L|~o&yTyxULCI;~tUs<#4Z-A}~}A>l?eD8Y95jYR+^Y%n*!!17PBv zz&Ck!mab5{U)6Ska{$aaWD&lgUR(-_euGGw9@3|dUWq6}UKU|XmujVFQ|s8p4pD9Y zesNIZbVPx^0_)vOX%|!B)q5c}*_g{tN}Xu0*66)usSdl8N+3rI>7m`IiwrthZQHa4 zo);0hQ}5aDfw)DApr34mUyAtmzGYe@;iXV%F(C~cklS-k4wD<0d?t-tpC!LNrR-uP z(8t9LX&2Cxh&WDTaUDs+2I5G>0g!(Dt_|XFSFqPvc_eIm?@YE!Gv{D~kipr@Pg#@3 z{xMapslYJp?mIB--DII-mQo@$J!wmct!)06@&pw1B4??mHIyWz2@sD%GieM%@tkay z0V+9=RyO$=f&BG@u5;W=Zhyz`%xI5r|DpV)UeVXBQmhT&{la7}Zz{FD+J^4@Xt5Hj z=pQRRk$}JUEk=k#wD2D6g@_CoO1G# z>SpbU*aqNBhJ6J2KItw+VW?JKlio$S^yhS#fkQ}XTO+t8%lGEw!w@vos@isv(2rHk z49YUIHByKQWsX6c0njr?proRcDpKanh63oyWavjz)f@qHi{||&1rpJ1QGm$jDA~%d z-?`-FpYj&12T2MGI{oM4qCe%28FKw;_M*1x^MuBXp;~9ce7T6-k+`fnb2Ed809X?7 zY%EA;l*gnt(;=!;w7*D-gvmeK40~nNDjBgP_8KWE%J2iZcb1s02UFg;{B*Ip>1gfQL2{&TeC>B4S1ZFj{4*%)C5-=iEO95`gY8%oXXJ%;<8~I{ z%f%X{`oRMPZ+nzaGX6TQh-YIVo8M!@sGLhOMMN^bCR3TvSf(1IA9?NF^r3rwqMk%e z1)P9IMR-_X2Zxy!zU&fhH$-F12VFp9H@R01Us?@|*?cbxFz_gy#8g}_c!P4kCXoq< zl(TTrqPsed;N2Kb%t!;s=WekWSB|*`(=+ee`JspRVTXSP!F8JtT7p!D=ICsaDdef( z5R{We<%y}3sPi7610Jw*Fd0yZP3+-{>Kgo0jC@B_$Oq(sgENdIeu`? znT$FAv(3pP**|svGtwY99ph)JO|K!9U9?f!lT$*bIZ44$&$W~mkt8i%oood3j~(Da zpeb&XL*DP3q!il`2nKxd(6}b?T>C@!+n3dH(6uuOyl1c^LmW~5A1#`Gjl??(0mcKk z{_tR)%byG7G20{tSWz72{ip0K1Y$8!>rT}ZZgMXxVFLB{rU&P!p4yhx*Yul*MhGOb-LOJBCw?HD;;3e>2pQA8&SI63#$k-*SH>=nJ8Xxhm zn@bDe>Iy`69Qm`z^T9bC! zz>;t_ps@(F#p1eqIr(C0IO3OH=!Dh6YSKRe`Q&S@Vpdj+b40Q{hOfW|FBiI~^_MyV zvbz)&fFwBucAt;Ww;zgHAzf6Na2AGJ%W`QWP^DdUWevQBU07dToYMY!YPRfuowU8q zJwK)GbZQpi*WmB{rT<1;N}JYi2pZyQAH_h?q>`K z3BvI_<j-e_CWBun)ga@r|`0HxFF_jeCr10ts_b| z$*e7~)_b;hzGYt#HB=*+HZ!d>cw*ja@M?9~c-EWo2PHcFZ*KWDFiik@ir}({ndXM; zvTtDjD9rg6Fj{f&`AamuR$Iylp+GC(H9$pX2614ndq5ovRkme7Qhgbj&81@!dx@nGQuogB06^d26hC zkHeLK;hFviPm8Y%Gr1kjiqCOh*BBg+r7N#rPhOf1DS-w)T?1X}$;tO6kK}c{ZzAH! z$wOqN*%utDM>f4^uyj*|N^jQEZR$rhrM;P>U;_t{$+xf4WWBYB-{XX0&cV%J6xZE> zr)o`vuN!^#WmKqW6He{=*_)?g$y$y#fgyr@1fdG0N8Hfr-s{kn2y2x>-89e5f*hyi zf*2{>r+D*v1=X{M-fhX8BsL?Y4p}LY$%h)Luh_U9SC=E_DfynSC|`&Ao@AYk_eU@h zRTN3o8AWXSLRrL!O)yCrY?oaekMn>ZGrTx2S{E9BbgDtyIsaUO(b6;H5@YIIypaQD zW8cQquLI9lI!&s0xz1u%-VkehIP@qJ8~T4P9*L-=t*|}{$c6`;!eAFp6vavEZr15h zncKX!$F*Cd+yeN|Qv?o3JvoEIp0JTThC}?qpBBl|#(tDpIAwTA9+P@r76CPg$(?@) z9H0WUl<4c~O|5hljUpQ_>u1J<7(T=QB63P7d!P#MuPo+)=m3h?#TC9)$6bs zZEONE+f`RjS}7pU&R*SK+ymBc3|o#}vwNY9j^-OV{|4Cy%bYH!d+h6i&{V#+LeW{3 zMn>9D;58$mwCE|Hz21>R;&8_-5t&4~w8Q!pgKz}{bM^dCL6M{2B8gebgZd9RUdOX# ze~;i}!OMZ8KV0k&TOFs)fGYpTC6oB3{m4VJaqeB+<=g;E5F`Gj8PG!FJ!AT~g!-@^ zcl|qa3`f>fi-nH4g5*k>WfrSV7F)lSHhCK(TuOe(>vRBe-<59cXXY@=T=G9DN1l!i z2m2u=3G;IWT~pNE!JE0A_`2{)l3Q;cTwkIEHL<>n@fXlb=1i%YoxXJjL{>Sm-17}i zA-eiD5h_reo!XcFMgihgS{O9LF#Io$HPno7TZ5 zl%!t?v(UAP3cZd*<`wD0wg3y7RMgGa`{2Zap9#5HD7&}56hNcj@BpP2k8!noTs2lE z8K>#DIgo!j+ViYg9(VKldJ0cmFziOa{o%kyJN;FYq6Pnp2}b~@Y8Zs=g5G{Nf@;sE zgv{e9!rWt9BgHLeD*14*NBG4Z1sO}=Fd|q8`$(3k;c0V{W_qlEEWi%h)Urg+OtS30 zx;1$#e17~5@ZCDrMrbgnc$NBWXG++g}m+Voq3BLFt7!tkS z#bS6Gr4_NSMaee)_py36ow?An9Kq$w=7C%rrP>LnokS~e9OvaW!3u>qHSiYBf5g_>tAacd}FibW}b} z^~M_+%3@I0?~I5DEY9g60yp+_kxF_{I#>}X*0%4NeoHI#C381^W60G{fn+sZm9wp{ z=Wkm6Os^J9zEUl{erIW(ez9Hi^zS$HVfw+`B_@AuxMpVm)HBzgJT|G zv_FDk%RnVx>!T6066csSD0}3-doxx`XUz=MI$!DTP=*$S`@{Vc()!;*O<8*T>>CpG z{(CiR-1eh%I#@?xzHp-%&fUkYw?>Z!qt4MgeQoZ|_dNY2`)`@z79PeQwsK%J&I+p| z$^LgGJ4#{h&Cqb+*M^+uwYhkZE9yN$x?6(IC(rA)E57Dj{7Cc~Iwe1|^7FQv)$rbI)j(;|m>qRfdhM(?sobTG+ z|Im3CM5O_n_r!=4fofdxrVpd^I)Njm@mCz?x$ylyD-94PL=iElAlF$1MCGm7jR6+hk~Ik8#qh5<+FTE|tdHl$#pV z3FnisTe!Qxoa>G-$($<=!-w8w4Y7lzvSfteHf)4>LN&I2IJz3U5dI8f^MDDrcwfB@ z`i$@kn3w@$vq6m>OVIAHQ8>~RI3WOM^PB@!Z>1CRMeF5*>9B~CzSi~gHrvYe(YE7+ zKjyvTgpf<_{fnqW_n%aTuTF3s0{C>yw_Av9Vo%=*bNwS1UJp=@%rl%l_cN3<&0MW_ z)|n;(ZP3C9yD5x)(8E26AN3IglNis`q!1c_O5LcNx9Dq9ASKy2`WOY0L2g=#S3ENuqJhkc}>!3oh z6uYbYngYV+66o~AE8QLO%9EgKJGucww0~p^l?~v%)l?D`{loHO!MgFU=IT#;k+PIzs^PZh zJrER5QhFv7tBs4VMrOfDQF#RK#Yuv_W&JX#JmbsmO)DBWsGAdk zHEujk=;TW}E0HH>Y;5XPb6$85FiE{#cOV}iNL@1P^ATSMgNQ}OXYB6&nc}n*q>_qaNZWW#T z9nXa}`YzHWZoUHsS<$#{ly_NE$1Kw@h=WiMMf96Y z(9-bhI^-=xjt&g9`Jcq4Y|cah)yda=?)AbGFbP&$l{y#_hRM@yF2+Pqu-h{QCF*wgk5;BWUC#W27x3hL_Xq{C=5vcksa&`X zzG?O=)nkAqsRw{h{F+!5mVRo_F1KWJc|>QbYR*ytq{yy77XNU=8O&-?9xX{F?x&@M zD(4*(je=89XNQi@TF(^>m`YvN$bga5yC_uK=(M|lQdhb<>bhh6ND5~A#Wu$1^YW~J zo-612LKZ(|9h z#=ok}N9X(~8dZsFE&9k^n0K3CF71)NoM3L{=qQl@$kSTi?xUv`(`^3-rn)S=1yQ|O zSx57y*=)h*Ampl25%9-UJ0%V8rVFPqJ5otyU6nu()`0Eu(K!A)y?Kq0pLIDsy@FZ{ zmckvlV)d2d;G7BvFNvUr#ZHH>&k`*OCnX~sWG`i#Bg zR$0H;f#3F`!M+F1P%he<$}Apni~R3GD3XSa^L$2?{FWV#iP)0>$JkC)6S1WIZxmwB zC|GX}Y^qTHHtu#cquwtAYc;rfiZjtlq2RYH^hkKo!64Pp9N^K64gTa%Fx zpgMx0v}~>>99QNLI$a`iI!axY?1g!@3B2JJSx6;)+t19eByJ&bswFE=+hMdI*2Uz! zK3S?k5@|TyW-X52vdx6Wv$(G`KAJk!7nKQ~XmMztYz34uRe>Sqqg%W2tG< zjd6f4=qsG4TfT5XRpv#PL_=I+so(^eQq)@JPbdi}Xv=O5Hup@9M8W{2T1-scpz?-XueL0ckKwSK$P zsP~Ta+DRxMWos&rAPUN5-)G9i2-%W z)W20|Rg9CohxVY)!daKHg=6aWj&?z%(qa%+|k0|@guQYh(^e4z}XLCD1FG62b%P|Sq=`> zX|Rfm68mYnb3q|=>D?{V4K6*43jSWuk?MB0d7UPaC5$iXWD9ki3TfV72!JJ##*b23 zi4-|S1VMZ3x9E=#pW1-(*JYFr8$+xXgvc4TDc7z!MkR_wr=PF-$O1%uN07ScP`#+% z#5cGZP$uw~BSsb-$E?ANw{)JcUxZI&9~1j5s#%lG{oI=f1n@ymXemR5!hcLUrQTGX zbj}h5+OVC<#kiyb0Yb@FV_9D@WzwI^_7C(CjM6HM8c}kwd;vh26X<(xJL-)P7 zUj!(e$@|T8jtbmnJU9vYBm(OOZD_F$+R&!&mw36D!JqylGAmb>lVW?z~Dzk0Wy?=o!i*P5l?2PxO)&~3t@h~bI)_}IK--e$^E|in55yVj&k@} zb3V`K;&Q^O{LvcYgh1Wj=6UAFP9kkl-EB|8`WE~1IEc{jhX{dCchJz5LlwoLh91%m zOL1n3H$<>}+*CApr+JxVYQ}6*pUSX?3Cu=K&b{ z!o~Ne>KdD!KVSdVtWY9&<9rdC^sE2LGyMa$`aL+yXRD6fl!TD;0ejc;94&dmLIh|O zp-zAdK;7jbU?^f@mG22lQDV8kJtM{c5KFb&ChhLm>`+g7>v#m%`NyQ3ZE=OSFu8b; z0q5a!BLeLbTtqf$+MY8g7cdJ~6=bkjH;Ihhw6U6rUbUhz)V}2X#ayArF=&lLYg4Kg zC5U2QeB+}UtD!&}nX1QcK3k$0Aa3-^G|pLYr`(RcAeEBtBW)-{vi5ufll+}k@^uOL zat_vgc-29lJ|{SIrm=eT9Qbq-v$oXY{Hm!Y8&~*wVJC0FQ?PfRxJed;IQ0Q>0l~OH zDTCC}?-I9*!I=W&N5_1bC@!?8GsHn^Qu@w9+vK783_0ZY!;@?|XL+|gP-6sopct}y zzv<*_>%0A7bx%)*ZcePc5M%r%*+z2FR%rggPr6N&^kKY4maSc(W$|}i+)=J|iu=)l zcJeLxFxBKA(A6rvCwNQj?c*|SPwSdcFrA&@4a)+NsYD$gE_Wo=kpEqzbDhNasX4jC z5jdFLLTAJHTZWk}2P!<>zl<_tCU5i*i=%2T`%B|$IF%hm_tt-%^e#a_;06=?Z z#M&_RuOcr`k}kquFFWl~Ic?WN%OG*vQDo8A9o-F3*Kh zyKt9ZtV$12#M%c7gIx-<90$;9D<}|_Y+o0(=?Uzpi<0$omv14!?0LQ#_-5p47BqGm zOY?6N0h5Fhucj0@5m{`49ei(Zyndy|uh9@Y3|h8Hz#80NA|Kdcm_C7BzO)`3L{( z{tNkJoGcm+Y^UA0?#d-Bs_y9#f!$kOKu4Z_$iHD(j|5Jqyx$_9H~1QsbNd>=-W54gBz;Ol6f`ok$&R zhr-kz!oa=EmqJhG=uFU$`bPJEz-KR+L9;I3-xHx_J&&~23E#)U-djyo`0YA!boM0j z{$d67hcqX$TaZYm^t5Mqh2hoJ%l}yV0Nmp+3ef{Z@G>l;3xq-{ar`rHZvDx;f}5xn z{n7gZ{>8n{R#rBhDzfMuf;hNtn}PL_ODkG54OX54aUi z0`qCWwPSVZ%P&O3w~yOIhz!)m2`nFY8(m>3n+&~ZI@2!>2J>iayZOwVw08NZS%EM#1ZLe-KZD29RdyKQ@7ZQ(pTkH_yd9|K1 z+0&V|C;2SCAW|N8!u+0}%PQX)$4V1@EV)&qa)kXsx{ON4ZG#BG)`rJpwD@%QYOQhDk3P&a(qYnKLbH&cwb=bVQ0Gxert!Nu zX@*78wGtb=KM2eDCA^0^TTBUDV(+_mCC_gd(dC`8t9o27H%&`|6FQ$QvfeTQ=-a2{Q4zdoV@rVH{9hD|Jy+#9fa#&}zfs-KKa8`WdQi{w#y(&cyvKihzv`_fHk zBNPx%HPpmlcwl4P@q}m@EqGV_0_VZ_PSD5o?s9ssnRB$Fx~dMPp!Nt6h^6CXgjV6p zqFwo_0yJua=wkHf+wx4SKIXHSIw_ODuTZpGJk6Ysdf|?^)R1#Z^^0K%0)Dssc12|> zk_;NPSu!8Q5%;TF1&#jO-Y9wEd7N9sQ5;OQMTxrv#CfV0PY+LNR7RplwxHCnEB8;( zB%8F3wnK8RB{$`q!0+H(TM8SfgsO`W3u8+ZG9xfVtv$RV1D)ta!8_Y;rMWx-#Gh7QAK zVhkU{MiaxnZWMry5n>FebR*j^Pb?HAz@3m|so_~qedyIxwCZhS=q4NnOap!Rb|&~= z-2uhK^r65<5bGrLc{JHDhbh(-AqHl7>@zSsNs5qL{>t80Dmpf__O&`^5Km^PMpQz& zU=hda*f;M8%Jahl7@czv>QvN%?s5z+^wA~TtIwd(Nl>6_iS9IXOpMOo5jFuj&uGV; z&c*u$0?_B%A@@?i$ytAW=+%TEe3Nrh{0-Wn_5Y_s!lTP2mhbX!A?JkQVTtd)7i=_@ z9Se0+`=K7YY=|>5`w`7|Le6;&=9Nchy=!o}L_o)Dtq^7!=(4w$4$Fx^NqLTl&3G+e zGx_~;Z$(L`Zm%0prjZs;N~P{Y!SL5gD&1+Rbzq_iZ=au0cAoS7E6Jx6m%l2t^Nq&6 z3%XM#ji1a2Rb$lV5-s-0pV=GHUYjUwb-uWccU6(W>0>W`qa{_A zI`Ghc(8)BQcUX%oppN=O)5sjV>>#N|ZY$-8XZ8KOsEN$gtzgdNj(TQJrQ8j72Z)$@ z*AK&J5K28*mB=0_K`l_7w4of}SO_tqQ2MLlzYzaX!3q9V;B&5N!CRGJ#5g-(Xycj8 z9BvSSKi?-6ou?@~FpC&>@Wj0C>qqQTHQ;Oj<5;2U&U+P+J3(#WksM#v9s6sI$W&E= z^Cmdl9k>j>%z6aoI$a=bUa<+kDu=G7-!^l zjqHWiGwO)H{-@3-h(ix^VvR&p(Ak81-GdG`T%TrhHT00-c;|aJyZm ziV3?7C~>(WnESJ`!*AZ0nuSi7%)MXU!VE; z{!Jb^dvwZ}q=#dApE)fsPX~=z)ZRnYR7y6+T^4!#vMD;D-doFh$yj|cN}cmnk6Vam zMec`k6jv4Vcnqej5Oopg%k_77haj0+u4gnx7?vV2-4G-|1lE z>eY>eT+GhkjDl{dj{eEbcOZOeHh}(Qkm8pdFRTN#AP%gAg;MNkUeyOVCWq55lj_9GwC${y8t4{2+*2h9LQUgYSZ`sCA_!2(*d2cCre--Vep&R7`Q zTGKulR1@)f?w*>P_bJ8TB!_NRW2;9LuzRgp#q1II9*C*p*Z`0PsRq>gRtKtb{Zf}7 ze4muAEer(IUJJA9JpwjIoCn%ySU+^WH#oe$)?!|Cz5O2f4B?cI#vvAlkO_F#_c`$? z9E$4#IeMrGx5SxcC}!;2K2n@5SXKMec{xnToG7)0ei5 zl7j0@M|7-TC+zCN*p|BfVnJM(Ldx;hc+!(^juXK( ze#g@nhlDZ?{)GM{_^B9CC8q;+E1@qy#P|IT`l&jHUB+eFi8$zm!guvwLOZZ(HP+Bj z@B6k97KI<;Py@(WjSIyJKxaF{(koG;eL7Ff`~`#~SB$UO4RES>(|>9VY$yNLO%tvQ z1J#<@2tOpgW^b06ZcFl%SM(jv=0P&XLdoj0H|jmwA1*hDM(*j`h2J?0F@WZN(#jtMQG?Al7LI}U-AtzNaBAJyb`C#>|eg{tkmZLo4BI)fz(Cd{~JhEWX zwe=jtraclLUT8)b%0%C3Bjy&~LS*dafod}t-3)Af8ZpzpH0m4t?8* zpKS|aKGjG?W5{M=;>vsjpD5rEAjlxTS97L0x;A`?nCQD^%({&N>Kol#97Ehcp2;Sv z#~*$57eT}fi4IK1kHIL~?ncs&!ue2Vpj_q5#^M0*@x#`R1@oi%qNEnaFE#cR1M{}N zgJ=C2^nL1%7As6>!4##wJoaC7W|x^LRv|*NIOKbC%w!LZj1<^RQu@kW`auCo_O zw@&qU@FW}2RTO#}xhai>vuBKYh|;5A{z{L{DuUp8ujiopA4rivx+M5*bU=)I9=tj^ zcYtL_c9m6KAOFOy&-SI$#jThba4BaX4Gkdq(x}~Ts$ly5vHquaG@I~GGN(HH9ssDJ zk_|;2epb5@^BYNlZmg7_%l9tLfUu6jS^=GB$sb_ z`=c97;i74GjFtM!BV#Ij6U?Dm9k)G6FNYs@n-vSoNh+@}3KJ5Gr8t%)P~eE&QBCLm zQ*A!U3X{qo?-L?IedQB-L!lF*5(t6Kt!DVo!Y682M9%M%Z5AH#|ldzEWLhZ9+A`&Q1|H*5;*d7)IgkCHe{y+&jeD1O!a zA5|AE>*lm|-q+|7`JNFtFD|}a{~!#g?~Z2m`$d{9qmme6NdW&>ELp1E!joQ+Q1}Tzis%8L-)) z+xzU1qYkq;N@4@h7@L#;Bb@d&D%cpC;{$4?b*ygTu>ox+T5z7hM$ zVd;wd&-zEVsMP9tjtROdGC7QsxGHO1k6&LiUTZk@4gH;s3MEuVqd0%ybB#&3=`+v0 zoaw#YEKZl;AB~d4FxO9n+C%`F+$6jlCgTxBtGn7}XssQExa{=;8U7FtIiQ&(inG5<$X*KB6{_aDGFrihe2(_uo9`RUMF^GON9 z8!_m6+Y-40?%5Nb*wf;@M(3=9WTce@fCIs=UAAp%f9<;E`}g&$F&E<+ALd6`?jwpT zOrxoL2ZH#X{dAaLyNX5S2Rh{udOKb_L7kfkK$iI#q8DEv;E9dU0%``g*f6+`)z^3r zk5Vz5No{N$+tljAjG6A5``k>Z5{Ji?1=ck1>jOo7A5=%5vMl&vvrD@} zE8ShlmKKN}J|}er>6H2ivy~#s%z}ebT7|Z5ROBw7gbf~!eZ7djKZE&UZ|SpQ-AmHd=j;w&|32O8v;pVg72M}<*C&1Z+(h|ffPbIpzJ@;6&Q(i(Xg4D! zHKRF>;+`)v_K%Bu>gxLRTAsxJL;BBeX z>La;sN3u&(>#C?pUwuBlkKn<*de)Ef=zmYzgx!jf{wHme5C1Vh;vty8L03&Pv^$aE zb!9yR?@ImY+9_aoy_0~0t+uWpWR}h`5OfZ!-+csq?{2PP6?zU~YCaMkZvo&62h4_4 z>ceXW6|jCo7in}jnBRBudQwoMQOl){TrlY|UZ z88ByvLz+))|4RiRR0pUEmuh!8!zIQ(B6X1Rw6XCj$Mxgo_Tf9HWANF|-ccci!WEX@ zay-q8{lFMR9lw1C06&ogHuVPPX6ZVSXrt5cuKkHLx|8sF@q*S1 zyc^b0kN9Js-mKT@c^e>64K^y3C%?ZVGLz`%Uf;C^vkylo`Av`sGd3ZZlr+EkRxePS4ZDDOElfznwIQH&$iKR5=6g1d8 zD<}9j>ZzvC8ARZS7;H3{?xpEyhI3sh+VcMMv1g8tfhstEGcX~S5|c?Yn}eLl(GF*H zS6r9F27u;AHKI0kyk}*WA?Gqdiz7X`NpnkNrSF)oe1{yo*VDd?6oMaAZGDkOj%ca4wRK=_Y))J z4=e?1U)JF+bPXec=1t7aeZyz3^KHBQ0M^!7YMYUNrp_FHG5bXtQT28cUbb!I)89?J zA-AFF%U~k>pJsUOn5=|Z#WSH3+a#ga0ZrVN&uXDx>((ma&BF7-KlZ>1#4{pUW$yMd zF>h0FIdpR%m-f*fdThG;L~Jsv7~5fkm;P(6Di9?B#*vXQku0)-7sg zW6BSv?}Vzp3=LU}n)#N5*A;rRlci&sbN9w5>PpSiEx=jaDaA}o9RAurNAD)dshXvd z9f5U)?so*FfSlw!=&jscG1|IPLVMa~W1W2=hkBUiciJdpP+~)*?#x$20xIT$&DTDc zSyfNq?uoKKIFYAxKE&cmDMn@Du-p0^9jC#6aymEL7*g8HTLCdcGo74I7W+ zCHC`8yzYY;*S_{h9Kg_pP-x~`Fp$&ex~nWlW$A=1*LsHMFJ1Cd*w`DX2dkd@*On}e zxmoA!FSFch3*pdBP`mNzdy~JgEC_Z^$+Z!r@SFnt4Py}r@YDi)mYn7S{47@1);ug6 z999-A?9dO3r8y^uB`>G7rI~f|*JzLbi5Py&=XboC90Gz|T!P%m<}sZA*RSlD@c&5_ zQn7OX6S10Dy8nS#!$T|~96c|G02dcGFB3Z_9XmT611g)6v!#@ohZVh)ASXKqCp$04 ze@P_sCNzt3ad8Mx{p&wFl@k@}f4*?>aB%YdztgxldD#D38asb7OCk-Bi=Fqs%X9H_ z|2KK=|F1Mop8qb#^WV$z@c#ESUQSME+2pB20b>pUNl9@|iO-yp64C+^QUZJuTzs7T vlAK)JlI$GP9GoJb{(mKmP(?&g-960QJbc`&tWmjmxcJ#oX=pyHNTdEQ2(0uF diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.sch b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.sch index ee95129..04a9aeb 100755 --- a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.sch +++ b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/P8000_WDC_Emulator.sch @@ -36,34 +36,34 @@ N 36400 54100 36000 54100 4 N 35100 54100 34700 54100 4 N 34700 54100 34700 53300 4 N 34700 53300 36400 53300 4 -C 36100 51300 1 0 1 capacitor-2.sym +C 35800 51300 1 0 1 capacitor-2.sym { -T 35900 52000 5 10 0 0 0 6 1 +T 35600 52000 5 10 0 0 0 6 1 device=POLARIZED_CAPACITOR -T 35900 51800 5 10 1 1 0 6 1 +T 35600 51800 5 10 1 1 0 6 1 refdes=2C2 -T 35900 52200 5 10 0 0 0 6 1 +T 35600 52200 5 10 0 0 0 6 1 symversion=0.1 -T 36000 51100 5 10 1 1 0 6 1 +T 35700 51100 5 10 1 1 0 6 1 value=330n } -N 36400 51500 36100 51500 4 -N 35200 51500 34800 51500 4 -C 40100 51300 1 0 1 capacitor-2.sym +N 36400 51500 35800 51500 4 +N 34900 51500 34700 51500 4 +C 40300 51300 1 0 1 capacitor-2.sym { -T 39900 52000 5 10 0 0 0 6 1 +T 40100 52000 5 10 0 0 0 6 1 device=POLARIZED_CAPACITOR -T 39900 51800 5 10 1 1 0 6 1 +T 40100 51800 5 10 1 1 0 6 1 refdes=3C2 -T 39900 52200 5 10 0 0 0 6 1 +T 40100 52200 5 10 0 0 0 6 1 symversion=0.1 -T 40000 51100 5 10 1 1 0 6 1 +T 40200 51100 5 10 1 1 0 6 1 value=330n } -N 38800 51500 39200 51500 4 -N 40100 51500 40500 51500 4 -C 34700 50400 1 0 0 gnd-1.sym -N 34800 51500 34800 50700 4 +N 38800 51500 39400 51500 4 +N 40300 51500 40500 51500 4 +C 34600 50400 1 0 0 gnd-1.sym +N 34700 51500 34700 50700 4 C 40400 50400 1 0 0 gnd-1.sym N 40500 51500 40500 50700 4 N 36400 54300 36200 54300 4 @@ -100,9 +100,6 @@ N 41100 51200 41100 52100 4 N 47300 54800 43100 54800 4 N 43100 54800 43100 60700 4 N 43100 60700 64300 60700 4 -N 47300 55400 43700 55400 4 -N 43700 55400 43700 60100 4 -N 43700 60100 54100 60100 4 N 47300 55100 43400 55100 4 N 43400 55100 43400 60400 4 N 43400 60400 54400 60400 4 @@ -174,7 +171,7 @@ T 67100 33100 9 8 1 0 0 0 1 T 68500 33100 9 8 1 0 0 0 1 1 T 71000 33400 9 7 1 0 0 0 1 -$Revision: 1.17 $ / $Date: 2012/06/16 19:34:40 $ +$Revision: 1.18 $ / $Date: 2012/06/18 20:04:16 $ T 71000 33100 9 8 1 0 0 0 1 Oliver Lehmann N 50600 59400 51200 59400 4 @@ -183,9 +180,9 @@ N 50600 62800 51800 62800 4 N 49100 62800 49600 62800 4 N 49100 62800 49100 62500 4 C 49000 62200 1 0 0 gnd-1.sym -N 57400 59400 59800 59400 4 -N 57400 58100 63000 58100 4 -N 57400 56800 63300 56800 4 +N 58600 58600 59800 58600 4 +N 58600 58100 63000 58100 4 +N 58600 57600 63300 57600 4 C 64300 60600 1 0 0 io-1.sym { T 64500 61200 5 10 0 0 0 0 1 @@ -240,14 +237,12 @@ X3 N 64300 60100 59800 60100 4 N 64300 59200 63000 59200 4 N 64300 58900 63300 58900 4 -N 54700 59400 54700 61000 4 -N 56500 59400 54700 59400 4 -N 56500 58100 54400 58100 4 +N 54700 58600 54700 61000 4 +N 56200 58600 54700 58600 4 +N 56200 58100 54400 58100 4 N 54400 58100 54400 60400 4 -N 56500 56800 54100 56800 4 -N 54100 56800 54100 60100 4 N 64300 60400 62700 60400 4 -N 62700 60400 62700 57600 4 +N 62700 60400 62700 57000 4 N 64300 59500 62700 59500 4 C 61400 59600 1 90 1 capacitor-2.sym { @@ -277,9 +272,9 @@ N 61200 59600 61200 61500 4 N 61200 58700 61200 58400 4 N 61200 58400 62700 58400 4 N 62000 58700 62000 58400 4 -C 62800 57300 1 0 1 gnd-1.sym +C 62800 56700 1 0 1 gnd-1.sym N 63000 58100 63000 59200 4 -N 63300 56800 63300 58900 4 +N 63300 57600 63300 58900 4 C 47200 48800 1 0 0 atmega1284p.sym { T 50300 59700 5 10 1 1 0 6 1 @@ -289,67 +284,17 @@ device=Atmega1284P T 47600 55700 5 10 0 0 0 0 1 footprint=DIP_40 } -C 57400 59500 1 180 0 resistor-1.sym -{ -T 57100 59100 5 10 0 0 180 0 1 -device=RESISTOR -T 56800 59600 5 10 1 1 0 0 1 -refdes=1R1 -T 56800 59100 5 10 1 1 0 0 1 -value=1k8 -} -C 57400 58200 1 180 0 resistor-1.sym -{ -T 57100 57800 5 10 0 0 180 0 1 -device=RESISTOR -T 56800 58300 5 10 1 1 0 0 1 -refdes=2R1 -T 56800 57800 5 10 1 1 0 0 1 -value=1k8 -} C 57400 56900 1 180 0 resistor-1.sym { T 57100 56500 5 10 0 0 180 0 1 device=RESISTOR -T 56800 57000 5 10 1 1 0 0 1 -refdes=3R1 T 56800 56500 5 10 1 1 0 0 1 value=1k8 } N 59800 55400 59800 60100 4 C 61000 61500 1 0 0 3.3V-plus-1.sym -N 60800 58100 60800 55400 4 -N 61800 56800 61800 55400 4 -C 59900 54500 1 90 0 resistor-1.sym -{ -T 59500 54800 5 10 0 0 90 0 1 -device=RESISTOR -T 60000 55000 5 10 1 1 0 0 1 -refdes=1R2 -T 60000 54800 5 10 1 1 0 0 1 -value=3k3 -} -C 60900 54500 1 90 0 resistor-1.sym -{ -T 60500 54800 5 10 0 0 90 0 1 -device=RESISTOR -T 61000 55000 5 10 1 1 0 0 1 -refdes=2R2 -T 61000 54800 5 10 1 1 0 0 1 -value=3k3 -} -C 61900 54500 1 90 0 resistor-1.sym -{ -T 61500 54800 5 10 0 0 90 0 1 -device=RESISTOR -T 62000 55000 5 10 1 1 0 0 1 -refdes=3R2 -T 62000 54800 5 10 1 1 0 0 1 -value=3k3 -} -N 59800 54500 59800 53900 4 -N 61800 53900 61800 54500 4 -N 60800 54500 60800 53900 4 +N 60100 58100 60100 55400 4 +N 60400 57600 60400 55400 4 C 51800 56600 1 90 0 crystal-1.sym { T 51300 56800 5 10 0 0 90 0 1 @@ -699,9 +644,9 @@ pinlabel=\_RST\_ N 47300 51800 42000 51800 4 N 41100 46600 47900 46600 4 T 41200 46800 9 10 1 0 0 0 1 -/RDWR TO ATA +/RDWRTOATA T 41200 41100 9 10 1 0 0 0 1 -/ACCESS LATCH +/ACCESSLATCH C 37300 43900 1 0 1 74245-1.sym { T 37000 47250 5 10 0 0 0 6 1 @@ -1011,13 +956,10 @@ N 30600 41200 30600 39400 4 N 31300 40900 30600 40900 4 N 31300 40600 30600 40600 4 N 31300 40300 30600 40300 4 -T 40000 39000 9 10 1 0 0 6 1 -SYSCONF +T 39400 39000 9 10 1 0 0 0 1 +/SYSCONF T 39400 44500 9 10 1 0 0 0 1 -P8000COM -N 59800 53900 61800 53900 4 -N 60800 53900 60800 53400 4 -C 60900 53100 1 0 1 gnd-1.sym +/P8000COM C 66000 38200 1 0 1 header40-2.sym { T 65750 46700 5 10 0 1 0 6 1 @@ -1211,7 +1153,7 @@ N 64600 40400 63500 40400 4 T 64600 40500 5 10 1 1 0 6 1 pinlabel=GND } -N 63500 46000 63500 37000 4 +N 63500 46000 63500 36700 4 N 64600 42000 63500 42000 4 { T 64600 42100 5 10 1 1 0 6 1 @@ -1253,7 +1195,7 @@ N 71300 40800 71300 41500 4 C 71500 41500 1 0 1 5V-plus-1.sym N 67900 41600 67900 35700 4 N 54800 40800 60600 40800 4 -C 63600 36700 1 0 1 gnd-1.sym +C 63600 36400 1 0 1 gnd-1.sym N 67500 35300 67500 41200 4 N 50300 35300 67500 35300 4 N 62700 39200 62700 37500 4 @@ -1310,14 +1252,14 @@ C 69800 39600 1 0 0 busripper-1.sym T 69800 40000 5 8 0 0 0 0 1 device=none T 69700 39700 5 10 1 1 0 6 1 -pinlabel=DA2 +pinlabel=DA1 } C 69800 37500 1 0 0 busripper-1.sym { T 69800 37900 5 8 0 0 0 0 1 device=none T 69700 37600 5 10 1 1 0 6 1 -pinlabel=DA1 +pinlabel=DA2 } C 69800 37900 1 0 0 busripper-1.sym { @@ -2088,3 +2030,271 @@ device=LED N 40400 36000 40400 35700 4 C 40200 37600 1 0 0 5V-plus-1.sym N 40400 36900 40400 37600 4 +N 67100 42400 67100 37100 4 +N 67100 37100 63500 37100 4 +N 66600 42000 66000 42000 4 +{ +T 66000 42100 5 10 1 1 0 0 1 +pinlabel=DMARQ +} +N 67100 42400 66000 42400 4 +{ +T 66000 42500 5 10 1 1 0 0 1 +pinlabel=GND +} +T 63900 42500 9 10 1 0 0 0 1 +(keypin) +N 41600 43400 40700 43400 4 +N 40700 43400 40700 47800 4 +N 40700 47800 55400 47800 4 +N 55400 47800 55400 57600 4 +N 55400 57600 56200 57600 4 +T 41200 48000 9 10 1 0 0 0 1 +/MCCEN +C 46800 55300 1 0 0 nc-left-1.sym +{ +T 46800 55700 5 10 0 0 0 0 1 +value=NoConnection +T 46800 56100 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 46800 52900 1 0 0 nc-left-1.sym +{ +T 46800 53300 5 10 0 0 0 0 1 +value=NoConnection +T 46800 53700 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 35900 52400 1 0 0 nc-left-1.sym +{ +T 35900 52800 5 10 0 0 0 0 1 +value=NoConnection +T 35900 53200 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 35900 51600 1 0 0 nc-left-1.sym +{ +T 35900 52000 5 10 0 0 0 0 1 +value=NoConnection +T 35900 52400 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 41100 43000 1 0 0 nc-left-1.sym +{ +T 41100 43400 5 10 0 0 0 0 1 +value=NoConnection +T 41100 43800 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 41100 42700 1 0 0 nc-left-1.sym +{ +T 41100 43100 5 10 0 0 0 0 1 +value=NoConnection +T 41100 43500 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 41100 44500 1 0 0 nc-left-1.sym +{ +T 41100 44900 5 10 0 0 0 0 1 +value=NoConnection +T 41100 45300 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 63500 40700 1 0 0 nc-left-1.sym +{ +T 63500 41100 5 10 0 0 0 0 1 +value=NoConnection +T 63500 41500 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 63500 39900 1 0 0 nc-left-1.sym +{ +T 63500 40300 5 10 0 0 0 0 1 +value=NoConnection +T 63500 40700 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 63500 39500 1 0 0 nc-left-1.sym +{ +T 63500 39900 5 10 0 0 0 0 1 +value=NoConnection +T 63500 40300 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 66600 39900 1 0 0 nc-right-1.sym +{ +T 66700 40400 5 10 0 0 0 0 1 +value=NoConnection +T 66700 40600 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 66600 40700 1 0 0 nc-right-1.sym +{ +T 66700 41200 5 10 0 0 0 0 1 +value=NoConnection +T 66700 41400 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 66600 41900 1 0 0 nc-right-1.sym +{ +T 66700 42400 5 10 0 0 0 0 1 +value=NoConnection +T 66700 42600 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 38800 52400 1 0 0 nc-right-1.sym +{ +T 38900 52900 5 10 0 0 0 0 1 +value=NoConnection +T 38900 53100 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 38800 51600 1 0 0 nc-right-1.sym +{ +T 38900 52100 5 10 0 0 0 0 1 +value=NoConnection +T 38900 52300 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 53600 1 0 0 nc-right-1.sym +{ +T 32000 54100 5 10 0 0 0 0 1 +value=NoConnection +T 32000 54300 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 53300 1 0 0 nc-right-1.sym +{ +T 32000 53800 5 10 0 0 0 0 1 +value=NoConnection +T 32000 54000 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 52700 1 0 0 nc-right-1.sym +{ +T 32000 53200 5 10 0 0 0 0 1 +value=NoConnection +T 32000 53400 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 52100 1 0 0 nc-right-1.sym +{ +T 32000 52600 5 10 0 0 0 0 1 +value=NoConnection +T 32000 52800 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 51800 1 0 0 nc-right-1.sym +{ +T 32000 52300 5 10 0 0 0 0 1 +value=NoConnection +T 32000 52500 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 51500 1 0 0 nc-right-1.sym +{ +T 32000 52000 5 10 0 0 0 0 1 +value=NoConnection +T 32000 52200 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 56000 1 0 0 nc-right-1.sym +{ +T 32000 56500 5 10 0 0 0 0 1 +value=NoConnection +T 32000 56700 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 56600 1 0 0 nc-right-1.sym +{ +T 32000 57100 5 10 0 0 0 0 1 +value=NoConnection +T 32000 57300 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 57200 1 0 0 nc-right-1.sym +{ +T 32000 57700 5 10 0 0 0 0 1 +value=NoConnection +T 32000 57900 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 57500 1 0 0 nc-right-1.sym +{ +T 32000 58000 5 10 0 0 0 0 1 +value=NoConnection +T 32000 58200 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 59000 1 0 0 nc-right-1.sym +{ +T 32000 59500 5 10 0 0 0 0 1 +value=NoConnection +T 32000 59700 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 59300 1 0 0 nc-right-1.sym +{ +T 32000 59800 5 10 0 0 0 0 1 +value=NoConnection +T 32000 60000 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 59900 1 0 0 nc-right-1.sym +{ +T 32000 60400 5 10 0 0 0 0 1 +value=NoConnection +T 32000 60600 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 31900 60200 1 0 0 nc-right-1.sym +{ +T 32000 60700 5 10 0 0 0 0 1 +value=NoConnection +T 32000 60900 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 59700 55400 1 180 1 resistorpack5-1.sym +{ +T 59800 54000 5 10 0 0 180 6 1 +device=RESISTORPACK_5 +T 59800 54200 5 10 1 1 180 6 1 +refdes=R2 +T 60500 54200 5 10 1 1 180 6 1 +value=3k3 +} +C 61900 53600 1 0 1 gnd-1.sym +N 61200 54300 61800 54300 4 +N 61800 54300 61800 53900 4 +C 56200 56800 1 0 0 rpack4-1.sym +{ +T 56295 59900 5 10 0 0 0 0 1 +device=rpack4 +T 56295 59700 5 10 0 0 0 0 1 +footprint=0603_rpack4 +T 57795 58900 5 10 1 1 0 0 1 +refdes=R1 +T 56200 56800 5 10 1 1 0 0 1 +value=1k8 +} +C 55700 57000 1 0 0 nc-left-1.sym +{ +T 55700 57400 5 10 0 0 0 0 1 +value=NoConnection +T 55700 57800 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 50600 52900 1 0 0 nc-right-1.sym +{ +T 50700 53400 5 10 0 0 0 0 1 +value=NoConnection +T 50700 53600 5 10 0 0 0 0 1 +device=DRC_Directive +} +C 58600 57000 1 0 0 nc-right-1.sym +{ +T 58700 57500 5 10 0 0 0 0 1 +value=NoConnection +T 58700 57700 5 10 0 0 0 0 1 +device=DRC_Directive +} diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/atmega1284p.sym b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/atmega1284p.sym new file mode 100755 index 0000000..ac7570f --- /dev/null +++ b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/atmega1284p.sym @@ -0,0 +1,467 @@ +v 20091004 2 +P 3400 4200 3100 4200 1 0 0 +{ +T 3200 4250 5 8 1 1 0 0 1 +pinnumber=32 +T 3200 4150 5 8 0 1 0 2 1 +pinseq=24 +T 3050 4200 9 8 1 1 0 6 1 +pinlabel=AREF +T 3050 4200 5 8 0 1 0 8 1 +pintype=pwr +} +P 3400 3900 3100 3900 1 0 0 +{ +T 3200 3950 5 8 1 1 0 0 1 +pinnumber=30 +T 3200 3850 5 8 0 1 0 2 1 +pinseq=23 +T 3050 3900 9 8 1 1 0 6 1 +pinlabel=AVCC +T 3050 3900 5 8 0 1 0 8 1 +pintype=pwr +} +P 3400 10600 3200 10600 1 0 0 +{ +T 3200 10650 5 8 1 1 0 0 1 +pinnumber=9 +T 3200 10550 5 8 0 1 0 2 1 +pinseq=4 +T 3050 10600 9 8 1 1 0 6 1 +pinlabel=\_RESET\_ +T 3050 10600 5 8 0 1 0 8 1 +pintype=in +} +V 3150 10600 50 6 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +P 3400 8300 3100 8300 1 0 0 +{ +T 3200 8350 5 8 1 1 0 0 1 +pinnumber=13 +T 3200 8250 5 8 0 1 0 2 1 +pinseq=6 +T 2975 8300 9 8 1 1 0 6 1 +pinlabel=XTAL1 +T 2975 8300 5 8 0 1 0 8 1 +pintype=clk +} +L 3000 8300 3100 8225 3 0 0 0 -1 -1 +L 3000 8300 3100 8375 3 0 0 0 -1 -1 +P 3400 8000 3100 8000 1 0 0 +{ +T 3200 8050 5 8 1 1 0 0 1 +pinnumber=12 +T 3200 7950 5 8 0 1 0 2 1 +pinseq=5 +T 2975 8000 9 8 1 1 0 6 1 +pinlabel=XTAL2 +T 2975 8000 5 8 0 1 0 8 1 +pintype=clk +} +L 3000 8000 3100 7925 3 0 0 0 -1 -1 +L 3000 8000 3100 8075 3 0 0 0 -1 -1 +P 100 7800 400 7800 1 0 0 +{ +T 300 7850 5 8 1 1 0 6 1 +pinnumber=1 +T 300 7750 5 8 0 1 0 8 1 +pinseq=33 +T 450 7800 9 8 1 1 0 0 1 +pinlabel=PB0 (XCK0/T0/PCINT8) +T 450 7800 5 8 0 1 0 2 1 +pintype=io +} +P 100 7500 400 7500 1 0 0 +{ +T 300 7550 5 8 1 1 0 6 1 +pinnumber=2 +T 300 7450 5 8 0 1 0 8 1 +pinseq=34 +T 450 7500 9 8 1 1 0 0 1 +pinlabel=PB1 (T1/CLKO/PCINT9) +T 450 7500 5 8 0 1 0 2 1 +pintype=io +} +P 100 7200 400 7200 1 0 0 +{ +T 300 7250 5 8 1 1 0 6 1 +pinnumber=3 +T 300 7150 5 8 0 1 0 8 1 +pinseq=35 +T 450 7200 9 8 1 1 0 0 1 +pinlabel=PB2 (AIN0/INT2/PCINT10) +T 450 7200 5 8 0 1 0 2 1 +pintype=io +} +P 100 6900 400 6900 1 0 0 +{ +T 300 6950 5 8 1 1 0 6 1 +pinnumber=4 +T 300 6850 5 8 0 1 0 8 1 +pinseq=36 +T 450 6900 9 8 1 1 0 0 1 +pinlabel=PB3 (AIN1/OC0A/PCINT11) +T 450 6900 5 8 0 1 0 2 1 +pintype=io +} +P 100 6600 400 6600 1 0 0 +{ +T 300 6650 5 8 1 1 0 6 1 +pinnumber=5 +T 300 6550 5 8 0 1 0 8 1 +pinseq=37 +T 450 6600 9 8 1 1 0 0 1 +pinlabel=PB4 (\_SS\_/OC0B/PCINT12) +T 450 6600 5 8 0 1 0 2 1 +pintype=io +} +P 100 6300 400 6300 1 0 0 +{ +T 300 6350 5 8 1 1 0 6 1 +pinnumber=6 +T 300 6250 5 8 0 1 0 8 1 +pinseq=1 +T 450 6300 9 8 1 1 0 0 1 +pinlabel=PB5 (PCINT13/MOSI) +T 450 6300 5 8 0 1 0 2 1 +pintype=io +} +P 100 6000 400 6000 1 0 0 +{ +T 300 6050 5 8 1 1 0 6 1 +pinnumber=7 +T 300 5950 5 8 0 1 0 8 1 +pinseq=2 +T 450 6000 9 8 1 1 0 0 1 +pinlabel=PB6 (PCINT14/MISO) +T 450 6000 5 8 0 1 0 2 1 +pintype=io +} +P 100 5700 400 5700 1 0 0 +{ +T 300 5750 5 8 1 1 0 6 1 +pinnumber=8 +T 300 5650 5 8 0 1 0 8 1 +pinseq=3 +T 450 5700 9 8 1 1 0 0 1 +pinlabel=PB7 (PCINT15/SCK) +T 450 5700 5 8 0 1 0 2 1 +pintype=io +} +P 100 5100 400 5100 1 0 0 +{ +T 300 5150 5 8 1 1 0 6 1 +pinnumber=22 +T 300 5050 5 8 0 1 0 8 1 +pinseq=15 +T 450 5100 9 8 1 1 0 0 1 +pinlabel=PC0 (PCINT16/SCL) +T 450 5100 5 8 0 1 0 2 1 +pintype=io +} +P 100 4800 400 4800 1 0 0 +{ +T 300 4850 5 8 1 1 0 6 1 +pinnumber=23 +T 300 4750 5 8 0 1 0 8 1 +pinseq=16 +T 450 4800 9 8 1 1 0 0 1 +pinlabel=PC1 (PCINT17/SDA) +T 450 4800 5 8 0 1 0 2 1 +pintype=io +} +P 100 4500 400 4500 1 0 0 +{ +T 300 4550 5 8 1 1 0 6 1 +pinnumber=24 +T 300 4450 5 8 0 1 0 8 1 +pinseq=17 +T 450 4500 9 8 1 1 0 0 1 +pinlabel=PC2 (PCINT18/TCK) +T 450 4500 5 8 0 1 0 2 1 +pintype=io +} +P 100 4200 400 4200 1 0 0 +{ +T 300 4250 5 8 1 1 0 6 1 +pinnumber=25 +T 300 4150 5 8 0 1 0 8 1 +pinseq=18 +T 450 4200 9 8 1 1 0 0 1 +pinlabel=PC3 (PCINT19/TMS) +T 450 4200 5 8 0 1 0 2 1 +pintype=io +} +P 100 3900 400 3900 1 0 0 +{ +T 300 3950 5 8 1 1 0 6 1 +pinnumber=26 +T 300 3850 5 8 0 1 0 8 1 +pinseq=19 +T 450 3900 9 8 1 1 0 0 1 +pinlabel=PC4 (TDO/PCINT20) +T 450 3900 5 8 0 1 0 2 1 +pintype=io +} +P 100 3600 400 3600 1 0 0 +{ +T 300 3650 5 8 1 1 0 6 1 +pinnumber=27 +T 300 3550 5 8 0 1 0 8 1 +pinseq=20 +T 450 3600 9 8 1 1 0 0 1 +pinlabel=PC5 (TDI/PCINT21) +T 450 3600 5 8 0 1 0 2 1 +pintype=io +} +P 100 3300 400 3300 1 0 0 +{ +T 300 3350 5 8 1 1 0 6 1 +pinnumber=28 +T 300 3250 5 8 0 1 0 8 1 +pinseq=21 +T 450 3300 9 8 1 1 0 0 1 +pinlabel=PC6 (TOSC1/PCINT22) +T 450 3300 5 8 0 1 0 2 1 +pintype=io +} +P 100 3000 400 3000 1 0 0 +{ +T 300 3050 5 8 1 1 0 6 1 +pinnumber=29 +T 300 2950 5 8 0 1 0 8 1 +pinseq=22 +T 450 3000 9 8 1 1 0 0 1 +pinlabel=PC7 (TOSC2/PCINT23) +T 450 3000 5 8 0 1 0 2 1 +pintype=io +} +P 100 2400 400 2400 1 0 0 +{ +T 300 2450 5 8 1 1 0 6 1 +pinnumber=14 +T 300 2350 5 8 0 1 0 8 1 +pinseq=7 +T 450 2400 9 8 1 1 0 0 1 +pinlabel=PD0 (PCINT24/RXD0) +T 450 2400 5 8 0 1 0 2 1 +pintype=io +} +P 100 2100 400 2100 1 0 0 +{ +T 300 2150 5 8 1 1 0 6 1 +pinnumber=15 +T 300 2050 5 8 0 1 0 8 1 +pinseq=8 +T 450 2100 9 8 1 1 0 0 1 +pinlabel=PD1 (PCINT25/TXD0) +T 450 2100 5 8 0 1 0 2 1 +pintype=io +} +P 100 1800 400 1800 1 0 0 +{ +T 300 1850 5 8 1 1 0 6 1 +pinnumber=16 +T 300 1750 5 8 0 1 0 8 1 +pinseq=9 +T 450 1800 9 8 1 1 0 0 1 +pinlabel=PD2 (PCINT26/RXD1/INT0) +T 450 1800 5 8 0 1 0 2 1 +pintype=io +} +P 100 1500 400 1500 1 0 0 +{ +T 300 1550 5 8 1 1 0 6 1 +pinnumber=17 +T 300 1450 5 8 0 1 0 8 1 +pinseq=10 +T 450 1500 9 8 1 1 0 0 1 +pinlabel=PD3 (PCINT27/TXD1/INT1) +T 450 1500 5 8 0 1 0 2 1 +pintype=io +} +P 100 1200 400 1200 1 0 0 +{ +T 300 1250 5 8 1 1 0 6 1 +pinnumber=18 +T 300 1150 5 8 0 1 0 8 1 +pinseq=11 +T 450 1200 9 8 1 1 0 0 1 +pinlabel=PD4 (PCINT28/XCK1/OC1B) +T 450 1200 5 8 0 1 0 2 1 +pintype=io +} +P 100 900 400 900 1 0 0 +{ +T 300 950 5 8 1 1 0 6 1 +pinnumber=19 +T 300 850 5 8 0 1 0 8 1 +pinseq=12 +T 450 900 9 8 1 1 0 0 1 +pinlabel=PD5 (PCINT29/OC1A) +T 450 900 5 8 0 1 0 2 1 +pintype=io +} +P 100 600 400 600 1 0 0 +{ +T 300 650 5 8 1 1 0 6 1 +pinnumber=20 +T 300 550 5 8 0 1 0 8 1 +pinseq=13 +T 450 600 9 8 1 1 0 0 1 +pinlabel=PD6 (PCINT30/OC2B/ICP) +T 450 600 5 8 0 1 0 2 1 +pintype=io +} +P 100 300 400 300 1 0 0 +{ +T 300 350 5 8 1 1 0 6 1 +pinnumber=21 +T 300 250 5 8 0 1 0 8 1 +pinseq=14 +T 450 300 9 8 1 1 0 0 1 +pinlabel=PD7 (PCINT31/OC2A) +T 450 300 5 8 0 1 0 2 1 +pintype=io +} +B 400 100 2700 10700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +T 3100 10900 8 10 1 1 0 6 1 +refdes=U? +T 400 10900 9 10 1 0 0 0 1 +ATmega1284P +T 400 7700 5 10 0 0 0 0 1 +device=Atmega1284P +T 400 6900 5 10 0 0 0 0 1 +footprint=DIP_40 +T 400 6300 5 10 0 0 0 0 1 +author=Anton Dubniak +T 400 7300 5 10 0 0 0 0 1 +documentation=http://www.atmel.com/Images/doc8059.pdf +T 400 7500 5 10 0 0 0 0 1 +description=8-bit RISC micro-controller (Atmel) +T 400 6700 5 10 0 0 0 0 1 +numslots=0 +T 400 6100 5 10 0 0 0 0 1 +dist-license=GPL +T 400 5900 5 10 0 0 0 0 1 +use-license=unlimited +P 100 10600 400 10600 1 0 0 +{ +T 305 10645 5 8 1 1 0 6 1 +pinnumber=40 +T 300 10550 5 8 0 1 0 8 1 +pinseq=32 +T 455 10595 9 8 1 1 0 0 1 +pinlabel=PA0 (ADC0/PCINT0) +T 450 10600 5 8 0 1 0 2 1 +pintype=io +} +P 100 10300 400 10300 1 0 0 +{ +T 305 10345 5 8 1 1 0 6 1 +pinnumber=39 +T 300 10250 5 8 0 1 0 8 1 +pinseq=31 +T 455 10295 9 8 1 1 0 0 1 +pinlabel=PA1 (ADC1/PCINT1) +T 450 10300 5 8 0 1 0 2 1 +pintype=io +} +P 100 10000 400 10000 1 0 0 +{ +T 305 10045 5 8 1 1 0 6 1 +pinnumber=38 +T 300 9950 5 8 0 1 0 8 1 +pinseq=30 +T 455 9995 9 8 1 1 0 0 1 +pinlabel=PA2 (ADC2/PCINT2) +T 450 10000 5 8 0 1 0 2 1 +pintype=io +} +P 100 9700 400 9700 1 0 0 +{ +T 305 9745 5 8 1 1 0 6 1 +pinnumber=37 +T 300 9650 5 8 0 1 0 8 1 +pinseq=29 +T 455 9695 9 8 1 1 0 0 1 +pinlabel=PA3 (ADC3/PCINT3) +T 450 9700 5 8 0 1 0 2 1 +pintype=io +} +P 100 9400 400 9400 1 0 0 +{ +T 305 9445 5 8 1 1 0 6 1 +pinnumber=36 +T 300 9350 5 8 0 1 0 8 1 +pinseq=28 +T 455 9395 9 8 1 1 0 0 1 +pinlabel=PA4 (ADC4/PCINT4) +T 450 9400 5 8 0 1 0 2 1 +pintype=io +} +P 100 9100 400 9100 1 0 0 +{ +T 305 9145 5 8 1 1 0 6 1 +pinnumber=35 +T 300 9050 5 8 0 1 0 8 1 +pinseq=27 +T 455 9095 9 8 1 1 0 0 1 +pinlabel=PA5 (ADC5/PCINT5) +T 450 9100 5 8 0 1 0 2 1 +pintype=io +} +P 100 8800 400 8800 1 0 0 +{ +T 305 8845 5 8 1 1 0 6 1 +pinnumber=34 +T 300 8750 5 8 0 1 0 8 1 +pinseq=26 +T 455 8795 9 8 1 1 0 0 1 +pinlabel=PA6 (ADC6/PCINT6) +T 450 8800 5 8 0 1 0 2 1 +pintype=io +} +P 100 8500 400 8500 1 0 0 +{ +T 305 8545 5 8 1 1 0 6 1 +pinnumber=33 +T 300 8450 5 8 0 1 0 8 1 +pinseq=25 +T 455 8495 9 8 1 1 0 0 1 +pinlabel=PA7 (ADC7/PCINT7) +T 450 8500 5 8 0 1 0 2 1 +pintype=io +} +P 3400 1200 3100 1200 1 0 0 +{ +T 3200 1250 5 8 1 1 0 0 1 +pinnumber=11 +T 3200 1150 5 8 0 1 0 2 1 +pinseq=6 +T 3050 1200 9 8 1 1 0 6 1 +pinlabel=GND +T 3050 1200 5 8 0 1 0 8 1 +pintype=pwr +} +P 3400 900 3100 900 1 0 0 +{ +T 3200 950 5 8 1 1 0 0 1 +pinnumber=31 +T 3200 850 5 8 0 1 0 2 1 +pinseq=18 +T 3050 900 9 8 1 1 0 6 1 +pinlabel=GND +T 3050 900 5 8 0 1 0 8 1 +pintype=pwr +} +P 3400 3600 3100 3600 1 0 0 +{ +T 3200 3650 5 8 1 1 0 0 1 +pinnumber=10 +T 3200 3550 5 8 0 1 0 2 1 +pinseq=5 +T 3050 3600 9 8 1 1 0 6 1 +pinlabel=VCC +T 3050 3600 5 8 0 1 0 8 1 +pintype=pwr +} diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/max3232.sym b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/max3232.sym new file mode 100755 index 0000000..b3e80c6 --- /dev/null +++ b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/max3232.sym @@ -0,0 +1,136 @@ +v 20050313 1 +P 2100 3200 2400 3200 1 0 1 +{ +T 2150 3250 5 8 1 1 0 0 1 +pinnumber=16 +T 2000 3200 5 8 1 1 0 6 1 +pinlabel=VCC +} +P 2100 200 2400 200 1 0 1 +{ +T 2150 250 5 8 1 1 0 0 1 +pinnumber=15 +T 2000 200 5 8 1 1 0 6 1 +pinlabel=GND +} +P 2100 1800 2400 1800 1 0 1 +{ +T 2150 1850 5 8 1 1 0 0 1 +pinnumber=14 +} +P 2100 1000 2400 1000 1 0 1 +{ +T 2150 1050 5 8 1 1 0 0 1 +pinnumber=13 +} +P 300 1000 0 1000 1 0 1 +{ +T 250 1050 5 8 1 1 0 6 1 +pinnumber=12 +} +P 300 1800 0 1800 1 0 1 +{ +T 250 1850 5 8 1 1 0 6 1 +pinnumber=11 +} +P 300 1400 0 1400 1 0 1 +{ +T 250 1450 5 8 1 1 0 6 1 +pinnumber=10 +} +P 300 600 0 600 1 0 1 +{ +T 250 650 5 8 1 1 0 6 1 +pinnumber=9 +} +P 300 3000 0 3000 1 0 1 +{ +T 250 3050 5 8 1 1 0 6 1 +pinnumber=1 +T 400 3000 5 8 1 1 0 0 1 +pinlabel=C1+ +} +P 2100 400 2400 400 1 0 1 +{ +T 2150 450 5 8 1 1 0 0 1 +pinnumber=2 +T 2000 400 5 8 1 1 0 6 1 +pinlabel=V+ +} +P 300 2200 0 2200 1 0 1 +{ +T 250 2250 5 8 1 1 0 6 1 +pinnumber=3 +T 400 2200 5 8 1 1 0 0 1 +pinlabel=C1- +} +P 2100 3000 2400 3000 1 0 1 +{ +T 2150 3050 5 8 1 1 0 0 1 +pinnumber=4 +T 2000 3000 5 8 1 1 0 6 1 +pinlabel=C2+ +} +P 2100 2200 2400 2200 1 0 1 +{ +T 2150 2250 5 8 1 1 0 0 1 +pinnumber=5 +T 2000 2200 5 8 1 1 0 6 1 +pinlabel=C1- +} +P 300 400 0 400 1 0 1 +{ +T 250 450 5 8 1 1 0 6 1 +pinnumber=6 +T 400 400 5 8 1 1 0 0 1 +pinlabel=V- +} +P 2100 1400 2400 1400 1 0 1 +{ +T 2150 1450 5 8 1 1 0 0 1 +pinnumber=7 +} +P 2100 600 2400 600 1 0 1 +{ +T 2150 650 5 8 1 1 0 0 1 +pinnumber=8 +} +B 300 0 1800 3400 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 300 1800 1100 1800 3 0 0 0 -1 -1 +L 1100 1900 1100 1700 3 0 0 0 -1 -1 +L 1100 1700 1250 1800 3 0 0 0 -1 -1 +L 1100 1900 1250 1800 3 0 0 0 -1 -1 +V 1275 1800 26 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 1300 1800 2100 1800 3 0 0 0 -1 -1 +L 300 1400 1100 1400 3 0 0 0 -1 -1 +L 1100 1500 1100 1300 3 0 0 0 -1 -1 +L 1100 1300 1250 1400 3 0 0 0 -1 -1 +L 1100 1500 1250 1400 3 0 0 0 -1 -1 +V 1275 1400 26 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 1300 1400 2100 1400 3 0 0 0 -1 -1 +T 400 1900 9 8 1 0 0 0 1 +CMOS +T 1700 1900 9 8 1 0 0 0 1 +232 +L 2100 1000 1300 1000 3 0 0 0 -1 -1 +L 1300 1100 1300 900 3 0 0 0 -1 -1 +L 1300 900 1150 1000 3 0 0 0 -1 -1 +L 1300 1100 1150 1000 3 0 0 0 -1 -1 +V 1125 1000 26 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 1100 1000 300 1000 3 0 0 0 -1 -1 +L 2100 600 1300 600 3 0 0 0 -1 -1 +L 1300 700 1300 500 3 0 0 0 -1 -1 +L 1300 500 1150 600 3 0 0 0 -1 -1 +L 1300 700 1150 600 3 0 0 0 -1 -1 +V 1125 600 26 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +L 1100 600 300 600 3 0 0 0 -1 -1 +T 300 4400 9 10 0 0 0 0 1 +author=Darrell Harmon mail@dlharmon.com +T 300 4200 9 10 0 0 0 0 1 +dist-license=GPL +T 300 4000 9 10 0 0 0 0 1 +use-license=unlimited +T 300 3800 9 10 0 0 0 0 1 +tested=yes +T 300 3600 9 10 0 0 0 0 1 +style=compact diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/osc.sym b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/osc.sym new file mode 100755 index 0000000..7ef963a --- /dev/null +++ b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/osc.sym @@ -0,0 +1,68 @@ +v 20080127 1 +P 2000 900 1700 900 1 0 0 +{ +T 1800 950 5 8 1 1 0 0 1 +pinnumber=8 +T 1800 850 5 8 0 1 0 2 1 +pinseq=3 +T 1650 900 9 8 1 1 0 6 1 +pinlabel=Out +T 1650 900 5 8 0 1 0 8 1 +pintype=out +} +P 1000 0 1000 300 1 0 0 +{ +T 1050 200 5 8 1 1 0 2 1 +pinnumber=7 +T 950 200 5 8 0 1 0 8 1 +pinseq=2 +T 1000 350 9 8 1 1 0 3 1 +pinlabel=GND +T 1000 500 5 8 0 1 0 3 1 +pintype=pwr +} +P 0 900 300 900 1 0 0 +{ +T 200 950 5 8 1 1 0 6 1 +pinnumber=14 +T 200 850 5 8 0 1 0 8 1 +pinseq=4 +T 350 900 9 8 1 1 0 0 1 +pinlabel=Vcc +T 350 900 5 8 0 1 0 2 1 +pintype=pwr +} +B 300 300 1400 900 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +T 1900 1300 8 10 1 1 0 6 1 +refdes=U? +T 300 1300 9 10 1 0 0 0 1 +OSC +T 300 1550 5 10 0 0 0 0 1 +device=OSC +T 300 1750 5 10 0 0 0 0 1 +footprint=OSC__Crystek_CCHD-950 +T 300 1950 5 10 0 0 0 0 1 +author=Stefan Salewski +T 300 2150 5 10 0 0 0 0 1 +documentation=http://www.crystekcrystals.com/crystal/clock/clock-complete.asp +T 300 2350 5 10 0 0 0 0 1 +description=Oscillator Crystek_CCHD-950 +T 300 2550 5 10 0 0 0 0 1 +numslots=0 +T 300 2750 5 10 0 0 0 0 1 +dist-license=GPL +T 300 2950 5 10 0 0 0 0 1 +use-license=unlimited +T 300 3150 5 10 0 0 0 0 1 +comment=generated with Python script tragesym +L 800 1000 900 1000 3 0 0 0 -1 -1 +L 900 1000 900 800 3 0 0 0 -1 -1 +L 900 800 1000 800 3 0 0 0 -1 -1 +L 1000 800 1000 1000 3 0 0 0 -1 -1 +L 1000 1000 1100 1000 3 0 0 0 -1 -1 +L 1100 1000 1100 800 3 0 0 0 -1 -1 +L 700 800 800 800 3 0 0 0 -1 -1 +L 800 800 800 1000 3 0 0 0 -1 -1 +L 1100 800 1200 800 3 0 0 0 -1 -1 +L 1200 800 1200 1000 3 0 0 0 -1 -1 +L 1200 1000 1300 1000 3 0 0 0 -1 -1 diff --git a/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/rpack4-1.sym b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/rpack4-1.sym new file mode 100755 index 0000000..947463d --- /dev/null +++ b/P8000_WDC_Emulator/P8000_WDC_Emulator/Hardware/rpack4-1.sym @@ -0,0 +1,88 @@ +v 20091004 2 +P 0 1800 500 1800 1 0 0 +{ +T 405 1845 5 10 1 1 0 6 1 +pinnumber=1 +} +P 0 1300 500 1300 1 0 0 +{ +T 405 1345 5 10 1 1 0 6 1 +pinnumber=2 +} +P 0 800 500 800 1 0 0 +{ +T 405 845 5 10 1 1 0 6 1 +pinnumber=3 +} +P 0 300 500 300 1 0 0 +{ +T 405 345 5 10 1 1 0 6 1 +pinnumber=4 +} +P 2400 1800 1900 1800 1 0 0 +{ +T 1995 1845 5 10 1 1 0 0 1 +pinnumber=8 +} +P 2400 1300 1900 1300 1 0 0 +{ +T 1995 1345 5 10 1 1 0 0 1 +pinnumber=7 +} +P 2400 800 1900 800 1 0 0 +{ +T 1995 845 5 10 1 1 0 0 1 +pinnumber=6 +} +P 2400 300 1900 300 1 0 0 +{ +T 1995 345 5 10 1 1 0 0 1 +pinnumber=5 +} +T 95 3100 5 10 0 0 0 0 1 +device=rpack4 +T 95 2900 5 10 0 0 0 0 1 +footprint=0603_rpack4 +T 95 2700 5 10 0 0 0 0 1 +description=Four-in-one resistor network (isolated) +T 95 2500 5 10 0 0 0 0 1 +author=Vanessa Ezekowitz +L 500 1800 600 1800 3 0 0 0 -1 -1 +L 600 1800 700 2000 3 0 0 0 -1 -1 +L 700 2000 900 1600 3 0 0 0 -1 -1 +L 900 1600 1100 2000 3 0 0 0 -1 -1 +L 1100 2000 1300 1600 3 0 0 0 -1 -1 +L 1300 1600 1500 2000 3 0 0 0 -1 -1 +L 1500 2000 1700 1600 3 0 0 0 -1 -1 +L 1700 1600 1800 1800 3 0 0 0 -1 -1 +L 1800 1800 1900 1800 3 0 0 0 -1 -1 +L 500 1300 600 1300 3 0 0 0 -1 -1 +L 600 1300 700 1500 3 0 0 0 -1 -1 +L 700 1500 900 1100 3 0 0 0 -1 -1 +L 900 1100 1100 1500 3 0 0 0 -1 -1 +L 1100 1500 1300 1100 3 0 0 0 -1 -1 +L 1300 1100 1500 1500 3 0 0 0 -1 -1 +L 1500 1500 1700 1100 3 0 0 0 -1 -1 +L 1700 1100 1800 1300 3 0 0 0 -1 -1 +L 1800 1300 1900 1300 3 0 0 0 -1 -1 +L 500 800 600 800 3 0 0 0 -1 -1 +L 600 800 700 1000 3 0 0 0 -1 -1 +L 700 1000 900 600 3 0 0 0 -1 -1 +L 900 600 1100 1000 3 0 0 0 -1 -1 +L 1100 1000 1300 600 3 0 0 0 -1 -1 +L 1300 600 1500 1000 3 0 0 0 -1 -1 +L 1500 1000 1700 600 3 0 0 0 -1 -1 +L 1700 600 1800 800 3 0 0 0 -1 -1 +L 1800 800 1900 800 3 0 0 0 -1 -1 +L 500 300 600 300 3 0 0 0 -1 -1 +L 600 300 700 500 3 0 0 0 -1 -1 +L 700 500 900 100 3 0 0 0 -1 -1 +L 900 100 1100 500 3 0 0 0 -1 -1 +L 1100 500 1300 100 3 0 0 0 -1 -1 +L 1300 100 1500 500 3 0 0 0 -1 -1 +L 1500 500 1700 100 3 0 0 0 -1 -1 +L 1700 100 1800 300 3 0 0 0 -1 -1 +L 1800 300 1900 300 3 0 0 0 -1 -1 +B 500 0 1400 2100 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1 +T 1595 2100 8 10 1 1 0 0 1 +refdes=RP?