From ebf29e1b06529596249a0222f7681625347bb6f4 Mon Sep 17 00:00:00 2001 From: Jeremy Rand Date: Sat, 23 Jul 2016 10:07:07 -0500 Subject: [PATCH] Add a screenshot and a link to the disk image in the readme. --- CurtaSim.xcodeproj/project.pbxproj | 13 +++++++++++++ .../UserInterfaceState.xcuserstate | Bin 11246 -> 19022 bytes CurtaSim/make/V2Make.scpt | Bin 4652 -> 4708 bytes README.md | 6 +++++- curta.png | Bin 0 -> 8754 bytes 5 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 curta.png diff --git a/CurtaSim.xcodeproj/project.pbxproj b/CurtaSim.xcodeproj/project.pbxproj index d5623e6..5a9b3a8 100644 --- a/CurtaSim.xcodeproj/project.pbxproj +++ b/CurtaSim.xcodeproj/project.pbxproj @@ -24,12 +24,16 @@ 9D02B4EE1A1C5B62002799E3 /* curtaUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = curtaUI.h; sourceTree = ""; }; 9D02B4EF1A1C5B62002799E3 /* joystick.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = joystick.c; sourceTree = ""; }; 9D02B4F01A1C5B62002799E3 /* joystick.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = joystick.h; sourceTree = ""; }; + 9D6B474F1D43BF2D00F6D704 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; + 9D6B47511D43BF5100F6D704 /* curta.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = curta.png; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXGroup section */ 9D02B4D21A1C5ADC002799E3 = { isa = PBXGroup; children = ( + 9D6B474F1D43BF2D00F6D704 /* README.md */, + 9D6B47501D43BF4000F6D704 /* Screenshots */, 9D02B4D81A1C5ADC002799E3 /* CurtaSim */, ); sourceTree = ""; @@ -66,6 +70,14 @@ name = make; sourceTree = ""; }; + 9D6B47501D43BF4000F6D704 /* Screenshots */ = { + isa = PBXGroup; + children = ( + 9D6B47511D43BF5100F6D704 /* curta.png */, + ); + name = Screenshots; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXLegacyTarget section */ @@ -227,6 +239,7 @@ 9D02B4E81A1C5ADC002799E3 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/CurtaSim.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate b/CurtaSim.xcodeproj/project.xcworkspace/xcuserdata/jrand.xcuserdatad/UserInterfaceState.xcuserstate index 40a481f2fed24697e796d5354440a1422c949163..5689f76ada7be57e6cb48160284cc22f15a348d8 100644 GIT binary patch literal 19022 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 L)qK{z$2IsrO_@A eoS%}JmkwbYO};Paz>`>0B>(^b diff --git a/README.md b/README.md index d73e193..aff654f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,8 @@ CurtaSim ======== -This is a simulation of the Curta mechanical calculator written for the Apple // \ No newline at end of file +This is a simulation of the Curta mechanical calculator written for the Apple //. + +![CurtaSim Screenshot](/curta.png "CurtaSim Screenshot") + +[Download a disk image](https://github.com/jeremysrand/CurtaSim/releases/download/1.0/curta.dsk) \ No newline at end of file diff --git a/curta.png b/curta.png new file mode 100644 index 0000000000000000000000000000000000000000..1f56d9030898f8dd64d9cfc17ba31c2b06d799da GIT binary patch literal 8754 zcmeHMXH-+$woW2QQ4vK^Q6z#ODiWH2fCLpe(mP5A5dnb!Ng%WYu%SnRqbOAf>M<$^ zSkM4cqA2l5iBd%A5Fiw3hMGd&hP}_d_uTj1uXo0HW85LXlAXEcn(Le2{MOu)t2S1@ ztP__JhrwX$Oiviw!C(kA7z`dSx*B-$qWM%J3?{TL;Mg%6(__bwHrSA}0YSbnm~K*% zqr3kO$4!Q>aefNB8|{O%F5w@c*D0<`b<(<9QXbdUrHx55)ozy`J~KDbnDIxWuI6k0 zUF+jEvFfAQo8DDZpKifP`AYu+gp&zh9wIZY=*B<#xnIaGXu(>b^A`lvU4VL zV*;-!3NRZCQQyq^<0J_s13pZR<6Jm##g> z-o|)-YwcPh7g9}RHzUL3PQMs>wB||*eCnZNT?9Oub3+b2>auh0^e|Q3=p8D$w9lul z24_f03OGBU(%*bV*wOynm2}CJ`u7VaYq{!Azj)?Zo*T;_9=vxtJG?9JS?Hwq5;^#d z|0Q;C%|k{e+3@0|w;Ol=K}A-d?K|`Qn`9H7Xn$ZZ@zsvrj8_=tN>+H@drfirr zc6-txl3zvsz3}C)yGX2y+H95n16LS2tdI6@z82)CzQ6M(;vMy%%a0%WLbR*pu36J` zEH~Ib_Xlfm^k7z9Oq4N?QxSDyj))~68Xt)rW?xJ@Ai{f)e(S>KcNeb2-8DHf$Le2t z)@dfWYTG%PLDM+ZoA)JLQB3z>$}q!x?G~LDIdkbTPJ&&Y!1%>AY<#iv>H^#AN!INL z%0|Z)ZQnO;i6zHg(k@7dt6KL$OjtQXEwNJE^3E|-M6Uwtpj4x1i0x!#17_D3eGc*fnpIYd>$mj5=&Gn_Yjr&wUrITkHiLIBk_$p;)Z@*4zsFHHB=7gSvz-*E#uM? zBOSGs>Nk=W_{40NLeS=&(%84!eYV~jKlZE@^*L($H6g8Vj4Mq>iX_uXRhDUc9<_c$-XOp+j`J0K+;~{Uh46) zmLuyEUr-|Qf)QMvZ0lppbGy+dpKc<;xmgc0wyt3_!MrK;v`n$~zO<~-;VX}}UjAT_ z>~Ejg9_+GRc(QvYWhPtW^?E5+)nD##*V3xc)8DzO{mCV;v>ovYbOp>-#z&EEVO{pc z_U9dMWN(~^UDMk#|9!5SqY+8sw~TbY!#!agh<~Z0pHtm4iT`3~Bq)ISCB?z>$gz$# zUP~c>O0)(zoWh^7w9xYj30Cz!6LQ*DH8MC95Dpm3AW{$b80?GpMn(n)VQ_kphvio+ z^nlOHk5Tf-6%%~mVfj;*HppWkSYPBpRV`IDc|&m|5@~=vb5_sJ*aTV*d^;@fkH?4V zp-=<@L6xAX8iMshsUJFY2&JZh($F{nSRBAbVesCO2QWAV(8-^EjD2xF*nm)cKnMo8 z?AQBrNI3qmy!`S;|M&yr#0Q-H=S~Z)p}fA|KL8Z1B6I~EcgiuJ|e z0RM&u4OT4w^6a1cfc7^2A@~pg1#EziDF*M01s3DIm!mV(fL8zS7XR+c8XMpXoO)%o zI<)#B(t+XGil~AH_}(jv(z-E-c2X3Pv?}b()=|_!6+UEM+k8?E|j>I&DTuLv#Jw& zYUim`Ii`TWG#At(u}&$KH_66Lh0jr54x{Ck1P9 z9KRM`H}^VO$uO2UJ2W4`r_ND-^T;6|-p<*ULtWD0P-DAC1G_?o!nKI}3U{(5-MVdT zkxnMN%!i4b{r($-RURrq4?Z-)P>bUj&d`}DeR!NqZns?Rd{<8k!F|nwZ0+R4^u*xg z9pcW(mwX;c$1r9o+)AH+y}p@&zE1YR)b zk>q0yRPtn~L2j+*Fi~dG%Yaz)*wv&#aZ64?cr}&dF*!FLk(mFe{EeAdi=t)e*g14)Ltf-A8<+E#f84qiJPm&)phb``iHMqf{~4-j&CX4r4XQX(oy zJ{29+zS^Y3ZhH0Y=HXd-$o*nMbK5nRFIrF$UA{_zzH#{|a734w0Y6~cUgL+!3R6TS zhfQd*85oxbHXu)tVxnrMZxz5WJ|)G&nk@@9nSr*u;cz9>$lV~v$~Q=Ql?U8D3SqPx zN!u-!0#RKDfw0giv{MGX{3axnvAgfaGBKC8Gm0OfIEpKRUT((2Qg<8t8Jno6T33nL zUC7HuNw1q1e*weF+YX0QvYqzc0==97Hn=%;0t^eUfTZD@_g#X#nD*Lp$OStEvyrVM z-%Nl45;&6p;>tC1wa5)B9$%FCFZThN2GfV}BypJ9YCP0bOln@<48J1=TA%Ki} zj~m5@DXx%hIYR&nFD>4HD8$26>E*Tx$_4>| zoN&Ni4Kzg3N>{JQ8Z2P~NbiIT#S2UnaFBI>*FnhIyB4tX2HzWAUWkj5?PXM7?(0~v z9W4a3aMX#qWDSCCCD#BrEXhd8mZ% z04gl?oD6#L2Sg*FNKqV8I4n^2Rv$=^3?BmI;pc{bg)~$vp_p1TMGq(ykYsiy&dTX{ zS~Hkyd*qUp{40e-9V8{a_93&+gXk*nN78Q1YRP~#VspeO{&9SeIE3z#c$oc{W`9U= zg#oM)&-X$(dJg2l+4??IKbwK%ihrO$H^WDuntTr@L09^J=7zER^zVEIgx;gKu8X}9 zQ{?_3Jy0an5WsOrxHBP>`YaKmuLD5e67`P&eQBSCFo_*~4pV&ZNL`t}yI=OxcI0#5OvtS z7gIV$6dNs8?v=1O9%K)3(ih;QMzYB+P-6B0oZS4(@;G=A-2%GBkGe9Kz#KhNM$#PK zX>W##0B8yKGW|C}MQ{%&f(;!GP!Vhcis1TvTc`+r1&ZM3hCd;dMB4m6lBPm5wo>-; ze{1=djM88Unt+gO+msFQ^_8$t#w+f9J&@YH*W+Qh)$f%cq6Y)i9$$Kt4Az7$@D_9D z$g``Ein#(R_8OfJz0fxTV&!KO1YODP(vn{76Dgz6CjYTpF0@2MEhAv$hwz-pT~k%| z>N~1UqBj=t3{d>5U7iIXI=cXne+z!8yaKBv0Nl@?{$4b!nE5-871iH^`1TYrLAw}S zcxgrU6G{O|?(BBiwxZ>tKzH-=r@t2sGQ~V5HuerCnncpeX~bA>PtQ$HCT}NT1f6pM zvdv-5Q6r^gbQhK-E3<$efe;#9Q%|h=IvO5W_5ARV^B2veG&gFr?C(*kM7+q5-CjC$ zTQ`VSbS34@i=t*Afu@?oovfGLGT*Y&4zAzW#y>|5hb0W z&YX*#QLf|GSD(HtH!Gf39#a`VYk*J`ZW?=D6hgOnonu-j`ko?(l<0O z4DDBl-Ng9)c2V|>0q4HH+GqVBBG}jE8Bqydb||}k3se1I6hC9gSr4O!YE94e)N5>K ztIGC-35oLd*>J=Csyt&t8>DmFhG%g_`fB_cvj<>5LMx!XCwQIP)BZr#jG%3oW6tQ| zECdioqA=a&DRoIcXgDH$O$(_jbMi;G8}^I?V`jE+j-#sH!`w>nnzPZ_1GYS&w`tAj z(3uH2w3%3l-Z|CjRy|aM=1FTzoJ(61vndLf(j1LtvgQ~KKKgJ($C}^USa{0FSZsOR zIF4O-TR+ajfl(H2x!KI~A&#Av>sOxKi6eMnkIq3OpawA>7I-rh-)sybD48J&%!lFA z(D=;Xv$wzck{0z=8G5@pox$JcJW=tI#Ts%gN4Fj#c;w?a8I9Q(vZ1Hm#0<}l!5Zz# zH)P))?X1%^h*I4UTB-6m3mwrI7Hu-ZxQ}Ch$?_YUwWO0{CM4?bTpx!Tw-<<$Jqf1! zv&~6+_co4`J92At42J-wkdvvc?2&Sp$ARVDZtlx-Y%BxE9Gqj-k|!8R=^bcU)V#qm zwJ^MqrOwFztHB6sab!uW2hVM11yqzp;ka#$`Z_)B(`Gp=35&g^OlVfsD)eht!eghf zv-g}*PgA~s>vB~b{U+u~_&o|ozug{EWp@+BoEmU;qWPN(HH{U|wB2uFx|dT*a!00P zT2n_uMgDa#svIG5Hu$J(w1-)&Ib)2Xkb1N^dQY}aOqN@7#mJ(Q6lJ>Mq)CR~HoBIX z7NZj=1?#cuIrXIU9mTRJ0%?4aGTY+fmqpO?bct(^8~4FfXvIyG299Ou_sC`(+SUQR z-=7r*LN*l(3XnHv9oU?uA2Px-XB84-3ujxh_AF+iOm9UEIM=EtZEV$~7IiKSyqHm+ zUyL4!EMo>T(nm8JU*BdqF)86QKZYeNP&sxGGpCenzDrohs4IRd+}IEN&T);g$aQUV z49qQ&U@KnLNHM6>rP$t!p@dJ&p5n3>oY=t!C)_;mF?6UCW#bdH`aix}K~=jybhg?g z$NVCoEpvD3I|)Z|EQTz3$T_;Zb2^}6CUT^rjM)_VQjYbd%&~H4e}{LjLAq#5xyQMN z)Gr<}RqgD?LR9OGo#t`fx!KeigU3tea$N~!4j+LcUCx@3<}$+q&MJySZyXW|y%P1_ zF2UgZ7?}*b#63)RI=T{#1khdWptMSZlk9$=oeGN%P+W1;s|K`e|MN1DjgcI_3a0?xaS3u6f`Snf6HW}4RoP3x1;pF`g|q0R*7p+SGBHH5KCZE*8$P5(>fvs?VtgNpUq6a53yo3@DjEgQiBSfV+B?r40fU zp{Eu`@qgJ9PDxNwP5>LwQ%Xph3LC2hntqB0=EX)*x4>6BQ59f(looX;3+h#kfL=9E z%nTYvqybZ?x{4i^5DSpVzn)Vl!`CAj8c53kqmjSom^1-w&8n9{r+0U5UH*@*>2WLL JqN85t{|owG>