2 PRINTCHR$(147)"WOULD YOU LIKE INSTRUCTIONS (Y/N)? 4 [161] A$: [139] A$[179][177] "Y" [175] A$[179][177]"N" [167] 4 6 [139] A$[178]"N" [167] 58 8 [153]"INSTRUCTIONS ON SCREEN OR PRINTER (S/P)? 10 GET B$: IF B$<> "S" AND B$<>"P" THEN 10 12 IF B$="S"THEN D=3 14 IF B$="P" THEN D=4 16 OPEN D,D 18 PRINT#D," 20 [152]D,"BOXES BY MICHAEL MURTAGH 22 PRINT#D," 24 [152]D,"RUN IT RIGHT: C-64; JOYSTICK 26 PRINT#D," 28 [152]D,"BOXES IS A TWO-PLAYER GAME THAT CAN BE 30 PRINT#D,"PLAYED WITH 1 (PORT 1) OR 2 JOYSTICKS. 32 [152]D,"USE THE JOYSTICK TO MOVE THE 34 PRINT#D,"CURSOR (LINE) TO AN EMPTY SPACE BETWEEN 36 [152]D,"ADJACENT STARS. PRESS THE FIREBUTTON 38 PRINT#D,"TO SET THE LINE INTO PLACE. PRESSING 40 [152]D,"THE JOYSTICK DIAGONALLY SWITCHES THE 42 PRINT#D,"LINE FROM HORIZONTAL TO VERTICAL 44 [152]D,"POSITION. 46 PRINT#D,"IF YOU COMPLETE A BOX, YOU WIN IT AND 48 [152]D,"YOU MOVE AGAIN. IF YOU DON'T COMPLETE 50 PRINT#D,"A BOX, CONTROL PASSES TO YOUR OPPONENT. 52 [152]D,"WHOEVER HAS THE MOST BOXES WHEN THE 54 PRINT#D,"MATRIX IS FILLED, WINS! 56 [152]D,"":[160]D 58 [153]"PRESS ANY KEY TO BEGIN THE PROGRAM..." 60 [161] E$:[139] E$[178]""[167] 60 62 [156] 64 [143] BOXES 66 [134] XS(10),YS(10),ZS(10,2),LD(11,11),FB(25) 68 [137]106 70 [143] **]SUB ** JOYSTICK ROUTINE 72 FR[178]1:JV[178][194](JL):FR[178]JV[175]16:[139]FR[178]0[167]78 74 JV[178]MK[171]JV[175]MK:[139]JV[177]0[167]78 76 [137]72 78 [142] 80 [143] ** SUB ** CHECK IF BOX FILLED 82 N[178]0:GB[178]0:[129]I[178]1[164]25:[139]FB(I)[177]0[167]N[178]N[170]1:[137]100 84 FL[178]0:VB[178][181]((I[171]1)[173]5)[170]1:HB[178]I[171]5[172](VB[171]1) 86 [139]LD(2[172]HB[171]1,2[172]VB)[178]1[167]FL[178]FL[170]1 88 [139]LD(2[172]HB,2[172]VB[171]1)[178]1[167]FL[178]FL[170]1 90 [139]LD(2[172]HB[170]1,2[172]VB)[178]1[167]FL[178]FL[170]1 92 [139]LD(2[172]HB,2[172]VB[170]1)[178]1[167]FL[178]FL[170]1 94 [139]FL[179]4[167]100 96 GB[178]1:FB(I)[178]P:N[178]N[170]1:A[178]48[170]P:B[178]C(P):XB[178]XO[170]80[172](VB[171]1)[170]4[172](HB[171]1)[170]42 98 [151]XB,A:[151]XB[170]DC,B 100 [130] 102 [142] 104 [143] INITIALIZE 106 [141]184:[141]218 108 [143] START GAME LOOP 110 [141]72:[139]FR[178]0[137]138 112 XT[178]XL[170]XS(JV):YT[178]YL[170]YS(JV):GM[178]0 114 [139]XT[179]0 [176] XT[177]20 [176] YT[179]0 [176] YT[177]10 [167]110 116 [139]LD(HO,VO)[178]0[167][151]BO,32:[151]BO[170]DC,1:[137]120 118 [151]BO,BS:[151]BO[170]DC,3 120 A[178]XS(JV):B[178]YS(JV) 122 [139]A[179][177]0[167]HO[178]HO[170]A[173]2 124 [139]B[179][177]0[167]VO[178]VO[170]B 126 XL[178]XT:YL[178]YT:BB[178]XO[170]40[172]YL[170]XL:BS[178]ZS(JV,BL):[151]BB,BS:[151]BB[170]DC,12:BO[178]BB 128 [129]I[178]0[164]3:A[178]2[174]I:[139]A[178]JV[167][137]134 130 [130] 132 BL[178]BL[170]1:[139]BL[177]2[167]BL[178]1 134 [137]110 136 [143] DRAW LINE AND CHECK IF BOXES FILLED 138 [139]LD(HO,VO)[178]1[167]110 140 B[178]BO:II[178]0:[139]BL[178]1[167]II[178]2:B[178]BO[171]1 142 [129]I[178]0[164]II:[151]B[170]I,BS:[151]B[170]I[170]DC,3:[130] 144 LD(HO,VO)[178]1: 146 [141]82:[139]N[178]25[137]158 148 [151]BO,BS:[151]BO[170]DC,12 150 [139]GB[178]1[167]110 152 P[178]P[170]1:[139]P[177]2[167]P[178]1 154 JL[178]NJ(P):[153]H$M$C$(P)N$(P)BB$:[137]110 156 [143] ** GAME WON ** FIND THE WINNER 158 [129]I[178]1[164]2:BT(I)[178]0:[130] 160 [129]I[178]1[164]25:J[178]FB(I):BT(J)[178]BT(J)[170]1:[130] 162 [153][199](147)D2$D2$ 164 [129] I[178]1[164]2:[153]A5$C$(I)BT(I)A5$N$(I):[153]:[130] 166 J[178]1:[139]BT(2)[177]BT(1)[167]J[178]2 168 [153]D2$A5$C$(J)"THE WINNER IS "N$(J) 170 NG(J)[178]NG(J)[170]1 172 [153]D2$A5$"PLAY AGAIN (Y/N)?" 174 [161]YN$:[139]YN$[178]""[167]174 176 [139]YN$[178]"Y"[167][141]218:[137]110 178 [139]YN$[179][177]"N"[167]174 180 [144] 182 [143] ** SUB ** SETUP INITIAL GAME 184 [153][199](147):[151]53280,3:[151]53281,1:DC[178]55296[171]1024:MK[178]15 186 D1$[178][199](17):D2$[178]D1$[170]D1$:A1$[178][199](29):A2$[178]A1$[170]A1$:A5$[178]A1$ 188 [129] I[178]1[164]4:A5$[178]A5$[170]A1$:[130]:C(1)[178]14:C(2)[178]4:C$(1)[178][199](154):C$(2)[178][199](156) 190 H$[178][199](19)[170]D2$[170]D2$[170]D2$[170]A5$[170][199](13):B$[178][199](32):BB$[178]B$ 192 [129]I[178]1[164]9:BB$[178]BB$[170]B$:[130]:M$[178][199](150)[170]" YOUR TURN ":MM$[178]"BOXES" 194 [129]J[178]1[164]4:[129]I[178]1[164]2:[153]D1$C$(I)MM$;:[130]:[130]:[153]D1$[199](150) 196 [129]I[178]1[164]2:NG(I)[178]0 198 [153]"NAME OF PLAYER #"I;:[133]N$(I):[130] 200 [153]:[133]"NUMBER OF JOYSTICKS ";N 202 NJ(1)[178]56321:NJ(2)[178]NJ(1):[139]N[178]2[167]NJ(2)[178]56320 204 [129]I[178]1[164]10:[135]A,B:XS(I)[178]A:YS(I)[178]B:[130] 206 [129]I[178]1[164]2:[129]J[178]1[164]10:[135]A:ZS(J,I)[178]A:[130]:[130] 208 [131]0,-2,0,2,0,0,-4,0,-2,-1,-2,1,0,0,4,0,2,-1,2,1 210 [131]67,67,0,67,66,66,0,67,66,66 212 [131]66,66,0,66,67,67,0,66,67,67 214 [142] 216 [143] ** SUB ** DRAW BOXES FOR NEW GAME 218 [153][199](147)D1$ 220 [153][199](159)A5$A2$"PLAYER"A2$"GAMES"A2$"NAME"[199](150) 222 [129]I[178]1[164]2:VV[178]48[170]NG(I):V[178]48[170]I 224 Q$(I)[178]C$(I)[170]A5$[170][199](V)[170]A5$[170][199](VV)[170]A5$[170]N$(I):[130] 226 [153]:[129]I[178]1[164]2:NB(I)[178]0:[153]A5$Q$(I):[130]:[153][199](154) 228 XO[178]1430:S[178]42:SC[178]5 230 [129] I[178]1[164]12[169]2 232 YO[178]XO[170]40[172](I[171]1) 234 [129]J[178]1[164]24[169]4 236 XY[178]YO[170]J[171]1:[151]XY,S:[151]DC[170]XY,SC:[130]:[130] 238 [129]I[178]1[164]25:FB(I)[178]0:[130]:[129]I[178]1[164]11:[129]J[178]1[164]11:LD(I,J)[178]0:[130]:[130] 240 JL[178]NJ(1):XL[178]2:YL[178]0:JV[178]1:HO[178]2:VO[178]1:P[178]P[170]1:[139]P[177]2[167]P[178]1 242 BB[178]XO[170]2:BS[178]ZS(1,1):[151]BB,BS:[151]BB[170]DC,12:BO[178]BB:BL[178]1 244 [153]H$M$C$(P)N$(P)BB$ 246 [142]