Home » Archimedes archive » Acorn Computing » 1993 05 Mega Disk.adf » 93_05 » Miscellany/!King/!RunImage

Miscellany/!King/!RunImage

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn Computing » 1993 05 Mega Disk.adf » 93_05
Filename: Miscellany/!King/!RunImage
Read OK:
File size: 1CE1 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >$.!King.!RunImage
   20REM King Albert Patience
   30REM by Albert Gardner
   40REM (c) The Micro User
   50REM Amended to Archimedes
   60REM Dragonrider - March 1991
   70:
   80MODE7
   90PROCprt("KING ALBERT PATIENCE",3,1,1):PROCprt("by",6,3,0)
  100PROCprt("Albert Gardner",8,7,1)
  110PROCprt("Arc conversion by Dragonrider 1991",12,3,0)
  120VOICES 5
  140PROCvdu
  150PRINTTAB(11,14);CHR$133;"Deal Number ";:INPUT""M%
  160IFM%=0 L%=0 ELSE PRINTTAB(15,16);CHR$133;"Redeals ";:INPUT""L%
  170MODE12:PROCgame
  180END
  190DEFPROCvdu
  200VDU23,224,15,7,6,6,130,206,241,200
  210VDU23,225,248,240,16,177,19,83,35,223
  220VDU23,226,196,227,208,200,200,200,200,0
  230VDU23,227,11,243,3,7,11,19,19,0
  240VDU23,228,31,15,4,5,8,6,68,99
  250VDU23,229,248,241,115,83,89,93,161,25
  260VDU23,230,95,114,137,144,160,192,160,0
  270VDU23,231,15,117,147,9,5,5,5,0
  280VDU23,232,255,255,255,255,255,255,255,255
  290VDU23,233,206,219,219,219,219,219,206,0
  300VDU23,234,80,216,248,112,32,0,0,0
  310VDU23,235,32,112,248,112,32,0,0,0
  320VDU23,236,32,112,248,248,32,0,0,0
  330VDU23,237,112,168,248,168,32,0,0,0
  340VDU23,238,32,112,248,216,80,0,0,0
  350VDU23,239,32,112,248,112,32,0,0,0
  360VDU23,240,32,248,248,112,32,0,0,0
  370VDU23,241,32,168,248,168,112,0,0,0
  380VDU23,242,34,119,127,127,62,28,8,0
  390VDU23,243,8,28,62,127,62,28,8,0
  400VDU23,244,8,28,62,127,127,42,8,0
  410VDU23,245,28,28,107,127,107,8,8,0
  420VDU23,246,1,1,3,3,7,15,31,63
  430VDU23,247,128,128,192,192,224,240,248,252
  440VDU23,248,127,127,127,127,61,1,1,3
  450VDU23,249,254,254,254,254,188,128,128,192
  460VDU23,252,7,4,6,12,21,18,21,56
  470VDU23,253,252,120,176,50,37,82,138,15
  480VDU23,254,68,139,136,144,144,144,144,0
  490VDU23,255,19,229,5,9,9,9,9,0
  500ENDPROC
  510DEFPROCprt(A$,L%,C%,D%)
  520IF D% A$=CHR$141+A$
  530X%=(40-(LENA$))DIV 2 -1
  540FORY%=L%TOL%+D%:PRINTTAB(X%,Y%);CHR$(128+C%);A$:NEXT
  550ENDPROC
  560:
  570DEFPROCgame
  580PROCinit
  590IF M%=0 M%=TIME
  600A%=RND(-M%)
  610FORA%=0TOL%:PROCshuffle:NEXT
  620REPEAT
  630PROCdeal:W%=0:P%=0:Q%=0:err%=0:from%=1:to%=1
  640REPEAT:VDU29,0;0;:F%=from%:PROCget(I$(1)+I$(2)+I$(3)):F$=A$:from%=N%
  650IFerr%ORF%<10PROCnum(F%,2)ELSEPROCblank(F%)
  660IFerr%ORto%<10PROCnum(to%,2)ELSEPROCblank(to%)
  670err%=0
  680IF from%=14 THEN 810 ELSE IF from%>11 THEN T$="":W%=TRUE:GOTO 770
  690IF from%<10 THEN 710 ELSE PROCget(I$(from%-10))
  700IF from%=11 from%=N%+9 ELSES%=N%-1:from%=17
  710PROCnum(from%,1):PROCget(I$(1)+I$(2)):T$=A$:to%=N%
  720IFto%=10 to%=17
  730PROCnum(to%,3)
  740IFF$=T$ SOUND1,-15,&1700,1:GOTO770
  750IFF$="P" PROCfrom_pile ELSEIF T$="P"PROCto_pile ELSEPROCmove_cards
  760IFFNwon PROCauto
  770UNTIL W%=TRUE
  780IFF$="D"THEN L%=L%+1:PROCshuffle:GOTO630 ELSE IFF$="S"THEN 630
  790IFT$="P" PROCwon ELSE W%=FALSE
  800UNTIL W%=FALSE
  810MODE 7
  820PRINTTAB(8,10)"Deal Number was ";M%;TAB(10,12)"Redeals ";L%
  830PRINTTAB(10,12)"Redeals ";L%
  840SYS"OS_Byte",200
  850ENDPROC
  860DEFPROCinit
  870VDU19,2,2|
  880DIMcol%(16,20),P%(3),Pk%(51),I$(3),block% 20
  885REM$block%="Hal_Error"+CHR$0:SYS"Sound_AttachNamedVoice",1,block%:
  890REMSYS"OS_Byte",200,1:SYS"OS_Byte",213,&1800:*VOLUME 120
  900FORI%=0TO51:Pk%(I%)=I%:NEXT
  910v$="A23456789"+CHR$(233)+"JQK"
  920I$(0)="HDSC":I$(1)="1234567"
  930I$(2)="89P":I$(3)="RSDQ"
  940from%=1:OFF
  950ENDPROC
  960DEFPROCshuffle
  970FORI%=0TO51
  980J%=RND(52)-1
  990K%=Pk%(I%):Pk%(I%)=Pk%(J%):Pk%(J%)=K%:NEXT
 1000ENDPROC
 1010DEFPROCget(S$)
 1020REPEAT:A$=GET$:N%=INSTR(S$,A$)
 1030IFN% UNTILTRUE ELSE PROCmessage("One of:",S$):UNTILFALSE
 1040IFQ%=0GOTO1060 ELSE GCOL0,130:CLG:FORQ%=7TO9:IFcol%(Q%,0)>11 PROCcard(Q%,1)
 1050NEXT:Q%=0:VDU26
 1060ENDPROC
 1070DEFPROCmessage(A$,B$)
 1080IFQ%=2 ENDPROC
 1090Q%=1:SOUND1,-15,&1900,1:VDU24,800;184;1052;280;18,0,131,18|
 1100CLG:MOVE800,280:PRINT;A$:MOVE800,248:PRINT;B$
 1110ENDPROC
 1120DEFPROCfrom_pile
 1130IF P%(S%)=0 GOTO1270
 1140IF col%(to%,0)=0 GOTO1170
 1150IF FNbot(to%)DIV 4 <>P%(S%)GOTO1250
 1160IF(FNbot(to%)MOD 4)DIV 2=S%DIV 2 GOTO1260
 1170P%(S%)=P%(S%)-1
 1180D%=4*P%(S%)+S%-4
 1190PROCcard(7+2*S%+5*(S%>1),2-(D%<0))
 1200col%(to%,0)=col%(to%,0)+1
 1210col%(to%,col%(to%,0))=D%+4
 1220PROCcard(to%,1):PROCsuit
 1230ENDPROC
 1240:
 1250err%=-1:PROCmessage("Not in","Sequence"):ENDPROC
 1260err%=-1:PROCmessage("Wrong","colour"):ENDPROC
 1270err%=-1:PROCmessage("Empty","column"):ENDPROC
 1280:
 1290DEF PROCto_pile
 1300IFcol%(from%,0)=0GOTO1270
 1310D%=FNbot(from%)
 1320R%=D%MOD 4
 1330IF D%DIV 4 <>P%(R%) GOTO1250
 1340PROCcard(from%,0)
 1350col%(from%,0)=col%(from%,0)-1
 1360IFcol%(from%,0)>0PROCcard(from%,1)
 1370IF from%<11 GOTO1390
 1380IFcol%(from%-1,0)>0 PROCcard(from%-1,1)
 1390S%=R%:P%(S%)=P%(S%)+1
 1400PROCcard(7+2*S%+5*(S%>1),2)
 1410P%=P%(0)+P%(1)+P%(2)+P%(3)
 1420IFP%=52 W%=TRUE
 1430ENDPROC
 1440DEF PROCmove_cards
 1450IFcol%(from%,0)=0 GOTO1270
 1460D%=FNbot(from%)
 1470IFcol%(to%,0)=0 GOTO1500
 1480IF FNbot(to%)DIV 4 <>1+D%DIV 4 GOTO1250
 1490IF((FNbot(to%)MOD 4)DIV 2=(D%MOD 4)DIV 2) GOTO1260
 1500col%(to%,0)=col%(to%,0)+1
 1510col%(to%,col%(to%,0))=D%
 1520PROCcard(from%,0)
 1530col%(from%,0)=col%(from%,0)-1
 1540IFcol%(from%,0)>0PROCcard(from%,1)
 1550IFfrom%<11 GOTO1570
 1560IFcol%(from%-1,0)>0 PROCcard(from%-1,1)
 1570PROCcard(to%,1):PROCsuit
 1580ENDPROC
 1590DEFPROCdeal
 1600GCOL0,130:CLG
 1610VDU5:GCOL0,0
 1620FORI%=1TO16:PROCnum(I%,2):NEXT
 1630MOVE1166,1008:PRINT;"Res";
 1640FORI%=0TO3:P%(I%)=0:NEXT
 1650K%=0
 1660FORJ%=1TO9
 1670FORto%=1TO10-J%:col%(to%,J%)=Pk%(K%):col%(to%,0)=J%
 1680PROCcard(to%,1):PROCsuit:K%=K%+1
 1690NEXT:NEXT
 1700FORto%=10TO16
 1710col%(to%,1)=Pk%(K%):col%(to%,0)=1
 1720PROCcard(to%,1):K%=K%+1
 1730NEXT
 1740MOVE20,30:GCOL4:PRINT"King Albert Patience by Albert Gardner - Archimedes Conversion by Dragonrider"
 1750ENDPROC
 1760DEFPROCcard(O%,U%)
 1770IFU%>1X%=120*O%-104:Y%=178:Z%=16:C%=D%:GOTO1840
 1780C%=FNbot(O%):S%=C%MOD 4:IFO%>9 Y%=2246-128*O%:X%=1160 ELSE Y%=1014-48*col%(O%,0):X%=120*O%-104
 1790IFY%<160 Z%=0 ELSE Z%=Y%-160
 1800IFO%<6 OR O%>7 OR Y%>345 GOTO1820
 1810IFP%(14-2*O%)>0 Z%=186
 1820IF U%=1 OR from%<10 OR from%>15 GOTO1840
 1830IFcol%(from%+1,0)>0 Z%=Y%-126
 1840VDU24,X%;Z%;X%+104;Y%+2;
 1850GCOL0,130:CLG
 1860IFU%=1 OR U%=2 PROCshow
 1870VDU26
 1880ENDPROC
 1890DEFPROCshow
 1900VDU24,X%;Z%;X%+104;Y%;
 1910GCOL0,135:CLG:GCOL0,-(S%<2)
 1920VDU29,X%+6;Y%-36;:MOVE0,32
 1930V%=ASCMID$(v$,1+C%DIV 4,1):VDUV%
 1940MOVE66,-92:PROCturn(V%):IFC%=2 PROCace ELSEIFC%<4 PROCmid ELSEIFC%<40 PROCspots ELSE PROCpic
 1950ENDPROC
 1960DEFPROCsuit
 1970IFto%>9 ENDPROC
 1980IFcol%(to%,0)<2 ENDPROC
 1990V%=(col%(to%,col%(to%,0)-1))MOD 4:VDU26,18,0,-(V%<2),25,4,X%+72;Y%+44;242+V%
 2000ENDPROC
 2010DEFPROCpic
 2020MOVE25,10:B%=4*V%-72:VDUB%,B%+1,8,8,10,B%+2,B%+3
 2030MOVE25,-42:PROCturn(B%+3):PROCturn(B%+2):VDU8,8,10:PROCturn(B%+1):PROCturn(B%)
 2040PROCmid
 2050ENDPROC
 2060DEFPROCmid
 2070MOVE32,-32:VDU242+S%
 2080ENDPROC
 2090DEFPROCace
 2100MOVE18,-16
 2110VDU246,247,8,8,10,248,249
 2120ENDPROC
 2130DEFPROCspots
 2140V%=C%DIV 4:IFV%<3PROCpips(2,1):PROCpips(74,1) ELSEPROCpips(2,2):PROCpips(74,2)
 2150RESTORE (2290+10*V%):REPEAT:READA%,B%:IFA%THEN PROCpips(A%,B%):UNTILFALSE ELSE UNTILTRUE
 2160ENDPROC
 2170DEFPROCnum(I%,G%)
 2180IFI%<10MOVE120*I%-62,1008:GOTO2210
 2190MOVE1120,2246-128*I%
 2200IFI%<17 I%=I%-9 ELSEI%=32
 2210VDU18,0,G%,232,8,18,0,0,48+I%
 2220ENDPROC
 2230DEFPROCpips(A%,B%)
 2240IFB%=1 MOVE38,-A% ELSE MOVE16,-A%
 2250IFA%<40 E%=234 ELSE E%=238
 2260VDUE%+S%
 2270IFB%=2 MOVE64,-A%:VDUE%+S%
 2280ENDPROC
 2290DEFPROCblank(I%)
 2300MOVE1120,2246-128*I%:VDU18,0,2,232
 2310ENDPROC
 2320DEF PROCwon:VOICES 5:*VOLUME 127
 2330REM*CHANNELVOICE 2 T
 2340REM*CHANNELVOICE 3 T
 2350REM*CHANNELVOICE 4 T
 2360REM*CHANNELVOICE 5 T
 2370SOUND2,-15,&800,1
 2380SOUND3,-15,&800,1
 2390SOUND4,-15,&800,1
 2400SOUND5,-15,&800,1
 2410PROCprint("Congratulations!",32,860,0,1)
 2420PROCprint("Y O U ' V E    D O N E   I T !",32,790,3,0)
 2430PROCprint("Would you like another game ? ",32,720,3,1)
 2440SYS"OS_Byte",15,1
 2450REPEAT
 2460F$=GET$
 2470UNTIL F$="Y" OR F$="N"
 2480IF F$="N" W%=FALSE ELSE L%=L%+1:PROCshuffle
 2490ENDPROC
 2500DEF PROCprint(a$,X%,Y%,B%,F%)
 2510GCOL 0,B%:MOVE X%,Y%:PRINT a$
 2520GCOL 0,F%:MOVE X%+4,Y%+4:PRINT a$
 2530ENDPROC
 2540DEFPROCauto
 2550IFfrom%<10PROCnum(from%,2)ELSEPROCblank(from%)
 2560IFto%<10PROCnum(to%,2)ELSEPROCblank(to%)
 2570T$="P":IFW% ENDPROC
 2580IFP%<49 Q%=TIME:SOUND3,-15,52,14: SOUND3,-15,101,7:REPEAT:UNTILTIME>Q%+105
 2590SYS"OS_Byte",212,248
 2600PROCmessage("  Auto"," Finish")
 2610VDU26:Q%=2:SYS"OS_Byte",212,144
 2620J%=P%:REPEAT
 2630FORfrom%=1TO16:PROCto_pile:IFP%>J%SOUND&11,-(7+2*P%/13),1+2*P%,50:J%=P%
 2640NEXT
 2650UNTIL W%
 2660ENDPROC
 2670DEFFNbot(Q%)
 2680=col%(Q%,col%(Q%,0))
 2690DEFFNwon
 2700FORI%=1TO9
 2710IFcol%(I%,0)<2 GOTO2750
 2720FORJ%=2TOcol%(I%,0)
 2730IFcol%(I%,J%)DIV 4>col%(I%,J%-1)DIV 4 J%=50:I%=50
 2740NEXT
 2750NEXT
 2760IFI%>20 =FALSE
 2770=TRUE
 2780:
 2790ONERROR OFF
 2800MODE12:REPORT:PRINT" at line ";ERL
 2810GOTO820
 2820:
 2830DATA0
 2840DATA38,1,0
 2850DATA0
 2860DATA38,1,0
 2870DATA38,2,0
 2880DATA20,1,38,2,0
 2890DATA20,1,38,2,56,1,0
 2900DATA26,2,38,1,50,2,0
 2910DATA14,1,26,2,50,2,62,1,0,0
 2920:
 2930DEFPROCturn(?block%):LOCALA%,J%,K%,I%,A$:$(block%+1)=STRING$(10,CHR$0):SYS"OS_Word",10,block%
 2940VDU23,250:FORI%=block%+8TOblock%+1STEP-1:A$="%":J%=?I%:FORK%=1TO8:A%=J%AND1:A$+=STR$A%:J%=(A%*128)+J%>>1:NEXT:A%=EVALA$:VDUA%:NEXT
 2950VDU250:ENDPROC

� >$.!King.!RunImage
� King Albert Patience
� by Albert Gardner
(� (c) The Micro User
2� Amended to Archimedes
<� Dragonrider - March 1991
F:
P�7
Z7�prt("KING ALBERT PATIENCE",3,1,1):�prt("by",6,3,0)
d �prt("Albert Gardner",8,7,1)
n5�prt("Arc conversion by Dragonrider 1991",12,3,0)
xȠ 5
��vdu
�'�11,14);�133;"Deal Number ";:�""M%
�0�M%=0 L%=0 � �15,16);�133;"Redeals ";:�""L%
�
�12:�game
��
�	��vdu
�$�23,224,15,7,6,6,130,206,241,200
�'�23,225,248,240,16,177,19,83,35,223
�)�23,226,196,227,208,200,200,200,200,0
�!�23,227,11,243,3,7,11,19,19,0
��23,228,31,15,4,5,8,6,68,99
�'�23,229,248,241,115,83,89,93,161,25
(�23,230,95,114,137,144,160,192,160,0
 �23,231,15,117,147,9,5,5,5,0
+�23,232,255,255,255,255,255,255,255,255
")�23,233,206,219,219,219,219,219,206,0
,#�23,234,80,216,248,112,32,0,0,0
6#�23,235,32,112,248,112,32,0,0,0
@#�23,236,32,112,248,248,32,0,0,0
J$�23,237,112,168,248,168,32,0,0,0
T#�23,238,32,112,248,216,80,0,0,0
^#�23,239,32,112,248,112,32,0,0,0
h#�23,240,32,248,248,112,32,0,0,0
r$�23,241,32,168,248,168,112,0,0,0
|$�23,242,34,119,127,127,62,28,8,0
�!�23,243,8,28,62,127,62,28,8,0
�"�23,244,8,28,62,127,127,42,8,0
�#�23,245,28,28,107,127,107,8,8,0
��23,246,1,1,3,3,7,15,31,63
�+�23,247,128,128,192,192,224,240,248,252
�$�23,248,127,127,127,127,61,1,1,3
�+�23,249,254,254,254,254,188,128,128,192
� �23,252,7,4,6,12,21,18,21,56
�'�23,253,252,120,176,50,37,82,138,15
�(�23,254,68,139,136,144,144,144,144,0
��23,255,19,229,5,9,9,9,9,0
��
���prt(A$,L%,C%,D%)
� D% A$=�141+A$
X%=(40-(�A$))� 2 -1
(�Y%=L%�L%+D%:�X%,Y%);�(128+C%);A$:�
&�
0:
:
��game
D	�init
N� M%=0 M%=�
X
A%=�(-M%)
b�A%=0�L%:�shuffle:�
l�
v-�deal:W%=0:P%=0:Q%=0:err%=0:from%=1:to%=1
�>�:�29,0;0;:F%=from%:�get(I$(1)+I$(2)+I$(3)):F$=A$:from%=N%
�$�err%�F%<10�num(F%,2)��blank(F%)
�'�err%�to%<10�num(to%,2)��blank(to%)
�
err%=0
�6� from%=14 � �TjC � � from%>11 � T$="":W%=�:� �TBC
�*� from%<10 � �dFB � �get(I$(from%-10))
�+� from%=11 from%=N%+9 �S%=N%-1:from%=17
�0�num(from%,1):�get(I$(1)+I$(2)):T$=A$:to%=N%
��to%=10 to%=17
��num(to%,3)
��F$=T$ �1,-15,&1700,1:�TBC
�5�F$="P" �from_pile �� T$="P"�to_pile ��move_cards
��won �auto

� W%=�
3�F$="D"� L%=L%+1:�shuffle:�DvB � �F$="S"� �DvB
�T$="P" �won � W%=�
 
� W%=�
*� 7
45�8,10)"Deal Number was ";M%;�10,12)"Redeals ";L%
>�10,12)"Redeals ";L%
Hș"OS_Byte",200
R�
\
��init
f�19,2,2|
p.�col%(16,20),P%(3),Pk%(51),I$(3),block% 20
uD�$block%="Hal_Error"+CHR$0:SYS"Sound_AttachNamedVoice",1,block%:
z:�SYS"OS_Byte",200,1:SYS"OS_Byte",213,&1800:*VOLUME 120
��I%=0�51:Pk%(I%)=I%:�
�v$="A23456789"+�(233)+"JQK"
� I$(0)="HDSC":I$(1)="1234567"
�I$(2)="89P":I$(3)="RSDQ"
�
from%=1:�
��
�
��shuffle
��I%=0�51
�J%=�(52)-1
�+K%=Pk%(I%):Pk%(I%)=Pk%(J%):Pk%(J%)=K%:�
��
�
��get(S$)
��:A$=�:N%=�S$,A$)
&�N% �� � �message("One of:",S$):��
<�Q%=0�TdD � �0,130:�:�Q%=7�9:�col%(Q%,0)>11 �card(Q%,1)
�:Q%=0:�26
$�
.��message(A$,B$)
8�Q%=2 �
B9Q%=1:�1,-15,&1900,1:�24,800;184;1052;280;18,0,131,18|
L!�:�800,280:�;A$:�800,248:�;B$
V�
`��from_pile
j� P%(S%)=0 �dvD
t� col%(to%,0)=0 �tRD
~ � �bot(to%)� 4 <>P%(S%)�dbD
�"�(�bot(to%)� 4)� 2=S%� 2 �dlD
�P%(S%)=P%(S%)-1
�D%=4*P%(S%)+S%-4
�#�card(7+2*S%+5*(S%>1),2-(D%<0))
�col%(to%,0)=col%(to%,0)+1
�col%(to%,col%(to%,0))=D%+4
��card(to%,1):�suit
��
�:
�+err%=-1:�message("Not in","Sequence"):�
�(err%=-1:�message("Wrong","colour"):�
�(err%=-1:�message("Empty","column"):�
:

� �to_pile
�col%(from%,0)=0�dvD
D%=�bot(from%)
(R%=D%� 4
2� D%� 4 <>P%(R%) �dbD
<�card(from%,0)
F!col%(from%,0)=col%(from%,0)-1
P"�col%(from%,0)>0�card(from%,1)
Z� from%<11 �DnE
d'�col%(from%-1,0)>0 �card(from%-1,1)
nS%=R%:P%(S%)=P%(S%)+1
x�card(7+2*S%+5*(S%>1),2)
�P%=P%(0)+P%(1)+P%(2)+P%(3)
��P%=52 W%=�
��
�� �move_cards
��col%(from%,0)=0 �dvD
�D%=�bot(from%)
��col%(to%,0)=0 �d\E
�"� �bot(to%)� 4 <>1+D%� 4 �dbD
�)�((�bot(to%)� 4)� 2=(D%� 4)� 2) �dlD
�col%(to%,0)=col%(to%,0)+1
�col%(to%,col%(to%,0))=D%
��card(from%,0)
�!col%(from%,0)=col%(from%,0)-1
"�col%(from%,0)>0�card(from%,1)
�from%<11 �TbF
'�col%(from%-1,0)>0 �card(from%-1,1)
"�card(to%,1):�suit
,�
6
��deal
@�0,130:�
J�5:�0,0
T�I%=1�16:�num(I%,2):�
^�1166,1008:�;"Res";
h�I%=0�3:P%(I%)=0:�
rK%=0
|�J%=1�9
�4�to%=1�10-J%:col%(to%,J%)=Pk%(K%):col%(to%,0)=J%
��card(to%,1):�suit:K%=K%+1
��:�
��to%=10�16
�%col%(to%,1)=Pk%(K%):col%(to%,0)=1
��card(to%,1):K%=K%+1
��
�^�20,30:�4:�"King Albert Patience by Albert Gardner - Archimedes Conversion by Dragonrider"
��
���card(O%,U%)
�/�U%>1X%=120*O%-104:Y%=178:Z%=16:C%=D%:�TpG
�[C%=�bot(O%):S%=C%� 4:�O%>9 Y%=2246-128*O%:X%=1160 � Y%=1014-48*col%(O%,0):X%=120*O%-104
��Y%<160 Z%=0 � Z%=Y%-160
�O%<6 � O%>7 � Y%>345 �T\G
�P%(14-2*O%)>0 Z%=186
&� U%=1 � from%<10 � from%>15 �TpG
& �col%(from%+1,0)>0 Z%=Y%-126
0�24,X%;Z%;X%+104;Y%+2;
:�0,130:�
D�U%=1 � U%=2 �show
N�26
X�
b
��show
l�24,X%;Z%;X%+104;Y%;
v�0,135:�:�0,-(S%<2)
��29,X%+6;Y%-36;:�0,32
�V%=��v$,1+C%� 4,1):�V%
�B�66,-92:�turn(V%):�C%=2 �ace ��C%<4 �mid ��C%<40 �spots � �pic
��
�
��suit
��to%>9 �
��col%(to%,0)<2 �
�LV%=(col%(to%,col%(to%,0)-1))� 4:�26,18,0,-(V%<2),25,4,X%+72;Y%+44;242+V%
��
�	��pic
�/�25,10:B%=4*V%-72:�B%,B%+1,8,8,10,B%+2,B%+3
�A�25,-42:�turn(B%+3):�turn(B%+2):�8,8,10:�turn(B%+1):�turn(B%)
��mid
�
	��mid
�32,-32:�242+S%
 �
*	��ace
4�18,-16
>�246,247,8,8,10,248,249
H�
R��spots
\@V%=C%� 4:�V%<3�pips(2,1):�pips(74,1) ��pips(2,2):�pips(74,2)
f5� (2290+10*V%):�:�A%,B%:�A%� �pips(A%,B%):�� � ��
p�
z��num(I%,G%)
��I%<10�120*I%-62,1008:�tbH
��1120,2246-128*I%
��I%<17 I%=I%-9 �I%=32
��18,0,G%,232,8,18,0,0,48+I%
��
���pips(A%,B%)
��B%=1 �38,-A% � �16,-A%
��A%<40 E%=234 � E%=238
�
�E%+S%
��B%=2 �64,-A%:�E%+S%
��
���blank(I%)
�!�1120,2246-128*I%:�18,0,2,232
	�
	� �won:Ƞ 5:*VOLUME 127
	�*CHANNELVOICE 2 T
	$�*CHANNELVOICE 3 T
	.�*CHANNELVOICE 4 T
	8�*CHANNELVOICE 5 T
	B�2,-15,&800,1
	L�3,-15,&800,1
	V�4,-15,&800,1
	`�5,-15,&800,1
	j)�print("Congratulations!",32,860,0,1)
	t7�print("Y O U ' V E    D O N E   I T !",32,790,3,0)
	~7�print("Would you like another game ? ",32,720,3,1)
	�ș"OS_Byte",15,1
	��
	�F$=�
	�� F$="Y" � F$="N"
	�$� F$="N" W%=� � L%=L%+1:�shuffle
	��
	�� �print(a$,X%,Y%,B%,F%)
	�� 0,B%:� X%,Y%:� a$
	�� 0,F%:� X%+4,Y%+4:� a$
	��
	�
��auto
	�(�from%<10�num(from%,2)��blank(from%)
"�to%<10�num(to%,2)��blank(to%)

T$="P":�W% �
6�P%<49 Q%=�:�3,-15,52,14: �3,-15,101,7:�:��>Q%+105
ș"OS_Byte",212,248
( �message("  Auto"," Finish")
2 �26:Q%=2:ș"OS_Byte",212,144
<J%=P%:�
F@�from%=1�16:�to_pile:�P%>J%�&11,-(7+2*P%/13),1+2*P%,50:J%=P%
P�
Z� W%
d�
n
ݤbot(Q%)
x=col%(Q%,col%(Q%,0))
�	ݤwon
��I%=1�9
��col%(I%,0)<2 �t~J
��J%=2�col%(I%,0)
�0�col%(I%,J%)� 4>col%(I%,J%-1)� 4 J%=50:I%=50
��
��
�
�I%>20 =�
�=�
�:
�� �
��12:�:�" at line ";�
�	�TtC
:
�0
�38,1,0
"�0
,�38,1,0
6�38,2,0
@�20,1,38,2,0
J�20,1,38,2,56,1,0
T�26,2,38,1,50,2,0
^�14,1,26,2,50,2,62,1,0,0
h:
rM��turn(?block%):�A%,J%,K%,I%,A$:$(block%+1)=�10,�0):ș"OS_Word",10,block%
|k�23,250:�I%=block%+8�block%+1�-1:A$="%":J%=?I%:�K%=1�8:A%=J%�1:A$+=�A%:J%=(A%*128)+J%>>1:�:A%=�A$:�A%:�
�
�250:�
�
00000000  0d 00 0a 18 f4 20 3e 24  2e 21 4b 69 6e 67 2e 21  |..... >$.!King.!|
00000010  52 75 6e 49 6d 61 67 65  0d 00 14 1a f4 20 4b 69  |RunImage..... Ki|
00000020  6e 67 20 41 6c 62 65 72  74 20 50 61 74 69 65 6e  |ng Albert Patien|
00000030  63 65 0d 00 1e 17 f4 20  62 79 20 41 6c 62 65 72  |ce..... by Alber|
00000040  74 20 47 61 72 64 6e 65  72 0d 00 28 18 f4 20 28  |t Gardner..(.. (|
00000050  63 29 20 54 68 65 20 4d  69 63 72 6f 20 55 73 65  |c) The Micro Use|
00000060  72 0d 00 32 1b f4 20 41  6d 65 6e 64 65 64 20 74  |r..2.. Amended t|
00000070  6f 20 41 72 63 68 69 6d  65 64 65 73 0d 00 3c 1e  |o Archimedes..<.|
00000080  f4 20 44 72 61 67 6f 6e  72 69 64 65 72 20 2d 20  |. Dragonrider - |
00000090  4d 61 72 63 68 20 31 39  39 31 0d 00 46 05 3a 0d  |March 1991..F.:.|
000000a0  00 50 06 eb 37 0d 00 5a  37 f2 70 72 74 28 22 4b  |.P..7..Z7.prt("K|
000000b0  49 4e 47 20 41 4c 42 45  52 54 20 50 41 54 49 45  |ING ALBERT PATIE|
000000c0  4e 43 45 22 2c 33 2c 31  2c 31 29 3a f2 70 72 74  |NCE",3,1,1):.prt|
000000d0  28 22 62 79 22 2c 36 2c  33 2c 30 29 0d 00 64 20  |("by",6,3,0)..d |
000000e0  f2 70 72 74 28 22 41 6c  62 65 72 74 20 47 61 72  |.prt("Albert Gar|
000000f0  64 6e 65 72 22 2c 38 2c  37 2c 31 29 0d 00 6e 35  |dner",8,7,1)..n5|
00000100  f2 70 72 74 28 22 41 72  63 20 63 6f 6e 76 65 72  |.prt("Arc conver|
00000110  73 69 6f 6e 20 62 79 20  44 72 61 67 6f 6e 72 69  |sion by Dragonri|
00000120  64 65 72 20 31 39 39 31  22 2c 31 32 2c 33 2c 30  |der 1991",12,3,0|
00000130  29 0d 00 78 08 c8 a0 20  35 0d 00 8c 08 f2 76 64  |)..x... 5.....vd|
00000140  75 0d 00 96 27 f1 8a 31  31 2c 31 34 29 3b bd 31  |u...'..11,14);.1|
00000150  33 33 3b 22 44 65 61 6c  20 4e 75 6d 62 65 72 20  |33;"Deal Number |
00000160  22 3b 3a e8 22 22 4d 25  0d 00 a0 30 e7 4d 25 3d  |";:.""M%...0.M%=|
00000170  30 20 4c 25 3d 30 20 8b  20 f1 8a 31 35 2c 31 36  |0 L%=0 . ..15,16|
00000180  29 3b bd 31 33 33 3b 22  52 65 64 65 61 6c 73 20  |);.133;"Redeals |
00000190  22 3b 3a e8 22 22 4c 25  0d 00 aa 0d eb 31 32 3a  |";:.""L%.....12:|
000001a0  f2 67 61 6d 65 0d 00 b4  05 e0 0d 00 be 09 dd f2  |.game...........|
000001b0  76 64 75 0d 00 c8 24 ef  32 33 2c 32 32 34 2c 31  |vdu...$.23,224,1|
000001c0  35 2c 37 2c 36 2c 36 2c  31 33 30 2c 32 30 36 2c  |5,7,6,6,130,206,|
000001d0  32 34 31 2c 32 30 30 0d  00 d2 27 ef 32 33 2c 32  |241,200...'.23,2|
000001e0  32 35 2c 32 34 38 2c 32  34 30 2c 31 36 2c 31 37  |25,248,240,16,17|
000001f0  37 2c 31 39 2c 38 33 2c  33 35 2c 32 32 33 0d 00  |7,19,83,35,223..|
00000200  dc 29 ef 32 33 2c 32 32  36 2c 31 39 36 2c 32 32  |.).23,226,196,22|
00000210  37 2c 32 30 38 2c 32 30  30 2c 32 30 30 2c 32 30  |7,208,200,200,20|
00000220  30 2c 32 30 30 2c 30 0d  00 e6 21 ef 32 33 2c 32  |0,200,0...!.23,2|
00000230  32 37 2c 31 31 2c 32 34  33 2c 33 2c 37 2c 31 31  |27,11,243,3,7,11|
00000240  2c 31 39 2c 31 39 2c 30  0d 00 f0 1f ef 32 33 2c  |,19,19,0.....23,|
00000250  32 32 38 2c 33 31 2c 31  35 2c 34 2c 35 2c 38 2c  |228,31,15,4,5,8,|
00000260  36 2c 36 38 2c 39 39 0d  00 fa 27 ef 32 33 2c 32  |6,68,99...'.23,2|
00000270  32 39 2c 32 34 38 2c 32  34 31 2c 31 31 35 2c 38  |29,248,241,115,8|
00000280  33 2c 38 39 2c 39 33 2c  31 36 31 2c 32 35 0d 01  |3,89,93,161,25..|
00000290  04 28 ef 32 33 2c 32 33  30 2c 39 35 2c 31 31 34  |.(.23,230,95,114|
000002a0  2c 31 33 37 2c 31 34 34  2c 31 36 30 2c 31 39 32  |,137,144,160,192|
000002b0  2c 31 36 30 2c 30 0d 01  0e 20 ef 32 33 2c 32 33  |,160,0... .23,23|
000002c0  31 2c 31 35 2c 31 31 37  2c 31 34 37 2c 39 2c 35  |1,15,117,147,9,5|
000002d0  2c 35 2c 35 2c 30 0d 01  18 2b ef 32 33 2c 32 33  |,5,5,0...+.23,23|
000002e0  32 2c 32 35 35 2c 32 35  35 2c 32 35 35 2c 32 35  |2,255,255,255,25|
000002f0  35 2c 32 35 35 2c 32 35  35 2c 32 35 35 2c 32 35  |5,255,255,255,25|
00000300  35 0d 01 22 29 ef 32 33  2c 32 33 33 2c 32 30 36  |5..").23,233,206|
00000310  2c 32 31 39 2c 32 31 39  2c 32 31 39 2c 32 31 39  |,219,219,219,219|
00000320  2c 32 31 39 2c 32 30 36  2c 30 0d 01 2c 23 ef 32  |,219,206,0..,#.2|
00000330  33 2c 32 33 34 2c 38 30  2c 32 31 36 2c 32 34 38  |3,234,80,216,248|
00000340  2c 31 31 32 2c 33 32 2c  30 2c 30 2c 30 0d 01 36  |,112,32,0,0,0..6|
00000350  23 ef 32 33 2c 32 33 35  2c 33 32 2c 31 31 32 2c  |#.23,235,32,112,|
00000360  32 34 38 2c 31 31 32 2c  33 32 2c 30 2c 30 2c 30  |248,112,32,0,0,0|
00000370  0d 01 40 23 ef 32 33 2c  32 33 36 2c 33 32 2c 31  |..@#.23,236,32,1|
00000380  31 32 2c 32 34 38 2c 32  34 38 2c 33 32 2c 30 2c  |12,248,248,32,0,|
00000390  30 2c 30 0d 01 4a 24 ef  32 33 2c 32 33 37 2c 31  |0,0..J$.23,237,1|
000003a0  31 32 2c 31 36 38 2c 32  34 38 2c 31 36 38 2c 33  |12,168,248,168,3|
000003b0  32 2c 30 2c 30 2c 30 0d  01 54 23 ef 32 33 2c 32  |2,0,0,0..T#.23,2|
000003c0  33 38 2c 33 32 2c 31 31  32 2c 32 34 38 2c 32 31  |38,32,112,248,21|
000003d0  36 2c 38 30 2c 30 2c 30  2c 30 0d 01 5e 23 ef 32  |6,80,0,0,0..^#.2|
000003e0  33 2c 32 33 39 2c 33 32  2c 31 31 32 2c 32 34 38  |3,239,32,112,248|
000003f0  2c 31 31 32 2c 33 32 2c  30 2c 30 2c 30 0d 01 68  |,112,32,0,0,0..h|
00000400  23 ef 32 33 2c 32 34 30  2c 33 32 2c 32 34 38 2c  |#.23,240,32,248,|
00000410  32 34 38 2c 31 31 32 2c  33 32 2c 30 2c 30 2c 30  |248,112,32,0,0,0|
00000420  0d 01 72 24 ef 32 33 2c  32 34 31 2c 33 32 2c 31  |..r$.23,241,32,1|
00000430  36 38 2c 32 34 38 2c 31  36 38 2c 31 31 32 2c 30  |68,248,168,112,0|
00000440  2c 30 2c 30 0d 01 7c 24  ef 32 33 2c 32 34 32 2c  |,0,0..|$.23,242,|
00000450  33 34 2c 31 31 39 2c 31  32 37 2c 31 32 37 2c 36  |34,119,127,127,6|
00000460  32 2c 32 38 2c 38 2c 30  0d 01 86 21 ef 32 33 2c  |2,28,8,0...!.23,|
00000470  32 34 33 2c 38 2c 32 38  2c 36 32 2c 31 32 37 2c  |243,8,28,62,127,|
00000480  36 32 2c 32 38 2c 38 2c  30 0d 01 90 22 ef 32 33  |62,28,8,0...".23|
00000490  2c 32 34 34 2c 38 2c 32  38 2c 36 32 2c 31 32 37  |,244,8,28,62,127|
000004a0  2c 31 32 37 2c 34 32 2c  38 2c 30 0d 01 9a 23 ef  |,127,42,8,0...#.|
000004b0  32 33 2c 32 34 35 2c 32  38 2c 32 38 2c 31 30 37  |23,245,28,28,107|
000004c0  2c 31 32 37 2c 31 30 37  2c 38 2c 38 2c 30 0d 01  |,127,107,8,8,0..|
000004d0  a4 1e ef 32 33 2c 32 34  36 2c 31 2c 31 2c 33 2c  |...23,246,1,1,3,|
000004e0  33 2c 37 2c 31 35 2c 33  31 2c 36 33 0d 01 ae 2b  |3,7,15,31,63...+|
000004f0  ef 32 33 2c 32 34 37 2c  31 32 38 2c 31 32 38 2c  |.23,247,128,128,|
00000500  31 39 32 2c 31 39 32 2c  32 32 34 2c 32 34 30 2c  |192,192,224,240,|
00000510  32 34 38 2c 32 35 32 0d  01 b8 24 ef 32 33 2c 32  |248,252...$.23,2|
00000520  34 38 2c 31 32 37 2c 31  32 37 2c 31 32 37 2c 31  |48,127,127,127,1|
00000530  32 37 2c 36 31 2c 31 2c  31 2c 33 0d 01 c2 2b ef  |27,61,1,1,3...+.|
00000540  32 33 2c 32 34 39 2c 32  35 34 2c 32 35 34 2c 32  |23,249,254,254,2|
00000550  35 34 2c 32 35 34 2c 31  38 38 2c 31 32 38 2c 31  |54,254,188,128,1|
00000560  32 38 2c 31 39 32 0d 01  cc 20 ef 32 33 2c 32 35  |28,192... .23,25|
00000570  32 2c 37 2c 34 2c 36 2c  31 32 2c 32 31 2c 31 38  |2,7,4,6,12,21,18|
00000580  2c 32 31 2c 35 36 0d 01  d6 27 ef 32 33 2c 32 35  |,21,56...'.23,25|
00000590  33 2c 32 35 32 2c 31 32  30 2c 31 37 36 2c 35 30  |3,252,120,176,50|
000005a0  2c 33 37 2c 38 32 2c 31  33 38 2c 31 35 0d 01 e0  |,37,82,138,15...|
000005b0  28 ef 32 33 2c 32 35 34  2c 36 38 2c 31 33 39 2c  |(.23,254,68,139,|
000005c0  31 33 36 2c 31 34 34 2c  31 34 34 2c 31 34 34 2c  |136,144,144,144,|
000005d0  31 34 34 2c 30 0d 01 ea  1e ef 32 33 2c 32 35 35  |144,0.....23,255|
000005e0  2c 31 39 2c 32 32 39 2c  35 2c 39 2c 39 2c 39 2c  |,19,229,5,9,9,9,|
000005f0  39 2c 30 0d 01 f4 05 e1  0d 01 fe 16 dd f2 70 72  |9,0...........pr|
00000600  74 28 41 24 2c 4c 25 2c  43 25 2c 44 25 29 0d 02  |t(A$,L%,C%,D%)..|
00000610  08 13 e7 20 44 25 20 41  24 3d bd 31 34 31 2b 41  |... D% A$=.141+A|
00000620  24 0d 02 12 17 58 25 3d  28 34 30 2d 28 a9 41 24  |$....X%=(40-(.A$|
00000630  29 29 81 20 32 20 2d 31  0d 02 1c 28 e3 59 25 3d  |)). 2 -1...(.Y%=|
00000640  4c 25 b8 4c 25 2b 44 25  3a f1 8a 58 25 2c 59 25  |L%.L%+D%:..X%,Y%|
00000650  29 3b bd 28 31 32 38 2b  43 25 29 3b 41 24 3a ed  |);.(128+C%);A$:.|
00000660  0d 02 26 05 e1 0d 02 30  05 3a 0d 02 3a 0a dd f2  |..&....0.:..:...|
00000670  67 61 6d 65 0d 02 44 09  f2 69 6e 69 74 0d 02 4e  |game..D..init..N|
00000680  0f e7 20 4d 25 3d 30 20  4d 25 3d 91 0d 02 58 0d  |.. M%=0 M%=...X.|
00000690  41 25 3d b3 28 2d 4d 25  29 0d 02 62 17 e3 41 25  |A%=.(-M%)..b..A%|
000006a0  3d 30 b8 4c 25 3a f2 73  68 75 66 66 6c 65 3a ed  |=0.L%:.shuffle:.|
000006b0  0d 02 6c 05 f5 0d 02 76  2d f2 64 65 61 6c 3a 57  |..l....v-.deal:W|
000006c0  25 3d 30 3a 50 25 3d 30  3a 51 25 3d 30 3a 65 72  |%=0:P%=0:Q%=0:er|
000006d0  72 25 3d 30 3a 66 72 6f  6d 25 3d 31 3a 74 6f 25  |r%=0:from%=1:to%|
000006e0  3d 31 0d 02 80 3e f5 3a  ef 32 39 2c 30 3b 30 3b  |=1...>.:.29,0;0;|
000006f0  3a 46 25 3d 66 72 6f 6d  25 3a f2 67 65 74 28 49  |:F%=from%:.get(I|
00000700  24 28 31 29 2b 49 24 28  32 29 2b 49 24 28 33 29  |$(1)+I$(2)+I$(3)|
00000710  29 3a 46 24 3d 41 24 3a  66 72 6f 6d 25 3d 4e 25  |):F$=A$:from%=N%|
00000720  0d 02 8a 24 e7 65 72 72  25 84 46 25 3c 31 30 f2  |...$.err%.F%<10.|
00000730  6e 75 6d 28 46 25 2c 32  29 8b f2 62 6c 61 6e 6b  |num(F%,2)..blank|
00000740  28 46 25 29 0d 02 94 27  e7 65 72 72 25 84 74 6f  |(F%)...'.err%.to|
00000750  25 3c 31 30 f2 6e 75 6d  28 74 6f 25 2c 32 29 8b  |%<10.num(to%,2).|
00000760  f2 62 6c 61 6e 6b 28 74  6f 25 29 0d 02 9e 0a 65  |.blank(to%)....e|
00000770  72 72 25 3d 30 0d 02 a8  36 e7 20 66 72 6f 6d 25  |rr%=0...6. from%|
00000780  3d 31 34 20 8c 20 8d 54  6a 43 20 8b 20 e7 20 66  |=14 . .TjC . . f|
00000790  72 6f 6d 25 3e 31 31 20  8c 20 54 24 3d 22 22 3a  |rom%>11 . T$="":|
000007a0  57 25 3d b9 3a e5 20 8d  54 42 43 0d 02 b2 2a e7  |W%=.:. .TBC...*.|
000007b0  20 66 72 6f 6d 25 3c 31  30 20 8c 20 8d 64 46 42  | from%<10 . .dFB|
000007c0  20 8b 20 f2 67 65 74 28  49 24 28 66 72 6f 6d 25  | . .get(I$(from%|
000007d0  2d 31 30 29 29 0d 02 bc  2b e7 20 66 72 6f 6d 25  |-10))...+. from%|
000007e0  3d 31 31 20 66 72 6f 6d  25 3d 4e 25 2b 39 20 8b  |=11 from%=N%+9 .|
000007f0  53 25 3d 4e 25 2d 31 3a  66 72 6f 6d 25 3d 31 37  |S%=N%-1:from%=17|
00000800  0d 02 c6 30 f2 6e 75 6d  28 66 72 6f 6d 25 2c 31  |...0.num(from%,1|
00000810  29 3a f2 67 65 74 28 49  24 28 31 29 2b 49 24 28  |):.get(I$(1)+I$(|
00000820  32 29 29 3a 54 24 3d 41  24 3a 74 6f 25 3d 4e 25  |2)):T$=A$:to%=N%|
00000830  0d 02 d0 12 e7 74 6f 25  3d 31 30 20 74 6f 25 3d  |.....to%=10 to%=|
00000840  31 37 0d 02 da 0f f2 6e  75 6d 28 74 6f 25 2c 33  |17.....num(to%,3|
00000850  29 0d 02 e4 1f e7 46 24  3d 54 24 20 d4 31 2c 2d  |).....F$=T$ .1,-|
00000860  31 35 2c 26 31 37 30 30  2c 31 3a e5 8d 54 42 43  |15,&1700,1:..TBC|
00000870  0d 02 ee 35 e7 46 24 3d  22 50 22 20 f2 66 72 6f  |...5.F$="P" .fro|
00000880  6d 5f 70 69 6c 65 20 8b  e7 20 54 24 3d 22 50 22  |m_pile .. T$="P"|
00000890  f2 74 6f 5f 70 69 6c 65  20 8b f2 6d 6f 76 65 5f  |.to_pile ..move_|
000008a0  63 61 72 64 73 0d 02 f8  0f e7 a4 77 6f 6e 20 f2  |cards......won .|
000008b0  61 75 74 6f 0d 03 02 0a  fd 20 57 25 3d b9 0d 03  |auto..... W%=...|
000008c0  0c 33 e7 46 24 3d 22 44  22 8c 20 4c 25 3d 4c 25  |.3.F$="D". L%=L%|
000008d0  2b 31 3a f2 73 68 75 66  66 6c 65 3a e5 8d 44 76  |+1:.shuffle:..Dv|
000008e0  42 20 8b 20 e7 46 24 3d  22 53 22 8c 20 8d 44 76  |B . .F$="S". .Dv|
000008f0  42 0d 03 16 17 e7 54 24  3d 22 50 22 20 f2 77 6f  |B.....T$="P" .wo|
00000900  6e 20 8b 20 57 25 3d a3  0d 03 20 0a fd 20 57 25  |n . W%=... .. W%|
00000910  3d a3 0d 03 2a 07 eb 20  37 0d 03 34 35 f1 8a 38  |=...*.. 7..45..8|
00000920  2c 31 30 29 22 44 65 61  6c 20 4e 75 6d 62 65 72  |,10)"Deal Number|
00000930  20 77 61 73 20 22 3b 4d  25 3b 8a 31 30 2c 31 32  | was ";M%;.10,12|
00000940  29 22 52 65 64 65 61 6c  73 20 22 3b 4c 25 0d 03  |)"Redeals ";L%..|
00000950  3e 19 f1 8a 31 30 2c 31  32 29 22 52 65 64 65 61  |>...10,12)"Redea|
00000960  6c 73 20 22 3b 4c 25 0d  03 48 13 c8 99 22 4f 53  |ls ";L%..H..."OS|
00000970  5f 42 79 74 65 22 2c 32  30 30 0d 03 52 05 e1 0d  |_Byte",200..R...|
00000980  03 5c 0a dd f2 69 6e 69  74 0d 03 66 0c ef 31 39  |.\...init..f..19|
00000990  2c 32 2c 32 7c 0d 03 70  2e de 63 6f 6c 25 28 31  |,2,2|..p..col%(1|
000009a0  36 2c 32 30 29 2c 50 25  28 33 29 2c 50 6b 25 28  |6,20),P%(3),Pk%(|
000009b0  35 31 29 2c 49 24 28 33  29 2c 62 6c 6f 63 6b 25  |51),I$(3),block%|
000009c0  20 32 30 0d 03 75 44 f4  24 62 6c 6f 63 6b 25 3d  | 20..uD.$block%=|
000009d0  22 48 61 6c 5f 45 72 72  6f 72 22 2b 43 48 52 24  |"Hal_Error"+CHR$|
000009e0  30 3a 53 59 53 22 53 6f  75 6e 64 5f 41 74 74 61  |0:SYS"Sound_Atta|
000009f0  63 68 4e 61 6d 65 64 56  6f 69 63 65 22 2c 31 2c  |chNamedVoice",1,|
00000a00  62 6c 6f 63 6b 25 3a 0d  03 7a 3a f4 53 59 53 22  |block%:..z:.SYS"|
00000a10  4f 53 5f 42 79 74 65 22  2c 32 30 30 2c 31 3a 53  |OS_Byte",200,1:S|
00000a20  59 53 22 4f 53 5f 42 79  74 65 22 2c 32 31 33 2c  |YS"OS_Byte",213,|
00000a30  26 31 38 30 30 3a 2a 56  4f 4c 55 4d 45 20 31 32  |&1800:*VOLUME 12|
00000a40  30 0d 03 84 19 e3 49 25  3d 30 b8 35 31 3a 50 6b  |0.....I%=0.51:Pk|
00000a50  25 28 49 25 29 3d 49 25  3a ed 0d 03 8e 1f 76 24  |%(I%)=I%:.....v$|
00000a60  3d 22 41 32 33 34 35 36  37 38 39 22 2b bd 28 32  |="A23456789"+.(2|
00000a70  33 33 29 2b 22 4a 51 4b  22 0d 03 98 20 49 24 28  |33)+"JQK"... I$(|
00000a80  30 29 3d 22 48 44 53 43  22 3a 49 24 28 31 29 3d  |0)="HDSC":I$(1)=|
00000a90  22 31 32 33 34 35 36 37  22 0d 03 a2 1c 49 24 28  |"1234567"....I$(|
00000aa0  32 29 3d 22 38 39 50 22  3a 49 24 28 33 29 3d 22  |2)="89P":I$(3)="|
00000ab0  52 53 44 51 22 0d 03 ac  0d 66 72 6f 6d 25 3d 31  |RSDQ"....from%=1|
00000ac0  3a 87 0d 03 b6 05 e1 0d  03 c0 0d dd f2 73 68 75  |:............shu|
00000ad0  66 66 6c 65 0d 03 ca 0c  e3 49 25 3d 30 b8 35 31  |ffle.....I%=0.51|
00000ae0  0d 03 d4 0e 4a 25 3d b3  28 35 32 29 2d 31 0d 03  |....J%=.(52)-1..|
00000af0  de 2b 4b 25 3d 50 6b 25  28 49 25 29 3a 50 6b 25  |.+K%=Pk%(I%):Pk%|
00000b00  28 49 25 29 3d 50 6b 25  28 4a 25 29 3a 50 6b 25  |(I%)=Pk%(J%):Pk%|
00000b10  28 4a 25 29 3d 4b 25 3a  ed 0d 03 e8 05 e1 0d 03  |(J%)=K%:........|
00000b20  f2 0d dd f2 67 65 74 28  53 24 29 0d 03 fc 15 f5  |....get(S$).....|
00000b30  3a 41 24 3d be 3a 4e 25  3d a7 53 24 2c 41 24 29  |:A$=.:N%=.S$,A$)|
00000b40  0d 04 06 26 e7 4e 25 20  fd b9 20 8b 20 f2 6d 65  |...&.N% .. . .me|
00000b50  73 73 61 67 65 28 22 4f  6e 65 20 6f 66 3a 22 2c  |ssage("One of:",|
00000b60  53 24 29 3a fd a3 0d 04  10 3c e7 51 25 3d 30 e5  |S$):.....<.Q%=0.|
00000b70  8d 54 64 44 20 8b 20 e6  30 2c 31 33 30 3a da 3a  |.TdD . .0,130:.:|
00000b80  e3 51 25 3d 37 b8 39 3a  e7 63 6f 6c 25 28 51 25  |.Q%=7.9:.col%(Q%|
00000b90  2c 30 29 3e 31 31 20 f2  63 61 72 64 28 51 25 2c  |,0)>11 .card(Q%,|
00000ba0  31 29 0d 04 1a 0e ed 3a  51 25 3d 30 3a ef 32 36  |1).....:Q%=0:.26|
00000bb0  0d 04 24 05 e1 0d 04 2e  14 dd f2 6d 65 73 73 61  |..$........messa|
00000bc0  67 65 28 41 24 2c 42 24  29 0d 04 38 0b e7 51 25  |ge(A$,B$)..8..Q%|
00000bd0  3d 32 20 e1 0d 04 42 39  51 25 3d 31 3a d4 31 2c  |=2 ...B9Q%=1:.1,|
00000be0  2d 31 35 2c 26 31 39 30  30 2c 31 3a ef 32 34 2c  |-15,&1900,1:.24,|
00000bf0  38 30 30 3b 31 38 34 3b  31 30 35 32 3b 32 38 30  |800;184;1052;280|
00000c00  3b 31 38 2c 30 2c 31 33  31 2c 31 38 7c 0d 04 4c  |;18,0,131,18|..L|
00000c10  21 da 3a ec 38 30 30 2c  32 38 30 3a f1 3b 41 24  |!.:.800,280:.;A$|
00000c20  3a ec 38 30 30 2c 32 34  38 3a f1 3b 42 24 0d 04  |:.800,248:.;B$..|
00000c30  56 05 e1 0d 04 60 0f dd  f2 66 72 6f 6d 5f 70 69  |V....`...from_pi|
00000c40  6c 65 0d 04 6a 14 e7 20  50 25 28 53 25 29 3d 30  |le..j.. P%(S%)=0|
00000c50  20 e5 8d 64 76 44 0d 04  74 19 e7 20 63 6f 6c 25  | ..dvD..t.. col%|
00000c60  28 74 6f 25 2c 30 29 3d  30 20 e5 8d 74 52 44 0d  |(to%,0)=0 ..tRD.|
00000c70  04 7e 20 e7 20 a4 62 6f  74 28 74 6f 25 29 81 20  |.~ . .bot(to%). |
00000c80  34 20 3c 3e 50 25 28 53  25 29 e5 8d 64 62 44 0d  |4 <>P%(S%)..dbD.|
00000c90  04 88 22 e7 28 a4 62 6f  74 28 74 6f 25 29 83 20  |..".(.bot(to%). |
00000ca0  34 29 81 20 32 3d 53 25  81 20 32 20 e5 8d 64 6c  |4). 2=S%. 2 ..dl|
00000cb0  44 0d 04 92 13 50 25 28  53 25 29 3d 50 25 28 53  |D....P%(S%)=P%(S|
00000cc0  25 29 2d 31 0d 04 9c 14  44 25 3d 34 2a 50 25 28  |%)-1....D%=4*P%(|
00000cd0  53 25 29 2b 53 25 2d 34  0d 04 a6 23 f2 63 61 72  |S%)+S%-4...#.car|
00000ce0  64 28 37 2b 32 2a 53 25  2b 35 2a 28 53 25 3e 31  |d(7+2*S%+5*(S%>1|
00000cf0  29 2c 32 2d 28 44 25 3c  30 29 29 0d 04 b0 1d 63  |),2-(D%<0))....c|
00000d00  6f 6c 25 28 74 6f 25 2c  30 29 3d 63 6f 6c 25 28  |ol%(to%,0)=col%(|
00000d10  74 6f 25 2c 30 29 2b 31  0d 04 ba 1e 63 6f 6c 25  |to%,0)+1....col%|
00000d20  28 74 6f 25 2c 63 6f 6c  25 28 74 6f 25 2c 30 29  |(to%,col%(to%,0)|
00000d30  29 3d 44 25 2b 34 0d 04  c4 16 f2 63 61 72 64 28  |)=D%+4.....card(|
00000d40  74 6f 25 2c 31 29 3a f2  73 75 69 74 0d 04 ce 05  |to%,1):.suit....|
00000d50  e1 0d 04 d8 05 3a 0d 04  e2 2b 65 72 72 25 3d 2d  |.....:...+err%=-|
00000d60  31 3a f2 6d 65 73 73 61  67 65 28 22 4e 6f 74 20  |1:.message("Not |
00000d70  69 6e 22 2c 22 53 65 71  75 65 6e 63 65 22 29 3a  |in","Sequence"):|
00000d80  e1 0d 04 ec 28 65 72 72  25 3d 2d 31 3a f2 6d 65  |....(err%=-1:.me|
00000d90  73 73 61 67 65 28 22 57  72 6f 6e 67 22 2c 22 63  |ssage("Wrong","c|
00000da0  6f 6c 6f 75 72 22 29 3a  e1 0d 04 f6 28 65 72 72  |olour"):....(err|
00000db0  25 3d 2d 31 3a f2 6d 65  73 73 61 67 65 28 22 45  |%=-1:.message("E|
00000dc0  6d 70 74 79 22 2c 22 63  6f 6c 75 6d 6e 22 29 3a  |mpty","column"):|
00000dd0  e1 0d 05 00 05 3a 0d 05  0a 0e dd 20 f2 74 6f 5f  |.....:..... .to_|
00000de0  70 69 6c 65 0d 05 14 19  e7 63 6f 6c 25 28 66 72  |pile.....col%(fr|
00000df0  6f 6d 25 2c 30 29 3d 30  e5 8d 64 76 44 0d 05 1e  |om%,0)=0..dvD...|
00000e00  12 44 25 3d a4 62 6f 74  28 66 72 6f 6d 25 29 0d  |.D%=.bot(from%).|
00000e10  05 28 0c 52 25 3d 44 25  83 20 34 0d 05 32 1a e7  |.(.R%=D%. 4..2..|
00000e20  20 44 25 81 20 34 20 3c  3e 50 25 28 52 25 29 20  | D%. 4 <>P%(R%) |
00000e30  e5 8d 64 62 44 0d 05 3c  12 f2 63 61 72 64 28 66  |..dbD..<..card(f|
00000e40  72 6f 6d 25 2c 30 29 0d  05 46 21 63 6f 6c 25 28  |rom%,0)..F!col%(|
00000e50  66 72 6f 6d 25 2c 30 29  3d 63 6f 6c 25 28 66 72  |from%,0)=col%(fr|
00000e60  6f 6d 25 2c 30 29 2d 31  0d 05 50 22 e7 63 6f 6c  |om%,0)-1..P".col|
00000e70  25 28 66 72 6f 6d 25 2c  30 29 3e 30 f2 63 61 72  |%(from%,0)>0.car|
00000e80  64 28 66 72 6f 6d 25 2c  31 29 0d 05 5a 14 e7 20  |d(from%,1)..Z.. |
00000e90  66 72 6f 6d 25 3c 31 31  20 e5 8d 44 6e 45 0d 05  |from%<11 ..DnE..|
00000ea0  64 27 e7 63 6f 6c 25 28  66 72 6f 6d 25 2d 31 2c  |d'.col%(from%-1,|
00000eb0  30 29 3e 30 20 f2 63 61  72 64 28 66 72 6f 6d 25  |0)>0 .card(from%|
00000ec0  2d 31 2c 31 29 0d 05 6e  19 53 25 3d 52 25 3a 50  |-1,1)..n.S%=R%:P|
00000ed0  25 28 53 25 29 3d 50 25  28 53 25 29 2b 31 0d 05  |%(S%)=P%(S%)+1..|
00000ee0  78 1c f2 63 61 72 64 28  37 2b 32 2a 53 25 2b 35  |x..card(7+2*S%+5|
00000ef0  2a 28 53 25 3e 31 29 2c  32 29 0d 05 82 1e 50 25  |*(S%>1),2)....P%|
00000f00  3d 50 25 28 30 29 2b 50  25 28 31 29 2b 50 25 28  |=P%(0)+P%(1)+P%(|
00000f10  32 29 2b 50 25 28 33 29  0d 05 8c 0f e7 50 25 3d  |2)+P%(3).....P%=|
00000f20  35 32 20 57 25 3d b9 0d  05 96 05 e1 0d 05 a0 11  |52 W%=..........|
00000f30  dd 20 f2 6d 6f 76 65 5f  63 61 72 64 73 0d 05 aa  |. .move_cards...|
00000f40  1a e7 63 6f 6c 25 28 66  72 6f 6d 25 2c 30 29 3d  |..col%(from%,0)=|
00000f50  30 20 e5 8d 64 76 44 0d  05 b4 12 44 25 3d a4 62  |0 ..dvD....D%=.b|
00000f60  6f 74 28 66 72 6f 6d 25  29 0d 05 be 18 e7 63 6f  |ot(from%).....co|
00000f70  6c 25 28 74 6f 25 2c 30  29 3d 30 20 e5 8d 64 5c  |l%(to%,0)=0 ..d\|
00000f80  45 0d 05 c8 22 e7 20 a4  62 6f 74 28 74 6f 25 29  |E...". .bot(to%)|
00000f90  81 20 34 20 3c 3e 31 2b  44 25 81 20 34 20 e5 8d  |. 4 <>1+D%. 4 ..|
00000fa0  64 62 44 0d 05 d2 29 e7  28 28 a4 62 6f 74 28 74  |dbD...).((.bot(t|
00000fb0  6f 25 29 83 20 34 29 81  20 32 3d 28 44 25 83 20  |o%). 4). 2=(D%. |
00000fc0  34 29 81 20 32 29 20 e5  8d 64 6c 44 0d 05 dc 1d  |4). 2) ..dlD....|
00000fd0  63 6f 6c 25 28 74 6f 25  2c 30 29 3d 63 6f 6c 25  |col%(to%,0)=col%|
00000fe0  28 74 6f 25 2c 30 29 2b  31 0d 05 e6 1c 63 6f 6c  |(to%,0)+1....col|
00000ff0  25 28 74 6f 25 2c 63 6f  6c 25 28 74 6f 25 2c 30  |%(to%,col%(to%,0|
00001000  29 29 3d 44 25 0d 05 f0  12 f2 63 61 72 64 28 66  |))=D%.....card(f|
00001010  72 6f 6d 25 2c 30 29 0d  05 fa 21 63 6f 6c 25 28  |rom%,0)...!col%(|
00001020  66 72 6f 6d 25 2c 30 29  3d 63 6f 6c 25 28 66 72  |from%,0)=col%(fr|
00001030  6f 6d 25 2c 30 29 2d 31  0d 06 04 22 e7 63 6f 6c  |om%,0)-1...".col|
00001040  25 28 66 72 6f 6d 25 2c  30 29 3e 30 f2 63 61 72  |%(from%,0)>0.car|
00001050  64 28 66 72 6f 6d 25 2c  31 29 0d 06 0e 13 e7 66  |d(from%,1).....f|
00001060  72 6f 6d 25 3c 31 31 20  e5 8d 54 62 46 0d 06 18  |rom%<11 ..TbF...|
00001070  27 e7 63 6f 6c 25 28 66  72 6f 6d 25 2d 31 2c 30  |'.col%(from%-1,0|
00001080  29 3e 30 20 f2 63 61 72  64 28 66 72 6f 6d 25 2d  |)>0 .card(from%-|
00001090  31 2c 31 29 0d 06 22 16  f2 63 61 72 64 28 74 6f  |1,1).."..card(to|
000010a0  25 2c 31 29 3a f2 73 75  69 74 0d 06 2c 05 e1 0d  |%,1):.suit..,...|
000010b0  06 36 0a dd f2 64 65 61  6c 0d 06 40 0c e6 30 2c  |.6...deal..@..0,|
000010c0  31 33 30 3a da 0d 06 4a  0b ef 35 3a e6 30 2c 30  |130:...J..5:.0,0|
000010d0  0d 06 54 19 e3 49 25 3d  31 b8 31 36 3a f2 6e 75  |..T..I%=1.16:.nu|
000010e0  6d 28 49 25 2c 32 29 3a  ed 0d 06 5e 17 ec 31 31  |m(I%,2):...^..11|
000010f0  36 36 2c 31 30 30 38 3a  f1 3b 22 52 65 73 22 3b  |66,1008:.;"Res";|
00001100  0d 06 68 16 e3 49 25 3d  30 b8 33 3a 50 25 28 49  |..h..I%=0.3:P%(I|
00001110  25 29 3d 30 3a ed 0d 06  72 08 4b 25 3d 30 0d 06  |%)=0:...r.K%=0..|
00001120  7c 0b e3 4a 25 3d 31 b8  39 0d 06 86 34 e3 74 6f  ||..J%=1.9...4.to|
00001130  25 3d 31 b8 31 30 2d 4a  25 3a 63 6f 6c 25 28 74  |%=1.10-J%:col%(t|
00001140  6f 25 2c 4a 25 29 3d 50  6b 25 28 4b 25 29 3a 63  |o%,J%)=Pk%(K%):c|
00001150  6f 6c 25 28 74 6f 25 2c  30 29 3d 4a 25 0d 06 90  |ol%(to%,0)=J%...|
00001160  1e f2 63 61 72 64 28 74  6f 25 2c 31 29 3a f2 73  |..card(to%,1):.s|
00001170  75 69 74 3a 4b 25 3d 4b  25 2b 31 0d 06 9a 07 ed  |uit:K%=K%+1.....|
00001180  3a ed 0d 06 a4 0e e3 74  6f 25 3d 31 30 b8 31 36  |:......to%=10.16|
00001190  0d 06 ae 25 63 6f 6c 25  28 74 6f 25 2c 31 29 3d  |...%col%(to%,1)=|
000011a0  50 6b 25 28 4b 25 29 3a  63 6f 6c 25 28 74 6f 25  |Pk%(K%):col%(to%|
000011b0  2c 30 29 3d 31 0d 06 b8  18 f2 63 61 72 64 28 74  |,0)=1.....card(t|
000011c0  6f 25 2c 31 29 3a 4b 25  3d 4b 25 2b 31 0d 06 c2  |o%,1):K%=K%+1...|
000011d0  05 ed 0d 06 cc 5e ec 32  30 2c 33 30 3a e6 34 3a  |.....^.20,30:.4:|
000011e0  f1 22 4b 69 6e 67 20 41  6c 62 65 72 74 20 50 61  |."King Albert Pa|
000011f0  74 69 65 6e 63 65 20 62  79 20 41 6c 62 65 72 74  |tience by Albert|
00001200  20 47 61 72 64 6e 65 72  20 2d 20 41 72 63 68 69  | Gardner - Archi|
00001210  6d 65 64 65 73 20 43 6f  6e 76 65 72 73 69 6f 6e  |medes Conversion|
00001220  20 62 79 20 44 72 61 67  6f 6e 72 69 64 65 72 22  | by Dragonrider"|
00001230  0d 06 d6 05 e1 0d 06 e0  11 dd f2 63 61 72 64 28  |...........card(|
00001240  4f 25 2c 55 25 29 0d 06  ea 2f e7 55 25 3e 31 58  |O%,U%).../.U%>1X|
00001250  25 3d 31 32 30 2a 4f 25  2d 31 30 34 3a 59 25 3d  |%=120*O%-104:Y%=|
00001260  31 37 38 3a 5a 25 3d 31  36 3a 43 25 3d 44 25 3a  |178:Z%=16:C%=D%:|
00001270  e5 8d 54 70 47 0d 06 f4  5b 43 25 3d a4 62 6f 74  |..TpG...[C%=.bot|
00001280  28 4f 25 29 3a 53 25 3d  43 25 83 20 34 3a e7 4f  |(O%):S%=C%. 4:.O|
00001290  25 3e 39 20 59 25 3d 32  32 34 36 2d 31 32 38 2a  |%>9 Y%=2246-128*|
000012a0  4f 25 3a 58 25 3d 31 31  36 30 20 8b 20 59 25 3d  |O%:X%=1160 . Y%=|
000012b0  31 30 31 34 2d 34 38 2a  63 6f 6c 25 28 4f 25 2c  |1014-48*col%(O%,|
000012c0  30 29 3a 58 25 3d 31 32  30 2a 4f 25 2d 31 30 34  |0):X%=120*O%-104|
000012d0  0d 06 fe 1c e7 59 25 3c  31 36 30 20 5a 25 3d 30  |.....Y%<160 Z%=0|
000012e0  20 8b 20 5a 25 3d 59 25  2d 31 36 30 0d 07 08 1f  | . Z%=Y%-160....|
000012f0  e7 4f 25 3c 36 20 84 20  4f 25 3e 37 20 84 20 59  |.O%<6 . O%>7 . Y|
00001300  25 3e 33 34 35 20 e5 8d  54 5c 47 0d 07 12 19 e7  |%>345 ..T\G.....|
00001310  50 25 28 31 34 2d 32 2a  4f 25 29 3e 30 20 5a 25  |P%(14-2*O%)>0 Z%|
00001320  3d 31 38 36 0d 07 1c 26  e7 20 55 25 3d 31 20 84  |=186...&. U%=1 .|
00001330  20 66 72 6f 6d 25 3c 31  30 20 84 20 66 72 6f 6d  | from%<10 . from|
00001340  25 3e 31 35 20 e5 8d 54  70 47 0d 07 26 20 e7 63  |%>15 ..TpG..& .c|
00001350  6f 6c 25 28 66 72 6f 6d  25 2b 31 2c 30 29 3e 30  |ol%(from%+1,0)>0|
00001360  20 5a 25 3d 59 25 2d 31  32 36 0d 07 30 1a ef 32  | Z%=Y%-126..0..2|
00001370  34 2c 58 25 3b 5a 25 3b  58 25 2b 31 30 34 3b 59  |4,X%;Z%;X%+104;Y|
00001380  25 2b 32 3b 0d 07 3a 0c  e6 30 2c 31 33 30 3a da  |%+2;..:..0,130:.|
00001390  0d 07 44 16 e7 55 25 3d  31 20 84 20 55 25 3d 32  |..D..U%=1 . U%=2|
000013a0  20 f2 73 68 6f 77 0d 07  4e 07 ef 32 36 0d 07 58  | .show..N..26..X|
000013b0  05 e1 0d 07 62 0a dd f2  73 68 6f 77 0d 07 6c 18  |....b...show..l.|
000013c0  ef 32 34 2c 58 25 3b 5a  25 3b 58 25 2b 31 30 34  |.24,X%;Z%;X%+104|
000013d0  3b 59 25 3b 0d 07 76 17  e6 30 2c 31 33 35 3a da  |;Y%;..v..0,135:.|
000013e0  3a e6 30 2c 2d 28 53 25  3c 32 29 0d 07 80 19 ef  |:.0,-(S%<2).....|
000013f0  32 39 2c 58 25 2b 36 3b  59 25 2d 33 36 3b 3a ec  |29,X%+6;Y%-36;:.|
00001400  30 2c 33 32 0d 07 8a 1a  56 25 3d 97 c1 76 24 2c  |0,32....V%=..v$,|
00001410  31 2b 43 25 81 20 34 2c  31 29 3a ef 56 25 0d 07  |1+C%. 4,1):.V%..|
00001420  94 42 ec 36 36 2c 2d 39  32 3a f2 74 75 72 6e 28  |.B.66,-92:.turn(|
00001430  56 25 29 3a e7 43 25 3d  32 20 f2 61 63 65 20 8b  |V%):.C%=2 .ace .|
00001440  e7 43 25 3c 34 20 f2 6d  69 64 20 8b e7 43 25 3c  |.C%<4 .mid ..C%<|
00001450  34 30 20 f2 73 70 6f 74  73 20 8b 20 f2 70 69 63  |40 .spots . .pic|
00001460  0d 07 9e 05 e1 0d 07 a8  0a dd f2 73 75 69 74 0d  |...........suit.|
00001470  07 b2 0c e7 74 6f 25 3e  39 20 e1 0d 07 bc 14 e7  |....to%>9 ......|
00001480  63 6f 6c 25 28 74 6f 25  2c 30 29 3c 32 20 e1 0d  |col%(to%,0)<2 ..|
00001490  07 c6 4c 56 25 3d 28 63  6f 6c 25 28 74 6f 25 2c  |..LV%=(col%(to%,|
000014a0  63 6f 6c 25 28 74 6f 25  2c 30 29 2d 31 29 29 83  |col%(to%,0)-1)).|
000014b0  20 34 3a ef 32 36 2c 31  38 2c 30 2c 2d 28 56 25  | 4:.26,18,0,-(V%|
000014c0  3c 32 29 2c 32 35 2c 34  2c 58 25 2b 37 32 3b 59  |<2),25,4,X%+72;Y|
000014d0  25 2b 34 34 3b 32 34 32  2b 56 25 0d 07 d0 05 e1  |%+44;242+V%.....|
000014e0  0d 07 da 09 dd f2 70 69  63 0d 07 e4 2f ec 32 35  |......pic.../.25|
000014f0  2c 31 30 3a 42 25 3d 34  2a 56 25 2d 37 32 3a ef  |,10:B%=4*V%-72:.|
00001500  42 25 2c 42 25 2b 31 2c  38 2c 38 2c 31 30 2c 42  |B%,B%+1,8,8,10,B|
00001510  25 2b 32 2c 42 25 2b 33  0d 07 ee 41 ec 32 35 2c  |%+2,B%+3...A.25,|
00001520  2d 34 32 3a f2 74 75 72  6e 28 42 25 2b 33 29 3a  |-42:.turn(B%+3):|
00001530  f2 74 75 72 6e 28 42 25  2b 32 29 3a ef 38 2c 38  |.turn(B%+2):.8,8|
00001540  2c 31 30 3a f2 74 75 72  6e 28 42 25 2b 31 29 3a  |,10:.turn(B%+1):|
00001550  f2 74 75 72 6e 28 42 25  29 0d 07 f8 08 f2 6d 69  |.turn(B%).....mi|
00001560  64 0d 08 02 05 e1 0d 08  0c 09 dd f2 6d 69 64 0d  |d...........mid.|
00001570  08 16 13 ec 33 32 2c 2d  33 32 3a ef 32 34 32 2b  |....32,-32:.242+|
00001580  53 25 0d 08 20 05 e1 0d  08 2a 09 dd f2 61 63 65  |S%.. ....*...ace|
00001590  0d 08 34 0b ec 31 38 2c  2d 31 36 0d 08 3e 1b ef  |..4..18,-16..>..|
000015a0  32 34 36 2c 32 34 37 2c  38 2c 38 2c 31 30 2c 32  |246,247,8,8,10,2|
000015b0  34 38 2c 32 34 39 0d 08  48 05 e1 0d 08 52 0b dd  |48,249..H....R..|
000015c0  f2 73 70 6f 74 73 0d 08  5c 40 56 25 3d 43 25 81  |.spots..\@V%=C%.|
000015d0  20 34 3a e7 56 25 3c 33  f2 70 69 70 73 28 32 2c  | 4:.V%<3.pips(2,|
000015e0  31 29 3a f2 70 69 70 73  28 37 34 2c 31 29 20 8b  |1):.pips(74,1) .|
000015f0  f2 70 69 70 73 28 32 2c  32 29 3a f2 70 69 70 73  |.pips(2,2):.pips|
00001600  28 37 34 2c 32 29 0d 08  66 35 f7 20 28 32 32 39  |(74,2)..f5. (229|
00001610  30 2b 31 30 2a 56 25 29  3a f5 3a f3 41 25 2c 42  |0+10*V%):.:.A%,B|
00001620  25 3a e7 41 25 8c 20 f2  70 69 70 73 28 41 25 2c  |%:.A%. .pips(A%,|
00001630  42 25 29 3a fd a3 20 8b  20 fd b9 0d 08 70 05 e1  |B%):.. . ....p..|
00001640  0d 08 7a 10 dd f2 6e 75  6d 28 49 25 2c 47 25 29  |..z...num(I%,G%)|
00001650  0d 08 84 1f e7 49 25 3c  31 30 ec 31 32 30 2a 49  |.....I%<10.120*I|
00001660  25 2d 36 32 2c 31 30 30  38 3a e5 8d 74 62 48 0d  |%-62,1008:..tbH.|
00001670  08 8e 15 ec 31 31 32 30  2c 32 32 34 36 2d 31 32  |....1120,2246-12|
00001680  38 2a 49 25 0d 08 98 19  e7 49 25 3c 31 37 20 49  |8*I%.....I%<17 I|
00001690  25 3d 49 25 2d 39 20 8b  49 25 3d 33 32 0d 08 a2  |%=I%-9 .I%=32...|
000016a0  1f ef 31 38 2c 30 2c 47  25 2c 32 33 32 2c 38 2c  |..18,0,G%,232,8,|
000016b0  31 38 2c 30 2c 30 2c 34  38 2b 49 25 0d 08 ac 05  |18,0,0,48+I%....|
000016c0  e1 0d 08 b6 11 dd f2 70  69 70 73 28 41 25 2c 42  |.......pips(A%,B|
000016d0  25 29 0d 08 c0 1b e7 42  25 3d 31 20 ec 33 38 2c  |%).....B%=1 .38,|
000016e0  2d 41 25 20 8b 20 ec 31  36 2c 2d 41 25 0d 08 ca  |-A% . .16,-A%...|
000016f0  1a e7 41 25 3c 34 30 20  45 25 3d 32 33 34 20 8b  |..A%<40 E%=234 .|
00001700  20 45 25 3d 32 33 38 0d  08 d4 0a ef 45 25 2b 53  | E%=238.....E%+S|
00001710  25 0d 08 de 18 e7 42 25  3d 32 20 ec 36 34 2c 2d  |%.....B%=2 .64,-|
00001720  41 25 3a ef 45 25 2b 53  25 0d 08 e8 05 e1 0d 08  |A%:.E%+S%.......|
00001730  f2 0f dd f2 62 6c 61 6e  6b 28 49 25 29 0d 08 fc  |....blank(I%)...|
00001740  21 ec 31 31 32 30 2c 32  32 34 36 2d 31 32 38 2a  |!.1120,2246-128*|
00001750  49 25 3a ef 31 38 2c 30  2c 32 2c 32 33 32 0d 09  |I%:.18,0,2,232..|
00001760  06 05 e1 0d 09 10 1b dd  20 f2 77 6f 6e 3a c8 a0  |........ .won:..|
00001770  20 35 3a 2a 56 4f 4c 55  4d 45 20 31 32 37 0d 09  | 5:*VOLUME 127..|
00001780  1a 16 f4 2a 43 48 41 4e  4e 45 4c 56 4f 49 43 45  |...*CHANNELVOICE|
00001790  20 32 20 54 0d 09 24 16  f4 2a 43 48 41 4e 4e 45  | 2 T..$..*CHANNE|
000017a0  4c 56 4f 49 43 45 20 33  20 54 0d 09 2e 16 f4 2a  |LVOICE 3 T.....*|
000017b0  43 48 41 4e 4e 45 4c 56  4f 49 43 45 20 34 20 54  |CHANNELVOICE 4 T|
000017c0  0d 09 38 16 f4 2a 43 48  41 4e 4e 45 4c 56 4f 49  |..8..*CHANNELVOI|
000017d0  43 45 20 35 20 54 0d 09  42 11 d4 32 2c 2d 31 35  |CE 5 T..B..2,-15|
000017e0  2c 26 38 30 30 2c 31 0d  09 4c 11 d4 33 2c 2d 31  |,&800,1..L..3,-1|
000017f0  35 2c 26 38 30 30 2c 31  0d 09 56 11 d4 34 2c 2d  |5,&800,1..V..4,-|
00001800  31 35 2c 26 38 30 30 2c  31 0d 09 60 11 d4 35 2c  |15,&800,1..`..5,|
00001810  2d 31 35 2c 26 38 30 30  2c 31 0d 09 6a 29 f2 70  |-15,&800,1..j).p|
00001820  72 69 6e 74 28 22 43 6f  6e 67 72 61 74 75 6c 61  |rint("Congratula|
00001830  74 69 6f 6e 73 21 22 2c  33 32 2c 38 36 30 2c 30  |tions!",32,860,0|
00001840  2c 31 29 0d 09 74 37 f2  70 72 69 6e 74 28 22 59  |,1)..t7.print("Y|
00001850  20 4f 20 55 20 27 20 56  20 45 20 20 20 20 44 20  | O U ' V E    D |
00001860  4f 20 4e 20 45 20 20 20  49 20 54 20 21 22 2c 33  |O N E   I T !",3|
00001870  32 2c 37 39 30 2c 33 2c  30 29 0d 09 7e 37 f2 70  |2,790,3,0)..~7.p|
00001880  72 69 6e 74 28 22 57 6f  75 6c 64 20 79 6f 75 20  |rint("Would you |
00001890  6c 69 6b 65 20 61 6e 6f  74 68 65 72 20 67 61 6d  |like another gam|
000018a0  65 20 3f 20 22 2c 33 32  2c 37 32 30 2c 33 2c 31  |e ? ",32,720,3,1|
000018b0  29 0d 09 88 14 c8 99 22  4f 53 5f 42 79 74 65 22  |)......"OS_Byte"|
000018c0  2c 31 35 2c 31 0d 09 92  05 f5 0d 09 9c 08 46 24  |,15,1.........F$|
000018d0  3d be 0d 09 a6 15 fd 20  46 24 3d 22 59 22 20 84  |=...... F$="Y" .|
000018e0  20 46 24 3d 22 4e 22 0d  09 b0 24 e7 20 46 24 3d  | F$="N"...$. F$=|
000018f0  22 4e 22 20 57 25 3d a3  20 8b 20 4c 25 3d 4c 25  |"N" W%=. . L%=L%|
00001900  2b 31 3a f2 73 68 75 66  66 6c 65 0d 09 ba 05 e1  |+1:.shuffle.....|
00001910  0d 09 c4 1c dd 20 f2 70  72 69 6e 74 28 61 24 2c  |..... .print(a$,|
00001920  58 25 2c 59 25 2c 42 25  2c 46 25 29 0d 09 ce 17  |X%,Y%,B%,F%)....|
00001930  e6 20 30 2c 42 25 3a ec  20 58 25 2c 59 25 3a f1  |. 0,B%:. X%,Y%:.|
00001940  20 61 24 0d 09 d8 1b e6  20 30 2c 46 25 3a ec 20  | a$..... 0,F%:. |
00001950  58 25 2b 34 2c 59 25 2b  34 3a f1 20 61 24 0d 09  |X%+4,Y%+4:. a$..|
00001960  e2 05 e1 0d 09 ec 0a dd  f2 61 75 74 6f 0d 09 f6  |.........auto...|
00001970  28 e7 66 72 6f 6d 25 3c  31 30 f2 6e 75 6d 28 66  |(.from%<10.num(f|
00001980  72 6f 6d 25 2c 32 29 8b  f2 62 6c 61 6e 6b 28 66  |rom%,2)..blank(f|
00001990  72 6f 6d 25 29 0d 0a 00  22 e7 74 6f 25 3c 31 30  |rom%)...".to%<10|
000019a0  f2 6e 75 6d 28 74 6f 25  2c 32 29 8b f2 62 6c 61  |.num(to%,2)..bla|
000019b0  6e 6b 28 74 6f 25 29 0d  0a 0a 10 54 24 3d 22 50  |nk(to%)....T$="P|
000019c0  22 3a e7 57 25 20 e1 0d  0a 14 36 e7 50 25 3c 34  |":.W% ....6.P%<4|
000019d0  39 20 51 25 3d 91 3a d4  33 2c 2d 31 35 2c 35 32  |9 Q%=.:.3,-15,52|
000019e0  2c 31 34 3a 20 d4 33 2c  2d 31 35 2c 31 30 31 2c  |,14: .3,-15,101,|
000019f0  37 3a f5 3a fd 91 3e 51  25 2b 31 30 35 0d 0a 1e  |7:.:..>Q%+105...|
00001a00  17 c8 99 22 4f 53 5f 42  79 74 65 22 2c 32 31 32  |..."OS_Byte",212|
00001a10  2c 32 34 38 0d 0a 28 20  f2 6d 65 73 73 61 67 65  |,248..( .message|
00001a20  28 22 20 20 41 75 74 6f  22 2c 22 20 46 69 6e 69  |("  Auto"," Fini|
00001a30  73 68 22 29 0d 0a 32 20  ef 32 36 3a 51 25 3d 32  |sh")..2 .26:Q%=2|
00001a40  3a c8 99 22 4f 53 5f 42  79 74 65 22 2c 32 31 32  |:.."OS_Byte",212|
00001a50  2c 31 34 34 0d 0a 3c 0b  4a 25 3d 50 25 3a f5 0d  |,144..<.J%=P%:..|
00001a60  0a 46 40 e3 66 72 6f 6d  25 3d 31 b8 31 36 3a f2  |.F@.from%=1.16:.|
00001a70  74 6f 5f 70 69 6c 65 3a  e7 50 25 3e 4a 25 d4 26  |to_pile:.P%>J%.&|
00001a80  31 31 2c 2d 28 37 2b 32  2a 50 25 2f 31 33 29 2c  |11,-(7+2*P%/13),|
00001a90  31 2b 32 2a 50 25 2c 35  30 3a 4a 25 3d 50 25 0d  |1+2*P%,50:J%=P%.|
00001aa0  0a 50 05 ed 0d 0a 5a 08  fd 20 57 25 0d 0a 64 05  |.P....Z.. W%..d.|
00001ab0  e1 0d 0a 6e 0d dd a4 62  6f 74 28 51 25 29 0d 0a  |...n...bot(Q%)..|
00001ac0  78 18 3d 63 6f 6c 25 28  51 25 2c 63 6f 6c 25 28  |x.=col%(Q%,col%(|
00001ad0  51 25 2c 30 29 29 0d 0a  82 09 dd a4 77 6f 6e 0d  |Q%,0))......won.|
00001ae0  0a 8c 0b e3 49 25 3d 31  b8 39 0d 0a 96 17 e7 63  |....I%=1.9.....c|
00001af0  6f 6c 25 28 49 25 2c 30  29 3c 32 20 e5 8d 74 7e  |ol%(I%,0)<2 ..t~|
00001b00  4a 0d 0a a0 14 e3 4a 25  3d 32 b8 63 6f 6c 25 28  |J.....J%=2.col%(|
00001b10  49 25 2c 30 29 0d 0a aa  30 e7 63 6f 6c 25 28 49  |I%,0)...0.col%(I|
00001b20  25 2c 4a 25 29 81 20 34  3e 63 6f 6c 25 28 49 25  |%,J%). 4>col%(I%|
00001b30  2c 4a 25 2d 31 29 81 20  34 20 4a 25 3d 35 30 3a  |,J%-1). 4 J%=50:|
00001b40  49 25 3d 35 30 0d 0a b4  05 ed 0d 0a be 05 ed 0d  |I%=50...........|
00001b50  0a c8 0d e7 49 25 3e 32  30 20 3d a3 0d 0a d2 06  |....I%>20 =.....|
00001b60  3d b9 0d 0a dc 05 3a 0d  0a e6 08 ee 85 20 87 0d  |=.....:...... ..|
00001b70  0a f0 18 eb 31 32 3a f6  3a f1 22 20 61 74 20 6c  |....12:.:." at l|
00001b80  69 6e 65 20 22 3b 9e 0d  0a fa 09 e5 8d 54 74 43  |ine ";.......TtC|
00001b90  0d 0b 04 05 3a 0d 0b 0e  06 dc 30 0d 0b 18 0b dc  |....:.....0.....|
00001ba0  33 38 2c 31 2c 30 0d 0b  22 06 dc 30 0d 0b 2c 0b  |38,1,0.."..0..,.|
00001bb0  dc 33 38 2c 31 2c 30 0d  0b 36 0b dc 33 38 2c 32  |.38,1,0..6..38,2|
00001bc0  2c 30 0d 0b 40 10 dc 32  30 2c 31 2c 33 38 2c 32  |,0..@..20,1,38,2|
00001bd0  2c 30 0d 0b 4a 15 dc 32  30 2c 31 2c 33 38 2c 32  |,0..J..20,1,38,2|
00001be0  2c 35 36 2c 31 2c 30 0d  0b 54 15 dc 32 36 2c 32  |,56,1,0..T..26,2|
00001bf0  2c 33 38 2c 31 2c 35 30  2c 32 2c 30 0d 0b 5e 1c  |,38,1,50,2,0..^.|
00001c00  dc 31 34 2c 31 2c 32 36  2c 32 2c 35 30 2c 32 2c  |.14,1,26,2,50,2,|
00001c10  36 32 2c 31 2c 30 2c 30  0d 0b 68 05 3a 0d 0b 72  |62,1,0,0..h.:..r|
00001c20  4d dd f2 74 75 72 6e 28  3f 62 6c 6f 63 6b 25 29  |M..turn(?block%)|
00001c30  3a ea 41 25 2c 4a 25 2c  4b 25 2c 49 25 2c 41 24  |:.A%,J%,K%,I%,A$|
00001c40  3a 24 28 62 6c 6f 63 6b  25 2b 31 29 3d c4 31 30  |:$(block%+1)=.10|
00001c50  2c bd 30 29 3a c8 99 22  4f 53 5f 57 6f 72 64 22  |,.0):.."OS_Word"|
00001c60  2c 31 30 2c 62 6c 6f 63  6b 25 0d 0b 7c 6b ef 32  |,10,block%..|k.2|
00001c70  33 2c 32 35 30 3a e3 49  25 3d 62 6c 6f 63 6b 25  |3,250:.I%=block%|
00001c80  2b 38 b8 62 6c 6f 63 6b  25 2b 31 88 2d 31 3a 41  |+8.block%+1.-1:A|
00001c90  24 3d 22 25 22 3a 4a 25  3d 3f 49 25 3a e3 4b 25  |$="%":J%=?I%:.K%|
00001ca0  3d 31 b8 38 3a 41 25 3d  4a 25 80 31 3a 41 24 2b  |=1.8:A%=J%.1:A$+|
00001cb0  3d c3 41 25 3a 4a 25 3d  28 41 25 2a 31 32 38 29  |=.A%:J%=(A%*128)|
00001cc0  2b 4a 25 3e 3e 31 3a ed  3a 41 25 3d a0 41 24 3a  |+J%>>1:.:A%=.A$:|
00001cd0  ef 41 25 3a ed 0d 0b 86  0a ef 32 35 30 3a e1 0d  |.A%:......250:..|
00001ce0  ff                                                |.|
00001ce1