From a90694200223ce4fc8e89868774b3bb0f828638c Mon Sep 17 00:00:00 2001 From: Daniele Verducci su MatissePenguin Date: Sun, 13 Dec 2020 12:49:22 +0100 Subject: [PATCH 1/2] Pat80 logo --- assets/README.md | 2 + assets/pat80-banner-colour-raster.png | Bin 0 -> 17402 bytes assets/pat80-banner-colour.xcf | Bin 0 -> 47402 bytes assets/pat80-banner.xcf | Bin 0 -> 42066 bytes .../eeprom_programmer/eeprom_programmer.ino | 175 ------------------ 5 files changed, 2 insertions(+), 175 deletions(-) create mode 100644 assets/README.md create mode 100644 assets/pat80-banner-colour-raster.png create mode 100644 assets/pat80-banner-colour.xcf create mode 100644 assets/pat80-banner.xcf delete mode 100644 eeprom_programmer/eeprom_programmer/eeprom_programmer.ino diff --git a/assets/README.md b/assets/README.md new file mode 100644 index 0000000..a9fc4ad --- /dev/null +++ b/assets/README.md @@ -0,0 +1,2 @@ +# Assets +This folder contains all the media assets for presenting Pat80 to the web, print and other media diff --git a/assets/pat80-banner-colour-raster.png b/assets/pat80-banner-colour-raster.png new file mode 100644 index 0000000000000000000000000000000000000000..cf7a13b4ef8db540b10e9da97117aafbe98587b2 GIT binary patch literal 17402 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 U3wQi66SfbM;&N|FUK@P)KfDnpk^lez literal 0 HcmV?d00001 diff --git a/assets/pat80-banner-colour.xcf b/assets/pat80-banner-colour.xcf new file mode 100644 index 0000000000000000000000000000000000000000..bf41db4dbb3dc47d8cbe96532353db0169a423e5 GIT binary patch literal 47402 zcmeHw4Omsjx$f+}`PpnYAR>rJa04O|egs62C`yROQmrw>=&@X`Ws684h!i1&7`m;c z*5I+m`slG7kH%xH$6T-1dNjssy;AkDSnJL8=*i`Jtdvs9fkP;j5<+0Fx$ie?_GW_^ zf3e!KdDePoX3bh_);r%ff8WfIo42~i^j7vN)0;7|v5Ya76r6VBpx;g$UN|%woW|gA z#xYxqlQ$0iOSn!4eq(Vs;qb%ZE8TRH51yC^9Gi>xMCGkE=jKGM&M7gkG?$nW%n(QO zFSF*nwYtFcW=`?iyfuZ%VX@IMVWynI>@_R%3Uiagmb^AEYDU3HKBIZ}V1)*aMER>Zt8$7#I2c>_+Kg!>Zza8%l(cm2 z>NP9!R>dYH$`s6++Rr~_oiQ&vJF2L7&8obD9P;ZJ(;De0$X>lxJDRc8g(bzWel69s z?3)=T*PF=d@rV=7lFZp_i(Y)?m2c2ZL;pVilmvsZYf<#9q2t^&)UYyVZ8om<;aHws zR9pfP%Y=JWSxFJOUx$0_iZ_J&9dZ{Vfe3$(+_|dz0})4ce=Op>_UcQB^DDShavj_& z9NhA~h{AN)aRiU|SCaD<($CnuRK|!?_38aw^@r)8g1TwQix2w4*8CG=GrAD|UVqq% zA2W9H`_S4O{b7^dXUwybv5!8Tsz+q!#VEp$S=ytjar*iQUX;L8A%Fn(9O|l zwOS2+%uW0mm?w$~6N`nI7(3Y2kdB8!CI$UIQ?jAxVBboMf?j)sq}MX+R+f&0ed z+C(;mC9-d@LOf+0Vn)E1##XQ@JaZ!MOUAVo?0f7u-VlkWWFTf0e7FDX?`LeZL(!O9 zoVSuFCzjZhwI$^RIVKb!c`L&WQ�>uPInlY?>kPCQIBs1r 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 Y<$rbdPFMESOr}Ox_o+_HqfGYx|LUO8bpQYW literal 0 HcmV?d00001 diff --git a/assets/pat80-banner.xcf b/assets/pat80-banner.xcf new file mode 100644 index 0000000000000000000000000000000000000000..dcc6228cce9d12c439f11da41133835790197bb8 GIT binary patch literal 42066 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�(UWIGi}JdnJBr?mqQ_GM&@w%#AK*xb zHLpXx=k%)eF6|4f`Vo!|YQtVqTCzTb&qlq!$8kOCkv=a^t&4vKpW-;5+7r|g&ayv+ zclO$R3V0y!c!YLA^r1$|Q_aGEHes+o@c9In76tynh-B0{^mgbC>~MWEj+P6@oll8t zJKKIj;Q5c)jYaTZl84#+VWVEC`)RD~S!n>SL+80tZ}#VO4?aUbn@>+>{I_~|Fi)fY zs*i|wNIqjf&iR&nM%VX8*6;%IM_x7jA+Fm2`hnv*0c!bhf1xK&lJRc5e~ot3hk5fc zPoW;r1ux|DaH+dVHx&I)sDszMmDg2jQS$GN_r|F80{QhuV58I$PnSHNP`@fxEbXYN zL5@MSti!(X?naajjP*D1K7t?H#_AC`xMtC5ot24ZykIyGL^z_BYDqr)MjcQ+`r% zi^|^257#$g+|`dyU}K+3?Yj3z%k<1RefJ2!(?$sX)W^M(C3v%mj;h$DD~*mXM+ySH~c(D>N6>QR;BIr7Naa<_|vFempNK4 zVD~hf9LE*BzHXnOb?u~I_wG0H)!CZ2bt1U(C_l=vL94p0HAa7CvC5 zgzL%&^Y_Y%O06rfZeq}4ilnsUv_vEd2%T#v{!*4wB&R0Dr;4={>Iw^WDMeyp+TiqO zUrX`ce!MUB=hRYlEya8POF2+=RHbKB`cLW!AkK5Z&swgeXG~S-`~O*?fAu#C%|55l z51=RX%gs^fk~IqbAr{-wFJE1A@uPoGWa~nOt~#R7PyV3LHCT2>Kihv-C}Vc_dX~%$ zBi@3z33Jg5>}{iuKkFz0qX-ZJTsvKFU_5I&wED&Nft>%N=_LQ3ZsJOirkWUEH7dOT z63wRH@UImFhkHME_e;!!&t#rFmFf8mL~5oZ+LXwA_%!(aacmrqVF5fE-gFddtVkA& z6$&9djJ?CnER;`Tli+omF;6HAaj}Jm#)}@|HWlYZ z;ruDMP9&}u$VW^1YA|)zbL~vDNOGM|DpUbv2ICe_Vx}|MBI}7uB+fwGG~$fJ#S!O2 zTnuqziHjy~9C1;^1rQfWTp)1~#07!Vh7lLcx!z37L@<+x2>}yI%sXJ-AqIZGK7^P_ zU?vh{1`|w77?=sfgo6npCIZZOVkUzLBqkD!iOI?G6v6PUsFzHqaQRCODyghUFj$|@ zvnCTW9!vx=m_L&hP7FHGStcm)Ke6$A3Y#EIX)-3wkvWCKoWfvESkw-aqJ@HCFsX2u zR0K?FGE9n0fJ}i*f=q+V>0J!w#2~mD%g3=e?#JT!ST>FOvII;s(BOE`E1-1kq1)&) zy*=-Vdzdg2cnX<@iOXLnMlvpsCuTBK5+ni@JV-bc6C@0}31WtNf=q&jf`mdzLEeF$ zf`mX-K_)_5L4u*MAo!>Q5vsXCs1gUE`W(ar{RIht3WNAVi$TUgkwN^R%OGQ+&LF-_ z=62I6ewa$?<^xH11858NZ-yY6R;4)8M4=wv+ui?}&BRomk!_)-cP_(AI`X&x856dD%``kHq||hYg66BxHi>2jB8Wf!?-rpJ&bEp z-NU#x)jf=BQ{BV3Hq||hYg66BxVG`!`y_XVgJ^Cuap@mVo}3IzrOwurw~u-m%zVFr zOU=LeO#sIF@T(>$O;kwoN2-mI7N4RcvKEidY^AWCFosU2B$4Cu)vpOxTWfl2B zZyO!Q{4qF!WrZtYJDPEDZ25cr0f*#$*6^& zi77g1Sa9R@L?wQ$>sYT&mM z<#61UGE=!}i$j_>Xe{y&jlt%P{_7|bqewii6WlEh^$WUXac$_k)%h5SLwBfd3^9q& zSCAyAE68+cD@Zbw6=Vi<6(j|!3X%#<1(^v&1xbU>p=rjq7ybwr`2QLq(jW@IhZZ}d zdq50e^4xAxQst;Wljr=A>`oEKF*&`9%uf;hm^`bCCch}+SSG*skc?3g(dkTkNH(d6 zc%sxlkZCHSH`5JDy^077622xQ zRzzSit(|OH5rIj3JDId15;p%vmaT}uC>B1DLj+ba@Pr&9FnhO^%$+j#-NX08{*{cL zr2cy>s)a0{1nFMX@5uUzm%siU#_GENtAc3^m%1}oDg3*Rf@6N>e zIB3`YHKrks$GB4<)1ubXVQk6`wVgX^IuDFZd7_5XV{FO`wWtBL+Uwp%%lBfK3;f^? zz_bII#K{-XkevtMZG-sZg@cU4I|uPoMw7=XqshK_`AGD^`-iLG4He+}w_*R?k=+;V z`n>8;cHISOV_ zP=kUS)ZL?C2L(MI|61bEuP44v*{<6-TH06iP6*pE6b%c8sUUvvrEVe^#1p>MVWL|W z;tOBuutGcw@rEyT80*YJ{NYR8BrqoK-XQBDCHX#G=2MuLvQ|dM`WKj`fJzyY_zNx z&wO6|o^+mq>z{Y*^>xRT2~*d2sw+PkH`9Y?}s(hN3AvO<`&ZS5w%U!q*hWrf@cewJE&Kxm~k;w3JUp;MuW!TOz`) z68>7e1NEdDhl(%)0%`3j}I^BUkk?NHJ`{Z^r$wJG!`w-mZbUF-eR z|EI`5RrCK;&A*wxLxA7raVk|`+~#*xIYp(JD*ZsEc`9A0(h8OSM5VO~t^K1yx2wwW zi!w#tpRCX?)O=s;R^=~LdP1dY`MEA>Z8(Nl}=G*ms>+*H`U{orSLrd8{!*ovRr)_vdRL{tQ|UvM$_o9`pisu_V_mi} zGLt<*)7ZCxi+7&kSku~{QE^Fj$D-E$%&qlZUg$&jhh*=3;Ef)(WG>$4hwir&Qhqf6 zBNy`eljE@zuV0^c_|^o3rzJ!A{Sbt!<-F6A(2K*qd@JF3>hj(PAMtWmGV)ofU{%!9)n`Lg$J4^~)-w?q2?i{dXdXHmvDx_~b z3K?3k_YxIS%BsHVfjQfK9t-z2NTQIDi}tmNLdH}a5rvGXsuzXaa8?x3WATBTqLBKs z22sfTXDH;(A%$FW)wPgOH4laq(iDqAnhW+Rh0LzHOoi+><{fA<5RkD;4|OVKtWwGt zS$QJ>LwAy9;~7y%llA0XQAq#lW>Lt3vrj=1m85p}kWyN1x|T9&YpZK1KVZL)h)zhG zw{S_GwXh&>QFi8Bk4V;|souE#;DxU`ddKnJmim+XcccW5XZ^Vw&)lEP`|chupXKL= zS+3IELpe0FS8A$FGN9KZ+tR2LBsEr=sbeIcny+Q)T(*STH5>WwOG}ChEtb4xh1R0d z$_>|UHOIqC=rtwGTX_CPC#`q>R+~_`=h_3B;?Q4IbGGLlZXfdj>qtmRpP!pwSX5D7 zT2!!P;R1i-WcJ8+Q|<0!R~x(id2i?KbBFh)N1%LpJ1%yhd=E}kr3Z=f-8;N+Q291w ziSjkuBdL6S=W<{LC}45)$O~A!`CPA3z^`XzWaZ`;l~rt5UsX|J$y*W{h*cOpZvI=g z?>l+DxzC?J>TbAr>_BF;MfQp%FZk(aWx_JV{`y1&c%qYCz%cjMpob$6DeYvY)dyydnx@9#ZPV8E0BQvjEG z_ZLjYY{(|K-qlf9JmP&k1Xj$eL&=7NH&4Rs6FIQKjEN|6LQ@zlT2AN;$J$ystS16? zEr&gr48pHQ;#KlvQ^?(06a~jmPH7;*?@om$$Y({<{$eydLtgMM?a#jpPm!;Wq5bI? z=mZarrG2&7-;RYp$%Eo(pDXs2V&5tDeR1$OxpzG6L&QEZp37T&(Fuu~#-*;EQRu8h z0^E*5H*{(uk~z1cuVaL+)@7g%bTx&`d%V$AI-knr&ZX!=olfI&tqJo$6FT4HJOhlj z7OH&O7hHY|^}E^yobe?GuDSC*sn@o^FP8Ot%&NWX!=!?p=9&5Z)gv~~ezS~r2oV+ce!rbS?RLtuGIV3{YdOm7reJ`h;W6Ij*> zEK3EJmj#v^1(s(7mLUSg^V&5ZB^bq)CjoV}a%NKwudUEPHk* z0Lxfl`LM_cEMt8_W%WdB6lPF9Xb;0)TlQVD7+||K-#kfSCoxumfP8 z@dLN4bpXudlEc?Lc)who8wf0oY1OT6kC$Q8dI5Tf0?Np%0?I7{%BbxE z%BW@mWk#2Pavqko1IiQuWm2br@{WM=tbj6KK$&@8K-naqTu30wezygdc7f$>fn}}0 z@`AuJLZG-w?C%LIBL#lT#NJLQ%GzE5rd|LTDE3fEsAoLD+-3rpu>kYoj%a`x12Eey z-T*TeU{?A8!(f2fkPGGxz&sobFzW!OWCfU)0Osy6AeSxy%p5Sjy8-4oQdUbl!0hd` zd*CBgxpUwt-wK&cZu8xoS@5O#lK0?P^9^b6viahfaJhM=_+CL@dJFwa3aRmXp^^VrXjS$_fnvTucwd?ucF`& z&!I37FQ$N1Q-bd zjA{W!i2&nFhybHGLx8b4NPtnFE5PU~AuyzSWg40bC_O0j6=+mN3N)lzKY>P%O+{np z02*iFRW$MljoYD*qhS|lEE8xf5NMI5430*zjSz@bd+8w45)1sYcc8WGQf zM#W=jlnXS@M+h|9vjiGDA_N+@^935+r9w6CmI~Eqw0H|JHbm2RQ($NUi@qvg(RBOL z@qM)kF$vilZ$UH8B>@XppZ87U@t@1>j*abQazt!8ld9VH&t~|bB$u`?_DExVw+_|i z(V{Rkzou9;#hOkJ-rIJuydX17V_@GH0%NmFcb&V%(OUCDAO1~W=ehG2E?&BN?V1&>L# zvKu;{!ld+reeU?bF0#JK9oEcIqsXzl=|5{pvCB^QQ1mY6z8{hKSY?7Bp8lQ);zgYj zK|JF*3gStc4Oq>R$oNJhPhxV^E&2+NoV>#e{Q`agbze8#O3rTfz*lzVe5XUHcHIw_mET%!|+hb?@MWobo*v?mP+g9{SP`*9zRv3EcYx?iPXjUV(dy1NUSn z?mHZ~*9zPb>2$jV;JXCy!FK_C-?_3#2k;>PzV&X|qDU9u7gjxGikG6)O%4q9H$HO^cX;}ou3AeBNuG;z7DWwDm|GrYZDgBNv*q6 zJeU+@JDvy^2B|4Ku~rV_>9fwH&>*{a(@YdhE^T^`OM#X3vpIk8KIf9%{ZlxVUFlq6 zbFb3MO*y}T7NN=!+tO%IK6igA$7uYbYcpsVep$nG8h_8forsv8yyYT&Fi4tru$}xt zDR^@ad5x0CtOg3>OQzCG^x>iYlnrO^lHPq=w0_^E2i+4f0*;R~V5Qv70kr)#Ty&zH zx?36^ZNs9o!=s&Cymctrg@>Uv(wPERw0Ebtpq=AH`_^kldutz|Js+)g!49L^et8$40Cw4qpO|gC`L1B^OmYD`+X?oa*9`VHiNMafF2J_j7huQk z7GN(?z+PG}z%INmz_v69u(w?mVCSCbC9vhFoiw3B@}GBac+D=|c<@?FpMo_$PPX9G zL>k2MJ&ZXzZijjf9@te=o;N=wegcy+_TY;WkEFKxBlac9p=2$kjZ=Al{h{IntTc`K z3JWINPL|Kdy3)w=vAqAz{v28t8+#l>P4^Bh0XzR5Duad%2rA|#aJjJ@-KmlUF5Ry3 zhhe5(1=~?+M$gKggi)O!)E@DTiRjH#ASoY7*VB-c*9va40lhBY>0G{PrFgx(C)5+6 zd-?VPisbW+6w{Z_MC)i2t1(@RRq6c_MqV*ibSQcbDi6Eo1O7nfk}Sy>0_f}M?WV1# ztGnxA=fjSU_V%`pb~1Fpk#kzW;itgy&EaE*cWo?LGJmcIhC+cy1n=#-b8<^TdKBPr zE4e?F_uW2Lp6UkNBkur@hi9vDfJekR;BoKpVgo>kIR-qMj~9TQcNcgx)&P%%z~g=y z@TdR?w<`UB$J~0b?Y2-nd<`DCC=d^y{DAN%2d7!)03;u)ixoip2#_KH$o@zH$lY84 z$Yue^`FH_H^IQRld_VwlI2M33+dY57HL^zfZJ*TF*W26E)7?#5SJ%U?j?Rvbw)WPx zHU}cPX9Xgrqxgo1`=Op=hj!YF7tc#~10eJEbpVjwyJxmpGh+dWx2*+$G@PtVHvo|M z`v9cp!iGfvB=#}@d2lSx7bqm3#yDF0=^_u*s|zu#C^y%FbIYU0-=IZ&+6Jz%28toi zy9Kt#PQCAKckVwZOYq_f$oS_J5H`2jbyBwGV6DB1BlVd3YlQs)sBJXr_BQ2>* z6`*urbYnJ`4hc+-#sHHhQWA}V4P=P&zwFMSP)X7+m6E7!|yM z5h&_BFGOg6|0FIo)P}mD8!aE9|DL$*9W;Iz8uaJ#1AoYQ_@qmrC-te9qAH!=70mf2 zPwHIng6M}qV1C9Ez3gv~>lxD@gqY<)-R+hXoVyoHQ>Z&;%g7y(kjsKNzvhnqH{S>; z6<$wYwL9k6@FR3-i~`Fw^E@&4hHrx$(}01)rfnJiXc}Yv@EMuINHjO<@owrWL(x#q zKM}?sUJYT)|BTere)r;DTRvVw0p=mxH()$)Sqlau&ZAp@*#N80sz(HnRh#KwOE5{l zsKyIlP2jPRZ+fx*z{R`oP*`8~y^L8|=g~Bmw)vw)=j9NotV;r@p{|fn418c;UL=j9 zWzkc&q}NJsWS zk3-%aiXp>gNWo|zU+;$sC>9=HUMJkeHa(J#BB{O@N$IEr1sEpGJ>+RfNkun`FF~FX z41-i5AsMepzE7`n58mSzJqnlHf;YDhHw)=RroFgVF7kB7AkSqKr(4V645J6riC1_5 z*&-1nkk18Tj3^7QuLs7+%b^4paAFa%oYs*J;HC3jkg{=<`VZT2Cw>uc88_mA7<<`| zJ8K?bUPZeBDW{RL6**#%BOfwQ+u3;ef<*j_&Xwz z!-@ogv(u=b;&$N+2STRaCDd;VZ!-#FOVPk*E`#RL`ULjz6}iWb@TRCZT&n3=Xn%t zy*>|v(I~@W)z)vzfDLdfs4L-!RzLPY$;Ad4n7F#*o3bepNHb)_bc4 z+xjL<1{}uLQ$vQa^#x~#vvrHZ)(cu;>sKANKK};U`lcbao;=jn1FsLZb=xa#*_Yx` z4^YeA=xEuks;%1{E&H-AN6U_p3%R}&hMeJO*@N1kSsAXjUIt~f53==rXxX>>!s1ff z)Rx`cgG>iu>x-#nkH;&&4lU|M1A7K%=60cFy@WEw-a^ZMAsALj!LB}Pzicp;OE|Fv zS6gQhaNWhy5uM?77fY{#j9$94UB9h| zu@xY}(XMZY9qVtoSbA3sa+J7O`T^uHb-7sj0%SPoV(CX9FB-7)Z{dWatLE9NZTchG zcE(>h6$DLx@8a;btT2Q)p(W2a3-NL@PN%2u|{(JT2upsZiK(cjo z?Bk0bV8&}lZ5Rf&_mEGwH3FUHoC?5Q7|HtmGPd5s<6e)(h}xDW6!IR1TaC8;P54&h z0nA-Vww<`&>&fMpd?E!SqP(xhe-=%MyOZ)BO^<6S7ZICm zN5lrE))Xs3HZ3A#vq6MxvMFT4@6-QI=T#K3k=w#Vux7K^KM*0C{6vcBopl6m_>u%f z_V`W58ZBNbLVVlB{<;YC`NdPXFH7tz#eT2YpAZ2+k2neg`iedN@jdt$u}>EJ6qmh{ zBJzv#uZjI;vCoM|U{RKgMEH(r6l`ovoyOdKJxzAasR6)y_5kpVePn980C@1iN&sF8 zz)kbEHv;fm06czc3jl8d;J#G{vFL{%1mLMvryfWEd|N00&$Cw6)Y!fY@YYHJ_#y%L zVi7)VOD4eOR?Q5GpV|fD3k2eg0`Y2rczc8k;`asOO9kSmM}WA$z$9DjtHgev*q?k2 zhigVkF9M6?mzGy!?L zRzSWRN**i#&J}yR z*dG%6)2|ltrdd$(K+h0@{H=*odLm}|=eW5e8mMlJX_sQo ARDUINO MEGA 2560 - (Compatibile con eeprom fino a 16 bit di address bus. In caso di altre eeprom collegare secondo datasheet) - NB: Nel caso della eeprom da 8k, ci sono solo 12 address bus, quindi gli altri 4 pin provenienti dall'Arduino - vengono lasciati disconnessi - - Arduino VCC 11 38 40 44 10 42 12 9 8 7 6 5 - Eeprom 28 27 26 25 24 23 22 21 20 19 18 17 16 15 - ____________________________________________________________________ - | | - | | - |_ | - |_) Atmel AT28C64B | - | | - | | - |____________________________________________________________________| - - Eeprom 1 2 3 4 5 6 7 8 9 10 11 12 13 14 - Arduino 46 36 34 32 30 28 26 24 22 2 3 4 GND - - - - - CORRISPONDENZA FUNZIONALE: - - Address bus (A0...A15): 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52 - - Data bus (D0...D7): 2, 3, 4, 5, 6, 7, 8, 9 - - Control bus: - /OE 10 - /WE 11 - /CE 12 - -*/ - -const byte ROM_DATA[] = {0x76, 0x00, 0x00, 0x00, 0x76, 0x00, 0x00}; - - -const byte ADDR_BUS[] = {52, 50, 48, 46, 44, 42, 40, 38, 36, 34, 32, 30, 28, 26, 24, 22}; -const byte DATA_BUS[] = {9, 8, 7, 6, 5, 4, 3, 2}; -const byte CTRL_BUS_OE = 10; -const byte CTRL_BUS_WE = 11; -const byte CTRL_BUS_CE = 12; - -void setup() { - Serial.begin(57600); - for(int pin=0; pin < 16; pin++) { - pinMode(ADDR_BUS[pin], OUTPUT); - } - setDataBusAs(INPUT); - pinMode(CTRL_BUS_OE, OUTPUT); - pinMode(CTRL_BUS_WE, OUTPUT); - pinMode(CTRL_BUS_CE, OUTPUT); - digitalWrite(CTRL_BUS_OE, HIGH); //Active low - digitalWrite(CTRL_BUS_WE, HIGH); //Active low - digitalWrite(CTRL_BUS_CE, HIGH); //Active low - - delay(1000); - - //readRom(8192); - writeRom(); - verifyRom(); -} - -void writeRom() { - digitalWrite(CTRL_BUS_OE, HIGH); - setDataBusAs(OUTPUT); - Serial.print("Starting to write ROM... "); - for (int i=0; i>=1; - } -} - - -void writeIntToAddressBus(int j) { - for (int n=0; n<16; n++) - { - if((0x01&j) < 0x01) - { - digitalWrite(ADDR_BUS[n],LOW); - } else { - digitalWrite(ADDR_BUS[n],HIGH); - } - j>>=1; - } -} - -void loop() {} From 82fb275d5b55273be36194d85fa84cdf1854e35d Mon Sep 17 00:00:00 2001 From: Daniele Verducci su MatissePenguin Date: Sun, 13 Dec 2020 20:00:20 +0100 Subject: [PATCH 2/2] Media assets and first post --- .../pat80-banner-colour-raster.png | Bin assets/{ => media}/pat80-banner-colour.xcf | Bin assets/{ => media}/pat80-banner.xcf | Bin assets/worklog/en/.gitkeep | 0 assets/worklog/ita/01-intro.md | 25 ++++++++++++++++++ 5 files changed, 25 insertions(+) rename assets/{ => media}/pat80-banner-colour-raster.png (100%) rename assets/{ => media}/pat80-banner-colour.xcf (100%) rename assets/{ => media}/pat80-banner.xcf (100%) create mode 100644 assets/worklog/en/.gitkeep create mode 100644 assets/worklog/ita/01-intro.md diff --git a/assets/pat80-banner-colour-raster.png b/assets/media/pat80-banner-colour-raster.png similarity index 100% rename from assets/pat80-banner-colour-raster.png rename to assets/media/pat80-banner-colour-raster.png diff --git a/assets/pat80-banner-colour.xcf b/assets/media/pat80-banner-colour.xcf similarity index 100% rename from assets/pat80-banner-colour.xcf rename to assets/media/pat80-banner-colour.xcf diff --git a/assets/pat80-banner.xcf b/assets/media/pat80-banner.xcf similarity index 100% rename from assets/pat80-banner.xcf rename to assets/media/pat80-banner.xcf diff --git a/assets/worklog/en/.gitkeep b/assets/worklog/en/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/assets/worklog/ita/01-intro.md b/assets/worklog/ita/01-intro.md new file mode 100644 index 0000000..41cbaac --- /dev/null +++ b/assets/worklog/ita/01-intro.md @@ -0,0 +1,25 @@ +È l'inizio degli anni 80. Nelle sale spopolano i Ghostbusters, La Storia Infinita ed E.T. Per i Goonies e Ritorno al futuro bisogna aspettare ancora un po'. La radio suona Girls Just Want To Have Fun di Cyndi Lauper e gli Iron Maiden rilasciano Aces High. Nelle case degli italiani cominciano a comparire i primi Commodore 64, collegati all'onnipresente TV color in sala, magari litigandosi l'unica entrata RF del televisore con un fiammante VHS. Per il NES, invece, bisognerà aspettare ancora un bel po'. + +È cominciata la rivoluzione degli Home Computers. I calcolatori non sono più costosissimi ed ingombranti apparecchi riservati ad istituzioni e grosse aziende, ma arrivano nelle case di tutti, in formati compatti e convenienti, a cifre inferiori al mezzo milione di lire. Il software è distribuito prevalentemente su audiocassetta o come listati BASIC da inserire attraverso la tastiera, comprando in edicola i magazines per gli appassionati di home computers. + +Solo pochi anni prima sarebbe stato impossibile, per gran parte delle persone, procurarsi un computer, tanto che gli appassionati col pallino dell'elettronica tentavano di costruirsene uno. Gli "homebrew computers" (computer "fatti in casa") sono i veri responsabili dell'inizio di questa rivoluzione, con tutta la letteratura collegata, come i capolavori Build your own Z80 computer di Steve Ciarcia, The Cheap Video cookbook di Don Lancaster o la bibbia di programmazione assembly Programming the Z80 di Rodnay Zaks. + +Ho sempre desiderato poter vivere sulla mia pelle la rivoluzione informatica di quegli anni, ma non ne ho avuto la possibilità: non ero ancora nato, e non si può tornare indietro nel tempo. + +... oppure sì? Magari con un po' di fantasia! Immaginiamo di essere un appassionato di elettronica desideroso di avere un computer tutto suo. Immaginiamo di riuscire a procurarci un processore. Magari lo Zilog Z80, progettato dall'italiano Federico Faggin e rilasciato nel '76, superiore in molti aspetti al diffusissimo MOS 6502 che dava vita all'Apple II. + +Allora, avete voglia di seguirmi in questo viaggio di fantasia che mi porterà a progettare e costruire il: + +[LOGO PAT80 COLOR] + +L'idea è quella di progettare e costruire un computer da zero, come avrebbe fatto un appassionato a cavallo tra gli anni 70 ed 80. Ispirarmi alle soluzioni esistenti, ma mai copiare e mai inseguire la compatibilità con qualche sistema preesistente. Questo comporterà che io, che non ho mai toccato l'Assembly, scriva un sistema operativo da zero. Probabilità di successo dell'intera impresa: 0%. Ma il calabrone, che non sa di non poter volare, vola lo stesso :"D + +Qui Babbo Natale è passato in anticipo, ed ha portato un pacco pieno di... integrati! Ma cosa conterrà la scatolina in cima? Ha 40 pin, ha fatto la storia dell'informatica ma viene prodotto tutt'ora! Molti di voi avranno intuito chi è... ma per gli altri, dovrete aspettare una settimana! 😛 + + +Bio: + +Io sono Daniele Verducci, classe '86, professione sviluppatore Android. Conosco Java, Kotlin, linguaggi di alto livello. Per me C o GoLang sono linguaggi di basso livello. L'assembly è aramaico. Elettronicamente, so cos'è un Arduino e ho seguito il corso di elettronica di Andre LaMothe. Sono quasi completamente fuori dalla mia area di competenza, quindi abbiate pazienza se gli aggiornamenti del progetto non saranno frequenti o se rimarrò incagliato, per periodi più o meno lunghi, su qualche problema prima di capire come risolverlo. L'idea è proprio di imparare qualcosa di nuovo, e di farlo insieme! + +Sono un appassionato dell'open source, per cui, anche se la macchina non sarà mai in grado di far girare Linux, gli schemi ed i sorgenti del sistema operativo scritto ad hoc saranno rilasciati tutti con licenza GPL v3. +