home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
commodore-users-of-norman
/
CUON_121_(06-1985).d64
/
concentration.c3
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
14KB
|
528 lines
1 GOTO910
2 REM ** ML STOP KEY DISABLE **
3 PRINT"x[169]=[141][169][141]X` [234][255][169][255][133][145]L4[234]x[169]1[141][169][234][141]X`
4 [153]"xhhh+hNOThhhhhhhPRINT#HRUNHX`111"
5 [153]"hhhhhhh`1"
6 [143] ** 4 - POP ML SUBROUTINE **
10 [143] **GENERAL INPUT ROUTINE **
35 [143] +++ INPUT SECTION +++
40 [151]UO,0:UR$[178]"":UI$[178]""
42 [139]UL[178]0[167]UL[178]80
45 [153]" CMDCMD";:[151]UC,0
50 [161]UI$:[139]UI$[178]""[167]50
55 [139]UI$[178][199](13)[175][195](UR$)[177][178]1[167][151]UC,1:[153]" CMD";:[137]85
60 [139]UI$[178][199](20)[167]105
62 [139] [195](UR$)[178][177]UL[167]50
65 [141]120:[143] CHECK FOR VALID CHARACTER
70 UR$[178]UR$[170]UI$
75 [153]UI$;
80 [137]50
85 [143] +++ CHECK FOR HELP REQUEST +++
90 [139]UR$[178]UX$[167]195:[143] EXIT TO HELP ROUTINE
95 [139]UF[178]1[167][141]240
100 UF[178]0:[153]:[142]
102 [143] ++ CHECK DELETE ++
105 [139][195](UR$)[179]1[167]50
110 UR$[178][200](UR$,[195](UR$)[171]1)
115 [153]"CMD CMDCMD";:[137]50
120 [143] ++ CHECK FOR VALID CHARACTERS ++
125 [139][195](US$)[178]0[167]150
127 US$[178]US$[170]UX$
130 [129]US[178]1[164][195](US$)
135 [139]UI$[178][202](US$,US,1)[167][142]
140 [130]
145 UI$[178]"":[142]
150 [143] ** STANDARD INPUT **
152 [139][198](UI$)[178]46[167][142]
155 [139]UI$[178][199](32)[167][142]
160 [139][198](UI$)[179]48[176][198](UI$)[177]57[167]170
165 [142]
170 [139][198](UI$)[179]65[176][198](UI$)[177]90[167]180
175 [142]
180 [139][198](UI$)[179]193[176][198](UI$)[177]218[167]UI$[178]"":[142]
185 [139][194](UT)[178]UU%[167]UI$[178][199]([198](UI$)[171]128):[142]
187 [142]
190 UI$[178]"":[142]
195 UF[178]1:[143] +++ HELP ROUTINE EXIT +++
197 [141]250
200 [141]245
205 [129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]2)
210 UQ%(UQ[171]UB)[178][194](UQ):[130]:[153]"LOAD"
215 UZ[178]1:UV%[178][194](UT)
216 [137]300
217 UZ[178]0:US$[178]UJ$:UG$[178]UK$:UP[178]UJ:UL[178]UK
218 [139][194](50003)[178]0[167][151]53281,1:[153]"LOAD";:[151]53281,6:[151]53280,14:[137]220
219 [153]"LOAD";
220 UT$[178]UL$:[151]UT,UV%:[129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]3)
225 [151]UQ,UQ%(UQ[171]UB):[130]
230 [151]U1,U1%
232 [151]U2,U2%
233 [151]U4,U4%
234 [151]U3,U3%[171]1
235 [137]35
240 UD%[178]((U2%[172]256[170]U1%[170]U3%)[171]UB)[173]40:[153][200](UD$,UD%[170]1):[142]
245 [153][200](UD$,23);" HELP COMING WAIT ":[142]
250 U1%[178][194](U1):U2%[178][194](U2):U3%[178][194](U3):U4%[178][194](U4)
251 UJ$[178]US$:UK$[178]UG$:UL$[178]UT$:UJ[178]UP:UK[178]UL
255 [142]
300 [143] ** MENU **
301 :
302 [153]"LOAD":[151]UT,UU%:[139][194](50003)[178]0[167][151]53281,9:[151]53280,8
303 :
305 [153]" MENU"
310 [153]" --------------------------------------"
315 [153]" 1. CONCENTRATION"
320 [153]" 2. STUDENT INSTRUCTIONS"
325 [153]" 3. TEACHER INSTRUCTIONS"
330 [153]" 4. MODIFICATION OF PROGRAM"
335 [153]" 5. QUIT"
340 [153]" --------------------------------------"
345 [153]" PRESS A NUMBER KEY (1-5) ";
350 UL[178]1:US$[178]"12345":[141]35:[143] INPUT ROUTINE
351 [139][195](UR$)[177]1[167]300
352 US$[178]""
355 [145][197](UR$)[141]1000,400,500,600,396
360 [137]300
395 [143] ** RE-ENABLE STOP KEY AND END **
396 [139][194](50003)[179][177]1[175][194](50003)[179][177]160[175][194](50003)[179][177]0[167]399
397 [158]UU[170]71:[139][194](50003)[178]0[167][151]53281,6:[151]53280,14
398 [153]"CONTLOAD":[128]
399 [141]875:[142]
400 [143] ** STUDENT INSTRUCTIONS **
405 [153]"LOAD":[151]UT,UL%:[139][194](50003)[178]0[167][151]53281,0:[151]53280,0
410 UT$[178]" LEN(null)(null)LENVAL(null)(null)(null)ATN(null)RIGHT$(null)(null)":UP[178]0:UG$[178]"(null)TUDENT RIGHT$NST":[141]850
411 [153]" (null)HE LEN(null)(null)LENVAL(null)(null)(null)ATN(null)RIGHT$(null)(null)CLOSEBOARD WILL BE"
412 [153]" DISPLAYED WITH 20 SECTIONS. PEEKEHIND"
413 [153]" EACH PANEL IS A WORD. (null)HEN YOU
414 PRINT" CHOOSE A NUMBER (1-20) A WORD IS
415 [153]" REVEALED. (null)N YOUR SECOND CHOICE, YOU
416 PRINT" TRY TO MAKE A MATCH BY FINDING THE
417 [153]" SAME WORD SOMEWHERE ELSE. (null)HERE
418 PRINT" ARE 10 MATCHES TO BE MADE.
419 [141]835:[141]850
420 [153]" (null)HEN YOU HAVE COMPLETED ALL THE
421 PRINT" MATCHES THE WHOLE BOARD WILL BE"
423 PRINT" DISPLAYED AND THE GAME WILL BE OVER.
424 [153]"(null)OU MAY HAVE ONE OR TWO PLAYERS.
425 PRINT" [212]HE AIM FOR ONE IS TO OPEN THE BOARD
426 [153]" WITH AS FEW TRIES AS POSSIBLE. (null)HE
427 PRINT" AIM FOR TWO PLAYERS IS TO MAKE MORE
428 [153]" MATCHES THAN YOUR OPPONENT.
429 GOSUB835
490 IFUZ=1THENSYSUP%:GOTO217
498 UG$=""
499 RETURN
500 REM ** TEACHER INSTRUCTIONS **
501 PRINT"[147]":POKEUT,UL%:IFPEEK(50003)=0THENPOKE53281,2:POKE53280,10
502 UT$=" [195][207][206][195][197][206][212][210][193][212][201][207][206]":UP=0:UG$="[212]EACHER [201]NST":GOSUB850
503 PRINT" [212]O THE BEST OF OUR KNOWLEDGE,"
504 PRINT" THIS PROGRAM IS IN THE PUBLIC"
505 PRINT" DOMAIN. [201]F THIS IS NOT THE CASE"
506 PRINT" PLEASE CONTACT:"
507 PRINT" [195]OMMODORE [194]USINESS [205]ACHINES"
508 PRINT" 3370 [208]HARMACY [193]VE.
509 [153]" ATNGINCOURT, (null)NTARIO"
510 [153]" LENANADA (null)1(null) 2(null)4"
511 [153]" (416) 499-4292"
512 [141] 835:[141] 850:
513 [153]" (null)ROGRAM (null)AME: LENONCENTRATION
514 PRINT" [215]RITTEN [194]Y : [198]REDD [195]HRISTIE
515 [153]" (null)PGRADED PEEKY :
516 PRINT" [212]HIS PROGRAM WILL RUN ON ANY
519 [153]" (null)VAL(null) 64 LEN(null)(null)(null)(null)(null)VAL(null)
520 PRINT" [195][207][205][205][207][196][207][210][197] 64 [195][207][205][208][213][212][197][210]
521 [141]835:[141]850
530 [153]" (null)HIS GAME IS DESIGNED FOR ANYONE WHO"
532 [153]" CAN READ. RIGHT$T IS AN EXERCISE IN PAYING"
534 [153]" ATTENTION TO DETAIL AND CONCENTRATING"
536 [153]" ON WHAT YOU SEE AND CAN REMEMBER."
538 [153]" (null)LAYERS CAN REVEAL SECTIONS OF THE"
540 [153]" BOARD FOR SHORT PERIODS OF TIME, BUT"
542 [153]" THEY HAVE TO REMEMBER WHAT THEY SAW"
544 [153]" AND WHERE THEY SAW IT."
580 [141]835
590 [139]UZ[178]1[167][158]UP%:[137]217
598 UG$[178]""
599 [142]
600 [143] ** PROGRAM MODIFICATION INST **
601 [153]"LOAD":[151]UT,UL%
605 UT$[178]" LEN(null)(null)LENVAL(null)(null)(null)ATN(null)RIGHT$(null)(null)":UP[178]0:UG$[178]"(null)ROGRAM (null)OD":[141]850
663 [153]" (null)INE 2200 HOLDS DATA.
664 PRINT" [212]HE GAME CAN BE EASILY CHANGED BY"
665 PRINT" LISTING AND TYPING IN 10 DIFFERENT"
666 PRINT" WORDS WHICH ARE SUITABLE FOR THE"
667 PRINT" PEOPLE PLAYING THE GAME."
670 GOSUB835
690 IFUZ=1THENSYSUP%:GOTO217
698 UG$=""
699 RETURN
700 REM ** TO USE 8032 LOAD CBM4032 **
710 PRINT"[147]BEFORE RUNNING THIS PROGRAM ON AN 8032
720 [153]" LOAD THE 'CBM 4032' PROGRAM"
730 [158]UU[170]71
740 [128]
797 [143] ** TO USE 8032 LOAD CBM4032 **
798 [153]"LOADBEFORE RUNNING THIS PROGRAM ON AN 8032 LOAD CBM 4032 PROGRAM"
799 [158]1093:[128]
800 [143] ** T I T L E P A G E **
802 [153]"LOAD";:[151]UT,UU%:[139][194](50003)[178]0[167][151]53280,14:[151]53281,6
804 [129]I[178]1[164]38:[153]"SPC(WAIT";:[130]
806 [129]I[178]1[164]22:[153]"CMDSPC(WAIT";:[130]
808 [129]I[178]1[164]37:[153]"CMDCMDSPC(WAIT";:[130]
810 [129]I[178]1[164]22:[153]"ONCMDSPC(WAIT";:[130]
812 [153]"STEP WAIT
814 PRINT" [146] [146][169]
816 [153]" WAIT TAB((null)
818 PRINT"[223] [146]
820 [153]"C O M M O D O R E
822 PRINT"EDUCATIONAL
824 [153]"SOFTWARE
826 REM ** COMMODORE LOGO **
827 PRINTLEFT$(UD$,24);"PRESS SPACE BAR OR WAIT[146]":I=0
828 GETA$:IFA$<>" "THENI=I+1:IFI<250THEN828
830 T1$="":T2$="":T3$="":T4$="":I=0
832 GOTO300
835 REM ** SPACE BAR PRESS **
840 POKEUO,0:PRINTLEFT$(UD$,24);"PRESS SPACE BAR TO CONTINUE[146]"
844 GETUI$:IFUI$<>" "THEN844
846 RETURN
850 REM ** PAGE DESIGN ROUTINE **
852 UP=UP+1
855 PRINT"[147]"LEFT$(UT$+UP$,21);RIGHT$(UP$+UG$+STR$(UP),18)
860 PRINT" --------------------------------------"
864 IFUH<>0THEN870
865 PRINTLEFT$(UD$,24);LEFT$(UP$,7);"HELP - PRESS H <RETURN>"
870 POKEUO,0:PRINT"":RETURN
875 REM ** PLEASE WAIT REMARK **
880 PRINTLEFT$(UD$,24);" ONE MOMENT PLEASE... "
885 RETURN
900 REM ** SET UP VARIABLES **
901 UX$="H":DIMUQ%(1000):UB=32768:U1=196:U2=197:U3=198:U4=216:UC=167:UU=1024
902 UT=59468:UU%=12:UL%=14:UP%=1146:UM=32768:UO=158:POKE 50003,0
903 IFPEEK(50003)=0THENUB=1024:U1=209:U2=210:U3=211:U4=214:UC=204:UU=2048
904 IFPEEK(50003)=0THENUT=53272:UU%=21:UL%=23:UP%=2139:UM=1024:UO=198
905 UD$=""
906 UP$=" "
907 UT$=" [195][207][206][195][197][206][212][210][193][212][201][207][206]":REM PROGRAM TITLE
908 DIMA$(20),B$(20):RETURN
910 REM ** SET VARIABLES **
915 GOSUB900
920 REM ** CHECK FOR 8032 **
925 PRINT"[147]":PRINT"[160]":REM SHIFTED SPACE
930 IFPEEK(UB+40)<>96THENGOSUB700
931 REM ** MEMORY CHECK **
932 IF FRE(0)>2000THEN937
933 PRINT"[147]THIS MACHINE DOES NOT HAVE ENOUGH"
934 PRINT"MEMORY TO RUN THIS PROGRAM !"
935 SYSUU+71
936 END
937 PRINT"[147]":IFPEEK(50003)=0THEN962
940 REM ** BASIC 2.0 OR 4.0 OR C-64 SETUP **
941 POKE1075,133:POKE1076,144:POKE1077,234:POKE1079,4:POKE1080,133:POKE1081,145
942 POKE1091,155:POKE1098,133:POKE1099,144:POKE1100,234:POKE1103,133
943 POKE1104,145:POKE1105,234:POKE1082,234
945 IFPEEK(50003)<>160THEN955
950 POKE1093,88:POKE1094,228:POKE1097,85:POKE1102,228:GOTO965
955 IFPEEK(50003)<>1THEN990
960 POKE1093,49:POKE1094,230:POKE1097,46:POKE1102,230:GOTO965
962 POKE2099,141:POKE2100,20:POKE2101,3:POKE2103,8:POKE2104,141:POKE2105,21
963 POKE2106,3:POKE2115,145:POKE2117,52:POKE2118,234:POKE2121,49:POKE2122,141
964 POKE2123,20:POKE2124,3:POKE2126,234:POKE2127,141:POKE2128,21:POKE2129,3
965 SYSUU+48:REM DISABLE STOP KEY
970 GOSUB800:REM TITLE
980 GOTO300:REM MENU
990 PRINT"[147]THE PGM WILL NOT WORK ON THIS MACHINE!":END
1000 IFUZ=1THENSYSUP%:SYSUP%:UZ=0:REM ** PROGRAM STARTS HERE **
1001 PRINT"[147]";:RESTORE:IFPEEK(50003)=0THENPOKE53281,6:POKE53280,6
1630 UP=0:M=0:NN=O:UT$=" CONCENTRATION"
1650 RR$=""
1660 DD$=""
1670 ST$=""+LEFT$(DD$,20)+LEFT$(RR$,4)
1790 POKEUT,UU%
1810 GOSUB850:PRINT" HOW MANY PLAYERS ARE THERE ? ";
1815 UL=1:US$="12":GOSUB35:Z$=UR$
1820 IFZ$="2"THEN 1920
1900 PRINT:PRINT:PRINT"WHAT IS YOUR NAME ? ";
1910 UL=15:US$="":GOSUB35
1915 NA$=UR$:GOTO1960
1920 PRINT"WHO IS PLAYER #1 ? ";
1930 UL=15:US$="":GOSUB35
1935 NM$=UR$
1940 PRINT:PRINT:PRINT"WHO IS PLAYER #2 ? ";
1950 UL=15:US$="":GOSUB35
1955 NE$=UR$
1960 PRINT"GREAT! LET'S PLAY CONCENTRATION![146]"
1970 GOSUB835
1980 GOSUB850:REMPRINT"[145][145][145]"
1990 A$="[176][192][192][192][192][192][178][192][192][192][192][192][178][192][192][192][192][192][178][192][192][192][192][192][178][192][192][192][192][192][174]"
2000 B$="[221] [146][221] [146][221] [146][221] [146][221] [146][221]"
2010 BP$="[221] 1 [146][221] 2 [146][221] 3 [146][221] 4 [146][221] 5 [146][221]"
2020 BQ$="[221] 6 [146][221] 7 [146][221] 8 [146][221] 9 [146][221] 10 [146][221]"
2030 BR$="[221] 11 [146][221] 12 [146][221] 13 [146][221] 14 [146][221] 15 [146][221]"
2040 BS$="[221] 16 [146][221] 17 [146][221] 18 [146][221] 19 [146][221] 20 [146][221]"
2050 C$="[171][192][192][192][192][192][219][192][192][192][192][192][219][192][192][192][192][192][219][192][192][192][192][192][219][192][192][192][192][192][179]"
2060 D$="[173][192][192][192][192][192][177][192][192][192][192][192][177][192][192][192][192][192][177][192][192][192][192][192][177][192][192][192][192][192][189]"
2070 PRINTA$:PRINTB$:PRINTBP$:PRINTB$:PRINTC$:PRINTB$:PRINTBQ$:PRINTB$:PRINTC$
2080 PRINTB$:PRINTBR$:PRINTB$:PRINTC$
2090 PRINTB$:PRINTBS$:PRINTB$:PRINTD$
2100 REM SET DISPLAYS FOR GAME
2110 GOSUB875
2111 FORX=1TO10:READA$(X):NEXT
2120 RESTORE
2130 FORX=11TO20:READA$(X):NEXT
2140 FORZ=1TO20
2150 K$=A$(Z)
2160 L=INT(20*RND(TI)+1)
2170 A$(Z)=A$(L)
2180 A$(L)=K$
2190 NEXTZ
2200 DATA SAW,WAS,NIP,PIN,TIN,THIN,LAP,LIP,PAN,PAT
2210 RESTORE
2220 REM ONE OR TWO PLAYERS
2230 REM ONE PLAYER (4020)
2240 REM TWO PLAYERS (5000)
2250 PRINTLEFT$(UD$,24);" ";
2255 IF NA$=""THEN2820
2260 FORN=1TO800:NEXT
2270 PRINT""+LEFT$(DD$,20)+LEFT$(RR$,4);"FIRST CHOICE (1-20): ";
2280 UL=2:US$="0123456789":GOSUB35
2285 A=VAL(UR$)
2290 IFA<1OR A>20 THENPRINT "[145] [145][145][145]":GOTO2270
2300 PRINT"[145] "
2320 GOSUB 3470
2330 GOSUB 3540
2340 GOSUB 3760
2350 GOSUB3980
2370 PRINT""+LEFT$(DD$,20)+LEFT$(RR$,4);"SECOND CHOICE: ";
2380 UL=2:US$="0123456789":GOSUB35
2385 B=VAL(UR$)
2387 IFB<1OR B>20ORB=ATHENPRINT "[145] [145][145][145]":GOTO2370
2390 PRINT""+LEFT$(DD$,20)+LEFT$(RR$,4);" "
2400 GOSUB 4050
2410 GOSUB 4190
2420 GOSUB 4410
2430 GOSUB4120
2440 NN=NN+1
2450 IFA$(A)=A$(B)THEN A$(A)="":GOTO2470
2460 GOTO2480
2470 A$(B)=""
2480 IF A$(A)=A$(B)THENPRINT""+LEFT$(DD$,20)+LEFT$(RR$,4);"THAT'S A MATCH!"
2490 IF A$(A)=A$(B)THEN M=M+1
2500 IFM=10 THEN FORX=1TO500:NEXT:GOTO 2640
2510 FORX=1TO3000:NEXT
2520 IF A$(A)<>A$(B) THEN 2540
2530 GOTO 2580
2540 IFA<10THENGOSUB 4630
2550 IFA>9THENGOSUB 4680
2560 IFB<10THENGOSUB 4720
2570 IFB>9THENGOSUB 4760
2580 GOTO2260
2590 REM
2600 REM
2610 REM PATCH UP THE BOARD
2620 FORX=1TO2000:NEXT :REM PROGRAM
2630 GOTO2260 :REM PROGRAM
2640 GOSUB835:GOSUB850:PRINT" WELL DONE, "NA$"!"
2660 PRINT" YOU HAVE OPENED THE WHOLE BOARD."
2680 PRINT" YOU HAD ";NN;" TRIES TO MAKE 10 MATCHES."
2710 PRINT" CAN YOU BEAT";NN;"?"
2720 GOTO 835
2800 M=0:NN=0
2810 GOTO 1980
2820 REM TWO PLAYERS
2830 FORN=1TO1000:NEXT
2840 X=INT(2*RND(1))+1:T=X:GOTO2860
2850 X=T
2860 IF X=1THENPRINT" ";ST$;NM$;:GOTO2880
2870 PRINT" ";ST$;NE$;
2880 REMFORN=1TO750:NEXT
2890 PRINT", YOUR CHOICE (1-20): ";
2895 UL=2:US$="0123456789":GOSUB35:A=VAL(UR$)
2900 BLANK$="[145] "
2910 REM
2920 IFA<1OR A>20 THENPRINT BLANK$:PRINT"[145][145][145][145]":GOTO 2860
2930 PRINTBLANK$
2940 FORN=1TO800:NEXT
2950 GOSUB 3470
2960 GOSUB 3540
2970 GOSUB 3760
2980 GOSUB 3980
2990 PRINT""+LEFT$(DD$,20)+LEFT$(RR$,4);"SECOND CHOICE: ";
3000 UL=2:US$="0123456789":GOSUB35
3005 B=VAL(UR$)
3010 IF B <1ORB>20ORB=A THEN 2990
3020 PRINT BLANK$
3030 GOSUB4050
3040 GOSUB4190
3050 GOSUB4410
3060 GOSUB4120
3070 IFA$(A)<>A$(B)AND T=1 THEN T=2:GOTO3120
3080 IFA$(A)<>A$(B)AND T=2 THEN T=1
3090 IFA$(A)=A$(B)THENA$(A)="":GOTO3110
3100 GOTO3120
3110 A$(B)=""
3120 IFA$(A)=A$(B)THENPRINTST$:PRINTBLANK$:PRINTST$;"THAT'S A MATCH":GOTO3140
3130 GOTO3160
3140 FORX=1TO1500:NEXT
3150 PRINTBLANK$
3160 IFA$(A)=A$(B)ANDT=1THENM1=M1+1
3170 IFA$(A)=A$(B) ANDT=2THENM2=M2+1
3180 IFM1+M2=10THENGOSUB835:GOTO3270
3190 FORX=1TO3000:NEXT
3200 IFA$(A)<>A$(B) THEN 3220
3210 GOTO3260
3220 IFA<10THENGOSUB 4630
3230 IFA>9THEN GOSUB 4680
3240 IFB<10THENGOSUB 4720
3250 IFB>9THEN GOSUB 4760
3260 GOTO2850
3270 FORX=1TO500:NEXT
3280 GOSUB850
3290 FORX=1TO500:NEXT
3300 PRINT"FINAL SCORE[146]"
3320 PRINT"";NM$;" ";M1;" MATCHES"
3340 PRINT"";NE$;" ";M2;" MATCHES"
3360 PRINT"";
3370 IFM1>M2THENPRINT" THE WINNER IS ";NM$;"!":GOTO3400
3380 IFM1=M2THENPRINT" THIS GAME IS A STALEMATE!":GOTO3400
3390 PRINT" THE WINNER IS ";NE$;"!"
3400 GOSUB835
3460 RETURN
3470 REM ALIGNMENT OF VARIABLE STRINGS
3480 IFA$(A)=""AND NA$<>"" THEN 2270
3490 IFA$(A)=""ANDNA$=""THEN PRINTBLANK$:GOTO2860
3500 FOR I=1TO20
3510 IF I=A THEN G$=A$(I)
3520 NEXT I
3530 RETURN
3540 REM CURSOR VALUES
3550 IFA=1 THEN RR=1
3560 IFA=2 THEN RR=7
3570 IFA=3 THEN RR=13
3580 IFA=4 THEN RR=19
3590 IFA=5 THEN RR=25
3600 IFA=6 THEN RR=1
3610 IFA=7 THEN RR=7
3620 IFA=8 THEN RR=13
3630 IFA=9 THEN RR=19
3640 IFA=10THEN RR=25
3650 IFA=11THEN RR=1
3660 IFA=12THEN RR=7
3670 IFA=13THEN RR=13
3680 IFA=14THEN RR=19
3690 IFA=15THEN RR=25
3700 IFA=16THEN RR=1
3710 IFA=17THEN RR=7
3720 IFA=18THEN RR=13
3730 IFA=19THEN RR=19
3740 IFA=20THEN RR=25
3750 RETURN
3760 REM DD VALUES
3770 IFA=1 THEN DD=3
3780 IFA=2 THEN DD=3
3790 IFA=3 THEN DD=3
3800 IFA=4 THEN DD=3
3810 IFA=5 THEN DD=3
3820 IFA=6 THEN DD=7
3830 IFA=7 THEN DD=7
3840 IFA=8 THEN DD=7
3850 IFA=9 THEN DD=7
3860 IFA=10 THEN DD=7
3870 IFA=11 THEN DD=11
3880 IFA=12 THEN DD=11
3890 IFA=13 THEN DD=11
3900 IFA=14 THEN DD=11
3910 IFA=15 THEN DD=11
3920 IFA=16 THEN DD=15
3930 IFA=17 THEN DD=15
3940 IFA=18 THEN DD=15
3950 IFA=19 THEN DD=15
3960 IFA=20 THEN DD=15
3970 RETURN
3980 REM DISPLAY HIDDEN A$(A)
3990 PRINT""+LEFT$(DD$,DD)+LEFT$(RR$,RR+4);" "
4000 PRINTLEFT$(RR$,RR+4);" "
4010 PRINTLEFT$(RR$,RR+4);" "
4020 PRINT""+LEFT$(DD$,DD)+LEFT$(RR$,RR+4);" "
4030 PRINTLEFT$(RR$,RR+4);SPC(-(LEN(A$(A))<4));A$(A)
4040 RETURN
4050 REM ALIGNMENT OF VARIABLE STRINGS
4060 IFA$(B)=""ANDNA$<>""THEN 2370
4070 IFA$(B)=""ANDNA$=""THEN2990
4080 FOR I=1TO20
4090 IF I=B THEN G2$=A$(I)
4100 NEXT I
4110 RETURN
4120 REM DISPLAY HIDDEN WORD [A$(B)]
4130 PRINT""+LEFT$(DD$,D1)+LEFT$(RR$,R1+4);" "
4140 PRINTLEFT$(RR$,R1+4);" "
4150 PRINTLEFT$(RR$,R1+4);" "
4160 PRINT""+LEFT$(DD$,D1)+LEFT$(RR$,R1+4);" "
4170 PRINTLEFT$(RR$,R1+4);SPC(-(LEN(A$(B))<4));A$(B)
4180 RETURN
4190 REM CURSOR VALUES
4200 IFB=1 THEN R1=1
4210 IFB=2 THEN R1=7
4220 IFB=3 THEN R1=13
4230 IFB=4 THEN R1=19
4240 IFB=5 THEN R1=25
4250 IFB=6 THEN R1=1
4260 IFB=7 THEN R1=7
4270 IFB=8 THEN R1=13
4280 IFB=9 THEN R1=19
4290 IFB=10THEN R1=25
4300 IFB=11THEN R1=1
4310 IFB=12THEN R1=7
4320 IFB=13THEN R1=13
4330 IFB=14THEN R1=19
4340 IFB=15THEN R1=25
4350 IFB=16THEN R1=1
4360 IFB=17THEN R1=7
4370 IFB=18THEN R1=13
4380 IFB=19THEN R1=19
4390 IFB=20THEN R1=25
4400 RETURN
4410 REM D1 VALUES
4420 IFB=1 THEN D1=3
4430 IFB=2 THEN D1=3
4440 IFB=3 THEN D1=3
4450 IFB=4 THEN D1=3
4460 IFB=5 THEN D1=3
4470 IFB=6 THEN D1=7
4480 IFB=7 THEN D1=7
4490 IFB=8 THEN D1=7
4500 IFB=9 THEN D1=7
4510 IFB=10 THEN D1=7
4520 IFB=11 THEN D1=11
4530 IFB=12 THEN D1=11
4540 IFB=13 THEN D1=11
4550 IFB=14 THEN D1=11
4560 IFB=15 THEN D1=11
4570 IFB=16 THEN D1=15
4580 IFB=17 THEN D1=15
4590 IFB=18 THEN D1=15
4600 IFB=19 THEN D1=15
4610 IFB=20 THEN D1=15
4620 RETURN
4630 REM PATCH UP THE BOARD 0<A<10
4640 PRINT""+LEFT$(DD$,DD)+LEFT$(RR$,RR+4);" [146]"
4650 PRINTLEFT$(RR$,RR+4);" "A"[157] [146]"
4660 PRINTLEFT$(RR$,RR+4);" [146]"
4670 RETURN
4680 PRINT""+LEFT$(DD$,DD)+LEFT$(RR$,RR+4);" "
4690 PRINTLEFT$(RR$,RR+4);""A"[157] [146]"
4700 PRINTLEFT$(RR$,RR+4);" [146]"
4710 RETURN
4720 PRINT""+LEFT$(DD$,D1)+LEFT$(RR$,R1+4);" [146]"
4730 PRINTLEFT$(RR$,R1+4);" "B"[157] [146]"
4740 PRINTLEFT$(RR$,R1+4);" [146]"
4750 RETURN
4760 PRINT""+LEFT$(DD$,D1)+LEFT$(RR$,R1+4);" [146]"
4770 PRINTLEFT$(RR$,R1+4);""B"[157] [146]"
4780 PRINTLEFT$(RR$,R1+4);" [146]"
4790 RETURN
5050 GOTO 1790
6000 A$="123"
6010 PRINTSPC(10)"^ ^[145]"
6020 PRINTSPC(11-(LEN(A$)<4*1));A$