Home » Archimedes archive » Micro User » MU 1991-06.adf » PD-Stuff » Games/!Connect4/!Run

Games/!Connect4/!Run

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-06.adf » PD-Stuff
Filename: Games/!Connect4/!Run
Read OK:
File size: 1C3D bytes
Load address: 0000
Exec address: 0000
File contents
  100REM>Games.Connect4  Game from Telesoftware
  110 REM (C) BARRY ALLEN, Jan 1984
  120 REM Adapted for Archimedes, with apologies, by Les Hurst, Sept 1988
  125 REM Enhanced by  Richard Burnell
  130REM*FX220,0
  135 GCOL0,0 TINT 0
  136 *POINTER 1
  138 *FX15,0
  140DIMC%(7),DZ%(7),PR%(7),DY%(7),DX%(7),DO%(7),A%(7),AX%(7),AA%(7,7),AS%(7),AT%(7),B%(7),CO%(7),CC%(7)
  150 DIMX%(4),Y%(4),CS%(2),OPWIN%(7)
  160 R$=CHR$(129):G$=CHR$(130):Y$=CHR$(131):B$=CHR$(132):M$=CHR$(133):C$=CHR$(134):W$=CHR$(135):FO$=CHR$(136):FF$=CHR$(137)
  170GR$=CHR$(145):GG$=CHR$(146):GY$=CHR$(147):GB$=CHR$(148):GM$=CHR$(149):GC$=CHR$(150):GW$=CHR$(151)
  180DH$=CHR$(141):NB$=CHR$(157):CD$=CHR$(10):CU$=CHR$(11):CA$=CHR$(9):CB$=CHR$(8)
  190 MODE 15
  200VDU23;8202;0;0;0;
  201 MOUSE ON
  210CLS:PRINTTAB(1,8)"CONNECT 4    Enhanced for the Archimedes A3000 by Richard Burnell"
  220PRINTTAB(3,13)"Do you require Instructions ?":PRINT'TAB(6)"(Click on the mouse)"
  221 MOUSE TO 480,540
  222 REPEAT MOUSE X,Y,Z: UNTIL Z=0
  223 REPEAT MOUSE X,Y,Z: UNTIL Z<>0
  225 MOUSE X,Y,Z
  230 IF Z<4 THEN 250
  240PROCDISCFALL:PROCWINLINE
  250DR%=0:CA%=1:CS%(1)=22:CS%(2)=7:Z%=0:LO%=0:WI%=0
  260X%(1)=1:Y%(1)=0:X%(2)=1:Y%(2)=1:X%(3)=0:Y%(3)=1:X%(4)=1:Y%(4)=-1
  270CLS:CA%=3-CA%:CO%=CA%:IFCA%=2THENFC%=1ELSEFC%=2+RND(3)
  280FORI%=1TO7:OPWIN%(I%)=0:NEXT
  290KO%=0:Z%=0
  300PROCBOARD
  310REM PRINT'"    Press a number or 'R' to resign"
  320VDU30
  380FORI%=1TO7:C%(I%)=1:AA%(I%,1)=1:NEXT
  390W%=0:FORI%=1TO7:FORJ%=2TO7:AA%(I%,J%)=0:NEXT:NEXT
  400PRINTTAB(39,14)"SCORES"
  410PRINTTAB(39,16)"You:";LO%
  420PRINTTAB(39,18)"Me :";WI%
  430PRINTTAB(39,20)"Drawn:";DR%
  440CO%=3-CO%:IFCO%=1THENCC$=GC$ELSECC$=GY$
  450PRINTTAB(39,9)"TURN=": PROCChangeColour
  451 CIRCLE FILL (80*9.2+10),980-(80*3.25),35
  460IFCO%=2THENGOSUB690:Z%=0:GOTO560
  470PRINTTAB(1,23)" ";
  480*FX15,0
  485 PROCSlot
  486 GOTO 510
  490K%=GET-48:IFK%=34THENWI%=WI%+1:GOTO270
  500IFK%<1 OR K%>7 THEN490
  510IFFC%=1THENPROCFIRSTDISC
  520W%=0
  530IFC%(K%)=8THEN485
  540IFOPWIN%(K%)=1THENLO%=LO%+1:Z%=1:PROCLOSE:PRINTTAB(39,5)"You Win":GOTO610
  550 REM PRINTTAB(1,23)CHR$(152);
  560IFW%=2THENWI%=WI%+1:PROCVICTORY:PRINTTAB(39,5)"Victory": T%=INKEY(150): GOTO 610
  570VDU7
  580AA%(K%,C%(K%))=CS%(CO%):IFC%(K%)<7THENAA%(K%,C%(K%)+1)=1
  590T%=5+RND(3)
  595 DATA Good Try,Ho! Ho!,Crafty
  596 RESTORE 595: FORT%=1 TO RND(3): READ DISP$: NEXT
  600IFW%=1THENPRINTTAB(39,5);DISP$:VDU7:PROCdelay(3)
  610C%(K%)=C%(K%)+1:IFC%(K%)=8THENKO%=KO%+1
  620FORI%=0TO8-C%(K%):REM PRINTTAB(4*K%-2,3*I%+1)CC$CHR$(CO%*140-25):IFI%=8-C%(K%)THEN640
  622 PROCChangeColour: PROCPlotToken: IFI%=8-C%(K%)THEN640
  630PROCdelay(.05): REM PRINTTAB(4*K%-1,3*I%+1)" "
  632 GCOL0,0: PROCPlotToken
  640NEXT
  650IFW%=2ORZ%=1THEN PROCClk:GOTO270
  660IFKO%=7THENPRINTTAB(39,5)"DRAW":PROCdelay(6):DR%=DR%+1:GOTO270
  670IFW%=1THENPRINTTAB(39,5);SPC(8)
  680GOTO440
  690PL%=0:ADD%=0
  700FORI%=1TO7
  710OPWIN%(I%)=0
  720DZ%(I%)=0:PR%(I%)=0:DY%(I%)=0:DX%(I%)=0:DO%(I%)=0
  730IFC%(I%)=8THEN1240
  740DZ%(I%)=0:PR%(I%)=0:DY%(I%)=0:DX%(I%)=0:DO%(I%)=0
  750UP%=C%(I%)+ADD%
  760IFUP%=8THEN1370
  770FORL%=1TO4
  780S%=1:F%=4
  790ONL%GOSUB1410,1460,1520,1570
  800IFS%>F%THEN1180
  810A%(1)=0:A%(2)=0:A%(3)=0:A%(4)=0
  820FORM%=S%TOF%
  830AX%(M%)=0
  840FORN%=1TO4
  850IFM%=N%THEN880
  860X%=I%+(N%-M%)*X%(L%):Y%=UP%+(N%-M%)*Y%(L%)
  870AX%(M%)=AX%(M%)+AA%(X%,Y%)
  880NEXT
  890IFAX%(M%)=30ORAX%(M%)=36ORAX%(M%)=29ORAX%(M%)=51THENC%=1:GOTO1080
  900IFAX%(M%)=24THENC%=10:DY%(I%)=DY%(I%)+1:GOTO1080
  910IFAX%(M%)=21ANDADD%=0THENK%=I%:W%=2:M%=F%:NEXT:L%=4:NEXT:I%=7:NEXT:GOTO1380
  920IFAX%(M%)=21ANDADD%=1THENC%=6000:GOTO1140
  930IFAX%(M%)=3THENC%=22:GOTO1080
  940IFAX%(M%)=9THENC%=21:GOTO1080
  950IFAX%(M%)=2THENC%=20:GOTO1080
  960IFAX%(M%)=66THENC%=90000:W%=1-ADD%:GOTO1140
  970IFL%=3ANDI%<>FC%THENAX%(M%)=AX%(M%)+1
  980IFAX%(M%)=15THENC%=33:DO%(I%)=DO%(I%)+1:GOTO1080
  990IFAX%(M%)=8THENC%=32:GOTO1080
 1000IFAX%(M%)=1THENC%=31:GOTO1080
 1010IFAX%(M%)=0THENC%=30:GOTO1080
 1020IFAX%(M%)=7THENC%=41:GOTO1080
 1030IFAX%(M%)=44THENC%=150:DZ%(I%)=DZ%(I%)+1:GOTO1080
 1040IFAX%(M%)=22THENC%=40:GOTO1080
 1050IFAX%(M%)=23THENC%=23:GOTO1080
 1060IFAX%(M%)=14THENC%=160:GOTO1080
 1070IFAX%(M%)=45THENC%=11:DX%(I%)=DX%(I%)+1
 1080IFDZ%(I%)>0ANDDY%(I%)>0THENC%=210
 1090IFDX%(I%)>1THENC%=250
 1100IFDX%(I%)>2THENC%=300
 1110IFDX%(I%)>0ANDDZ%(I%)>0THENC%=400
 1120IFDZ%(I%)>1THENC%=800
 1130IFDO%(I%)>1THENC%=1000
 1140A%(M%)=C%
 1150NEXT
 1160NN%=4:GOSUB1790
 1170PR%(I%)=PR%(I%)+B%
 1180NEXT
 1190IFPR%(I%)>=90000THENOPWIN%(I%)=OPWIN%(I%)+1+ADD%
 1200IFADD%=1ANDAS%(CO%(1))>=10000THENPL%=1:GOTO1370
 1210IFADD%=1ANDPR%(I%)>=10000THEN1310
 1220IFADD%=1ANDPR%(I%)<=AS%(I%)+150THEN1370
 1230IFADD%=1ANDPR%(I%)>AS%(I%)+150THEN1310
 1240NEXT
 1250FORX%=1TO7
 1260AT%(X%)=PR%(X%):B%(X%)=X%
 1270NEXT
 1280NN%=7:GOSUB1640
 1290FORX%=1TO7:AS%(X%)=AT%(X%):CO%(X%)=B%(X%):NEXT
 1300ADD%=1
 1310PL%=PL%+1
 1320IFAS%(CO%(PL%))<>0THEN1360
 1330FORIP%=1TOPL%-1:CC%(IP%)=CO%(IP%):A%(CC%(IP%))=PR%(CO%(IP%)):NEXT
 1340NN%=PL%-1:GOSUB1860
 1350K%=ID%:GOTO1380
 1360I%=CO%(PL%):GOTO740
 1370K%=CO%(PL%)
 1380OPWIN%(K%)=(OPWIN%(K%)AND2)-1
 1390RETURN
 1400 
 1410REMSUB[
 1420IFI%>4THENS%=I%-3
 1430IFI%<4THENF%=I%
 1440RETURN
 1450 
 1460 IFI%>UP%ANDI%>4THENS%=I%-3:GOTO1480
 1470IFUP%>4THENS%=UP%-3
 1480IFI%<UP%ANDI%<4THENF%=I%:GOTO1500
 1490 IFUP%<4THENF%=UP%
 1500RETURN
 1510 
 1520REMSUBUP
 1530IFUP%>4THENS%=UP%-3
 1540IFUP%<4THENF%=UP%
 1550RETURN
 1560 
 1570REM SUB FOR DOWN
 1580IFI%+UP%<=8ANDUP%<4THENS%=5-UP%:GOTO1600
 1590IFI%+UP%>8ANDI%>4THENS%=I%-3
 1600IFI%+UP%>=8ANDUP%>4THENF%=8-UP%:GOTO1620
 1610IFI%+UP%<8ANDI%<4THENF%=I%
 1620RETURN
 1630 
 1640REMINTERCHANGE
 1650FORT%=1TO NN%-1
 1660IFAT%(B%(T%))>=AT%(B%(T%+1))THEN1760
 1670C%=B%(T%)
 1680B%(T%)=B%(T%+1)
 1690B%(T%+1)=C%
 1700FORS%=T%TO1STEP-1
 1710IFAT%(B%(S%))>=AT%(B%(S%+1))THEN1750
 1720C%=B%(S%)
 1730B%(S%)=B%(S%+1)
 1740B%(S%+1)=C%
 1750NEXT
 1760NEXT
 1770RETURN
 1780 
 1790B%=A%(1)
 1800FORV%=2TONN%
 1810IFB%>=A%(V%)THEN1830
 1820B%=A%(V%)
 1830NEXT:PROCdelay(.05)
 1840RETURN
 1850 
 1860BB%=A%(CC%(1)):ID%=CC%(1)
 1870IFNN%=1THEN1920
 1880FORV%=2TONN%
 1890IFBB%<=A%(CC%(V%))THEN1910
 1900BB%=A%(CC%(V%)):ID%=CC%(V%)
 1910NEXT
 1920RETURN
 1930 
 1940DEFPROCVICTORY
 1950SOUND1,-15,97,10
 1960SOUND1,-15,105,10
 1970SOUND1,-15,89,10
 1980SOUND1,-15,41,10
 1990SOUND1,-15,69,20
 2000ENDPROC
 2010DEFPROCLOSE
 2020FORL%=1TO10
 2030FORP%=50TO150
 2040SOUND17,-15,P%,2
 2050NEXT
 2060NEXT
 2070ENDPROC
 2080 
 2081DEFPROCBOARD
 2082 CLS
 2084 GCOL0,100
 2086 RECTANGLE FILL 50,460,560
 2087 GCOL0,0
 2088 FOR K%=1 TO 7: FOR I%=0 TO 6
 2090 CIRCLE FILL (80*K%+10),980-(80*I%),37
 2092 NEXT: NEXT
 2093 GOTO 2120
 2095 GCOL0,100
 2100CLS
 2110FORI=1TO8
 2112 MOVE 50,1023-(80*(I-1))
 2114 DRAW 610,1023-80*(I-1)
 2115 NEXT: FORI=1 TO 8
 2116 MOVE 50+80*(I-1),463
 2118 DRAW 50+80*(I-1),1023
 2119 NEXT
 2120PRINTTAB(5,18);"1    2    3    4    5    6    7"
 2180ENDPROC
 2190 
 2200DEFPROCDISCFALL
 2210CLS
 2220PRINTTAB(0,7)"You and the computer take turns to"
 2230PRINT"place discs in any one of the seven"
 2240PRINT"columns. The discs will always drop"
 2250PRINT"as far down as they can."
 2260PRINT'"Click on the mouse to see how."
 2265 REPEAT MOUSE X,Y,Z: UNTIL Z=0
 2270 REPEAT MOUSE X,Y,Z: UNTIL Z<>0
 2280PROCBOARD
 2290CO%=1:FORI%=1TO7:C%(I%)=1:NEXT
 2300REPEAT:VDU7
 2310K%=RND(7):CO%=3-CO%:IFCO%=1THENCC$=GC$ELSECC$=GY$
 2320C%(K%)=C%(K%)+1:IFC%(K%)=8THEN2310
 2330FORI%=0TO8-C%(K%):REM PRINTTAB(4*K%-2,3*I%+1)CC$CHR$(CO%*140-25):IFI%=8-C%(K%)THEN2350
 2332 PROCChangeColour: PROCPlotToken
 2335 IFI%=8-C%(K%)THEN2350
 2340PROCdelay(0.1):REM PRINTTAB(4*K%-1,3*I%+1)" "
 2342 GCOL0,0
 2343 PROCPlotToken
 2350NEXT
 2360UNTILC%(4)=4
 2370PROCdelay(2)
 2380ENDPROC
 2390 
 2400DEFPROCWINLINE
 2410CLS
 2420PRINTTAB(0,7)"The aim of the game is to get FOUR"
 2430PRINT"of your discs in line Vertically,"
 2440PRINT"Horizontally or Diagonally."
 2450PRINT'"Click on the mouse to see how."
 2455 REPEAT MOUSE X,Y,Z: UNTIL Z=0
 2460 REPEAT MOUSE X,Y,Z: UNTIL Z<>0
 2470PROCBOARD
 2480PRINT'"     Click on the mouse to Continue."
 2490K%=7:FORI%=1TO4
 2500 PROCChangeColour: PROCPlotToken
 2503 NEXT
 2510I%=6:FORK%=1TO4
 2520 PROCChangeColour: PROCPlotToken: NEXT
 2530FORI%=1TO4: K%=I%+1: PROCChangeColour: PROCPlotToken: NEXT
 2535 REPEAT MOUSE X,Y,Z: UNTIL Z=0
 2540 REPEAT MOUSE X,Y,Z: UNTIL Z<>0
 2545 *FX15,0
 2550ENDPROC
 2560DEFPROCFIRSTDISC
 2570IFK%<7 AND K%>1 THENFC%=K% ELSE FC%=4
 2580ENDPROC
 2590 
 2600 DEFPROCdelay(secs)
 2610 LOCALdelay
 2620 delay=TIME+(secs*100)
 2630 REPEATUNTILTIME>delay
 2640 ENDPROC
 2650 
 3000 DEFPROCChangeColour
 3010 IF ASC CC$=147 THEN GCOL0,3 ELSE GCOL0,15
 3020 ENDPROC
 3030 
 3100 DEFPROCPlotToken
 3110 CIRCLE FILL (80*K%+10),980-(80*I%),35
 3120 ENDPROC
 3130 
 3200 DEFPROCSlot
 3205 OK=0
 3210 MOUSE X,Y,Z
 3215 IF Z=0 THEN OK=1
 3220 LEF=-1*(X>50 AND X<130)-2*(X>130 AND X<210)-3*(X>210 AND X<290)-4*(X>290 AND X<370)-5*(X>370 AND X<450)-6*(X>450 AND X<530)-7*(X>530 AND X<610)
 3221 IF LEF=0 AND Z<>0 THEN OK=0
 3223 LEF=LEF*OK
 3225 IF LEF=0 OR Z=0 THEN GOTO 3210
 3230 K%=LEF
 3240 ENDPROC
 3250 
 3300 DEFPROCClk
 3310 PRINTTAB(5,20)"Click on the mouse to Continue."
 3320 REPEAT MOUSE X,Y,Z: UNTIL Z=0
 3330 REPEAT MOUSE X,Y,Z: UNTIL Z<>0
 3340 ENDPROC
d,�>Games.Connect4  Game from Telesoftware
n  � (C) BARRY ALLEN, Jan 1984
xF � Adapted for Archimedes, with apologies, by Les Hurst, Sept 1988
}# � Enhanced by  Richard Burnell
�
�*FX220,0
� �0,0 Ȝ 0
� *POINTER 1
� *FX15,0
�e�C%(7),DZ%(7),PR%(7),DY%(7),DX%(7),DO%(7),A%(7),AX%(7),AA%(7,7),AS%(7),AT%(7),B%(7),CO%(7),CC%(7)
�" �X%(4),Y%(4),CS%(2),OPWIN%(7)
�` R$=�(129):G$=�(130):Y$=�(131):B$=�(132):M$=�(133):C$=�(134):W$=�(135):FO$=�(136):FF$=�(137)
�PGR$=�(145):GG$=�(146):GY$=�(147):GB$=�(148):GM$=�(149):GC$=�(150):GW$=�(151)
�?DH$=�(141):NB$=�(157):CD$=�(10):CU$=�(11):CA$=�(9):CB$=�(8)
�	 � 15
��23;8202;0;0;0;
�	 ȗ �
�O�:�1,8)"CONNECT 4    Enhanced for the Archimedes A3000 by Richard Burnell"
�F�3,13)"Do you require Instructions ?":�'�6)"(Click on the mouse)"
� ȗ � 480,540
� � ȗ X,Y,Z: � Z=0
� � ȗ X,Y,Z: � Z<>0
�
 ȗ X,Y,Z
� � Z<4 � �dz@
��DISCFALL:�WINLINE
�3DR%=0:CA%=1:CS%(1)=22:CS%(2)=7:Z%=0:LO%=0:WI%=0
DX%(1)=1:Y%(1)=0:X%(2)=1:Y%(2)=1:X%(3)=0:Y%(3)=1:X%(4)=1:Y%(4)=-1
/�:CA%=3-CA%:CO%=CA%:�CA%=2�FC%=1�FC%=2+�(3)
�I%=1�7:OPWIN%(I%)=0:�
"KO%=0:Z%=0
,
�BOARD
61� PRINT'"    Press a number or 'R' to resign"
@�30
|"�I%=1�7:C%(I%)=1:AA%(I%,1)=1:�
�)W%=0:�I%=1�7:�J%=2�7:AA%(I%,J%)=0:�:�
��39,14)"SCORES"
��39,16)"You:";LO%
��39,18)"Me :";WI%
��39,20)"Drawn:";DR%
�$CO%=3-CO%:�CO%=1�CC$=GC$�CC$=GY$
�!�39,9)"TURN=": �ChangeColour
�' ȏ Ȑ (80*9.2+10),980-(80*3.25),35
��CO%=2��trB:Z%=0:�TpB
��1,23)" ";
�*FX15,0
�
 �Slot
� � �d~A
�"K%=�-48:�K%=34�WI%=WI%+1:�TNA
��K%<1 � K%>7 ��djA
��FC%=1��FIRSTDISC
W%=0
�C%(K%)=8��deA
=�OPWIN%(K%)=1�LO%=LO%+1:Z%=1:�LOSE:�39,5)"You Win":�DbB
& � PRINTTAB(1,23)CHR$(152);
0@�W%=2�WI%=WI%+1:�VICTORY:�39,5)"Victory": T%=�(150): � �DbB
:�7
D8AA%(K%,C%(K%))=CS%(CO%):�C%(K%)<7�AA%(K%,C%(K%)+1)=1
N
T%=5+�(3)
S � Good Try,Ho! Ho!,Crafty
T% � �DSB: �T%=1 � �(3): � DISP$: �
X$�W%=1��39,5);DISP$:�7:�delay(3)
b'C%(K%)=C%(K%)+1:�C%(K%)=8�KO%=KO%+1
lT�I%=0�8-C%(K%):� PRINTTAB(4*K%-2,3*I%+1)CC$CHR$(CO%*140-25):IFI%=8-C%(K%)THEN640
n1 �ChangeColour: �PlotToken: �I%=8-C%(K%)��t@B
v-�delay(.05): � PRINTTAB(4*K%-1,3*I%+1)" "
x �0,0: �PlotToken
��
��W%=2�Z%=1� �Clk:�TNA
�2�KO%=7��39,5)"DRAW":�delay(6):DR%=DR%+1:�TNA
��W%=1��39,5);�(8)
�	�txA
�PL%=0:ADD%=0
��I%=1�7
�OPWIN%(I%)=0
�5DZ%(I%)=0:PR%(I%)=0:DY%(I%)=0:DX%(I%)=0:DO%(I%)=0
��C%(I%)=8��dXD
�5DZ%(I%)=0:PR%(I%)=0:DY%(I%)=0:DX%(I%)=0:DO%(I%)=0
�UP%=C%(I%)+ADD%
��UP%=8��DZE
�L%=1�4

S%=1:F%=4
�L%�tBE,�ttE,�dpE,�TbF
 �S%>F%��t\D
*#A%(1)=0:A%(2)=0:A%(3)=0:A%(4)=0
4
�M%=S%�F%
>
AX%(M%)=0
H�N%=1�4
R�M%=N%��DpC
\.X%=I%+(N%-M%)*X%(L%):Y%=UP%+(N%-M%)*Y%(L%)
fAX%(M%)=AX%(M%)+AA%(X%,Y%)
p�
z;�AX%(M%)=30�AX%(M%)=36�AX%(M%)=29�AX%(M%)=51�C%=1:�TxD
�-�AX%(M%)=24�C%=10:DY%(I%)=DY%(I%)+1:�TxD
�=�AX%(M%)=21�ADD%=0�K%=I%:W%=2:M%=F%:�:L%=4:�:I%=7:�:�DdE
�$�AX%(M%)=21�ADD%=1�C%=6000:�DtD
��AX%(M%)=3�C%=22:�TxD
��AX%(M%)=9�C%=21:�TxD
��AX%(M%)=2�C%=20:�TxD
�(�AX%(M%)=66�C%=90000:W%=1-ADD%:�DtD
�#�L%=3�I%<>FC%�AX%(M%)=AX%(M%)+1
�-�AX%(M%)=15�C%=33:DO%(I%)=DO%(I%)+1:�TxD
��AX%(M%)=8�C%=32:�TxD
��AX%(M%)=1�C%=31:�TxD
��AX%(M%)=0�C%=30:�TxD
��AX%(M%)=7�C%=41:�TxD
.�AX%(M%)=44�C%=150:DZ%(I%)=DZ%(I%)+1:�TxD
�AX%(M%)=22�C%=40:�TxD
�AX%(M%)=23�C%=23:�TxD
$�AX%(M%)=14�C%=160:�TxD
.'�AX%(M%)=45�C%=11:DX%(I%)=DX%(I%)+1
8�DZ%(I%)>0�DY%(I%)>0�C%=210
B�DX%(I%)>1�C%=250
L�DX%(I%)>2�C%=300
V�DX%(I%)>0�DZ%(I%)>0�C%=400
`�DZ%(I%)>1�C%=800
j�DO%(I%)>1�C%=1000
t
A%(M%)=C%
~�
�NN%=4:�d~F
�PR%(I%)=PR%(I%)+B%
��
�0�PR%(I%)>=90000�OPWIN%(I%)=OPWIN%(I%)+1+ADD%
�*�ADD%=1�AS%(CO%(1))>=10000�PL%=1:�DZE
��ADD%=1�PR%(I%)>=10000��T^E
�%�ADD%=1�PR%(I%)<=AS%(I%)+150��DZE
�$�ADD%=1�PR%(I%)>AS%(I%)+150��T^E
��
��X%=1�7
�AT%(X%)=PR%(X%):B%(X%)=X%
��
NN%=7:�DhF

,�X%=1�7:AS%(X%)=AT%(X%):CO%(X%)=B%(X%):�

ADD%=1

PL%=PL%+1
(�AS%(CO%(PL%))<>0��DPE
2?�IP%=1�PL%-1:CC%(IP%)=CO%(IP%):A%(CC%(IP%))=PR%(CO%(IP%)):�
<NN%=PL%-1:�DDG
FK%=ID%:�DdE
PI%=CO%(PL%):�ddB
ZK%=CO%(PL%)
dOPWIN%(K%)=(OPWIN%(K%)�2)-1
n�
x 
�	�SUB[
��I%>4�S%=I%-3
��I%<4�F%=I%
��
� 
� �I%>UP%�I%>4�S%=I%-3:�dHE
��UP%>4�S%=UP%-3
��I%<UP%�I%<4�F%=I%:�d\E
� �UP%<4�F%=UP%
��
� 
�
�SUBUP
��UP%>4�S%=UP%-3
�UP%<4�F%=UP%
�
 
"� SUB FOR DOWN
,#�I%+UP%<=8�UP%<4�S%=5-UP%:�D@F
6�I%+UP%>8�I%>4�S%=I%-3
@#�I%+UP%>=8�UP%>4�F%=8-UP%:�DTF
J�I%+UP%<8�I%<4�F%=I%
T�
^ 
h�INTERCHANGE
r�T%=1� NN%-1
|$�AT%(B%(T%))>=AT%(B%(T%+1))��d`F
�
C%=B%(T%)
�B%(T%)=B%(T%+1)
�B%(T%+1)=C%
��S%=T%�1�-1
�$�AT%(B%(S%))>=AT%(B%(S%+1))��dVF
�
C%=B%(S%)
�B%(S%)=B%(S%+1)
�B%(S%+1)=C%
��
��
��
� 
�B%=A%(1)

�V%=2�NN%
�B%>=A%(V%)��TfG

B%=A%(V%)
&�:�delay(.05)
0�
: 
DBB%=A%(CC%(1)):ID%=CC%(1)
N�NN%=1��t@G
X
�V%=2�NN%
b�BB%<=A%(CC%(V%))��DvG
lBB%=A%(CC%(V%)):ID%=CC%(V%)
v�
��
� 
�
��VICTORY
��1,-15,97,10
��1,-15,105,10
��1,-15,89,10
��1,-15,41,10
��1,-15,69,20
��
�
��LOSE
��L%=1�10
��P%=50�150
��17,-15,P%,2
�
�
�
  
!��BOARD
" �
$ �0,100
& ȓ Ȑ 50,460,560
'	 �0,0
( � K%=1 � 7: � I%=0 � 6
*$ ȏ Ȑ (80*K%+10),980-(80*I%),37
,	 �: �
- � �DHH
/ �0,100
4�
>
�I=1�8
@ � 50,1023-(80*(I-1))
B � 610,1023-80*(I-1)
C �: �I=1 � 8
D � 50+80*(I-1),463
F � 50+80*(I-1),1023
G �
H-�5,18);"1    2    3    4    5    6    7"
��
� 
���DISCFALL
��
�.�0,7)"You and the computer take turns to"
�*�"place discs in any one of the seven"
�*�"columns. The discs will always drop"
��"as far down as they can."
�&�'"Click on the mouse to see how."
� � ȗ X,Y,Z: � Z=0
� � ȗ X,Y,Z: � Z<>0
�
�BOARD
�CO%=1:�I%=1�7:C%(I%)=1:�
��:�7
	,K%=�(7):CO%=3-CO%:�CO%=1�CC$=GC$�CC$=GY$
	"C%(K%)=C%(K%)+1:�C%(K%)=8��TFI
	U�I%=0�8-C%(K%):� PRINTTAB(4*K%-2,3*I%+1)CC$CHR$(CO%*140-25):IFI%=8-C%(K%)THEN2350
	 �ChangeColour: �PlotToken
	 �I%=8-C%(K%)��TnI
	$,�delay(0.1):� PRINTTAB(4*K%-1,3*I%+1)" "
	&	 �0,0
	' �PlotToken
	.�
	8�C%(4)=4
	B
�delay(2)
	L�
	V 
	`
��WINLINE
	j�
	t.�0,7)"The aim of the game is to get FOUR"
	~(�"of your discs in line Vertically,"
	�"�"Horizontally or Diagonally."
	�&�'"Click on the mouse to see how."
	� � ȗ X,Y,Z: � Z=0
	� � ȗ X,Y,Z: � Z<>0
	�
�BOARD
	�,�'"     Click on the mouse to Continue."
	�K%=7:�I%=1�4
	� �ChangeColour: �PlotToken
	� �
	�I%=6:�K%=1�4
	�! �ChangeColour: �PlotToken: �
	�2�I%=1�4: K%=I%+1: �ChangeColour: �PlotToken: �
	� � ȗ X,Y,Z: � Z=0
	� � ȗ X,Y,Z: � Z<>0
	� *FX15,0
	��
��FIRSTDISC

 �K%<7 � K%>1 �FC%=K% � FC%=4
�
 
( ��delay(secs)
2 �delay
< delay=�+(secs*100)
F ���>delay
P �
Z 
� ��ChangeColour
� � � CC$=147 � �0,3 � �0,15
� �
� 
 ��PlotToken
&$ ȏ Ȑ (80*K%+10),980-(80*I%),35
0 �
: 
� ��Slot
�	 OK=0
�
 ȗ X,Y,Z
� � Z=0 � OK=1
�� LEF=-1*(X>50 � X<130)-2*(X>130 � X<210)-3*(X>210 � X<290)-4*(X>290 � X<370)-5*(X>370 � X<450)-6*(X>450 � X<530)-7*(X>530 � X<610)
� � LEF=0 � Z<>0 � OK=0
� LEF=LEF*OK
� � LEF=0 � Z=0 � � �tJL
� K%=LEF
� �
� 
�
 ��Clk
�- �5,20)"Click on the mouse to Continue."
� � ȗ X,Y,Z: � Z=0

 � ȗ X,Y,Z: � Z<>0

 �
�
00000000  0d 00 64 2c f4 3e 47 61  6d 65 73 2e 43 6f 6e 6e  |..d,.>Games.Conn|
00000010  65 63 74 34 20 20 47 61  6d 65 20 66 72 6f 6d 20  |ect4  Game from |
00000020  54 65 6c 65 73 6f 66 74  77 61 72 65 0d 00 6e 20  |Telesoftware..n |
00000030  20 f4 20 28 43 29 20 42  41 52 52 59 20 41 4c 4c  | . (C) BARRY ALL|
00000040  45 4e 2c 20 4a 61 6e 20  31 39 38 34 0d 00 78 46  |EN, Jan 1984..xF|
00000050  20 f4 20 41 64 61 70 74  65 64 20 66 6f 72 20 41  | . Adapted for A|
00000060  72 63 68 69 6d 65 64 65  73 2c 20 77 69 74 68 20  |rchimedes, with |
00000070  61 70 6f 6c 6f 67 69 65  73 2c 20 62 79 20 4c 65  |apologies, by Le|
00000080  73 20 48 75 72 73 74 2c  20 53 65 70 74 20 31 39  |s Hurst, Sept 19|
00000090  38 38 0d 00 7d 23 20 f4  20 45 6e 68 61 6e 63 65  |88..}# . Enhance|
000000a0  64 20 62 79 20 20 52 69  63 68 61 72 64 20 42 75  |d by  Richard Bu|
000000b0  72 6e 65 6c 6c 0d 00 82  0d f4 2a 46 58 32 32 30  |rnell.....*FX220|
000000c0  2c 30 0d 00 87 0e 20 e6  30 2c 30 20 c8 9c 20 30  |,0.... .0,0 .. 0|
000000d0  0d 00 88 0f 20 2a 50 4f  49 4e 54 45 52 20 31 0d  |.... *POINTER 1.|
000000e0  00 8a 0c 20 2a 46 58 31  35 2c 30 0d 00 8c 65 de  |... *FX15,0...e.|
000000f0  43 25 28 37 29 2c 44 5a  25 28 37 29 2c 50 52 25  |C%(7),DZ%(7),PR%|
00000100  28 37 29 2c 44 59 25 28  37 29 2c 44 58 25 28 37  |(7),DY%(7),DX%(7|
00000110  29 2c 44 4f 25 28 37 29  2c 41 25 28 37 29 2c 41  |),DO%(7),A%(7),A|
00000120  58 25 28 37 29 2c 41 41  25 28 37 2c 37 29 2c 41  |X%(7),AA%(7,7),A|
00000130  53 25 28 37 29 2c 41 54  25 28 37 29 2c 42 25 28  |S%(7),AT%(7),B%(|
00000140  37 29 2c 43 4f 25 28 37  29 2c 43 43 25 28 37 29  |7),CO%(7),CC%(7)|
00000150  0d 00 96 22 20 de 58 25  28 34 29 2c 59 25 28 34  |..." .X%(4),Y%(4|
00000160  29 2c 43 53 25 28 32 29  2c 4f 50 57 49 4e 25 28  |),CS%(2),OPWIN%(|
00000170  37 29 0d 00 a0 60 20 52  24 3d bd 28 31 32 39 29  |7)...` R$=.(129)|
00000180  3a 47 24 3d bd 28 31 33  30 29 3a 59 24 3d bd 28  |:G$=.(130):Y$=.(|
00000190  31 33 31 29 3a 42 24 3d  bd 28 31 33 32 29 3a 4d  |131):B$=.(132):M|
000001a0  24 3d bd 28 31 33 33 29  3a 43 24 3d bd 28 31 33  |$=.(133):C$=.(13|
000001b0  34 29 3a 57 24 3d bd 28  31 33 35 29 3a 46 4f 24  |4):W$=.(135):FO$|
000001c0  3d bd 28 31 33 36 29 3a  46 46 24 3d bd 28 31 33  |=.(136):FF$=.(13|
000001d0  37 29 0d 00 aa 50 47 52  24 3d bd 28 31 34 35 29  |7)...PGR$=.(145)|
000001e0  3a 47 47 24 3d bd 28 31  34 36 29 3a 47 59 24 3d  |:GG$=.(146):GY$=|
000001f0  bd 28 31 34 37 29 3a 47  42 24 3d bd 28 31 34 38  |.(147):GB$=.(148|
00000200  29 3a 47 4d 24 3d bd 28  31 34 39 29 3a 47 43 24  |):GM$=.(149):GC$|
00000210  3d bd 28 31 35 30 29 3a  47 57 24 3d bd 28 31 35  |=.(150):GW$=.(15|
00000220  31 29 0d 00 b4 3f 44 48  24 3d bd 28 31 34 31 29  |1)...?DH$=.(141)|
00000230  3a 4e 42 24 3d bd 28 31  35 37 29 3a 43 44 24 3d  |:NB$=.(157):CD$=|
00000240  bd 28 31 30 29 3a 43 55  24 3d bd 28 31 31 29 3a  |.(10):CU$=.(11):|
00000250  43 41 24 3d bd 28 39 29  3a 43 42 24 3d bd 28 38  |CA$=.(9):CB$=.(8|
00000260  29 0d 00 be 09 20 eb 20  31 35 0d 00 c8 13 ef 32  |).... . 15.....2|
00000270  33 3b 38 32 30 32 3b 30  3b 30 3b 30 3b 0d 00 c9  |3;8202;0;0;0;...|
00000280  09 20 c8 97 20 ee 0d 00  d2 4f db 3a f1 8a 31 2c  |. .. ....O.:..1,|
00000290  38 29 22 43 4f 4e 4e 45  43 54 20 34 20 20 20 20  |8)"CONNECT 4    |
000002a0  45 6e 68 61 6e 63 65 64  20 66 6f 72 20 74 68 65  |Enhanced for the|
000002b0  20 41 72 63 68 69 6d 65  64 65 73 20 41 33 30 30  | Archimedes A300|
000002c0  30 20 62 79 20 52 69 63  68 61 72 64 20 42 75 72  |0 by Richard Bur|
000002d0  6e 65 6c 6c 22 0d 00 dc  46 f1 8a 33 2c 31 33 29  |nell"...F..3,13)|
000002e0  22 44 6f 20 79 6f 75 20  72 65 71 75 69 72 65 20  |"Do you require |
000002f0  49 6e 73 74 72 75 63 74  69 6f 6e 73 20 3f 22 3a  |Instructions ?":|
00000300  f1 27 8a 36 29 22 28 43  6c 69 63 6b 20 6f 6e 20  |.'.6)"(Click on |
00000310  74 68 65 20 6d 6f 75 73  65 29 22 0d 00 dd 11 20  |the mouse)".... |
00000320  c8 97 20 b8 20 34 38 30  2c 35 34 30 0d 00 de 16  |.. . 480,540....|
00000330  20 f5 20 c8 97 20 58 2c  59 2c 5a 3a 20 fd 20 5a  | . .. X,Y,Z: . Z|
00000340  3d 30 0d 00 df 17 20 f5  20 c8 97 20 58 2c 59 2c  |=0.... . .. X,Y,|
00000350  5a 3a 20 fd 20 5a 3c 3e  30 0d 00 e1 0d 20 c8 97  |Z: . Z<>0.... ..|
00000360  20 58 2c 59 2c 5a 0d 00  e6 11 20 e7 20 5a 3c 34  | X,Y,Z.... . Z<4|
00000370  20 8c 20 8d 64 7a 40 0d  00 f0 16 f2 44 49 53 43  | . .dz@.....DISC|
00000380  46 41 4c 4c 3a f2 57 49  4e 4c 49 4e 45 0d 00 fa  |FALL:.WINLINE...|
00000390  33 44 52 25 3d 30 3a 43  41 25 3d 31 3a 43 53 25  |3DR%=0:CA%=1:CS%|
000003a0  28 31 29 3d 32 32 3a 43  53 25 28 32 29 3d 37 3a  |(1)=22:CS%(2)=7:|
000003b0  5a 25 3d 30 3a 4c 4f 25  3d 30 3a 57 49 25 3d 30  |Z%=0:LO%=0:WI%=0|
000003c0  0d 01 04 44 58 25 28 31  29 3d 31 3a 59 25 28 31  |...DX%(1)=1:Y%(1|
000003d0  29 3d 30 3a 58 25 28 32  29 3d 31 3a 59 25 28 32  |)=0:X%(2)=1:Y%(2|
000003e0  29 3d 31 3a 58 25 28 33  29 3d 30 3a 59 25 28 33  |)=1:X%(3)=0:Y%(3|
000003f0  29 3d 31 3a 58 25 28 34  29 3d 31 3a 59 25 28 34  |)=1:X%(4)=1:Y%(4|
00000400  29 3d 2d 31 0d 01 0e 2f  db 3a 43 41 25 3d 33 2d  |)=-1.../.:CA%=3-|
00000410  43 41 25 3a 43 4f 25 3d  43 41 25 3a e7 43 41 25  |CA%:CO%=CA%:.CA%|
00000420  3d 32 8c 46 43 25 3d 31  8b 46 43 25 3d 32 2b b3  |=2.FC%=1.FC%=2+.|
00000430  28 33 29 0d 01 18 1a e3  49 25 3d 31 b8 37 3a 4f  |(3).....I%=1.7:O|
00000440  50 57 49 4e 25 28 49 25  29 3d 30 3a ed 0d 01 22  |PWIN%(I%)=0:..."|
00000450  0e 4b 4f 25 3d 30 3a 5a  25 3d 30 0d 01 2c 0a f2  |.KO%=0:Z%=0..,..|
00000460  42 4f 41 52 44 0d 01 36  31 f4 20 50 52 49 4e 54  |BOARD..61. PRINT|
00000470  27 22 20 20 20 20 50 72  65 73 73 20 61 20 6e 75  |'"    Press a nu|
00000480  6d 62 65 72 20 6f 72 20  27 52 27 20 74 6f 20 72  |mber or 'R' to r|
00000490  65 73 69 67 6e 22 0d 01  40 07 ef 33 30 0d 01 7c  |esign"..@..30..||
000004a0  22 e3 49 25 3d 31 b8 37  3a 43 25 28 49 25 29 3d  |".I%=1.7:C%(I%)=|
000004b0  31 3a 41 41 25 28 49 25  2c 31 29 3d 31 3a ed 0d  |1:AA%(I%,1)=1:..|
000004c0  01 86 29 57 25 3d 30 3a  e3 49 25 3d 31 b8 37 3a  |..)W%=0:.I%=1.7:|
000004d0  e3 4a 25 3d 32 b8 37 3a  41 41 25 28 49 25 2c 4a  |.J%=2.7:AA%(I%,J|
000004e0  25 29 3d 30 3a ed 3a ed  0d 01 90 14 f1 8a 33 39  |%)=0:.:.......39|
000004f0  2c 31 34 29 22 53 43 4f  52 45 53 22 0d 01 9a 16  |,14)"SCORES"....|
00000500  f1 8a 33 39 2c 31 36 29  22 59 6f 75 3a 22 3b 4c  |..39,16)"You:";L|
00000510  4f 25 0d 01 a4 16 f1 8a  33 39 2c 31 38 29 22 4d  |O%......39,18)"M|
00000520  65 20 3a 22 3b 57 49 25  0d 01 ae 18 f1 8a 33 39  |e :";WI%......39|
00000530  2c 32 30 29 22 44 72 61  77 6e 3a 22 3b 44 52 25  |,20)"Drawn:";DR%|
00000540  0d 01 b8 24 43 4f 25 3d  33 2d 43 4f 25 3a e7 43  |...$CO%=3-CO%:.C|
00000550  4f 25 3d 31 8c 43 43 24  3d 47 43 24 8b 43 43 24  |O%=1.CC$=GC$.CC$|
00000560  3d 47 59 24 0d 01 c2 21  f1 8a 33 39 2c 39 29 22  |=GY$...!..39,9)"|
00000570  54 55 52 4e 3d 22 3a 20  f2 43 68 61 6e 67 65 43  |TURN=": .ChangeC|
00000580  6f 6c 6f 75 72 0d 01 c3  27 20 c8 8f 20 c8 90 20  |olour...' .. .. |
00000590  28 38 30 2a 39 2e 32 2b  31 30 29 2c 39 38 30 2d  |(80*9.2+10),980-|
000005a0  28 38 30 2a 33 2e 32 35  29 2c 33 35 0d 01 cc 1b  |(80*3.25),35....|
000005b0  e7 43 4f 25 3d 32 8c e4  8d 74 72 42 3a 5a 25 3d  |.CO%=2...trB:Z%=|
000005c0  30 3a e5 8d 54 70 42 0d  01 d6 0f f1 8a 31 2c 32  |0:..TpB......1,2|
000005d0  33 29 22 20 22 3b 0d 01  e0 0b 2a 46 58 31 35 2c  |3)" ";....*FX15,|
000005e0  30 0d 01 e5 0a 20 f2 53  6c 6f 74 0d 01 e6 0b 20  |0.... .Slot.... |
000005f0  e5 20 8d 64 7e 41 0d 01  ea 22 4b 25 3d a5 2d 34  |. .d~A..."K%=.-4|
00000600  38 3a e7 4b 25 3d 33 34  8c 57 49 25 3d 57 49 25  |8:.K%=34.WI%=WI%|
00000610  2b 31 3a e5 8d 54 4e 41  0d 01 f4 16 e7 4b 25 3c  |+1:..TNA.....K%<|
00000620  31 20 84 20 4b 25 3e 37  20 8c 8d 64 6a 41 0d 01  |1 . K%>7 ..djA..|
00000630  fe 15 e7 46 43 25 3d 31  8c f2 46 49 52 53 54 44  |...FC%=1..FIRSTD|
00000640  49 53 43 0d 02 08 08 57  25 3d 30 0d 02 12 12 e7  |ISC....W%=0.....|
00000650  43 25 28 4b 25 29 3d 38  8c 8d 64 65 41 0d 02 1c  |C%(K%)=8..deA...|
00000660  3d e7 4f 50 57 49 4e 25  28 4b 25 29 3d 31 8c 4c  |=.OPWIN%(K%)=1.L|
00000670  4f 25 3d 4c 4f 25 2b 31  3a 5a 25 3d 31 3a f2 4c  |O%=LO%+1:Z%=1:.L|
00000680  4f 53 45 3a f1 8a 33 39  2c 35 29 22 59 6f 75 20  |OSE:..39,5)"You |
00000690  57 69 6e 22 3a e5 8d 44  62 42 0d 02 26 1f 20 f4  |Win":..DbB..&. .|
000006a0  20 50 52 49 4e 54 54 41  42 28 31 2c 32 33 29 43  | PRINTTAB(1,23)C|
000006b0  48 52 24 28 31 35 32 29  3b 0d 02 30 40 e7 57 25  |HR$(152);..0@.W%|
000006c0  3d 32 8c 57 49 25 3d 57  49 25 2b 31 3a f2 56 49  |=2.WI%=WI%+1:.VI|
000006d0  43 54 4f 52 59 3a f1 8a  33 39 2c 35 29 22 56 69  |CTORY:..39,5)"Vi|
000006e0  63 74 6f 72 79 22 3a 20  54 25 3d a6 28 31 35 30  |ctory": T%=.(150|
000006f0  29 3a 20 e5 20 8d 44 62  42 0d 02 3a 06 ef 37 0d  |): . .DbB..:..7.|
00000700  02 44 38 41 41 25 28 4b  25 2c 43 25 28 4b 25 29  |.D8AA%(K%,C%(K%)|
00000710  29 3d 43 53 25 28 43 4f  25 29 3a e7 43 25 28 4b  |)=CS%(CO%):.C%(K|
00000720  25 29 3c 37 8c 41 41 25  28 4b 25 2c 43 25 28 4b  |%)<7.AA%(K%,C%(K|
00000730  25 29 2b 31 29 3d 31 0d  02 4e 0d 54 25 3d 35 2b  |%)+1)=1..N.T%=5+|
00000740  b3 28 33 29 0d 02 53 1e  20 dc 20 47 6f 6f 64 20  |.(3)..S. . Good |
00000750  54 72 79 2c 48 6f 21 20  48 6f 21 2c 43 72 61 66  |Try,Ho! Ho!,Craf|
00000760  74 79 0d 02 54 25 20 f7  20 8d 44 53 42 3a 20 e3  |ty..T% . .DSB: .|
00000770  54 25 3d 31 20 b8 20 b3  28 33 29 3a 20 f3 20 44  |T%=1 . .(3): . D|
00000780  49 53 50 24 3a 20 ed 0d  02 58 24 e7 57 25 3d 31  |ISP$: ...X$.W%=1|
00000790  8c f1 8a 33 39 2c 35 29  3b 44 49 53 50 24 3a ef  |...39,5);DISP$:.|
000007a0  37 3a f2 64 65 6c 61 79  28 33 29 0d 02 62 27 43  |7:.delay(3)..b'C|
000007b0  25 28 4b 25 29 3d 43 25  28 4b 25 29 2b 31 3a e7  |%(K%)=C%(K%)+1:.|
000007c0  43 25 28 4b 25 29 3d 38  8c 4b 4f 25 3d 4b 4f 25  |C%(K%)=8.KO%=KO%|
000007d0  2b 31 0d 02 6c 54 e3 49  25 3d 30 b8 38 2d 43 25  |+1..lT.I%=0.8-C%|
000007e0  28 4b 25 29 3a f4 20 50  52 49 4e 54 54 41 42 28  |(K%):. PRINTTAB(|
000007f0  34 2a 4b 25 2d 32 2c 33  2a 49 25 2b 31 29 43 43  |4*K%-2,3*I%+1)CC|
00000800  24 43 48 52 24 28 43 4f  25 2a 31 34 30 2d 32 35  |$CHR$(CO%*140-25|
00000810  29 3a 49 46 49 25 3d 38  2d 43 25 28 4b 25 29 54  |):IFI%=8-C%(K%)T|
00000820  48 45 4e 36 34 30 0d 02  6e 31 20 f2 43 68 61 6e  |HEN640..n1 .Chan|
00000830  67 65 43 6f 6c 6f 75 72  3a 20 f2 50 6c 6f 74 54  |geColour: .PlotT|
00000840  6f 6b 65 6e 3a 20 e7 49  25 3d 38 2d 43 25 28 4b  |oken: .I%=8-C%(K|
00000850  25 29 8c 8d 74 40 42 0d  02 76 2d f2 64 65 6c 61  |%)..t@B..v-.dela|
00000860  79 28 2e 30 35 29 3a 20  f4 20 50 52 49 4e 54 54  |y(.05): . PRINTT|
00000870  41 42 28 34 2a 4b 25 2d  31 2c 33 2a 49 25 2b 31  |AB(4*K%-1,3*I%+1|
00000880  29 22 20 22 0d 02 78 15  20 e6 30 2c 30 3a 20 f2  |)" "..x. .0,0: .|
00000890  50 6c 6f 74 54 6f 6b 65  6e 0d 02 80 05 ed 0d 02  |PlotToken.......|
000008a0  8a 1a e7 57 25 3d 32 84  5a 25 3d 31 8c 20 f2 43  |...W%=2.Z%=1. .C|
000008b0  6c 6b 3a e5 8d 54 4e 41  0d 02 94 32 e7 4b 4f 25  |lk:..TNA...2.KO%|
000008c0  3d 37 8c f1 8a 33 39 2c  35 29 22 44 52 41 57 22  |=7...39,5)"DRAW"|
000008d0  3a f2 64 65 6c 61 79 28  36 29 3a 44 52 25 3d 44  |:.delay(6):DR%=D|
000008e0  52 25 2b 31 3a e5 8d 54  4e 41 0d 02 9e 16 e7 57  |R%+1:..TNA.....W|
000008f0  25 3d 31 8c f1 8a 33 39  2c 35 29 3b 89 28 38 29  |%=1...39,5);.(8)|
00000900  0d 02 a8 09 e5 8d 74 78  41 0d 02 b2 10 50 4c 25  |......txA....PL%|
00000910  3d 30 3a 41 44 44 25 3d  30 0d 02 bc 0b e3 49 25  |=0:ADD%=0.....I%|
00000920  3d 31 b8 37 0d 02 c6 10  4f 50 57 49 4e 25 28 49  |=1.7....OPWIN%(I|
00000930  25 29 3d 30 0d 02 d0 35  44 5a 25 28 49 25 29 3d  |%)=0...5DZ%(I%)=|
00000940  30 3a 50 52 25 28 49 25  29 3d 30 3a 44 59 25 28  |0:PR%(I%)=0:DY%(|
00000950  49 25 29 3d 30 3a 44 58  25 28 49 25 29 3d 30 3a  |I%)=0:DX%(I%)=0:|
00000960  44 4f 25 28 49 25 29 3d  30 0d 02 da 12 e7 43 25  |DO%(I%)=0.....C%|
00000970  28 49 25 29 3d 38 8c 8d  64 58 44 0d 02 e4 35 44  |(I%)=8..dXD...5D|
00000980  5a 25 28 49 25 29 3d 30  3a 50 52 25 28 49 25 29  |Z%(I%)=0:PR%(I%)|
00000990  3d 30 3a 44 59 25 28 49  25 29 3d 30 3a 44 58 25  |=0:DY%(I%)=0:DX%|
000009a0  28 49 25 29 3d 30 3a 44  4f 25 28 49 25 29 3d 30  |(I%)=0:DO%(I%)=0|
000009b0  0d 02 ee 13 55 50 25 3d  43 25 28 49 25 29 2b 41  |....UP%=C%(I%)+A|
000009c0  44 44 25 0d 02 f8 0f e7  55 50 25 3d 38 8c 8d 44  |DD%.....UP%=8..D|
000009d0  5a 45 0d 03 02 0b e3 4c  25 3d 31 b8 34 0d 03 0c  |ZE.....L%=1.4...|
000009e0  0d 53 25 3d 31 3a 46 25  3d 34 0d 03 16 1b ee 4c  |.S%=1:F%=4.....L|
000009f0  25 e4 8d 74 42 45 2c 8d  74 74 45 2c 8d 64 70 45  |%..tBE,.ttE,.dpE|
00000a00  2c 8d 54 62 46 0d 03 20  0f e7 53 25 3e 46 25 8c  |,.TbF.. ..S%>F%.|
00000a10  8d 74 5c 44 0d 03 2a 23  41 25 28 31 29 3d 30 3a  |.t\D..*#A%(1)=0:|
00000a20  41 25 28 32 29 3d 30 3a  41 25 28 33 29 3d 30 3a  |A%(2)=0:A%(3)=0:|
00000a30  41 25 28 34 29 3d 30 0d  03 34 0d e3 4d 25 3d 53  |A%(4)=0..4..M%=S|
00000a40  25 b8 46 25 0d 03 3e 0d  41 58 25 28 4d 25 29 3d  |%.F%..>.AX%(M%)=|
00000a50  30 0d 03 48 0b e3 4e 25  3d 31 b8 34 0d 03 52 0f  |0..H..N%=1.4..R.|
00000a60  e7 4d 25 3d 4e 25 8c 8d  44 70 43 0d 03 5c 2e 58  |.M%=N%..DpC..\.X|
00000a70  25 3d 49 25 2b 28 4e 25  2d 4d 25 29 2a 58 25 28  |%=I%+(N%-M%)*X%(|
00000a80  4c 25 29 3a 59 25 3d 55  50 25 2b 28 4e 25 2d 4d  |L%):Y%=UP%+(N%-M|
00000a90  25 29 2a 59 25 28 4c 25  29 0d 03 66 1e 41 58 25  |%)*Y%(L%)..f.AX%|
00000aa0  28 4d 25 29 3d 41 58 25  28 4d 25 29 2b 41 41 25  |(M%)=AX%(M%)+AA%|
00000ab0  28 58 25 2c 59 25 29 0d  03 70 05 ed 0d 03 7a 3b  |(X%,Y%)..p....z;|
00000ac0  e7 41 58 25 28 4d 25 29  3d 33 30 84 41 58 25 28  |.AX%(M%)=30.AX%(|
00000ad0  4d 25 29 3d 33 36 84 41  58 25 28 4d 25 29 3d 32  |M%)=36.AX%(M%)=2|
00000ae0  39 84 41 58 25 28 4d 25  29 3d 35 31 8c 43 25 3d  |9.AX%(M%)=51.C%=|
00000af0  31 3a e5 8d 54 78 44 0d  03 84 2d e7 41 58 25 28  |1:..TxD...-.AX%(|
00000b00  4d 25 29 3d 32 34 8c 43  25 3d 31 30 3a 44 59 25  |M%)=24.C%=10:DY%|
00000b10  28 49 25 29 3d 44 59 25  28 49 25 29 2b 31 3a e5  |(I%)=DY%(I%)+1:.|
00000b20  8d 54 78 44 0d 03 8e 3d  e7 41 58 25 28 4d 25 29  |.TxD...=.AX%(M%)|
00000b30  3d 32 31 80 41 44 44 25  3d 30 8c 4b 25 3d 49 25  |=21.ADD%=0.K%=I%|
00000b40  3a 57 25 3d 32 3a 4d 25  3d 46 25 3a ed 3a 4c 25  |:W%=2:M%=F%:.:L%|
00000b50  3d 34 3a ed 3a 49 25 3d  37 3a ed 3a e5 8d 44 64  |=4:.:I%=7:.:..Dd|
00000b60  45 0d 03 98 24 e7 41 58  25 28 4d 25 29 3d 32 31  |E...$.AX%(M%)=21|
00000b70  80 41 44 44 25 3d 31 8c  43 25 3d 36 30 30 30 3a  |.ADD%=1.C%=6000:|
00000b80  e5 8d 44 74 44 0d 03 a2  1a e7 41 58 25 28 4d 25  |..DtD.....AX%(M%|
00000b90  29 3d 33 8c 43 25 3d 32  32 3a e5 8d 54 78 44 0d  |)=3.C%=22:..TxD.|
00000ba0  03 ac 1a e7 41 58 25 28  4d 25 29 3d 39 8c 43 25  |....AX%(M%)=9.C%|
00000bb0  3d 32 31 3a e5 8d 54 78  44 0d 03 b6 1a e7 41 58  |=21:..TxD.....AX|
00000bc0  25 28 4d 25 29 3d 32 8c  43 25 3d 32 30 3a e5 8d  |%(M%)=2.C%=20:..|
00000bd0  54 78 44 0d 03 c0 28 e7  41 58 25 28 4d 25 29 3d  |TxD...(.AX%(M%)=|
00000be0  36 36 8c 43 25 3d 39 30  30 30 30 3a 57 25 3d 31  |66.C%=90000:W%=1|
00000bf0  2d 41 44 44 25 3a e5 8d  44 74 44 0d 03 ca 23 e7  |-ADD%:..DtD...#.|
00000c00  4c 25 3d 33 80 49 25 3c  3e 46 43 25 8c 41 58 25  |L%=3.I%<>FC%.AX%|
00000c10  28 4d 25 29 3d 41 58 25  28 4d 25 29 2b 31 0d 03  |(M%)=AX%(M%)+1..|
00000c20  d4 2d e7 41 58 25 28 4d  25 29 3d 31 35 8c 43 25  |.-.AX%(M%)=15.C%|
00000c30  3d 33 33 3a 44 4f 25 28  49 25 29 3d 44 4f 25 28  |=33:DO%(I%)=DO%(|
00000c40  49 25 29 2b 31 3a e5 8d  54 78 44 0d 03 de 1a e7  |I%)+1:..TxD.....|
00000c50  41 58 25 28 4d 25 29 3d  38 8c 43 25 3d 33 32 3a  |AX%(M%)=8.C%=32:|
00000c60  e5 8d 54 78 44 0d 03 e8  1a e7 41 58 25 28 4d 25  |..TxD.....AX%(M%|
00000c70  29 3d 31 8c 43 25 3d 33  31 3a e5 8d 54 78 44 0d  |)=1.C%=31:..TxD.|
00000c80  03 f2 1a e7 41 58 25 28  4d 25 29 3d 30 8c 43 25  |....AX%(M%)=0.C%|
00000c90  3d 33 30 3a e5 8d 54 78  44 0d 03 fc 1a e7 41 58  |=30:..TxD.....AX|
00000ca0  25 28 4d 25 29 3d 37 8c  43 25 3d 34 31 3a e5 8d  |%(M%)=7.C%=41:..|
00000cb0  54 78 44 0d 04 06 2e e7  41 58 25 28 4d 25 29 3d  |TxD.....AX%(M%)=|
00000cc0  34 34 8c 43 25 3d 31 35  30 3a 44 5a 25 28 49 25  |44.C%=150:DZ%(I%|
00000cd0  29 3d 44 5a 25 28 49 25  29 2b 31 3a e5 8d 54 78  |)=DZ%(I%)+1:..Tx|
00000ce0  44 0d 04 10 1b e7 41 58  25 28 4d 25 29 3d 32 32  |D.....AX%(M%)=22|
00000cf0  8c 43 25 3d 34 30 3a e5  8d 54 78 44 0d 04 1a 1b  |.C%=40:..TxD....|
00000d00  e7 41 58 25 28 4d 25 29  3d 32 33 8c 43 25 3d 32  |.AX%(M%)=23.C%=2|
00000d10  33 3a e5 8d 54 78 44 0d  04 24 1c e7 41 58 25 28  |3:..TxD..$..AX%(|
00000d20  4d 25 29 3d 31 34 8c 43  25 3d 31 36 30 3a e5 8d  |M%)=14.C%=160:..|
00000d30  54 78 44 0d 04 2e 27 e7  41 58 25 28 4d 25 29 3d  |TxD...'.AX%(M%)=|
00000d40  34 35 8c 43 25 3d 31 31  3a 44 58 25 28 49 25 29  |45.C%=11:DX%(I%)|
00000d50  3d 44 58 25 28 49 25 29  2b 31 0d 04 38 1f e7 44  |=DX%(I%)+1..8..D|
00000d60  5a 25 28 49 25 29 3e 30  80 44 59 25 28 49 25 29  |Z%(I%)>0.DY%(I%)|
00000d70  3e 30 8c 43 25 3d 32 31  30 0d 04 42 15 e7 44 58  |>0.C%=210..B..DX|
00000d80  25 28 49 25 29 3e 31 8c  43 25 3d 32 35 30 0d 04  |%(I%)>1.C%=250..|
00000d90  4c 15 e7 44 58 25 28 49  25 29 3e 32 8c 43 25 3d  |L..DX%(I%)>2.C%=|
00000da0  33 30 30 0d 04 56 1f e7  44 58 25 28 49 25 29 3e  |300..V..DX%(I%)>|
00000db0  30 80 44 5a 25 28 49 25  29 3e 30 8c 43 25 3d 34  |0.DZ%(I%)>0.C%=4|
00000dc0  30 30 0d 04 60 15 e7 44  5a 25 28 49 25 29 3e 31  |00..`..DZ%(I%)>1|
00000dd0  8c 43 25 3d 38 30 30 0d  04 6a 16 e7 44 4f 25 28  |.C%=800..j..DO%(|
00000de0  49 25 29 3e 31 8c 43 25  3d 31 30 30 30 0d 04 74  |I%)>1.C%=1000..t|
00000df0  0d 41 25 28 4d 25 29 3d  43 25 0d 04 7e 05 ed 0d  |.A%(M%)=C%..~...|
00000e00  04 88 0f 4e 4e 25 3d 34  3a e4 8d 64 7e 46 0d 04  |...NN%=4:..d~F..|
00000e10  92 16 50 52 25 28 49 25  29 3d 50 52 25 28 49 25  |..PR%(I%)=PR%(I%|
00000e20  29 2b 42 25 0d 04 9c 05  ed 0d 04 a6 30 e7 50 52  |)+B%........0.PR|
00000e30  25 28 49 25 29 3e 3d 39  30 30 30 30 8c 4f 50 57  |%(I%)>=90000.OPW|
00000e40  49 4e 25 28 49 25 29 3d  4f 50 57 49 4e 25 28 49  |IN%(I%)=OPWIN%(I|
00000e50  25 29 2b 31 2b 41 44 44  25 0d 04 b0 2a e7 41 44  |%)+1+ADD%...*.AD|
00000e60  44 25 3d 31 80 41 53 25  28 43 4f 25 28 31 29 29  |D%=1.AS%(CO%(1))|
00000e70  3e 3d 31 30 30 30 30 8c  50 4c 25 3d 31 3a e5 8d  |>=10000.PL%=1:..|
00000e80  44 5a 45 0d 04 ba 1f e7  41 44 44 25 3d 31 80 50  |DZE.....ADD%=1.P|
00000e90  52 25 28 49 25 29 3e 3d  31 30 30 30 30 8c 8d 54  |R%(I%)>=10000..T|
00000ea0  5e 45 0d 04 c4 25 e7 41  44 44 25 3d 31 80 50 52  |^E...%.ADD%=1.PR|
00000eb0  25 28 49 25 29 3c 3d 41  53 25 28 49 25 29 2b 31  |%(I%)<=AS%(I%)+1|
00000ec0  35 30 8c 8d 44 5a 45 0d  04 ce 24 e7 41 44 44 25  |50..DZE...$.ADD%|
00000ed0  3d 31 80 50 52 25 28 49  25 29 3e 41 53 25 28 49  |=1.PR%(I%)>AS%(I|
00000ee0  25 29 2b 31 35 30 8c 8d  54 5e 45 0d 04 d8 05 ed  |%)+150..T^E.....|
00000ef0  0d 04 e2 0b e3 58 25 3d  31 b8 37 0d 04 ec 1d 41  |.....X%=1.7....A|
00000f00  54 25 28 58 25 29 3d 50  52 25 28 58 25 29 3a 42  |T%(X%)=PR%(X%):B|
00000f10  25 28 58 25 29 3d 58 25  0d 04 f6 05 ed 0d 05 00  |%(X%)=X%........|
00000f20  0f 4e 4e 25 3d 37 3a e4  8d 44 68 46 0d 05 0a 2c  |.NN%=7:..DhF...,|
00000f30  e3 58 25 3d 31 b8 37 3a  41 53 25 28 58 25 29 3d  |.X%=1.7:AS%(X%)=|
00000f40  41 54 25 28 58 25 29 3a  43 4f 25 28 58 25 29 3d  |AT%(X%):CO%(X%)=|
00000f50  42 25 28 58 25 29 3a ed  0d 05 14 0a 41 44 44 25  |B%(X%):.....ADD%|
00000f60  3d 31 0d 05 1e 0d 50 4c  25 3d 50 4c 25 2b 31 0d  |=1....PL%=PL%+1.|
00000f70  05 28 1a e7 41 53 25 28  43 4f 25 28 50 4c 25 29  |.(..AS%(CO%(PL%)|
00000f80  29 3c 3e 30 8c 8d 44 50  45 0d 05 32 3f e3 49 50  |)<>0..DPE..2?.IP|
00000f90  25 3d 31 b8 50 4c 25 2d  31 3a 43 43 25 28 49 50  |%=1.PL%-1:CC%(IP|
00000fa0  25 29 3d 43 4f 25 28 49  50 25 29 3a 41 25 28 43  |%)=CO%(IP%):A%(C|
00000fb0  43 25 28 49 50 25 29 29  3d 50 52 25 28 43 4f 25  |C%(IP%))=PR%(CO%|
00000fc0  28 49 50 25 29 29 3a ed  0d 05 3c 13 4e 4e 25 3d  |(IP%)):...<.NN%=|
00000fd0  50 4c 25 2d 31 3a e4 8d  44 44 47 0d 05 46 10 4b  |PL%-1:..DDG..F.K|
00000fe0  25 3d 49 44 25 3a e5 8d  44 64 45 0d 05 50 15 49  |%=ID%:..DdE..P.I|
00000ff0  25 3d 43 4f 25 28 50 4c  25 29 3a e5 8d 64 64 42  |%=CO%(PL%):..ddB|
00001000  0d 05 5a 0f 4b 25 3d 43  4f 25 28 50 4c 25 29 0d  |..Z.K%=CO%(PL%).|
00001010  05 64 1f 4f 50 57 49 4e  25 28 4b 25 29 3d 28 4f  |.d.OPWIN%(K%)=(O|
00001020  50 57 49 4e 25 28 4b 25  29 80 32 29 2d 31 0d 05  |PWIN%(K%).2)-1..|
00001030  6e 05 f8 0d 05 78 05 20  0d 05 82 09 f4 53 55 42  |n....x. .....SUB|
00001040  5b 0d 05 8c 11 e7 49 25  3e 34 8c 53 25 3d 49 25  |[.....I%>4.S%=I%|
00001050  2d 33 0d 05 96 0f e7 49  25 3c 34 8c 46 25 3d 49  |-3.....I%<4.F%=I|
00001060  25 0d 05 a0 05 f8 0d 05  aa 05 20 0d 05 b4 1f 20  |%......... .... |
00001070  e7 49 25 3e 55 50 25 80  49 25 3e 34 8c 53 25 3d  |.I%>UP%.I%>4.S%=|
00001080  49 25 2d 33 3a e5 8d 64  48 45 0d 05 be 13 e7 55  |I%-3:..dHE.....U|
00001090  50 25 3e 34 8c 53 25 3d  55 50 25 2d 33 0d 05 c8  |P%>4.S%=UP%-3...|
000010a0  1c e7 49 25 3c 55 50 25  80 49 25 3c 34 8c 46 25  |..I%<UP%.I%<4.F%|
000010b0  3d 49 25 3a e5 8d 64 5c  45 0d 05 d2 12 20 e7 55  |=I%:..d\E.... .U|
000010c0  50 25 3c 34 8c 46 25 3d  55 50 25 0d 05 dc 05 f8  |P%<4.F%=UP%.....|
000010d0  0d 05 e6 05 20 0d 05 f0  0a f4 53 55 42 55 50 0d  |.... .....SUBUP.|
000010e0  05 fa 13 e7 55 50 25 3e  34 8c 53 25 3d 55 50 25  |....UP%>4.S%=UP%|
000010f0  2d 33 0d 06 04 11 e7 55  50 25 3c 34 8c 46 25 3d  |-3.....UP%<4.F%=|
00001100  55 50 25 0d 06 0e 05 f8  0d 06 18 05 20 0d 06 22  |UP%......... .."|
00001110  12 f4 20 53 55 42 20 46  4f 52 20 44 4f 57 4e 0d  |.. SUB FOR DOWN.|
00001120  06 2c 23 e7 49 25 2b 55  50 25 3c 3d 38 80 55 50  |.,#.I%+UP%<=8.UP|
00001130  25 3c 34 8c 53 25 3d 35  2d 55 50 25 3a e5 8d 44  |%<4.S%=5-UP%:..D|
00001140  40 46 0d 06 36 1a e7 49  25 2b 55 50 25 3e 38 80  |@F..6..I%+UP%>8.|
00001150  49 25 3e 34 8c 53 25 3d  49 25 2d 33 0d 06 40 23  |I%>4.S%=I%-3..@#|
00001160  e7 49 25 2b 55 50 25 3e  3d 38 80 55 50 25 3e 34  |.I%+UP%>=8.UP%>4|
00001170  8c 46 25 3d 38 2d 55 50  25 3a e5 8d 44 54 46 0d  |.F%=8-UP%:..DTF.|
00001180  06 4a 18 e7 49 25 2b 55  50 25 3c 38 80 49 25 3c  |.J..I%+UP%<8.I%<|
00001190  34 8c 46 25 3d 49 25 0d  06 54 05 f8 0d 06 5e 05  |4.F%=I%..T....^.|
000011a0  20 0d 06 68 10 f4 49 4e  54 45 52 43 48 41 4e 47  | ..h..INTERCHANG|
000011b0  45 0d 06 72 10 e3 54 25  3d 31 b8 20 4e 4e 25 2d  |E..r..T%=1. NN%-|
000011c0  31 0d 06 7c 24 e7 41 54  25 28 42 25 28 54 25 29  |1..|$.AT%(B%(T%)|
000011d0  29 3e 3d 41 54 25 28 42  25 28 54 25 2b 31 29 29  |)>=AT%(B%(T%+1))|
000011e0  8c 8d 64 60 46 0d 06 86  0d 43 25 3d 42 25 28 54  |..d`F....C%=B%(T|
000011f0  25 29 0d 06 90 13 42 25  28 54 25 29 3d 42 25 28  |%)....B%(T%)=B%(|
00001200  54 25 2b 31 29 0d 06 9a  0f 42 25 28 54 25 2b 31  |T%+1)....B%(T%+1|
00001210  29 3d 43 25 0d 06 a4 0f  e3 53 25 3d 54 25 b8 31  |)=C%.....S%=T%.1|
00001220  88 2d 31 0d 06 ae 24 e7  41 54 25 28 42 25 28 53  |.-1...$.AT%(B%(S|
00001230  25 29 29 3e 3d 41 54 25  28 42 25 28 53 25 2b 31  |%))>=AT%(B%(S%+1|
00001240  29 29 8c 8d 64 56 46 0d  06 b8 0d 43 25 3d 42 25  |))..dVF....C%=B%|
00001250  28 53 25 29 0d 06 c2 13  42 25 28 53 25 29 3d 42  |(S%)....B%(S%)=B|
00001260  25 28 53 25 2b 31 29 0d  06 cc 0f 42 25 28 53 25  |%(S%+1)....B%(S%|
00001270  2b 31 29 3d 43 25 0d 06  d6 05 ed 0d 06 e0 05 ed  |+1)=C%..........|
00001280  0d 06 ea 05 f8 0d 06 f4  05 20 0d 06 fe 0c 42 25  |......... ....B%|
00001290  3d 41 25 28 31 29 0d 07  08 0d e3 56 25 3d 32 b8  |=A%(1).....V%=2.|
000012a0  4e 4e 25 0d 07 12 14 e7  42 25 3e 3d 41 25 28 56  |NN%.....B%>=A%(V|
000012b0  25 29 8c 8d 54 66 47 0d  07 1c 0d 42 25 3d 41 25  |%)..TfG....B%=A%|
000012c0  28 56 25 29 0d 07 26 11  ed 3a f2 64 65 6c 61 79  |(V%)..&..:.delay|
000012d0  28 2e 30 35 29 0d 07 30  05 f8 0d 07 3a 05 20 0d  |(.05)..0....:. .|
000012e0  07 44 1d 42 42 25 3d 41  25 28 43 43 25 28 31 29  |.D.BB%=A%(CC%(1)|
000012f0  29 3a 49 44 25 3d 43 43  25 28 31 29 0d 07 4e 0f  |):ID%=CC%(1)..N.|
00001300  e7 4e 4e 25 3d 31 8c 8d  74 40 47 0d 07 58 0d e3  |.NN%=1..t@G..X..|
00001310  56 25 3d 32 b8 4e 4e 25  0d 07 62 1a e7 42 42 25  |V%=2.NN%..b..BB%|
00001320  3c 3d 41 25 28 43 43 25  28 56 25 29 29 8c 8d 44  |<=A%(CC%(V%))..D|
00001330  76 47 0d 07 6c 1f 42 42  25 3d 41 25 28 43 43 25  |vG..l.BB%=A%(CC%|
00001340  28 56 25 29 29 3a 49 44  25 3d 43 43 25 28 56 25  |(V%)):ID%=CC%(V%|
00001350  29 0d 07 76 05 ed 0d 07  80 05 f8 0d 07 8a 05 20  |)..v........... |
00001360  0d 07 94 0d dd f2 56 49  43 54 4f 52 59 0d 07 9e  |......VICTORY...|
00001370  10 d4 31 2c 2d 31 35 2c  39 37 2c 31 30 0d 07 a8  |..1,-15,97,10...|
00001380  11 d4 31 2c 2d 31 35 2c  31 30 35 2c 31 30 0d 07  |..1,-15,105,10..|
00001390  b2 10 d4 31 2c 2d 31 35  2c 38 39 2c 31 30 0d 07  |...1,-15,89,10..|
000013a0  bc 10 d4 31 2c 2d 31 35  2c 34 31 2c 31 30 0d 07  |...1,-15,41,10..|
000013b0  c6 10 d4 31 2c 2d 31 35  2c 36 39 2c 32 30 0d 07  |...1,-15,69,20..|
000013c0  d0 05 e1 0d 07 da 0a dd  f2 4c 4f 53 45 0d 07 e4  |.........LOSE...|
000013d0  0c e3 4c 25 3d 31 b8 31  30 0d 07 ee 0e e3 50 25  |..L%=1.10.....P%|
000013e0  3d 35 30 b8 31 35 30 0d  07 f8 10 d4 31 37 2c 2d  |=50.150.....17,-|
000013f0  31 35 2c 50 25 2c 32 0d  08 02 05 ed 0d 08 0c 05  |15,P%,2.........|
00001400  ed 0d 08 16 05 e1 0d 08  20 05 20 0d 08 21 0b dd  |........ . ..!..|
00001410  f2 42 4f 41 52 44 0d 08  22 06 20 db 0d 08 24 0b  |.BOARD..". ...$.|
00001420  20 e6 30 2c 31 30 30 0d  08 26 15 20 c8 93 20 c8  | .0,100..&. .. .|
00001430  90 20 35 30 2c 34 36 30  2c 35 36 30 0d 08 27 09  |. 50,460,560..'.|
00001440  20 e6 30 2c 30 0d 08 28  1b 20 e3 20 4b 25 3d 31  | .0,0..(. . K%=1|
00001450  20 b8 20 37 3a 20 e3 20  49 25 3d 30 20 b8 20 36  | . 7: . I%=0 . 6|
00001460  0d 08 2a 24 20 c8 8f 20  c8 90 20 28 38 30 2a 4b  |..*$ .. .. (80*K|
00001470  25 2b 31 30 29 2c 39 38  30 2d 28 38 30 2a 49 25  |%+10),980-(80*I%|
00001480  29 2c 33 37 0d 08 2c 09  20 ed 3a 20 ed 0d 08 2d  |),37..,. .: ...-|
00001490  0b 20 e5 20 8d 44 48 48  0d 08 2f 0b 20 e6 30 2c  |. . .DHH../. .0,|
000014a0  31 30 30 0d 08 34 05 db  0d 08 3e 0a e3 49 3d 31  |100..4....>..I=1|
000014b0  b8 38 0d 08 40 19 20 ec  20 35 30 2c 31 30 32 33  |.8..@. . 50,1023|
000014c0  2d 28 38 30 2a 28 49 2d  31 29 29 0d 08 42 18 20  |-(80*(I-1))..B. |
000014d0  df 20 36 31 30 2c 31 30  32 33 2d 38 30 2a 28 49  |. 610,1023-80*(I|
000014e0  2d 31 29 0d 08 43 10 20  ed 3a 20 e3 49 3d 31 20  |-1)..C. .: .I=1 |
000014f0  b8 20 38 0d 08 44 16 20  ec 20 35 30 2b 38 30 2a  |. 8..D. . 50+80*|
00001500  28 49 2d 31 29 2c 34 36  33 0d 08 46 17 20 df 20  |(I-1),463..F. . |
00001510  35 30 2b 38 30 2a 28 49  2d 31 29 2c 31 30 32 33  |50+80*(I-1),1023|
00001520  0d 08 47 06 20 ed 0d 08  48 2d f1 8a 35 2c 31 38  |..G. ...H-..5,18|
00001530  29 3b 22 31 20 20 20 20  32 20 20 20 20 33 20 20  |);"1    2    3  |
00001540  20 20 34 20 20 20 20 35  20 20 20 20 36 20 20 20  |  4    5    6   |
00001550  20 37 22 0d 08 84 05 e1  0d 08 8e 05 20 0d 08 98  | 7"......... ...|
00001560  0e dd f2 44 49 53 43 46  41 4c 4c 0d 08 a2 05 db  |...DISCFALL.....|
00001570  0d 08 ac 2e f1 8a 30 2c  37 29 22 59 6f 75 20 61  |......0,7)"You a|
00001580  6e 64 20 74 68 65 20 63  6f 6d 70 75 74 65 72 20  |nd the computer |
00001590  74 61 6b 65 20 74 75 72  6e 73 20 74 6f 22 0d 08  |take turns to"..|
000015a0  b6 2a f1 22 70 6c 61 63  65 20 64 69 73 63 73 20  |.*."place discs |
000015b0  69 6e 20 61 6e 79 20 6f  6e 65 20 6f 66 20 74 68  |in any one of th|
000015c0  65 20 73 65 76 65 6e 22  0d 08 c0 2a f1 22 63 6f  |e seven"...*."co|
000015d0  6c 75 6d 6e 73 2e 20 54  68 65 20 64 69 73 63 73  |lumns. The discs|
000015e0  20 77 69 6c 6c 20 61 6c  77 61 79 73 20 64 72 6f  | will always dro|
000015f0  70 22 0d 08 ca 1f f1 22  61 73 20 66 61 72 20 64  |p"....."as far d|
00001600  6f 77 6e 20 61 73 20 74  68 65 79 20 63 61 6e 2e  |own as they can.|
00001610  22 0d 08 d4 26 f1 27 22  43 6c 69 63 6b 20 6f 6e  |"...&.'"Click on|
00001620  20 74 68 65 20 6d 6f 75  73 65 20 74 6f 20 73 65  | the mouse to se|
00001630  65 20 68 6f 77 2e 22 0d  08 d9 16 20 f5 20 c8 97  |e how.".... . ..|
00001640  20 58 2c 59 2c 5a 3a 20  fd 20 5a 3d 30 0d 08 de  | X,Y,Z: . Z=0...|
00001650  17 20 f5 20 c8 97 20 58  2c 59 2c 5a 3a 20 fd 20  |. . .. X,Y,Z: . |
00001660  5a 3c 3e 30 0d 08 e8 0a  f2 42 4f 41 52 44 0d 08  |Z<>0.....BOARD..|
00001670  f2 1c 43 4f 25 3d 31 3a  e3 49 25 3d 31 b8 37 3a  |..CO%=1:.I%=1.7:|
00001680  43 25 28 49 25 29 3d 31  3a ed 0d 08 fc 08 f5 3a  |C%(I%)=1:......:|
00001690  ef 37 0d 09 06 2c 4b 25  3d b3 28 37 29 3a 43 4f  |.7...,K%=.(7):CO|
000016a0  25 3d 33 2d 43 4f 25 3a  e7 43 4f 25 3d 31 8c 43  |%=3-CO%:.CO%=1.C|
000016b0  43 24 3d 47 43 24 8b 43  43 24 3d 47 59 24 0d 09  |C$=GC$.CC$=GY$..|
000016c0  10 22 43 25 28 4b 25 29  3d 43 25 28 4b 25 29 2b  |."C%(K%)=C%(K%)+|
000016d0  31 3a e7 43 25 28 4b 25  29 3d 38 8c 8d 54 46 49  |1:.C%(K%)=8..TFI|
000016e0  0d 09 1a 55 e3 49 25 3d  30 b8 38 2d 43 25 28 4b  |...U.I%=0.8-C%(K|
000016f0  25 29 3a f4 20 50 52 49  4e 54 54 41 42 28 34 2a  |%):. PRINTTAB(4*|
00001700  4b 25 2d 32 2c 33 2a 49  25 2b 31 29 43 43 24 43  |K%-2,3*I%+1)CC$C|
00001710  48 52 24 28 43 4f 25 2a  31 34 30 2d 32 35 29 3a  |HR$(CO%*140-25):|
00001720  49 46 49 25 3d 38 2d 43  25 28 4b 25 29 54 48 45  |IFI%=8-C%(K%)THE|
00001730  4e 32 33 35 30 0d 09 1c  1e 20 f2 43 68 61 6e 67  |N2350.... .Chang|
00001740  65 43 6f 6c 6f 75 72 3a  20 f2 50 6c 6f 74 54 6f  |eColour: .PlotTo|
00001750  6b 65 6e 0d 09 1f 16 20  e7 49 25 3d 38 2d 43 25  |ken.... .I%=8-C%|
00001760  28 4b 25 29 8c 8d 54 6e  49 0d 09 24 2c f2 64 65  |(K%)..TnI..$,.de|
00001770  6c 61 79 28 30 2e 31 29  3a f4 20 50 52 49 4e 54  |lay(0.1):. PRINT|
00001780  54 41 42 28 34 2a 4b 25  2d 31 2c 33 2a 49 25 2b  |TAB(4*K%-1,3*I%+|
00001790  31 29 22 20 22 0d 09 26  09 20 e6 30 2c 30 0d 09  |1)" "..&. .0,0..|
000017a0  27 0f 20 f2 50 6c 6f 74  54 6f 6b 65 6e 0d 09 2e  |'. .PlotToken...|
000017b0  05 ed 0d 09 38 0c fd 43  25 28 34 29 3d 34 0d 09  |....8..C%(4)=4..|
000017c0  42 0d f2 64 65 6c 61 79  28 32 29 0d 09 4c 05 e1  |B..delay(2)..L..|
000017d0  0d 09 56 05 20 0d 09 60  0d dd f2 57 49 4e 4c 49  |..V. ..`...WINLI|
000017e0  4e 45 0d 09 6a 05 db 0d  09 74 2e f1 8a 30 2c 37  |NE..j....t...0,7|
000017f0  29 22 54 68 65 20 61 69  6d 20 6f 66 20 74 68 65  |)"The aim of the|
00001800  20 67 61 6d 65 20 69 73  20 74 6f 20 67 65 74 20  | game is to get |
00001810  46 4f 55 52 22 0d 09 7e  28 f1 22 6f 66 20 79 6f  |FOUR"..~(."of yo|
00001820  75 72 20 64 69 73 63 73  20 69 6e 20 6c 69 6e 65  |ur discs in line|
00001830  20 56 65 72 74 69 63 61  6c 6c 79 2c 22 0d 09 88  | Vertically,"...|
00001840  22 f1 22 48 6f 72 69 7a  6f 6e 74 61 6c 6c 79 20  |"."Horizontally |
00001850  6f 72 20 44 69 61 67 6f  6e 61 6c 6c 79 2e 22 0d  |or Diagonally.".|
00001860  09 92 26 f1 27 22 43 6c  69 63 6b 20 6f 6e 20 74  |..&.'"Click on t|
00001870  68 65 20 6d 6f 75 73 65  20 74 6f 20 73 65 65 20  |he mouse to see |
00001880  68 6f 77 2e 22 0d 09 97  16 20 f5 20 c8 97 20 58  |how.".... . .. X|
00001890  2c 59 2c 5a 3a 20 fd 20  5a 3d 30 0d 09 9c 17 20  |,Y,Z: . Z=0.... |
000018a0  f5 20 c8 97 20 58 2c 59  2c 5a 3a 20 fd 20 5a 3c  |. .. X,Y,Z: . Z<|
000018b0  3e 30 0d 09 a6 0a f2 42  4f 41 52 44 0d 09 b0 2c  |>0.....BOARD...,|
000018c0  f1 27 22 20 20 20 20 20  43 6c 69 63 6b 20 6f 6e  |.'"     Click on|
000018d0  20 74 68 65 20 6d 6f 75  73 65 20 74 6f 20 43 6f  | the mouse to Co|
000018e0  6e 74 69 6e 75 65 2e 22  0d 09 ba 10 4b 25 3d 37  |ntinue."....K%=7|
000018f0  3a e3 49 25 3d 31 b8 34  0d 09 c4 1e 20 f2 43 68  |:.I%=1.4.... .Ch|
00001900  61 6e 67 65 43 6f 6c 6f  75 72 3a 20 f2 50 6c 6f  |angeColour: .Plo|
00001910  74 54 6f 6b 65 6e 0d 09  c7 06 20 ed 0d 09 ce 10  |tToken.... .....|
00001920  49 25 3d 36 3a e3 4b 25  3d 31 b8 34 0d 09 d8 21  |I%=6:.K%=1.4...!|
00001930  20 f2 43 68 61 6e 67 65  43 6f 6c 6f 75 72 3a 20  | .ChangeColour: |
00001940  f2 50 6c 6f 74 54 6f 6b  65 6e 3a 20 ed 0d 09 e2  |.PlotToken: ....|
00001950  32 e3 49 25 3d 31 b8 34  3a 20 4b 25 3d 49 25 2b  |2.I%=1.4: K%=I%+|
00001960  31 3a 20 f2 43 68 61 6e  67 65 43 6f 6c 6f 75 72  |1: .ChangeColour|
00001970  3a 20 f2 50 6c 6f 74 54  6f 6b 65 6e 3a 20 ed 0d  |: .PlotToken: ..|
00001980  09 e7 16 20 f5 20 c8 97  20 58 2c 59 2c 5a 3a 20  |... . .. X,Y,Z: |
00001990  fd 20 5a 3d 30 0d 09 ec  17 20 f5 20 c8 97 20 58  |. Z=0.... . .. X|
000019a0  2c 59 2c 5a 3a 20 fd 20  5a 3c 3e 30 0d 09 f1 0c  |,Y,Z: . Z<>0....|
000019b0  20 2a 46 58 31 35 2c 30  0d 09 f6 05 e1 0d 0a 00  | *FX15,0........|
000019c0  0f dd f2 46 49 52 53 54  44 49 53 43 0d 0a 0a 20  |...FIRSTDISC... |
000019d0  e7 4b 25 3c 37 20 80 20  4b 25 3e 31 20 8c 46 43  |.K%<7 . K%>1 .FC|
000019e0  25 3d 4b 25 20 8b 20 46  43 25 3d 34 0d 0a 14 05  |%=K% . FC%=4....|
000019f0  e1 0d 0a 1e 05 20 0d 0a  28 12 20 dd f2 64 65 6c  |..... ..(. ..del|
00001a00  61 79 28 73 65 63 73 29  0d 0a 32 0b 20 ea 64 65  |ay(secs)..2. .de|
00001a10  6c 61 79 0d 0a 3c 17 20  64 65 6c 61 79 3d 91 2b  |lay..<. delay=.+|
00001a20  28 73 65 63 73 2a 31 30  30 29 0d 0a 46 0e 20 f5  |(secs*100)..F. .|
00001a30  fd 91 3e 64 65 6c 61 79  0d 0a 50 06 20 e1 0d 0a  |..>delay..P. ...|
00001a40  5a 05 20 0d 0b b8 13 20  dd f2 43 68 61 6e 67 65  |Z. .... ..Change|
00001a50  43 6f 6c 6f 75 72 0d 0b  c2 1f 20 e7 20 97 20 43  |Colour.... . . C|
00001a60  43 24 3d 31 34 37 20 8c  20 e6 30 2c 33 20 8b 20  |C$=147 . .0,3 . |
00001a70  e6 30 2c 31 35 0d 0b cc  06 20 e1 0d 0b d6 05 20  |.0,15.... ..... |
00001a80  0d 0c 1c 10 20 dd f2 50  6c 6f 74 54 6f 6b 65 6e  |.... ..PlotToken|
00001a90  0d 0c 26 24 20 c8 8f 20  c8 90 20 28 38 30 2a 4b  |..&$ .. .. (80*K|
00001aa0  25 2b 31 30 29 2c 39 38  30 2d 28 38 30 2a 49 25  |%+10),980-(80*I%|
00001ab0  29 2c 33 35 0d 0c 30 06  20 e1 0d 0c 3a 05 20 0d  |),35..0. ...:. .|
00001ac0  0c 80 0b 20 dd f2 53 6c  6f 74 0d 0c 85 09 20 4f  |... ..Slot.... O|
00001ad0  4b 3d 30 0d 0c 8a 0d 20  c8 97 20 58 2c 59 2c 5a  |K=0.... .. X,Y,Z|
00001ae0  0d 0c 8f 11 20 e7 20 5a  3d 30 20 8c 20 4f 4b 3d  |.... . Z=0 . OK=|
00001af0  31 0d 0c 94 86 20 4c 45  46 3d 2d 31 2a 28 58 3e  |1.... LEF=-1*(X>|
00001b00  35 30 20 80 20 58 3c 31  33 30 29 2d 32 2a 28 58  |50 . X<130)-2*(X|
00001b10  3e 31 33 30 20 80 20 58  3c 32 31 30 29 2d 33 2a  |>130 . X<210)-3*|
00001b20  28 58 3e 32 31 30 20 80  20 58 3c 32 39 30 29 2d  |(X>210 . X<290)-|
00001b30  34 2a 28 58 3e 32 39 30  20 80 20 58 3c 33 37 30  |4*(X>290 . X<370|
00001b40  29 2d 35 2a 28 58 3e 33  37 30 20 80 20 58 3c 34  |)-5*(X>370 . X<4|
00001b50  35 30 29 2d 36 2a 28 58  3e 34 35 30 20 80 20 58  |50)-6*(X>450 . X|
00001b60  3c 35 33 30 29 2d 37 2a  28 58 3e 35 33 30 20 80  |<530)-7*(X>530 .|
00001b70  20 58 3c 36 31 30 29 0d  0c 95 1a 20 e7 20 4c 45  | X<610).... . LE|
00001b80  46 3d 30 20 80 20 5a 3c  3e 30 20 8c 20 4f 4b 3d  |F=0 . Z<>0 . OK=|
00001b90  30 0d 0c 97 0f 20 4c 45  46 3d 4c 45 46 2a 4f 4b  |0.... LEF=LEF*OK|
00001ba0  0d 0c 99 1b 20 e7 20 4c  45 46 3d 30 20 84 20 5a  |.... . LEF=0 . Z|
00001bb0  3d 30 20 8c 20 e5 20 8d  74 4a 4c 0d 0c 9e 0b 20  |=0 . . .tJL.... |
00001bc0  4b 25 3d 4c 45 46 0d 0c  a8 06 20 e1 0d 0c b2 05  |K%=LEF.... .....|
00001bd0  20 0d 0c e4 0a 20 dd f2  43 6c 6b 0d 0c ee 2d 20  | .... ..Clk...- |
00001be0  f1 8a 35 2c 32 30 29 22  43 6c 69 63 6b 20 6f 6e  |..5,20)"Click on|
00001bf0  20 74 68 65 20 6d 6f 75  73 65 20 74 6f 20 43 6f  | the mouse to Co|
00001c00  6e 74 69 6e 75 65 2e 22  0d 0c f8 16 20 f5 20 c8  |ntinue.".... . .|
00001c10  97 20 58 2c 59 2c 5a 3a  20 fd 20 5a 3d 30 0d 0d  |. X,Y,Z: . Z=0..|
00001c20  02 17 20 f5 20 c8 97 20  58 2c 59 2c 5a 3a 20 fd  |.. . .. X,Y,Z: .|
00001c30  20 5a 3c 3e 30 0d 0d 0c  06 20 e1 0d ff           | Z<>0.... ...|
00001c3d