Yathzee (((V(( 100d 2a$="N"70F <200:502 F 300, c d iinit triple yathzee n sC23658j\,8:23693\,7:0::s$(15) u$"triple yathzee E.J. Zwart  1985" x'"Hoeveel spelers? (1-9) "; } 7100 a$<"1"a$>"9"125} a$:spelers=a$ n$(spelers,10 ):namen t(spelers):totaalscore n=1spelers '"Naam speler ";n;":"; n$(n) n$(n) n  punten=0   spel  400 a=1beurten 500:a  600X + , 6einde triple yathzee @ J T?6;2;1;"GENERAAL TOTAAL " ^n=1spelers h:n*2,0;2;7;1;n$(n);t(n) rn    init spel   d(5):dobbelstenen h(5):hold Es(spelers,3,13 ,2):speler,rij,vak,wel/niet gevuld y(spelers):extra yathzee p(spelers):punten per spel ,b(spelers,3):recht op bonus per vak beurten=39'    beurt   700 b=1spelers &800 :b 0 900 W X Z einde spel \ ^n=1spelers ` a!1,0;1;n$(n) bm=13 do=113 ft(n)=t(n)+m*s(n,m,o,2) hp(n)=p(n)+m*s(n,m,o,2) i punten=punten+s(n,m,o,2) j>o6s(n,m,o,2)>3*ob(n,m)=b(n,m)+1 no tNm*4,0;1;"punten rij ";m;23;punten;27;m;"*" v$2;"bonus rij ";m;23; xPb(n,m)=6t(n)=t(n)+m*35#:p(n)=p(n)+m*35#:2;35#; z#b(n,m)62;0; |2;27;m;"*" ~,3;"extra yathzee rij ";m;23; Ky(n)mt(n)=t(n)+m*100d:p(n)=p(n)+m*100d:3;100d; y(n) 1000 Hc=13 R1100L:c \ 1200    einde beurt     init speler   7300  7400 @#1;1,0;7;1;"Beurt van ";n$(b) /h(5):extrayath=0:invoer=0 K L Vworp ` e 1300 j$a$=13 c=31145y t1400x:1130j y 1500   einde speler   7700 invoer1245 1900l:1230 $#1;0,0;" " {keuze+6+1*(keuze>6),5*m+13 ;1;"0"s(b,m,keuze,2)<10 ;s(b,m,keuze,2) 1:100d    init worp ( 2n=15 <.h(n)d(n)=(*6)+1:7500L Fn K]#1;0,0;"1-5=HOLD 6=CANCEL ENTER=WERPEN";1,22;"S=INVULLEN" Pc<37100 w x keuze  a$="S"1600@ a$"1"a$"5"1700 a$="6"1800 a$"S"7100    einde worp   7900 ? @ J invullen T ^ c=3   hold  h(a$)=1 %4,a$*4;6;" "   cancal  &n=15 0h(n)=0 :#4,n*4;1;" " Dn k l qinvoer keuze r va#1;0,0;"KEUZE?":.02{# =,40(:4,3;" " { 7100 N(a$<"1"a$>"6")a$"T"a$"C"a$"F"a$"K"a$"G"a$"Y"a$"X"1915{ a$"1"a$"6"2000 a$="T"21004 a$="C"2200 a$="F"2300 a$="K"2400` a$="G"2500 a$="Y"2600( a$="X"2700   keuze 1 t/m 6   keuze=a$  7600 !invalid7800x:20993 n=15 <d(n)=keuzes(b,m,keuze,2)=s(b,m,keuze,2)+d(n) n  s(b,m,keuze,1)=1 invoer=1 3 4 9keuze triple > Ckeuze=7 H 7600 M!invalid7800x:2199 Rinvalid=1 Wn=13 \Ad(n)=d(n+1)d(n)=d(n+2)invalid=0:n=3 an fscore=0 k2invalidn=15:score=score+d(n):n p1s(b,m,keuze,2)=s(b,m,keuze,2)+score zs(b,m,keuze,1)=1 invoer=1    keuze carre  keuze=8  7600 !invalid7800x:2299 invalid=1 n=12 Sd(n)=d(n+1)d(n)=d(n+2)d(n)=d(n+3)invalid=0:n=2 n score=0 2invalidn=15:score=score+d(n):n 1s(b,m,keuze,2)=s(b,m,keuze,2)+score s(b,m,keuze,1)=1 invoer=1   keuze full house  keuze=9  7600 !invalid7800x:2399_ invalid=1 d(1)=d(2)d(1)=d(3)d(4)=d(5)d(1)=d(2)d(3)=d(4)d(3)=d(5)invalid=0 )0s(b,m,keuze,2)=25-25*invalid .s(b,m,keuze,1)=1 3invoer=1 _ ` ekeuze kleine straat j okeuze=10 t 7600 y!invalid7800x:2499 ~invalid=1 zd(1)=d(2)-1d(1)=d(3)-2d(1)=d(4)-3d(2)=d(3)-1d(2)=d(4)-2d(2)=d(5)-3d(1)=d(2)-1d(1)=d(4)-2d(1)=d(5)-3d(1)=d(2)-1d(1)=d(3)-2d(1)=d(5)-3invalid=0 0s(b,m,keuze,2)=30-30*invalid s(b,m,keuze,1)=1 invoer=1   keuze grote straat  keuze=11 7600 !invalid7800x:2599' invalid=1 d(1)=d(2)-1d(1)=d(3)-2d(1)=d(4)-3d(1)=d(5)-4invalid=0 0s(b,m,keuze,2)=40(-40(*invalid s(b,m,keuze,1)=1 invoer=1 ' ( -keuze yathzee 2 7keuze=12 < 7600 A!invalid7800x:2699 Finvalid=1 Kjd(1)=d(2)d(1)=d(3)d(1)=d(3)d(1)=d(5)invalid=0 P+invalidextrayath7800x:2699 Uuextrayath=1y(b)=y(b)+1:n=2540(:.01z# =,n:.01z# =,n-7:.01z# =,n+7:n Zjextrayaths(b,m,keuze,2)=502-502*invalid:s(b,m,keuze,1)=1:invoer=1   keuze chance  keuze=13 7600 !invalid7800x:2799 n=15 0s(b,m,keuze,2)=s(b,m,keuze,2)+d(n) n s(b,m,keuze,1)=1 invoer=1  X b subroutines l  get a$  a$= hulp= a$=""7130    * dubbelpoke >,adres,waarde-256*(waarde/256) H#adres+1,(waarde/256)   schermopbouw   9000(# >6,0;5;"" n=720 Es$:n,0;5;"";6;s$;5;" " n ?21,0;5;""   score invullen  n=16 m=13 `s(b,m,n,1)n+6,5*m+13 ;"0"s(b,m,n,2)<10 ;s(b,m,n,2) m:n  n=17 m=13 ys(b,m,n+6,1)n+13 ,5*m+13 ;"0"s(b,m,n+6,2)<10 ;s(b,m,n+6,2) m:n K L Vprint dobbelsteen n W [+m=02:m,n*4;" ";:m `2:1 eZd(n)=10,4*n;" ";1,n*4;" O ";2,4*n;" " jZd(n)=20,4*n;" O";1,n*4;" ";2,4*n;"O " oZd(n)=30,4*n;"O ";1,n*4;" O ";2,4*n;" O" tZd(n)=40,4*n;"O O";1,4*n;" ";2,n*4;"O O" yZd(n)=50,4*n;"O O";1,n*4;" O ";2,n*4;"O O" ~Zd(n)=60,4*n;"O O";1,n*4;"O O";2,n*4;"O O" .1}L,20 0:0 ,4,n*4;1;1;" "   screen keuze  invalid=0 4s(b,1,keuze,1)m=1:7699 4s(b,2,keuze,1)m=2:7699 4s(b,3,keuze,1)m=3:7699 keuze=12 s(b,1,12 ,2)s(b,2,12 ,2)s(b,3,12 ,2)y(b)<3extrayathextrayath=1:7699 invalid=1   sorteren dobbelstenen ( 2n=14 <m=5n+1-1 F,d(n)>d(m)hulp=d(n):d(n)=d(m):d(m)=hulp Pm:n w x foutboodschap  1#1;0,0;1;"ONMOGELIJK" invalid=1 (1:.01z# =,502:100d (#1;0,0;" "   verwijderen melding  ]#1;0,0;" ";1,22;" " ? #( #2 schermdata #< #FD"1:enen","2:tweeen","3:drieen","4:vieren","5:vijfen","6:zessen","" #P_"T:triple","C:carre","F:full house","K:kleine straat","G:grote straat","Y:yathzee","X:chance" 'b23570\,7:"m";1;"triple":*"m";1;"triple"10 :*"m";1;"triple" h