home *** CD-ROM | disk | FTP | other *** search
- From: Phil Davidson <fil@mojo.europe.dg.com>
- To: comp-binaries-psion@uunet.uu.net
- Newsgroups: comp.binaries.psion
- Subject: Mah Jongg Score Tracking Application - MJSSHARE.ZIP (1/1)
- Followup-To: comp.sys.psion.apps
- Path: toga.it.dtu.dk!ej
- Message-ID: <ej859379952@it.dtu.dk>
- Date: Wed, 26 Mar 1997 12:39:13 GMT
- Approved: ej@it.dtu.dk
- Lines: 410
-
- MJS - Mah Jongg Scorer
- For the Psion 3a
- Copyright by Phil Davidson
-
- Introduction
-
- I have been playing Mah Jongg for a number of years now, one of the
- problems that our faced was that of keep score of a game. We'd quickly
- work out what each hand had scored, but it took quite a few minutes
- on paper to work out the adjusted scores, and then to update the
- ongoing score for the whole game.
-
- At that time, I was blessed with my first Psion. I soon recognised
- the potential for developing a small application that would allow
- me to track the scoring of a Mah Jongg game.
-
- Out of that need, came this application.
-
-
- Overview
-
- The MJS application does not calculate what an individual hand scores
- i.e. you can't tell it that you've got 2 pongs of minor tiles and
- a pong of dragons, and have it tell you what that scores. We found
- that using the psion for this did not in anyway speed up our play,
- we can work out hand scores quite quickly.
-
- What it can do though, is let you input the four hand scores, and
- will work out who owes who what, it will make the appropriate
- adjustements, and give you the resulting score, along with the new
- total score for the whole game.
-
- I have tried to make the interface as intuitive as possible, but no doubt
- there are areas that can be improved.
-
- Other features include:
-
- - Save/Load facility
- - Enter Penalties scores
- - Display hand scores
- - Display total game score
- - Dual format display (toggle with diamond key)
- - Menu & Hotkey driven
- - Tracks which is the current wind
- - Tracks which player is East wind
-
- The registered version adds the following features
-
- Statistics database
-
- - number of games played
- - number of games won
- - average score
- - best hand score
- - best/worst game scores
- - average number of mahjongs
- - % win rate
- - etc...
-
- Future Developments
-
- - History facility - keep a history of past games, who won,
- scores etc.
- - Anything you want to suggest that I can be bothered coding ;-)
- - Ability to customise settings. e.g. starting score - I've
- assumed and hard coded a starting score of zero for games.
- - No testing for 3c compatibility has been done
- - If someone gives me a Siena I'll have a go at re-coding for
- the smaller display (he says hopefully ;-)
-
-
- How to get MJS
-
- - I have posted the zip file containing all required files to
- comp.binaries.psion
- - The binaries are not currently available on the web, or via
- ftp - I'm working on that.
- - You can always email me at the address given below, and I
- will email you a copy back.
-
- Installation
-
- Copy the files into the apps directory and install as normal.
-
-
- Known Bugs, areas for improvement etc.
-
- - The ICON is crap! I know it, you know it, but I'm no
- graphic artist. However I am working on getting a decent
- icon. If you have one you wish to donate, I'll be more
- than happy to use it.
- - Cannot escape out of dialog boxes. Sloppy coding on my part,
- but for the time being, escape will not cancel a dialog
- box, if you hit escape, things will progress as
- normal. This means you could end up accidently entering
- a zero score for players. (Hint: save the game after
- each time you enter a round).
- - Error checking. Again, sloppy on my part, I really need to
- tighten the error checking - mostly on imputing values.
- There is nothing here though that should spoil your
- enjoyment. I've been using this application for months
- now and have never lost a game half way through.
- - The statistics screen (not available in the shareware version)
- only displays about a dozen entries on the screen,
- it crashes if you try to have more. I need to implement a
- paging/scrolling facility for the statistics screens/
- - The score display. I quite like the default score display,
- but that doesn't everyone else will. If you've got
- suggestions - send them in.
-
-
-
- Registration and how to contact me
-
- Registration will bring you an updatesd version of the application
- that gives you all the functionality of the shareware version plus
- the statistics database functionality. In addition you will get
- free bug patches, upgrades etc. as and when they become available.
-
- Registration costs seven pounds sterling, or ten US dollars.
-
- My news feed doesn't carry a lot of the psion newsgroups traffic,
- so I'll probably miss anything you post to usenet.
-
- You can get me at the following address
-
- Phil Davidson
- 70 Telford Road
- Edinburgh
- EH3 7JA
- Scotland
- UK
-
- fil@mojo.europe.dg.com
- or
- davidson@dial.pipex.com
-
-
-
- begin 600 mjsshare.zip
- MF=VU[]7FSF?.ASE!^7"\=[ >W_D0CH^(['IW3[?V[>URN^9 6BFIZ:Z9Z=N>
- MAQ@2%U:WBRMZ^DHYF'8+4<ZO+ZRNKA;=JUOT$T4_!%Z3ZQ J%2,`Z?Q*8!NP
- M'=@![ 1V`0YP%; GGT.X&I_W`M<`KP7V`=<"^X'7`=?E8[?H_Q^=$09_J9!B
- M9A>H'UU4$ CZ7"GN5]XF_OVV3[]7#*0+L-BA7UC?3W;YS?L_^KT7YQJ['W]P
- M7B_$*<@HOL&V?SYJ=>- 7J1==<C:`^WG8E2<NUB/M+H+!CR\;B?]U'^_6*&X
- MB&ED4F0>7P6\C*=7=& B6EO)I*F"0*HH"GQ7D:KLBBV3!9[$+=-RFIJVGL;*
- MM:N>0^;&F)LRI'B6EO-3GN!!30V3U1MC$DL%FH^-I:+<-FNT1 \S/IW3\G&J
- M[!PC`I(P6R_=#Z'^U*30Y `_R(-'&ON0%&RQLQ$_3'5,04#",W !V=#BN(A,
- M`O9Q\RF#0(%5_<!/V\XT[4'.ZU#AG!B<&^.4GY RUQAHT6</3(>S=YRIS/IF
- M3U@\;A;'T M80,UK!M *V#7&3:LD'\!>&.NZ#W4B!DIX)]NN\KPD-Q^*!Z3+
- M0C(02 IO35+?A6FK5%55HAVG&\CIC(E=S5O7W4)B@#SA:84<JCKIM7:^OAFF
- M**ECU]2GVHELF$C7LB!HLRB@$=,B0=01MI +.EX/3Z9T2JSN\2/D._B$:\)4
- M^2&G,.P@UHB')-H:1W*2)@Y4J?JA0LA(*AR#V;R++@X!G%RLBV 3:D7Y@4+(
- MD)P$X7BZBO(CEBL^4G\:L>";'"@Y^]E,67'>8Q,.-M*B4^DFV+",BGK @[4D
- M+#NR@X"*&E+:C VJ=CR9C\*NH[:LPDTIYH509! H6SY1H65]D$^(4&>*2$PY
- M!?F>39;X^G8B!<&0(DH`.X)T[T0U%<K;LSI%:8Y]I* \YI%/6(-F*<U,SIVF
- MV.#&*KJ>BHIE3$8:&.-]=BXHLI)($%WK&(G (LGTDK2"V-2"M\68JM:(K&YM
- M7)'.I I)JSIQ49QQ/J-<CLK'U.& =W.F7D 0P+3<3+$I5%$1-FX/5)@MU5Q8
- M#4/&"G:L+UN1A*X.Z! =SLB2^1'\8ODQR:$AL?,@YSH;0J]>%JDD:&H5)K9N
- M/&?:_ 6*M &0(U119ZTM+EDTR)=I@Q\BNC5<R$898&?YHP&Z@YJD,BQMQ+1\
- MA1T@Z6:UQ(UIH4.D]VZ(\.VA$T1>W:)8DB?+PS@O#IW'.FRJ2C8(0S'W@ EV
- M6<N#CL]%D\^;M9$,BR'T.34H`"*L0V\I7 6A.(L0.KV\G*#80 )H-:Q3(1G@
- M08X<N3"\2I\H7)@R%*LIMT3DT;B ?P<<ML@"T'_7`I2%3((PX3BSY+TM!'\R
- MID*'KHHI>< QTD("]K&%AM;A%T@R6+%6\]TQ)S$V$M/3.+;4QD,41;7>0HA2
- M5PV-B 7^U:LI%/_V-R-"4>/?Q*@G%3X^7^0KY@X=$N4UO_D/&-HA^E[UB<OX
- MT^\RZW^3ZH[9S%K$A\SOE@%C-L/G54$XZ#Y@"I@':B-"A$"V4XC["+N$. ]\
- M%7@1:.X1XH$]]K>A-UPCQ _$BSU__W7I];;HQTCEK"1&[OI5=S__/T _BT+G
- MUP*'@,G<#MX)G %^!W@>.#@LA ?\!O ^X"\`!S9R''@[X %ZQ-J.`2+@<\!_
- M`S]WA1"_`CP&/ [\,_"6*V%CP >!!X#5_&6#_<#K@#%@$C@+_%"4IM]T9XF;
- MYC7R,/WY#0T@I_R-D9'2*,DX`CX"? ;X&O ?P'\"AU$`OAEX!_#SP+N <\#=
- MP/N!AX O`%\"O@+\)? MX!^ PSN$: #/`[L01Q(@W6GCRJ\#]P-_`XPAIOP:
- M\ U[ND'-<U8J@YI-<-D\Z[Z1PZO3;_IV:>W5$^NGO[XT:"\=DM#AKI>M0_ER
- MX&O M5<+\6[@]X#?![X./ ,<0+Z8`^:!NX$V\#[@0\##P*/ IX$_`CX'? 5X
- M^(6NG+?HIXB@_])5* &VX=.=_(84OZL[_J^K9;17G.;O;KE2'A+*OB+41P?%
- MQ/CW5A]&NV\J_Q9M7L6*OR.7)TS8_QXEO3DTPB_ZE/BII2R&2_0.&CW#V ?"
- M\]SF\?\A06]ZTE/BQ5'*L;9_BUXI6EV=Y!]#Z=MM+8]>>L)%Z/SM%D2]W 8]
- MW6Y,&W$[-GC:!M3+K: M7]JB5X)^&GV)/.&KL.\7M_.;R_>*>^D363BU1\5K
- M]]$[SXL^O8-R6K?D&=-4H=B%WK)8:#>K)A [;Z0A$[&/5']0#(O2MO?O1W(%
- MS Z??3$EQ@=N+ [&]NYH1A_FXO)Z!1PF.\'A$LW9(#&R[><Y%U=-Y8VA:7P(
- MIG#95Y,\05P1PWJX, XPST&PQ_LY$RM)@Y20)AM0M+Z5N'R Z=/1GDR>@!:(
- M(@QGL6S 6,<H+CR["K2RLY);X/R3)_HB6UKDK(]SUV\,3AN<Q([3ILK6/4^Y
- M7(MSYJ&<J8\5`W$6.O-[(!%*+$CI_ZV-*BLE>2 &=IZ=\:&X1'4PJ!8\`"*>
- M?OKNI;F'.Z]^B= 1'.X'7T[R^AW=,1]=L(@:NQ:*XM-;GYGCQ]2]>J\H,&+]
- MC^AB.IWY@/8J/<J:OG[!(9.MSJ!8I,1B0-%_9Q;?>)!8NPDGJ 8P%-6Q@0W*
- MFR[U"9]O(9?BD<UY'F%5=3")>3Y^NP51?74I2N5*9!K KY C^"HTP)?7#?:/
- M$SA0O>K9W3@EM.C\LN-VCW8V.@X"U)!L1K;B>X]B@E?#H!* 3A\-PD_N98T7
- M/Z'MHMZ:&(KU01HIO$D.2DS8]])&2A0G&.1VYX.%4N6MM `M+%A:7HOZ2(O3
- M>K=O?ON56M0D._V%L\\#+* [;<3G\P/%GC %S4>'U1 S0\KFLH4N'E&Z"=OM
- MW2=.,J.S(>O )7.C"S+%V*;QK=+9L0W"G J)ZL.EOVM?093/WX,[/Z! #]K,
- M1:7MOC@M:)G7)3R>)39A+''8>J&T?Y<2[#6]:YA'^'?3H4(W)BMZ5[ AX2 9
- MZY\CZE*MA?<:IQ7G'ME"L8W0@$&,@)6SL.-@AUD%CE!PD/ RK(I2R[..8'5$
- M[ 6>/$4MK!I5^!Q/)#B9]6RY*RUCX^.96>!"?R_]DH?C92X-0N0!7M;K#UX/
- M>\/)LO2);FS/Q9,OW3<WB0<^)S\NLN,5A RE=T?J4VWK+^3<& !$U50XN"-G
- M,D3;P6V6,K!0<_L$CP:41\(=>]E$-< #M&$0"20S\/Z/>^0./2MEV7_'NC^B
- M&JK:!U?DX*4Q<\JX]./+B%P[,Y=^\[>5[_]N/KD!3&_-[[AGK%?OT IV<^IZ
- MV\E/[HM^_"]02P,$% ````@`(5%Z(LKD=A&7````8 (```<```!-:G,N<&EC
- M"_!TOF-@P,3P98L!@P`B,/`PA V J,# P/_@,!NP1(4((%1"HP@4@'",D(
- M(ALH)SL;&&08&FXV,' P-*R<P]9Q^<?*!9P>)D<[]W!XB!SM7,3A*?(3R&X3
- M/@A6OP.7.8W,(-*1!4P^F',LLZ%1>)'FK 9&D44/N!L<118I<#0T/IYS@),$
- MMR'[%Q("D-" A S#*, +`%!+`P04````" !.57HBL[&W1N 3```(,@``# ``
- M`$UJ<W-H87)E+F]P8>T[?W"4UW'[_;@[Z00"A*P(Z2P^9"$??" D(<D@.Q3I
- M[^W;MV_W?4_:R)!VZ,'DX=RNU$1RXT80X$_%-4-:H+=WN/> -C)T8'@P$AGH
- M&PVU(0`'Q9$]@9^TMXOPP>5V: =%6 ;TX65%`'BWB!]//2'K9?I51/K=R7\%
- M5?X:?;./EVN :X-K!O[_L^2G!88?S&;'XY/)-BW8#X VQ02K2RHA-@[:JU
- MJ[:TX^3"8=<+L!+@]\ UUM<_%#K]#'A&0WT1+=SRA=<D]TBX;SC4\H6OR.XH
- MWQ@K[W=M!'DX%-X+[DA &PU%P!/H&PI@DU 1&+@71081%1G0HH2"@RZA(-5^
- MYU+IJ>0"5<(538CY(?)Y.!TYCM^'\?L8?L_C%W&H# U.]<=^7BR\7<Q_!C38
- ML?4[)3D$4>^C$ )_B[#3VX?(4_T'8NNA.@#>`$<_S9&_,2$KLT=^EJI 9.
- MO"?2@'MHP-'75&$\$*N"2",JG ^(</% [!"\#RJHGS)-0G&8PG6@VE416BG'
- M3$Z)Y^.IB?BAB:222BNY\:227:1)E&CK_8E S 67OJ-#R4#LTT"S2H;4SIMJ
- MO"\SI1R=RN:4;"X^B8TH1W!ZE =2D]F<WL%??$13YQ5T*<<"L= GD/+<1X5J
- MB-S!E5OXTD>ZM&P@%OT$TB(?%12(;(+3C,%+)J60"27T^JV&_(E ; M$.N&T
- M;LVQ)MY&%6,AZS-X6+_^YT.=+QV(W0:1;;R[U8QWKO#3#PL__C _"(?@#8$M
- MOGIP:^26(N#>JS\#^E-W;+HC-!:=X0.A%YI(@'<C:(F&3; K]IC@[@3R04.:
- M=T23!Q Y9P.;-EF5DK-2<E2*SDK142DX*P6J%#L1DR JZ@A;X[PDXRK?#+P*
- M%-(2Q@62BQ^*9Y._\[Z S-)]R:Q?E*\#`6(XP\ON^W'.3LV)]X,FXJRN`)JG
- M2 -^F^%TOG 7-NRYFP]INK$=UR=?1<>54!SMZG@JG;CWK K2W6#O3J&WE*V6
- MV-"_3$Q8C.L6X<QWPD'X-C<*`&.62XP`^L&+00C($ :*1]2:Z'A&.9Y,HUO2
- MUS\NZ68K:"YN?V9/R+3LO7BK6,)CF7%#'?<.R\C>V1@<G'];S ?1,61%-L&K
- MW!.:I[25\_9F7BS:7>(&[A(;4##.IUJE^T3:A\Z=+]S/T24,@ P[P8F<;E3A
- MW!.J-XJN2)G,3*43Y\XCKW01O=8&WL\G5 ^Z+7)8Y\[G.W"O.< -UXN&R\UU
- M>7 (M^RM&<I%OX&3>,6_1;"D5XUE<O&)I?J/;?0(SC;<2[?A?\+6@)E\9&\H
- M#<_."9!BO]=%%PY"+$-BIZ4R)"FP%(D[GC$[%!#5@@UJJ 7<TV<PMC%PHH-"
- M9!0-#@K)02$QBB8'A>R@D!E%,U&@<G; !V(35XZY,GD0P156QRVACEM"F^!N
- MD4WZ:*8=*9TN)Z$7JEN8;O+UX(.G2MTU]].K]1.9B?AT<C*K4(B :0=JH@9[
- MR[(EVA-ZK[M1$8BJ8BHT<1(C(TV:*)F1,84:.$I':OG4U7+CO .P1 E,M%:#
- MG90*G"@BB5BKS^#;Q?Q*J('/L S+^&">!O/^=P7_U^ =7OX'P?\LEF6M8MZ_
- M5GSHG?QZ",)_WF@;[ *Y%RJ8DE?L21^;RBF1B4R.:?A]P=.->F-P&F&N(ZF;
- MQ^KM?JS>YL?J[7ZL81$_1A/46,O\& NV:ID?:R _5LO\&-D.*[J)W^;'&AQ^
- M*JY[7+B1K@A/'3V$]9CLX":3[=7@I)X)N+M 76G5TFEEMI?G"C/L,7-=<OFP
- MP,Z=50T36 ]""YQ1#4- T(\@-Q<$? 0PHT% 04 W% S$Z!CZU&BT?V8CG]3[
- M=NZ;4PW[P?HNX"#9#3+?PR3IP$X"^G4@B "SJU:BFD'&?>62G\FW@1_WG)6$
- MJ*5C/79ZWV&6.L%Z[<BXO*W\5867G=\5/$ '>/D6V 4*YH%HOM2YT5 @@B%E
- MBRT*1/R;04"FO^"_4Y?GT5<EG6IP3*6Y_!=PXG? 2Q3&+3[QG;<^\5^^A8E/
- M_;?/"76=PRQ 6*!>VZ>$NFR?D:^7SDA^+83A=JGDN,2>HQBY_ [^V%6>QYI)
- M;ZB\3MR%&>M:6)0-16+9D:K^66D>_:Q(:6<Y:YMU\F A>\K3Y3G-%UVC>08T
- M3&=L-91VF)&8/F6FEY'<: R6H[&MCE$D&K3!-$V+; *VT980T^(TUQ!V<A4X
- M^,,!7"V1K8OR'#4EW[V$Y"F3*K $5<*D&EJ":I)NH5S-%[9]C!'[0>B12B-V
- MZ\RMAB-E40.:R!Y[7%8:J?SZX81@<V_;68QF,W+!YJ0Z> !GF2JKU)T6XY3[
- MN;72Y:!7\S[X- P(+*6V9\"-AK.W;ZEH([Y%3=-7[NS7@^0K,<WU2YLF>Y?#
- MK03XI7E-^-DJNOYOWF#:C^G=DX)Q9?@7.&V_$HSKU'(-3J%HW!Q><QO B&B^
- M'EN*M^/T2WK@N1:!F*1'GUL1."@9L2GFCS GF8<^KR#X1<DP6!'CQ1?,RLX7
- M$?R>4=GYI6: OY?T.Y];[P#X=\D3Y#WY?"O]MX$9-;^,X*"L![L_]Z-,V8AX
- MVS<!_(=LAKUOM %L=0'\+U!+`0(R"Q0````(`!LP>B*\HDB6?0\````X```'
- M````````````( "V@0````!M:G,N9&]C4$L!`C(+% ````@`]RYZ(F2%]LZ#
- M" ``#!(```<``````````0`@`+:!H@\``$UJ<RYT>'102P$",@L4````" `A
- M47HBRN1V$9<```!@`@``!P```````````" `MH%*& ``36IS+G!I8U!+`0(R
- M"Q0````(`$Y5>B*SL;=&X!,```@R```,````````````( "V@089``!-:G-S
- >:&%R92YO<&%02P4&``````0`! #9````$"T`````
- `
- end
-
- ---
- Please mail binaries to 'psion-binaries@it.dtu.dk' to put them in this group.
- This Psion binary was approved by Erik Johansen <ej@it.dtu.dk>
- Also check out: ftp://ftp.it.dtu.dk/pub/psion/index.html
-
-