From f219ae43f718964bd052988988090c35bbc5adb9 Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Fri, 12 Apr 2019 22:34:43 +0200 Subject: [PATCH] more inspiring code example --- README.md | 79 +++++++++++++------------ compiler/res/version.txt | 2 +- docs/source/_static/hello_screen.png | Bin 28148 -> 0 bytes docs/source/_static/primes_example.png | Bin 0 -> 94852 bytes docs/source/index.rst | 79 +++++++++++++------------ 5 files changed, 83 insertions(+), 77 deletions(-) delete mode 100644 docs/source/_static/hello_screen.png create mode 100644 docs/source/_static/primes_example.png diff --git a/README.md b/README.md index 3ca6032ab..84423ebf8 100644 --- a/README.md +++ b/README.md @@ -50,55 +50,58 @@ of the [Vice emulator](http://vice-emu.sourceforge.net/) Example code ------------ -When this code is compiled:: +This code calculates prime numbers using the Sieve of Eratosthenes algorithm:: - %import c64lib %import c64utils - %import c64flt + %zeropage basicsafe ~ main { + + ubyte[256] sieve + ubyte candidate_prime = 2 + sub start() { - ; set text color and activate lowercase charset - c64.COLOR = 13 - c64.VMCSB |= 2 - - ; use optimized routine to write text - c64scr.print("Hello!\n") - - ; use iteration to write text - str question = "How are you?\n" - for ubyte char in question - c64.CHROUT(char) - - ; use indexed loop to write characters - str bye = "Goodbye!\n" - for ubyte c in 0 to len(bye) - c64.CHROUT(bye[c]) - - - float clock_seconds = ((mkword(c64.TIME_LO, c64.TIME_MID) as float) - + (c64.TIME_HI as float)*65536.0) - / 60 - float hours = floor(clock_seconds / 3600) - clock_seconds -= hours*3600 - float minutes = floor(clock_seconds / 60) - clock_seconds = floor(clock_seconds - minutes * 60.0) - - c64scr.print("system time in ti$ is ") - c64flt.print_f(hours) - c64.CHROUT(':') - c64flt.print_f(minutes) - c64.CHROUT(':') - c64flt.print_f(clock_seconds) + memset(sieve, 256, false) + + c64scr.print("prime numbers up to 255:\n\n") + ubyte amount=0 + while true { + ubyte prime = find_next_prime() + if prime==0 + break + c64scr.print_ub(prime) + c64scr.print(", ") + amount++ + } + c64.CHROUT('\n') + c64scr.print("number of primes (expected 54): ") + c64scr.print_ub(amount) c64.CHROUT('\n') } - } + sub find_next_prime() -> ubyte { + + while sieve[candidate_prime] { + candidate_prime++ + if candidate_prime==0 + return 0 + } + + sieve[candidate_prime] = true + uword multiple = candidate_prime + while multiple < len(sieve) { + sieve[lsb(multiple)] = true + multiple += candidate_prime + } + return candidate_prime + } + } + -you get a program that outputs this when loaded on a C-64: +when compiled an ran on a C-64 you'll get: -![c64 screen](docs/source/_static/hello_screen.png) +![c64 screen](docs/source/_static/primes_example.png) One of the included examples (wizzine.p8) animates a bunch of sprite balloons and looks like this: diff --git a/compiler/res/version.txt b/compiler/res/version.txt index 54ea73dde..810ee4e91 100644 --- a/compiler/res/version.txt +++ b/compiler/res/version.txt @@ -1 +1 @@ -1.6 (beta) +1.6 diff --git a/docs/source/_static/hello_screen.png b/docs/source/_static/hello_screen.png deleted file mode 100644 index 6e195427e8ed980dd8c372151968e37d1a1cc52d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28148 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 H(EtAc-8J}x diff --git a/docs/source/_static/primes_example.png b/docs/source/_static/primes_example.png new file mode 100644 index 0000000000000000000000000000000000000000..39012d0f5f80338c81236e2577a0953e380ace6b GIT binary patch literal 94852 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%0AVySW{i-EDGNC7VJ z#VM;=-M+D-MZmN*x0ai$vLeRG;Fh?FDpuwJyD{e#Ci&ZR7T0`~=2*c82Rs|XaL-nC zG~536t;>ls%_PzyHa-_$+wnEZ#OV>F=wqHrAgp_)^nK}p)~m|u?195Z;z@Eq;nm;J zr3)mOz|<<;m5mg&oJcYhIIpvdi;}V~99bY14uOf2Q;?6HFX0eC5GX|kbQBxUE5`nX zhaf;nGEF0FS+k>}$c$t&9F*h3_HvBg z=~H`acTv{XmIjsyWw!QoT(tQ5vFGMu(CD$d==ES7kFK4CY21^`lIBV>v++fkFzh)& z6ZMs80+2*d6`9pnu^mU*TrR&=>dsC~HyKxR+U8G-ii>l{#vm!155&d7*+-(%ZBh0c z^85PqK#0qzQDWerIprHkkRc6WoKfbb?ZJJNOS|i$!e&h5Ty&$N7{g9+Yi(HG4x5&i zwWS?3GTfWrNR++3eQ~8FssS?-)7;&}9_WgiK${T0pIu)UlHiCcqCtk`DJz_=07$he z$p=Rck&Mt^hYNTrZ){S8{ka7pm8bDV+LWWKuzf=h;V~_m^!|H8EhIK|<;~JkHT&Wow;XUKV#%#g*B>_Z0vy(k4^# z^Mj&@ETDt>HdODE|ItEs@VbHMq5lEaXeDRnW*He@VwNE_?)~Xf4X&%xoo2?Y6@Tgq zFp`S^!z?x!8Icn78Y9z-3+UTH%8=Lpqv;&O>*~5L{KQUU+iGmvw#~-2PHg7{jcqly zoiu3B*lmo)`u6+dyRQ5_XD2Ir?={z)_ZWkp|98_Q`yG-y&W^C&8~)~ftGl_>9b;#} zFl0jKmKQe{*W&g{tOI6tUheT?MvLaEU!`;W;^v~bh6cw%EGueM2w7GZ%RKJiKLge+ zO&uKrccB%8mZM1a{SEbJ8+^e#Zgj@u10xs606I2d)4wexkrw6SmMZf8{Aoka7b&tk z_BRv#=X3=7F~b)(igkS#y_RF|QnSlEXK6bkZ%&SYAtNN1Y zj^~e8XW#25#KC0T_SMAM(1=FtRlH-sSyF>=FYL<~_rq&3PQZ%sFU#a%Irm5`%OOgn zG|qGT=ZPl1s)gMHEX>2j_DDm}GkH){K}g@L`}CCY>AHjx@UHrns+KuY?Z zH!);1R>g`2_=UZBt-gIL32@nG-Dqs8nDS+qPFQgHICt}9Wq}t@N{@{Vyy0(D^P#v<%;g(QM?UTFBeERbPA>W!OlKZ!6 z_|(KDE8uL0fuMs1@8{}IB+CsY38S%$?udry9~~Jc$+-0trYtCokSjrf=BBEp5o(*M zYdoPkV^<@1EgMlF5#?=A>!WwPSaw(1qCsdrYVdsoqr8wp_IJ*)Y&yX6ZJaeqqsK|v zf|m zg70?fyi4zZ?`}O(h024Y4f<&-qJe!nL(jVPqAYzz4 zbs9X?H&=a%JDu}*zM*eD>fhmi#r^!*+32d>^Fte(B|5YnKQ^g z1m5eH)}`NSlg>e}=#eSImrW`16`h_3%sLHQW=?Ig^!-iAn6du5#_)MDiIM1YZXcQ2f;CO4p7tIK@sy)cNFHZFaSXxp&CWE+aj(Wt zQGw!GvzF=2PWL3>sLjs)Lsrex$zNuf?n6$%q*p5m4#f^x6SG5Jzx@eHMh{sH7*meSxxG5YVB7tIn=RQ;y}dsXlq!s6>HL?^oxP z1fFVoN79_04ygkRP_KWl{#y9)PkQed?%tHBsW-X3TvE@=Zz@K%?3k1! z>#Vo>3q)=64Q=OjCp(bIVYEAK?M-DE#3wNuM1{eYGnxOv7zJ@P00l;+)E({cZ|xt~ zR@woRx1{P2?h>_6U=8lf`LBmu&3`dEYagcinwg!AA9`DIhh-kr)b`4o7Zbu0>2l6D zTJzd6wU190zdwI4JYEV@Hd&S>LEA-OoBTIPcQu&Mv~QvkY)iec_+4$%YN~~KDo1IH zEL-vB=`UpfL`+!J!@|~%sK(tDYXrq*2pHGm0Kn+-UIC|;k=o^P#5B^TTD|gG-;!D% z7^QiQMGpJgr*`aE+?jTR1?vC0tQ&ihkB?^|zK23Lce`g`r2`DTzC1wD7?FtNlVz~# z+?7zzQe{lBy_kal+gCw!+LQ@(zl#BPUdwN13;=>nh2g59YOXk^*!(?9fn%D7P-xm7gh250ch8K8vIY&51bjRcP5bviwFN&0LofeFk(uLYNeu z!k8HtAt#!pt4bR=J7;=dzjXM%BDACi5hxoLw|10Z!~Jk*|)bh zhMgeF9IjbYJNntY?$ss%1)ngC&=4fOl?mLqnXhy1uX939TfSra#i2z*X%+K2T&pY6 zO&iFHbrb&-K~YKhuJ6Zz==$w?ZL;DnW3Yb{Sz}?h}F_Ou7 zx$O&bNV|E43Ku7_)RXy&qo=EXJlFfW+4Y`YMxAH-Gmo_vlYhPXbSk3LHv82Hs(oQ8Y(4 zue9HT@hIqOMmEO1{b*3z)0?sN?MMy?|x<|5T zv&6tbc}-28Qf@U{grIvI#|(3P$_5$Z$1g6RC58ly)lI$ECapO}GBxO|OiXiLbR;rLh|4QYnuD{IR&$bqe2 zY_=hCKcXEk7Wbn;Wv;)~m}zPGtM=PIngrz|+S`H8klm&j+C>*v(F`X&eXuwzHS?zKH?2EcFu@B8bGonS>Hi>%HF*N=lF z6Su2DIwYjuk$A`UEJ7)w15xu=QmK-XdNOYCyx-X)%u_5Gq$rFeMahV+(U6~So-Slj zTQ*?GBk?^Zq*^`Ofjxy9X5J0c0Tqnxmz_GI|N6A-)@jDHwmqSf(~+Yxchgm zMoF*96(~RsWPAgAsq{G5sa04vmJmh|dLWlI2`wcU)OJnlulBaFlegxnqY*^kva^Z* zb^qO2ockY}RCfW?>?|FD-pT8o7=A(T4LjiBqrQ+R(SanUIQT`tzg$hOY-t3;_vgUX z?ZKU26W`!biq*0{wDv;`~){MSH}~`*eke$FH<0rfbsR7m$H> zzH=6KKS8R8DA_p~5y~zKe+n^VPI=yNp`gXro^Vt>m8I`3m2s7Xoj*rBuN|kI%<=5lf7J(BKL#Md+W+`VQXpR^I0Tl_}J0$5OF%- z<`;Og@9ukc6_WyzRbN}%*fT2hd(EpnT5U0v*01PsOsw0ZH!r;w9$Q+h8w>a7%!C|% z{YhZfo+AGZubRu370m?`{<-!?d~Gkg%)n2WWsovcW?3?a%OvE**V(s^F9j`uI=HZW z%7KA73g9bt-tVPZdIzBm&yXy_{a^HOrW^6X)a58sWK-wqv&!#-k#wHmrF*Qp2h1Bv zO6(z@f5l&{%=!rUZ*bG-0;J8q|4?`uK& zCF_3r&yLxob9~J*Upk^DJhRFT!+S^m0qPgO=!qOo6|vDpmfZ)9->?r(x65wLH8$>#*535_bG)iL`(C zqA5+5`R3m`p2Dgj?(N7BEhNQe#qMM`Rku`2M^H+2pVA2d1X- zm&e%;?iGMM45C0MZFYz-QO|}1klv%)vTnTCm?H6QRy_Q?-MIemg9m`Sy;84a0tZE3^2@_L#Hx~CAGt(r6Rx1Q5 z(dKw4l>hasVYE8JEK{m%IdAX>B9HS|GFzHofK;T{|9hT5`|ka3G)d22iHf3Xo;0+_ z&kq}#@8neL%eq5q#k@>b0SoCV;jB!K_Hv=-@{PY>z|(fOrj|^0 zLBUb3^E|7GqCS{ot1IB;&C9Qw-{&ffQgao$X5mYq2(`^{GGC$R@#op$mJ|%?OyeO2uu$ zLkkvBYfbJ*!bzB7%XEJc;}qnAc-=GMzT{(=G@}X`MQAEgW51eg_UgD3*<{wgma;hS z3PB`8oBf6GQ!568e=Ftk`CqN|I}~8LH(6Ngf0c*<&b$~>P$4)!3gPxb+38F&GA<1* zA*iU8l4Q||*)-5iuOW}8XYR8N&y3~?gST~dWh~l4N{z|z83ltK=dJg?SL`$>px(L1 z0kn=e-c}#hN_pu2i*;(FmrUa=}X`BY1qm%7K8; zp4aW)f4Ob{c56Di`9Pr|31PBw-ac=(k@F&-IWk{xCMy_>kf@{Qv4NkUVjF{?-7Y6q zf$o9HhIzO5F~_MR&~$qNLkIN?>8zMoh^b^ruql+xj-VnHhP9V<|ompqPdM;>6|rPteK_o?<&lRhkBH zXYeDsN#H$H`DNzp6z|L&^X=@U`(|GtxLNOTySG~~dq!>U(_@C^MNKPZKk*^rk< zyc>>Mrmd}m+obO^ByOF-%xp*P)88tp7Wd(X#O`|8TmXE3<0*;DRK4tykO6)JR|cU zvw!r%n?HhucKVuk8B!%VF{~wYa2*|I!$D$^QBi6~zPE|Fi%5|H{~kS?+)r>|VY|?& zp^WA!WFhYpP-KfGnbRzm`$qqzAs-db4w=U`5th_md^0!IV7ahg`MJCtvI;n2_nQ+3 z4Dyj9Q9$%3%_XA3zP!?B$OC@RP)Vm=A*NyDHO=L9*&iP$&>#}_PO4`Ij3|r*B`xST zu}pP4sy)~wk{JvXEw&B|%8jC2aq>xAldAbg4mb|u@HMrH0P!s}j1)Sb_jXvZkjD5Y%={R; zBgT!O$Qx@UU1tU1^vmm}r&dHYfrwDA#P8^j_QW+Mw*Svk>9Rd9p zS~&Jn|357r9q}2VTxt2!*-fy8pIPRGLATHAga9D2gDcRX$;gptggoEw&Atc=B(r>e z={^9Q)+$Mym`*ZG8nZyE%% zv(4|ymA8c+NTN`$My_;p^>ZMmr$Z$K)?a^XDzu;{yNO11c zX2hn=GPmppa~_-UIrW>A^_HY~?+D3WiNdW9Q2^#YIwZ=`9I346*V*-n+^h!Lo zY!p@WGFP~-<0o2F;<@+=vU1QXH7>JBaU1u9^R|E7tidXJ%+rJ=rsX1js+B5swrOLm z=|r3e-N71n^|_#2y3fLs1hcYT5K@$s9yBiER$5~C^=L5dh;hUr`wUz@|oRy~Q^k4rzXONmts=v-bW!5Vd2M>gqWqo zh^dw=X5QIubJR4!mva?UaI&wB0up{)4*w8xwn=80_>9OD5Yy(VGzTYb(BIApI2STN zHmxB8`aZr-it49b5mD^^*eV}5!eMzex^lg&+(VO(9sHgm3Yfr5Oa8(9EdjlqwwN-h zm^fS(m&;8noa3nn$;&1?$?hObg!{cQt>i`DF=HSP2tNP4TCAl|Gi(_bnZcIZz(ecBqoP&&w z*B(TjqvQE@^OwnQ`=@0x--X=s;k} zacEly;xRkO)?7e4g2j1J7t``_E>JV-HyRAKnBk=foU>|SZ(R(}j^NOMC}}EL+EPpU z^e4jATZWS#TC6P~*1DM!fU|RUh9i_OL-c;n#)u@ttKZjaT=0xj9~`VeaM5e;5(660AJcUJ{yn%; znRhu_6k_Tg*c^gdsWX^w>)YZj(`VksJ2_uRry-%%(Y#@KSIp~gFsO1yZn3#yM(t@z zD-?+~!*hzynO|OosbGggVcHO9$xT;)bxinmzS$L(+)y=S?b5%Rf=pBtZbg_Lo2WagUCcxypa`YhFSu#ASJSpj>!6==Hz4uXSsg2QTjF1u+X#MU#M4 z>*}wuCJVT~7Z=i!#i|Ud%!Ks|aZsqJora+|-Cv&1`h#QUE0U*1I^3Nh3rH7@*vr0y zsOWhU|Mc;`f$-k#82TV9pBu7bz3)&UGZAj=@}iPRDg6(Aw7sr3*%Jl|Z6LrSS5g z_nZMz&1;`P2ZBE(7D`BUbzgU*XXXLmkyWN%l_sBEx5EWf3nxYz5-=EBT*fFW`x;;V zB1eUxI1iAoCq|bq3_y|+S*`*H-+Q>~NZ9cW>(5mgdkxCjuL;qhk)bz8_dEB)I4dH6 z=&Hyz$s*UsHgmLrtERv}hK&v{sgJI6E6}4R>9ET=bi*&V&IiyfnLFEmkNATOp`V77Y&gETF!5%xE zLbECsd<3M!+D|buG|?qNW?8u(XwaA&O>$Nab9wzq3?ilFQ{!zHLJsGI#hp!IPv+m7 zY98^4JEu3_G_>AMiRQk`$7|QC{9tUXAVpGOU}Mk){sf&xTW4pQG_4!o!217mJc7ZL zz#LtPiEsYjIn~#%vz*+V&E6->lIR4d1Zr9^Y988-fkBr9Qb=meDcJ3la#(eU{oBvk zuWHZ6zZ{Lcu0~agxcw&gClBzJmRx&;Q_3S@+x}e^)ep)TxC><3wXli|@9$HLF2;ET zz^i;>XSQ5_N@?7*nNogj*{?%O37H)j;0I(dfu{tJ@jKmfH<;s{es>6y=^LlqY}rTC z4Ju}9e2K(DBZRNsbdzYa@M5K+ooGgifn--fK`K}9SB8A5rIfw!dJQIohP~;kaa%P*-NiJ~y z?BOmxM>KO77R$8K&&lzKyC7hBMvbSr z6N%g)#PUcv4hw50B^2|iKnT|K3<{uHvctAtZA$Ux50VC@)p0@D8gIG^bD)ZGreMQ0 zs1!4t4jMjuX3Pws{6@!mJz4Uula$xae)~Y zYd-f&eBeNiQDa}#~k6f^~5rq{%B4Y51WX!3wGvFO7cMV3|2XZPcuzsA#|-n6Nf=!h`rS`o#U9bPN*x6gSxq$O3F*-g1TXv>@**SW}= z_l3Syq6PT{v=QG&d!sP_w~Ey)N=m~{nn^9Uo7%>PmFYw%@K2Bq+dU~?gadNRkIA+} zq!_v`J(*^{y8gX|?{tVQ&xC#P<8EpSPBt8~rvDJ)cxKNeQ)f0%RGM?$AF-?7 ziT}BIYP0e4KYRV|weD$C`Wuu{2ax&RucY;Z3|mJh^UrOlAMIY~CW=7T3VgOlYGk?o z%WK=>YDkW2g6uTKy&+4vOmt`2Bau{qGmNo+uZqatI~+i*R0-H=rLT4ZL1bN>6Dy8F z$PT~5%OlW&Jc!)=72g5F_=UBfA!Y=E9l-^YRk${zNFaM!f|zjK?zXV57yjd8nohTS zAeuU9tV3n`-qE7kDo0ebtZS;grL`ckiw3!6<{j=JUL?!r;MfTWye%v03w7`h zby-WQrlLb6lZPxyE;};MB9J6fLxTjm2 z3-`G6^T1Wa>x>VYuLvNtDY+4-@d@pn4&t7 zL?|GtO5m1`;9hsR{$-urRiR#aJf}c!5SPdje^7avS zb>9%1bmKR?os#t#ObJ+meFkyR9KfB-hz!N1xe*kYh^H#fOa;_dB`j_%Nl+2c z6imC@yy4v4vHeTEtEvAo-YblNEtkyjfhwZmS7rIFIU6_+DFeo7g=I}}gA2*wv44}U z9a4t47%(JT)SY~3uwP5?u&Gm2E7==zavL3U;gT*nZl2Je!MaHK)6D{@gfbaVSV1(> zI^2|S9=$UMGVYt598v}f0&4^m1Ryd>cnT7&!lt^6R$?RB)RFfaJL}`Cg=LJ=*1CxD zW3KwEkn6Ydqx&jm#-Mk8EGe@fv;3RxcG*t??Kcj0D{5)AkAt`V_a5;0lJEU8So9Yb z0l~LFXBVSqOB0sr@y0}Bq$@WsNk2DMC1m{JzFdk7our{rKmMq$X7}{`_3z;x4gP8J z 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 z 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 D&O9U7 literal 0 HcmV?d00001 diff --git a/docs/source/index.rst b/docs/source/index.rst index 463d71f8c..69db6ce13 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -40,55 +40,58 @@ This software is licensed under the GNU GPL 3.0, see https://www.gnu.org/license Code example ------------ -When this code is compiled:: +This code calculates prime numbers using the Sieve of Eratosthenes algorithm:: - %import c64lib %import c64utils - %import c64flt + %zeropage basicsafe ~ main { + + ubyte[256] sieve + ubyte candidate_prime = 2 + sub start() { - ; set text color and activate lowercase charset - c64.COLOR = 13 - c64.VMCSB |= 2 - - ; use optimized routine to write text - c64scr.print("Hello!\n") - - ; use iteration to write text - str question = "How are you?\n" - for ubyte char in question - c64.CHROUT(char) - - ; use indexed loop to write characters - str bye = "Goodbye!\n" - for ubyte c in 0 to len(bye) - c64.CHROUT(bye[c]) - - - float clock_seconds = ((mkword(c64.TIME_LO, c64.TIME_MID) as float) - + (c64.TIME_HI as float)*65536.0) - / 60 - float hours = floor(clock_seconds / 3600) - clock_seconds -= hours*3600 - float minutes = floor(clock_seconds / 60) - clock_seconds = floor(clock_seconds - minutes * 60.0) - - c64scr.print("system time in ti$ is ") - c64flt.print_f(hours) - c64.CHROUT(':') - c64flt.print_f(minutes) - c64.CHROUT(':') - c64flt.print_f(clock_seconds) + memset(sieve, 256, false) + + c64scr.print("prime numbers up to 255:\n\n") + ubyte amount=0 + while true { + ubyte prime = find_next_prime() + if prime==0 + break + c64scr.print_ub(prime) + c64scr.print(", ") + amount++ + } + c64.CHROUT('\n') + c64scr.print("number of primes (expected 54): ") + c64scr.print_ub(amount) c64.CHROUT('\n') } - } + sub find_next_prime() -> ubyte { + + while sieve[candidate_prime] { + candidate_prime++ + if candidate_prime==0 + return 0 + } + + sieve[candidate_prime] = true + uword multiple = candidate_prime + while multiple < len(sieve) { + sieve[lsb(multiple)] = true + multiple += candidate_prime + } + return candidate_prime + } + } + -you get a program that outputs this when loaded on a C-64: +when compiled an ran on a C-64 you'll get: -.. image:: _static/hello_screen.png +.. image:: _static/primes_example.png :align: center :alt: result when run on C-64