Home » Archimedes archive » Micro User » MU 1991-05.adf » Listings » !King/!RunImage

!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 » Micro User » MU 1991-05.adf » Listings
Filename: !King/!RunImage
Read OK:
File size: 1CE4 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
  885$block%="Hal_Error"+CHR$0:SYS"Sound_AttachNamedVoice",1,block%:
  890SYS"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:VDU 23;8202;0;0;0;
  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
 2330*CHANNELVOICE 2 T
 2340*CHANNELVOICE 3 T
 2350*CHANNELVOICE 4 T
 2360*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
u?$block%="Hal_Error"+�0:ș"Sound_AttachNamedVoice",1,block%:
z7ș"OS_Byte",200,1:ș"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:� 23;8202;0;0;0;
��
�
��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 3f 24  62 6c 6f 63 6b 25 3d 22  | 20..u?$block%="|
000009d0  48 61 6c 5f 45 72 72 6f  72 22 2b bd 30 3a c8 99  |Hal_Error"+.0:..|
000009e0  22 53 6f 75 6e 64 5f 41  74 74 61 63 68 4e 61 6d  |"Sound_AttachNam|
000009f0  65 64 56 6f 69 63 65 22  2c 31 2c 62 6c 6f 63 6b  |edVoice",1,block|
00000a00  25 3a 0d 03 7a 37 c8 99  22 4f 53 5f 42 79 74 65  |%:..z7.."OS_Byte|
00000a10  22 2c 32 30 30 2c 31 3a  c8 99 22 4f 53 5f 42 79  |",200,1:.."OS_By|
00000a20  74 65 22 2c 32 31 33 2c  26 31 38 30 30 3a 2a 56  |te",213,&1800:*V|
00000a30  4f 4c 55 4d 45 20 31 32  30 0d 03 84 19 e3 49 25  |OLUME 120.....I%|
00000a40  3d 30 b8 35 31 3a 50 6b  25 28 49 25 29 3d 49 25  |=0.51:Pk%(I%)=I%|
00000a50  3a ed 0d 03 8e 1f 76 24  3d 22 41 32 33 34 35 36  |:.....v$="A23456|
00000a60  37 38 39 22 2b bd 28 32  33 33 29 2b 22 4a 51 4b  |789"+.(233)+"JQK|
00000a70  22 0d 03 98 20 49 24 28  30 29 3d 22 48 44 53 43  |"... I$(0)="HDSC|
00000a80  22 3a 49 24 28 31 29 3d  22 31 32 33 34 35 36 37  |":I$(1)="1234567|
00000a90  22 0d 03 a2 1c 49 24 28  32 29 3d 22 38 39 50 22  |"....I$(2)="89P"|
00000aa0  3a 49 24 28 33 29 3d 22  52 53 44 51 22 0d 03 ac  |:I$(3)="RSDQ"...|
00000ab0  1c 66 72 6f 6d 25 3d 31  3a ef 20 32 33 3b 38 32  |.from%=1:. 23;82|
00000ac0  30 32 3b 30 3b 30 3b 30  3b 0d 03 b6 05 e1 0d 03  |02;0;0;0;.......|
00000ad0  c0 0d dd f2 73 68 75 66  66 6c 65 0d 03 ca 0c e3  |....shuffle.....|
00000ae0  49 25 3d 30 b8 35 31 0d  03 d4 0e 4a 25 3d b3 28  |I%=0.51....J%=.(|
00000af0  35 32 29 2d 31 0d 03 de  2b 4b 25 3d 50 6b 25 28  |52)-1...+K%=Pk%(|
00000b00  49 25 29 3a 50 6b 25 28  49 25 29 3d 50 6b 25 28  |I%):Pk%(I%)=Pk%(|
00000b10  4a 25 29 3a 50 6b 25 28  4a 25 29 3d 4b 25 3a ed  |J%):Pk%(J%)=K%:.|
00000b20  0d 03 e8 05 e1 0d 03 f2  0d dd f2 67 65 74 28 53  |...........get(S|
00000b30  24 29 0d 03 fc 15 f5 3a  41 24 3d be 3a 4e 25 3d  |$).....:A$=.:N%=|
00000b40  a7 53 24 2c 41 24 29 0d  04 06 26 e7 4e 25 20 fd  |.S$,A$)...&.N% .|
00000b50  b9 20 8b 20 f2 6d 65 73  73 61 67 65 28 22 4f 6e  |. . .message("On|
00000b60  65 20 6f 66 3a 22 2c 53  24 29 3a fd a3 0d 04 10  |e of:",S$):.....|
00000b70  3c e7 51 25 3d 30 e5 8d  54 64 44 20 8b 20 e6 30  |<.Q%=0..TdD . .0|
00000b80  2c 31 33 30 3a da 3a e3  51 25 3d 37 b8 39 3a e7  |,130:.:.Q%=7.9:.|
00000b90  63 6f 6c 25 28 51 25 2c  30 29 3e 31 31 20 f2 63  |col%(Q%,0)>11 .c|
00000ba0  61 72 64 28 51 25 2c 31  29 0d 04 1a 0e ed 3a 51  |ard(Q%,1).....:Q|
00000bb0  25 3d 30 3a ef 32 36 0d  04 24 05 e1 0d 04 2e 14  |%=0:.26..$......|
00000bc0  dd f2 6d 65 73 73 61 67  65 28 41 24 2c 42 24 29  |..message(A$,B$)|
00000bd0  0d 04 38 0b e7 51 25 3d  32 20 e1 0d 04 42 39 51  |..8..Q%=2 ...B9Q|
00000be0  25 3d 31 3a d4 31 2c 2d  31 35 2c 26 31 39 30 30  |%=1:.1,-15,&1900|
00000bf0  2c 31 3a ef 32 34 2c 38  30 30 3b 31 38 34 3b 31  |,1:.24,800;184;1|
00000c00  30 35 32 3b 32 38 30 3b  31 38 2c 30 2c 31 33 31  |052;280;18,0,131|
00000c10  2c 31 38 7c 0d 04 4c 21  da 3a ec 38 30 30 2c 32  |,18|..L!.:.800,2|
00000c20  38 30 3a f1 3b 41 24 3a  ec 38 30 30 2c 32 34 38  |80:.;A$:.800,248|
00000c30  3a f1 3b 42 24 0d 04 56  05 e1 0d 04 60 0f dd f2  |:.;B$..V....`...|
00000c40  66 72 6f 6d 5f 70 69 6c  65 0d 04 6a 14 e7 20 50  |from_pile..j.. P|
00000c50  25 28 53 25 29 3d 30 20  e5 8d 64 76 44 0d 04 74  |%(S%)=0 ..dvD..t|
00000c60  19 e7 20 63 6f 6c 25 28  74 6f 25 2c 30 29 3d 30  |.. col%(to%,0)=0|
00000c70  20 e5 8d 74 52 44 0d 04  7e 20 e7 20 a4 62 6f 74  | ..tRD..~ . .bot|
00000c80  28 74 6f 25 29 81 20 34  20 3c 3e 50 25 28 53 25  |(to%). 4 <>P%(S%|
00000c90  29 e5 8d 64 62 44 0d 04  88 22 e7 28 a4 62 6f 74  |)..dbD...".(.bot|
00000ca0  28 74 6f 25 29 83 20 34  29 81 20 32 3d 53 25 81  |(to%). 4). 2=S%.|
00000cb0  20 32 20 e5 8d 64 6c 44  0d 04 92 13 50 25 28 53  | 2 ..dlD....P%(S|
00000cc0  25 29 3d 50 25 28 53 25  29 2d 31 0d 04 9c 14 44  |%)=P%(S%)-1....D|
00000cd0  25 3d 34 2a 50 25 28 53  25 29 2b 53 25 2d 34 0d  |%=4*P%(S%)+S%-4.|
00000ce0  04 a6 23 f2 63 61 72 64  28 37 2b 32 2a 53 25 2b  |..#.card(7+2*S%+|
00000cf0  35 2a 28 53 25 3e 31 29  2c 32 2d 28 44 25 3c 30  |5*(S%>1),2-(D%<0|
00000d00  29 29 0d 04 b0 1d 63 6f  6c 25 28 74 6f 25 2c 30  |))....col%(to%,0|
00000d10  29 3d 63 6f 6c 25 28 74  6f 25 2c 30 29 2b 31 0d  |)=col%(to%,0)+1.|
00000d20  04 ba 1e 63 6f 6c 25 28  74 6f 25 2c 63 6f 6c 25  |...col%(to%,col%|
00000d30  28 74 6f 25 2c 30 29 29  3d 44 25 2b 34 0d 04 c4  |(to%,0))=D%+4...|
00000d40  16 f2 63 61 72 64 28 74  6f 25 2c 31 29 3a f2 73  |..card(to%,1):.s|
00000d50  75 69 74 0d 04 ce 05 e1  0d 04 d8 05 3a 0d 04 e2  |uit.........:...|
00000d60  2b 65 72 72 25 3d 2d 31  3a f2 6d 65 73 73 61 67  |+err%=-1:.messag|
00000d70  65 28 22 4e 6f 74 20 69  6e 22 2c 22 53 65 71 75  |e("Not in","Sequ|
00000d80  65 6e 63 65 22 29 3a e1  0d 04 ec 28 65 72 72 25  |ence"):....(err%|
00000d90  3d 2d 31 3a f2 6d 65 73  73 61 67 65 28 22 57 72  |=-1:.message("Wr|
00000da0  6f 6e 67 22 2c 22 63 6f  6c 6f 75 72 22 29 3a e1  |ong","colour"):.|
00000db0  0d 04 f6 28 65 72 72 25  3d 2d 31 3a f2 6d 65 73  |...(err%=-1:.mes|
00000dc0  73 61 67 65 28 22 45 6d  70 74 79 22 2c 22 63 6f  |sage("Empty","co|
00000dd0  6c 75 6d 6e 22 29 3a e1  0d 05 00 05 3a 0d 05 0a  |lumn"):.....:...|
00000de0  0e dd 20 f2 74 6f 5f 70  69 6c 65 0d 05 14 19 e7  |.. .to_pile.....|
00000df0  63 6f 6c 25 28 66 72 6f  6d 25 2c 30 29 3d 30 e5  |col%(from%,0)=0.|
00000e00  8d 64 76 44 0d 05 1e 12  44 25 3d a4 62 6f 74 28  |.dvD....D%=.bot(|
00000e10  66 72 6f 6d 25 29 0d 05  28 0c 52 25 3d 44 25 83  |from%)..(.R%=D%.|
00000e20  20 34 0d 05 32 1a e7 20  44 25 81 20 34 20 3c 3e  | 4..2.. D%. 4 <>|
00000e30  50 25 28 52 25 29 20 e5  8d 64 62 44 0d 05 3c 12  |P%(R%) ..dbD..<.|
00000e40  f2 63 61 72 64 28 66 72  6f 6d 25 2c 30 29 0d 05  |.card(from%,0)..|
00000e50  46 21 63 6f 6c 25 28 66  72 6f 6d 25 2c 30 29 3d  |F!col%(from%,0)=|
00000e60  63 6f 6c 25 28 66 72 6f  6d 25 2c 30 29 2d 31 0d  |col%(from%,0)-1.|
00000e70  05 50 22 e7 63 6f 6c 25  28 66 72 6f 6d 25 2c 30  |.P".col%(from%,0|
00000e80  29 3e 30 f2 63 61 72 64  28 66 72 6f 6d 25 2c 31  |)>0.card(from%,1|
00000e90  29 0d 05 5a 14 e7 20 66  72 6f 6d 25 3c 31 31 20  |)..Z.. from%<11 |
00000ea0  e5 8d 44 6e 45 0d 05 64  27 e7 63 6f 6c 25 28 66  |..DnE..d'.col%(f|
00000eb0  72 6f 6d 25 2d 31 2c 30  29 3e 30 20 f2 63 61 72  |rom%-1,0)>0 .car|
00000ec0  64 28 66 72 6f 6d 25 2d  31 2c 31 29 0d 05 6e 19  |d(from%-1,1)..n.|
00000ed0  53 25 3d 52 25 3a 50 25  28 53 25 29 3d 50 25 28  |S%=R%:P%(S%)=P%(|
00000ee0  53 25 29 2b 31 0d 05 78  1c f2 63 61 72 64 28 37  |S%)+1..x..card(7|
00000ef0  2b 32 2a 53 25 2b 35 2a  28 53 25 3e 31 29 2c 32  |+2*S%+5*(S%>1),2|
00000f00  29 0d 05 82 1e 50 25 3d  50 25 28 30 29 2b 50 25  |)....P%=P%(0)+P%|
00000f10  28 31 29 2b 50 25 28 32  29 2b 50 25 28 33 29 0d  |(1)+P%(2)+P%(3).|
00000f20  05 8c 0f e7 50 25 3d 35  32 20 57 25 3d b9 0d 05  |....P%=52 W%=...|
00000f30  96 05 e1 0d 05 a0 11 dd  20 f2 6d 6f 76 65 5f 63  |........ .move_c|
00000f40  61 72 64 73 0d 05 aa 1a  e7 63 6f 6c 25 28 66 72  |ards.....col%(fr|
00000f50  6f 6d 25 2c 30 29 3d 30  20 e5 8d 64 76 44 0d 05  |om%,0)=0 ..dvD..|
00000f60  b4 12 44 25 3d a4 62 6f  74 28 66 72 6f 6d 25 29  |..D%=.bot(from%)|
00000f70  0d 05 be 18 e7 63 6f 6c  25 28 74 6f 25 2c 30 29  |.....col%(to%,0)|
00000f80  3d 30 20 e5 8d 64 5c 45  0d 05 c8 22 e7 20 a4 62  |=0 ..d\E...". .b|
00000f90  6f 74 28 74 6f 25 29 81  20 34 20 3c 3e 31 2b 44  |ot(to%). 4 <>1+D|
00000fa0  25 81 20 34 20 e5 8d 64  62 44 0d 05 d2 29 e7 28  |%. 4 ..dbD...).(|
00000fb0  28 a4 62 6f 74 28 74 6f  25 29 83 20 34 29 81 20  |(.bot(to%). 4). |
00000fc0  32 3d 28 44 25 83 20 34  29 81 20 32 29 20 e5 8d  |2=(D%. 4). 2) ..|
00000fd0  64 6c 44 0d 05 dc 1d 63  6f 6c 25 28 74 6f 25 2c  |dlD....col%(to%,|
00000fe0  30 29 3d 63 6f 6c 25 28  74 6f 25 2c 30 29 2b 31  |0)=col%(to%,0)+1|
00000ff0  0d 05 e6 1c 63 6f 6c 25  28 74 6f 25 2c 63 6f 6c  |....col%(to%,col|
00001000  25 28 74 6f 25 2c 30 29  29 3d 44 25 0d 05 f0 12  |%(to%,0))=D%....|
00001010  f2 63 61 72 64 28 66 72  6f 6d 25 2c 30 29 0d 05  |.card(from%,0)..|
00001020  fa 21 63 6f 6c 25 28 66  72 6f 6d 25 2c 30 29 3d  |.!col%(from%,0)=|
00001030  63 6f 6c 25 28 66 72 6f  6d 25 2c 30 29 2d 31 0d  |col%(from%,0)-1.|
00001040  06 04 22 e7 63 6f 6c 25  28 66 72 6f 6d 25 2c 30  |..".col%(from%,0|
00001050  29 3e 30 f2 63 61 72 64  28 66 72 6f 6d 25 2c 31  |)>0.card(from%,1|
00001060  29 0d 06 0e 13 e7 66 72  6f 6d 25 3c 31 31 20 e5  |).....from%<11 .|
00001070  8d 54 62 46 0d 06 18 27  e7 63 6f 6c 25 28 66 72  |.TbF...'.col%(fr|
00001080  6f 6d 25 2d 31 2c 30 29  3e 30 20 f2 63 61 72 64  |om%-1,0)>0 .card|
00001090  28 66 72 6f 6d 25 2d 31  2c 31 29 0d 06 22 16 f2  |(from%-1,1).."..|
000010a0  63 61 72 64 28 74 6f 25  2c 31 29 3a f2 73 75 69  |card(to%,1):.sui|
000010b0  74 0d 06 2c 05 e1 0d 06  36 0a dd f2 64 65 61 6c  |t..,....6...deal|
000010c0  0d 06 40 0c e6 30 2c 31  33 30 3a da 0d 06 4a 0b  |..@..0,130:...J.|
000010d0  ef 35 3a e6 30 2c 30 0d  06 54 19 e3 49 25 3d 31  |.5:.0,0..T..I%=1|
000010e0  b8 31 36 3a f2 6e 75 6d  28 49 25 2c 32 29 3a ed  |.16:.num(I%,2):.|
000010f0  0d 06 5e 17 ec 31 31 36  36 2c 31 30 30 38 3a f1  |..^..1166,1008:.|
00001100  3b 22 52 65 73 22 3b 0d  06 68 16 e3 49 25 3d 30  |;"Res";..h..I%=0|
00001110  b8 33 3a 50 25 28 49 25  29 3d 30 3a ed 0d 06 72  |.3:P%(I%)=0:...r|
00001120  08 4b 25 3d 30 0d 06 7c  0b e3 4a 25 3d 31 b8 39  |.K%=0..|..J%=1.9|
00001130  0d 06 86 34 e3 74 6f 25  3d 31 b8 31 30 2d 4a 25  |...4.to%=1.10-J%|
00001140  3a 63 6f 6c 25 28 74 6f  25 2c 4a 25 29 3d 50 6b  |:col%(to%,J%)=Pk|
00001150  25 28 4b 25 29 3a 63 6f  6c 25 28 74 6f 25 2c 30  |%(K%):col%(to%,0|
00001160  29 3d 4a 25 0d 06 90 1e  f2 63 61 72 64 28 74 6f  |)=J%.....card(to|
00001170  25 2c 31 29 3a f2 73 75  69 74 3a 4b 25 3d 4b 25  |%,1):.suit:K%=K%|
00001180  2b 31 0d 06 9a 07 ed 3a  ed 0d 06 a4 0e e3 74 6f  |+1.....:......to|
00001190  25 3d 31 30 b8 31 36 0d  06 ae 25 63 6f 6c 25 28  |%=10.16...%col%(|
000011a0  74 6f 25 2c 31 29 3d 50  6b 25 28 4b 25 29 3a 63  |to%,1)=Pk%(K%):c|
000011b0  6f 6c 25 28 74 6f 25 2c  30 29 3d 31 0d 06 b8 18  |ol%(to%,0)=1....|
000011c0  f2 63 61 72 64 28 74 6f  25 2c 31 29 3a 4b 25 3d  |.card(to%,1):K%=|
000011d0  4b 25 2b 31 0d 06 c2 05  ed 0d 06 cc 5e ec 32 30  |K%+1........^.20|
000011e0  2c 33 30 3a e6 34 3a f1  22 4b 69 6e 67 20 41 6c  |,30:.4:."King Al|
000011f0  62 65 72 74 20 50 61 74  69 65 6e 63 65 20 62 79  |bert Patience by|
00001200  20 41 6c 62 65 72 74 20  47 61 72 64 6e 65 72 20  | Albert Gardner |
00001210  2d 20 41 72 63 68 69 6d  65 64 65 73 20 43 6f 6e  |- Archimedes Con|
00001220  76 65 72 73 69 6f 6e 20  62 79 20 44 72 61 67 6f  |version by Drago|
00001230  6e 72 69 64 65 72 22 0d  06 d6 05 e1 0d 06 e0 11  |nrider".........|
00001240  dd f2 63 61 72 64 28 4f  25 2c 55 25 29 0d 06 ea  |..card(O%,U%)...|
00001250  2f e7 55 25 3e 31 58 25  3d 31 32 30 2a 4f 25 2d  |/.U%>1X%=120*O%-|
00001260  31 30 34 3a 59 25 3d 31  37 38 3a 5a 25 3d 31 36  |104:Y%=178:Z%=16|
00001270  3a 43 25 3d 44 25 3a e5  8d 54 70 47 0d 06 f4 5b  |:C%=D%:..TpG...[|
00001280  43 25 3d a4 62 6f 74 28  4f 25 29 3a 53 25 3d 43  |C%=.bot(O%):S%=C|
00001290  25 83 20 34 3a e7 4f 25  3e 39 20 59 25 3d 32 32  |%. 4:.O%>9 Y%=22|
000012a0  34 36 2d 31 32 38 2a 4f  25 3a 58 25 3d 31 31 36  |46-128*O%:X%=116|
000012b0  30 20 8b 20 59 25 3d 31  30 31 34 2d 34 38 2a 63  |0 . Y%=1014-48*c|
000012c0  6f 6c 25 28 4f 25 2c 30  29 3a 58 25 3d 31 32 30  |ol%(O%,0):X%=120|
000012d0  2a 4f 25 2d 31 30 34 0d  06 fe 1c e7 59 25 3c 31  |*O%-104.....Y%<1|
000012e0  36 30 20 5a 25 3d 30 20  8b 20 5a 25 3d 59 25 2d  |60 Z%=0 . Z%=Y%-|
000012f0  31 36 30 0d 07 08 1f e7  4f 25 3c 36 20 84 20 4f  |160.....O%<6 . O|
00001300  25 3e 37 20 84 20 59 25  3e 33 34 35 20 e5 8d 54  |%>7 . Y%>345 ..T|
00001310  5c 47 0d 07 12 19 e7 50  25 28 31 34 2d 32 2a 4f  |\G.....P%(14-2*O|
00001320  25 29 3e 30 20 5a 25 3d  31 38 36 0d 07 1c 26 e7  |%)>0 Z%=186...&.|
00001330  20 55 25 3d 31 20 84 20  66 72 6f 6d 25 3c 31 30  | U%=1 . from%<10|
00001340  20 84 20 66 72 6f 6d 25  3e 31 35 20 e5 8d 54 70  | . from%>15 ..Tp|
00001350  47 0d 07 26 20 e7 63 6f  6c 25 28 66 72 6f 6d 25  |G..& .col%(from%|
00001360  2b 31 2c 30 29 3e 30 20  5a 25 3d 59 25 2d 31 32  |+1,0)>0 Z%=Y%-12|
00001370  36 0d 07 30 1a ef 32 34  2c 58 25 3b 5a 25 3b 58  |6..0..24,X%;Z%;X|
00001380  25 2b 31 30 34 3b 59 25  2b 32 3b 0d 07 3a 0c e6  |%+104;Y%+2;..:..|
00001390  30 2c 31 33 30 3a da 0d  07 44 16 e7 55 25 3d 31  |0,130:...D..U%=1|
000013a0  20 84 20 55 25 3d 32 20  f2 73 68 6f 77 0d 07 4e  | . U%=2 .show..N|
000013b0  07 ef 32 36 0d 07 58 05  e1 0d 07 62 0a dd f2 73  |..26..X....b...s|
000013c0  68 6f 77 0d 07 6c 18 ef  32 34 2c 58 25 3b 5a 25  |how..l..24,X%;Z%|
000013d0  3b 58 25 2b 31 30 34 3b  59 25 3b 0d 07 76 17 e6  |;X%+104;Y%;..v..|
000013e0  30 2c 31 33 35 3a da 3a  e6 30 2c 2d 28 53 25 3c  |0,135:.:.0,-(S%<|
000013f0  32 29 0d 07 80 19 ef 32  39 2c 58 25 2b 36 3b 59  |2).....29,X%+6;Y|
00001400  25 2d 33 36 3b 3a ec 30  2c 33 32 0d 07 8a 1a 56  |%-36;:.0,32....V|
00001410  25 3d 97 c1 76 24 2c 31  2b 43 25 81 20 34 2c 31  |%=..v$,1+C%. 4,1|
00001420  29 3a ef 56 25 0d 07 94  42 ec 36 36 2c 2d 39 32  |):.V%...B.66,-92|
00001430  3a f2 74 75 72 6e 28 56  25 29 3a e7 43 25 3d 32  |:.turn(V%):.C%=2|
00001440  20 f2 61 63 65 20 8b e7  43 25 3c 34 20 f2 6d 69  | .ace ..C%<4 .mi|
00001450  64 20 8b e7 43 25 3c 34  30 20 f2 73 70 6f 74 73  |d ..C%<40 .spots|
00001460  20 8b 20 f2 70 69 63 0d  07 9e 05 e1 0d 07 a8 0a  | . .pic.........|
00001470  dd f2 73 75 69 74 0d 07  b2 0c e7 74 6f 25 3e 39  |..suit.....to%>9|
00001480  20 e1 0d 07 bc 14 e7 63  6f 6c 25 28 74 6f 25 2c  | ......col%(to%,|
00001490  30 29 3c 32 20 e1 0d 07  c6 4c 56 25 3d 28 63 6f  |0)<2 ....LV%=(co|
000014a0  6c 25 28 74 6f 25 2c 63  6f 6c 25 28 74 6f 25 2c  |l%(to%,col%(to%,|
000014b0  30 29 2d 31 29 29 83 20  34 3a ef 32 36 2c 31 38  |0)-1)). 4:.26,18|
000014c0  2c 30 2c 2d 28 56 25 3c  32 29 2c 32 35 2c 34 2c  |,0,-(V%<2),25,4,|
000014d0  58 25 2b 37 32 3b 59 25  2b 34 34 3b 32 34 32 2b  |X%+72;Y%+44;242+|
000014e0  56 25 0d 07 d0 05 e1 0d  07 da 09 dd f2 70 69 63  |V%...........pic|
000014f0  0d 07 e4 2f ec 32 35 2c  31 30 3a 42 25 3d 34 2a  |.../.25,10:B%=4*|
00001500  56 25 2d 37 32 3a ef 42  25 2c 42 25 2b 31 2c 38  |V%-72:.B%,B%+1,8|
00001510  2c 38 2c 31 30 2c 42 25  2b 32 2c 42 25 2b 33 0d  |,8,10,B%+2,B%+3.|
00001520  07 ee 41 ec 32 35 2c 2d  34 32 3a f2 74 75 72 6e  |..A.25,-42:.turn|
00001530  28 42 25 2b 33 29 3a f2  74 75 72 6e 28 42 25 2b  |(B%+3):.turn(B%+|
00001540  32 29 3a ef 38 2c 38 2c  31 30 3a f2 74 75 72 6e  |2):.8,8,10:.turn|
00001550  28 42 25 2b 31 29 3a f2  74 75 72 6e 28 42 25 29  |(B%+1):.turn(B%)|
00001560  0d 07 f8 08 f2 6d 69 64  0d 08 02 05 e1 0d 08 0c  |.....mid........|
00001570  09 dd f2 6d 69 64 0d 08  16 13 ec 33 32 2c 2d 33  |...mid.....32,-3|
00001580  32 3a ef 32 34 32 2b 53  25 0d 08 20 05 e1 0d 08  |2:.242+S%.. ....|
00001590  2a 09 dd f2 61 63 65 0d  08 34 0b ec 31 38 2c 2d  |*...ace..4..18,-|
000015a0  31 36 0d 08 3e 1b ef 32  34 36 2c 32 34 37 2c 38  |16..>..246,247,8|
000015b0  2c 38 2c 31 30 2c 32 34  38 2c 32 34 39 0d 08 48  |,8,10,248,249..H|
000015c0  05 e1 0d 08 52 0b dd f2  73 70 6f 74 73 0d 08 5c  |....R...spots..\|
000015d0  40 56 25 3d 43 25 81 20  34 3a e7 56 25 3c 33 f2  |@V%=C%. 4:.V%<3.|
000015e0  70 69 70 73 28 32 2c 31  29 3a f2 70 69 70 73 28  |pips(2,1):.pips(|
000015f0  37 34 2c 31 29 20 8b f2  70 69 70 73 28 32 2c 32  |74,1) ..pips(2,2|
00001600  29 3a f2 70 69 70 73 28  37 34 2c 32 29 0d 08 66  |):.pips(74,2)..f|
00001610  35 f7 20 28 32 32 39 30  2b 31 30 2a 56 25 29 3a  |5. (2290+10*V%):|
00001620  f5 3a f3 41 25 2c 42 25  3a e7 41 25 8c 20 f2 70  |.:.A%,B%:.A%. .p|
00001630  69 70 73 28 41 25 2c 42  25 29 3a fd a3 20 8b 20  |ips(A%,B%):.. . |
00001640  fd b9 0d 08 70 05 e1 0d  08 7a 10 dd f2 6e 75 6d  |....p....z...num|
00001650  28 49 25 2c 47 25 29 0d  08 84 1f e7 49 25 3c 31  |(I%,G%).....I%<1|
00001660  30 ec 31 32 30 2a 49 25  2d 36 32 2c 31 30 30 38  |0.120*I%-62,1008|
00001670  3a e5 8d 74 62 48 0d 08  8e 15 ec 31 31 32 30 2c  |:..tbH.....1120,|
00001680  32 32 34 36 2d 31 32 38  2a 49 25 0d 08 98 19 e7  |2246-128*I%.....|
00001690  49 25 3c 31 37 20 49 25  3d 49 25 2d 39 20 8b 49  |I%<17 I%=I%-9 .I|
000016a0  25 3d 33 32 0d 08 a2 1f  ef 31 38 2c 30 2c 47 25  |%=32.....18,0,G%|
000016b0  2c 32 33 32 2c 38 2c 31  38 2c 30 2c 30 2c 34 38  |,232,8,18,0,0,48|
000016c0  2b 49 25 0d 08 ac 05 e1  0d 08 b6 11 dd f2 70 69  |+I%...........pi|
000016d0  70 73 28 41 25 2c 42 25  29 0d 08 c0 1b e7 42 25  |ps(A%,B%).....B%|
000016e0  3d 31 20 ec 33 38 2c 2d  41 25 20 8b 20 ec 31 36  |=1 .38,-A% . .16|
000016f0  2c 2d 41 25 0d 08 ca 1a  e7 41 25 3c 34 30 20 45  |,-A%.....A%<40 E|
00001700  25 3d 32 33 34 20 8b 20  45 25 3d 32 33 38 0d 08  |%=234 . E%=238..|
00001710  d4 0a ef 45 25 2b 53 25  0d 08 de 18 e7 42 25 3d  |...E%+S%.....B%=|
00001720  32 20 ec 36 34 2c 2d 41  25 3a ef 45 25 2b 53 25  |2 .64,-A%:.E%+S%|
00001730  0d 08 e8 05 e1 0d 08 f2  0f dd f2 62 6c 61 6e 6b  |...........blank|
00001740  28 49 25 29 0d 08 fc 21  ec 31 31 32 30 2c 32 32  |(I%)...!.1120,22|
00001750  34 36 2d 31 32 38 2a 49  25 3a ef 31 38 2c 30 2c  |46-128*I%:.18,0,|
00001760  32 2c 32 33 32 0d 09 06  05 e1 0d 09 10 1b dd 20  |2,232.......... |
00001770  f2 77 6f 6e 3a c8 a0 20  35 3a 2a 56 4f 4c 55 4d  |.won:.. 5:*VOLUM|
00001780  45 20 31 32 37 0d 09 1a  15 2a 43 48 41 4e 4e 45  |E 127....*CHANNE|
00001790  4c 56 4f 49 43 45 20 32  20 54 0d 09 24 15 2a 43  |LVOICE 2 T..$.*C|
000017a0  48 41 4e 4e 45 4c 56 4f  49 43 45 20 33 20 54 0d  |HANNELVOICE 3 T.|
000017b0  09 2e 15 2a 43 48 41 4e  4e 45 4c 56 4f 49 43 45  |...*CHANNELVOICE|
000017c0  20 34 20 54 0d 09 38 15  2a 43 48 41 4e 4e 45 4c  | 4 T..8.*CHANNEL|
000017d0  56 4f 49 43 45 20 35 20  54 0d 09 42 11 d4 32 2c  |VOICE 5 T..B..2,|
000017e0  2d 31 35 2c 26 38 30 30  2c 31 0d 09 4c 11 d4 33  |-15,&800,1..L..3|
000017f0  2c 2d 31 35 2c 26 38 30  30 2c 31 0d 09 56 11 d4  |,-15,&800,1..V..|
00001800  34 2c 2d 31 35 2c 26 38  30 30 2c 31 0d 09 60 11  |4,-15,&800,1..`.|
00001810  d4 35 2c 2d 31 35 2c 26  38 30 30 2c 31 0d 09 6a  |.5,-15,&800,1..j|
00001820  29 f2 70 72 69 6e 74 28  22 43 6f 6e 67 72 61 74  |).print("Congrat|
00001830  75 6c 61 74 69 6f 6e 73  21 22 2c 33 32 2c 38 36  |ulations!",32,86|
00001840  30 2c 30 2c 31 29 0d 09  74 37 f2 70 72 69 6e 74  |0,0,1)..t7.print|
00001850  28 22 59 20 4f 20 55 20  27 20 56 20 45 20 20 20  |("Y O U ' V E   |
00001860  20 44 20 4f 20 4e 20 45  20 20 20 49 20 54 20 21  | D O N E   I T !|
00001870  22 2c 33 32 2c 37 39 30  2c 33 2c 30 29 0d 09 7e  |",32,790,3,0)..~|
00001880  37 f2 70 72 69 6e 74 28  22 57 6f 75 6c 64 20 79  |7.print("Would y|
00001890  6f 75 20 6c 69 6b 65 20  61 6e 6f 74 68 65 72 20  |ou like another |
000018a0  67 61 6d 65 20 3f 20 22  2c 33 32 2c 37 32 30 2c  |game ? ",32,720,|
000018b0  33 2c 31 29 0d 09 88 14  c8 99 22 4f 53 5f 42 79  |3,1)......"OS_By|
000018c0  74 65 22 2c 31 35 2c 31  0d 09 92 05 f5 0d 09 9c  |te",15,1........|
000018d0  08 46 24 3d be 0d 09 a6  15 fd 20 46 24 3d 22 59  |.F$=...... F$="Y|
000018e0  22 20 84 20 46 24 3d 22  4e 22 0d 09 b0 24 e7 20  |" . F$="N"...$. |
000018f0  46 24 3d 22 4e 22 20 57  25 3d a3 20 8b 20 4c 25  |F$="N" W%=. . L%|
00001900  3d 4c 25 2b 31 3a f2 73  68 75 66 66 6c 65 0d 09  |=L%+1:.shuffle..|
00001910  ba 05 e1 0d 09 c4 1c dd  20 f2 70 72 69 6e 74 28  |........ .print(|
00001920  61 24 2c 58 25 2c 59 25  2c 42 25 2c 46 25 29 0d  |a$,X%,Y%,B%,F%).|
00001930  09 ce 17 e6 20 30 2c 42  25 3a ec 20 58 25 2c 59  |.... 0,B%:. X%,Y|
00001940  25 3a f1 20 61 24 0d 09  d8 1b e6 20 30 2c 46 25  |%:. a$..... 0,F%|
00001950  3a ec 20 58 25 2b 34 2c  59 25 2b 34 3a f1 20 61  |:. X%+4,Y%+4:. a|
00001960  24 0d 09 e2 05 e1 0d 09  ec 0a dd f2 61 75 74 6f  |$...........auto|
00001970  0d 09 f6 28 e7 66 72 6f  6d 25 3c 31 30 f2 6e 75  |...(.from%<10.nu|
00001980  6d 28 66 72 6f 6d 25 2c  32 29 8b f2 62 6c 61 6e  |m(from%,2)..blan|
00001990  6b 28 66 72 6f 6d 25 29  0d 0a 00 22 e7 74 6f 25  |k(from%)...".to%|
000019a0  3c 31 30 f2 6e 75 6d 28  74 6f 25 2c 32 29 8b f2  |<10.num(to%,2)..|
000019b0  62 6c 61 6e 6b 28 74 6f  25 29 0d 0a 0a 10 54 24  |blank(to%)....T$|
000019c0  3d 22 50 22 3a e7 57 25  20 e1 0d 0a 14 36 e7 50  |="P":.W% ....6.P|
000019d0  25 3c 34 39 20 51 25 3d  91 3a d4 33 2c 2d 31 35  |%<49 Q%=.:.3,-15|
000019e0  2c 35 32 2c 31 34 3a 20  d4 33 2c 2d 31 35 2c 31  |,52,14: .3,-15,1|
000019f0  30 31 2c 37 3a f5 3a fd  91 3e 51 25 2b 31 30 35  |01,7:.:..>Q%+105|
00001a00  0d 0a 1e 17 c8 99 22 4f  53 5f 42 79 74 65 22 2c  |......"OS_Byte",|
00001a10  32 31 32 2c 32 34 38 0d  0a 28 20 f2 6d 65 73 73  |212,248..( .mess|
00001a20  61 67 65 28 22 20 20 41  75 74 6f 22 2c 22 20 46  |age("  Auto"," F|
00001a30  69 6e 69 73 68 22 29 0d  0a 32 20 ef 32 36 3a 51  |inish")..2 .26:Q|
00001a40  25 3d 32 3a c8 99 22 4f  53 5f 42 79 74 65 22 2c  |%=2:.."OS_Byte",|
00001a50  32 31 32 2c 31 34 34 0d  0a 3c 0b 4a 25 3d 50 25  |212,144..<.J%=P%|
00001a60  3a f5 0d 0a 46 40 e3 66  72 6f 6d 25 3d 31 b8 31  |:...F@.from%=1.1|
00001a70  36 3a f2 74 6f 5f 70 69  6c 65 3a e7 50 25 3e 4a  |6:.to_pile:.P%>J|
00001a80  25 d4 26 31 31 2c 2d 28  37 2b 32 2a 50 25 2f 31  |%.&11,-(7+2*P%/1|
00001a90  33 29 2c 31 2b 32 2a 50  25 2c 35 30 3a 4a 25 3d  |3),1+2*P%,50:J%=|
00001aa0  50 25 0d 0a 50 05 ed 0d  0a 5a 08 fd 20 57 25 0d  |P%..P....Z.. W%.|
00001ab0  0a 64 05 e1 0d 0a 6e 0d  dd a4 62 6f 74 28 51 25  |.d....n...bot(Q%|
00001ac0  29 0d 0a 78 18 3d 63 6f  6c 25 28 51 25 2c 63 6f  |)..x.=col%(Q%,co|
00001ad0  6c 25 28 51 25 2c 30 29  29 0d 0a 82 09 dd a4 77  |l%(Q%,0))......w|
00001ae0  6f 6e 0d 0a 8c 0b e3 49  25 3d 31 b8 39 0d 0a 96  |on.....I%=1.9...|
00001af0  17 e7 63 6f 6c 25 28 49  25 2c 30 29 3c 32 20 e5  |..col%(I%,0)<2 .|
00001b00  8d 74 7e 4a 0d 0a a0 14  e3 4a 25 3d 32 b8 63 6f  |.t~J.....J%=2.co|
00001b10  6c 25 28 49 25 2c 30 29  0d 0a aa 30 e7 63 6f 6c  |l%(I%,0)...0.col|
00001b20  25 28 49 25 2c 4a 25 29  81 20 34 3e 63 6f 6c 25  |%(I%,J%). 4>col%|
00001b30  28 49 25 2c 4a 25 2d 31  29 81 20 34 20 4a 25 3d  |(I%,J%-1). 4 J%=|
00001b40  35 30 3a 49 25 3d 35 30  0d 0a b4 05 ed 0d 0a be  |50:I%=50........|
00001b50  05 ed 0d 0a c8 0d e7 49  25 3e 32 30 20 3d a3 0d  |.......I%>20 =..|
00001b60  0a d2 06 3d b9 0d 0a dc  05 3a 0d 0a e6 08 ee 85  |...=.....:......|
00001b70  20 87 0d 0a f0 18 eb 31  32 3a f6 3a f1 22 20 61  | ......12:.:." a|
00001b80  74 20 6c 69 6e 65 20 22  3b 9e 0d 0a fa 09 e5 8d  |t line ";.......|
00001b90  54 74 43 0d 0b 04 05 3a  0d 0b 0e 06 dc 30 0d 0b  |TtC....:.....0..|
00001ba0  18 0b dc 33 38 2c 31 2c  30 0d 0b 22 06 dc 30 0d  |...38,1,0.."..0.|
00001bb0  0b 2c 0b dc 33 38 2c 31  2c 30 0d 0b 36 0b dc 33  |.,..38,1,0..6..3|
00001bc0  38 2c 32 2c 30 0d 0b 40  10 dc 32 30 2c 31 2c 33  |8,2,0..@..20,1,3|
00001bd0  38 2c 32 2c 30 0d 0b 4a  15 dc 32 30 2c 31 2c 33  |8,2,0..J..20,1,3|
00001be0  38 2c 32 2c 35 36 2c 31  2c 30 0d 0b 54 15 dc 32  |8,2,56,1,0..T..2|
00001bf0  36 2c 32 2c 33 38 2c 31  2c 35 30 2c 32 2c 30 0d  |6,2,38,1,50,2,0.|
00001c00  0b 5e 1c dc 31 34 2c 31  2c 32 36 2c 32 2c 35 30  |.^..14,1,26,2,50|
00001c10  2c 32 2c 36 32 2c 31 2c  30 2c 30 0d 0b 68 05 3a  |,2,62,1,0,0..h.:|
00001c20  0d 0b 72 4d dd f2 74 75  72 6e 28 3f 62 6c 6f 63  |..rM..turn(?bloc|
00001c30  6b 25 29 3a ea 41 25 2c  4a 25 2c 4b 25 2c 49 25  |k%):.A%,J%,K%,I%|
00001c40  2c 41 24 3a 24 28 62 6c  6f 63 6b 25 2b 31 29 3d  |,A$:$(block%+1)=|
00001c50  c4 31 30 2c bd 30 29 3a  c8 99 22 4f 53 5f 57 6f  |.10,.0):.."OS_Wo|
00001c60  72 64 22 2c 31 30 2c 62  6c 6f 63 6b 25 0d 0b 7c  |rd",10,block%..||
00001c70  6b ef 32 33 2c 32 35 30  3a e3 49 25 3d 62 6c 6f  |k.23,250:.I%=blo|
00001c80  63 6b 25 2b 38 b8 62 6c  6f 63 6b 25 2b 31 88 2d  |ck%+8.block%+1.-|
00001c90  31 3a 41 24 3d 22 25 22  3a 4a 25 3d 3f 49 25 3a  |1:A$="%":J%=?I%:|
00001ca0  e3 4b 25 3d 31 b8 38 3a  41 25 3d 4a 25 80 31 3a  |.K%=1.8:A%=J%.1:|
00001cb0  41 24 2b 3d c3 41 25 3a  4a 25 3d 28 41 25 2a 31  |A$+=.A%:J%=(A%*1|
00001cc0  32 38 29 2b 4a 25 3e 3e  31 3a ed 3a 41 25 3d a0  |28)+J%>>1:.:A%=.|
00001cd0  41 24 3a ef 41 25 3a ed  0d 0b 86 0a ef 32 35 30  |A$:.A%:......250|
00001ce0  3a e1 0d ff                                       |:...|
00001ce4