ZUSAMMENGESTELLT VON: P.SCHELLIN
MELANCHTHONSTR.4 GOERLITZ 8900
3D-MUEHLE = 0
SCHATZHOEHLE = 1
TRIPLETT = 2
MOND = 3
BILLARD = 4
MEMORY = 5
BOESE 6 = 6
OTHELLO = 7
MAUERSPIEL = 8
LAENDERRATEN = 9
PUZZLE = P
ENTEN = E
10 WINDOW:CLS
15 PRINT "********************************"
20 PRINT "S P I E L B O X Nr. 1 64KRAM"
25 PRINT:PRINT "********************************"
30 PRINT:PRINT "ZUSAMMENGESTELLT VON: P.SCHELLIN "
40 PRINT "MELANCHTHONSTR.4 GOERLITZ 8900"
100 PRINT:PRINT
105 PRINT "3D-MUEHLE = 0"
110 PRINT "SCHATZHOEHLE = 1"
120 PRINT "TRIPLETT = 2"
122 PRINT "MOND = 3"
124 PRINT "BILLARD = 4"
125 PRINT "MEMORY = 5"
126 PRINT "BOESE 6 = 6"
128 PRINT "OTHELLO = 7":PRINT "MAUERSPIEL = 8"
129 PRINT "LAENDERRATEN = 9":PRINT "PUZZLE = P":PRINT "ENTEN = E"
130 PRINT:PRINT:PRINT "BITTE WAEHLEN:"
132 PRINT "********************************"
135 A$=INKEY$:IF A$=""THEN 135
136 IF A$="5"THEN RUN 5000
137 IF A$="4"THEN RUN 7000
138 IF A$="3"THEN RUN 8000
139 IF A$="6"THEN RUN 6000
140 IF A$="1"THEN RUN 9000
145 IF A$="2"THEN RUN 10000
150 IF A$="7"THEN RUN 4000
155 IF A$="0"THEN RUN 3000
160 IF A$="8"THEN RUN 2000
165 IF A$="9"THEN RUN 1000
170 IF A$="P"THEN RUN 500
175 IF A$="E"THEN RUN 15000
500 REM
501 WINDOW:CLS
502 REM
503 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT " P U Z Z L E"
504 PRINT " ***********"
505 PRINT:PRINT:PRINT:PRINT:PRINT
506 PRINT "ZUM PROGRAMMSTART BELIEBIGE"
507 PRINT "TASTE DRUECKEN !":I=0
508 I=I-1:A=RND(I)
509 IF INKEY$="" THEN GOTO 508:ELSE CLS:PRINT "MOMENT"
510 DIM GF(6,6):DEF FN ZU(I)=INT(RND(I)*5+1):AN=0
511 REM
512 FOR I=1 TO 5
513 FOR J=1 TO 5
514 GR=J+192:GOSUB 564
515 NEXT J,I
516 REM
517 J=1
518 FOR I=3 TO 19 STEP 4
519 PRINT AT(I,9);J-1:J=J+1
520 NEXT I
521 FOR I=12 TO 28 STEP 4
522 PRINT AT(23,I);J-1:LET J=J+1
523 NEXT I
524 WINDOW 0,9,0,9
525 PRINT "VERSCHIEBE";:PRINT "SOLANGE,":PRINT "BIS DIE":PRINT "GRAFIKZ."
526 PRINT "ZEILEN-":PRINT "WEISE GE-":PRINT "ORDNET":PRINT "SIND!"
527 WINDOW 10,31,0,9
528 REM
529 FOR Z=1 TO 5
530 P=Z*4-2
531 FOR I=0 TO 3
532 J=1
533 FOR S=12 TO 28 STEP 4
534 MU=GF(Z,J)
535 PRINT AT(P+I,S);CHR$(MU)+CHR$(MU)+CHR$(MU)+CHR$(MU)
536 J=J+1
537 NEXT S,I,Z
538 REM
539 FOR I=1 TO 5
540 FOR J=2 TO 5
541 IF GF(I,1)<>GF(I,J)THEN AN=AN+1:GOTO 548
542 NEXT J,I
543 WINDOW 0,31,0,9:CLS
544 PRINT "GESCHAFFT":PRINT "IN";AN:PRINT "SCHRITTEN!"
545 PRINT:PRINT "NOCH":PRINT "EINMAL":INPUT "(J/N)?";A$
546 WINDOW:CLS
547 IF A$="J"THEN CLEAR:GOTO 510:ELSE RUN
548 PRINT "ZEILEN-":PRINT "ODER":PRINT "SPALTEN-":PRINT "NUMMER"
549 NR$=INKEY$:IF NR$=""THEN 549
550 PRINT:PRINT NR$
551 NR=VAL(NR$)+1
552 IF NR<1 OR NR>10 THEN CLS:GOTO 548
553 PRINT:PRINT "VERSCHIE-"
554 PRINT "BUNG MIT":PRINT "CUROSRT."
555 IF NR>5 THEN NR=NR-5:GOTO 560
556 LET KU$=INKEY$
557 IF KU$=CHR$(09)THEN CLS:GOSUB 569:GOTO 529
558 IF KU$=CHR$(08)THEN CLS:GOSUB 575:GOTO 529
559 GOTO 556
560 KU$=INKEY$
561 IF KU$=CHR$(10)THEN CLS:GOSUB 581:GOTO 529
562 IF KU$=CHR$(11)THEN CLS:GOSUB 587:GOTO 529
563 GOTO 560
564 REM
565 Z=FN ZU(1):S=FN ZU(1)
566 IF GF(Z,S)<>0 THEN GOTO 565
567 GF(Z,S)=GR
568 RETURN
569 REM
570 FOR I=6 TO 2 STEP-1
571 GF(NR,I)=GF(NR,I-1)
572 NEXT I
573 GF(NR,1)=GF(NR,6)
574 RETURN
575 REM
576 GF(NR,6)=GF(NR,1)
577 FOR I=1 TO 5
578 GF(NR,I)=GF(NR,I+1)
579 NEXT I
580 RETURN
581 REM
582 FOR I=6 TO 2 STEP-1
583 GF(I,NR)=GF(I-1,NR)
584 NEXT I
585 GF(1,NR)=GF(6,NR)
586 RETURN
587 REM
588 GF(6,NR)=GF(1,NR)
589 FOR I=1 TO 5
590 GF(I,NR)=GF(I+1,NR)
591 NEXT I
592 RETURN
1000 REM BEARBEITET FUER Z 1013 D.SCHROETER;E.-REICHARDT-STR.3
1002 REM NORDHAUSEN;5500
1004 REM STAEDTE-RATEN
1006 WINDOW:CLS:GOSUB 1070
1008 CLS:WINDOW 12,30,15,31:CLS
1010 BEEP
1012 K=0
1014 A=(INT(84*RND(1)))+1
1016 RESTORE
1018 FOR I=1 TO A
1020 READ X$
1022 REM PRINTAT(15,1);X$
1024 REM PRINT AT(17,1);LEN(X$)
1026 FOR C=8 TO LEN(X$)+7:PRINT AT(3,C);"":PRINT AT(2,C);""
1028 PRINT AT(4,C);"":NEXT
1030 DATA IRAN,IRAK,LAOS,MALI,PERU,KUBA,POLEN,KOREA,JAPAN,BURMA,NEPAL
1032 DATA PAPUA,NIGER,SUDAN,CHILE,ISLAND,INDIEN,LIBYEN,IRLAND,MALAYA
1034 DATA ANGOLA,MEXIKO,KANADA,SYRIEN,TSCHAD,PANAMA,BELGIEN,ENGLAND
1036 DATA VIETNAM,MAROKKO,SPANIEN,ITALIEN,SARAWAK,TUERKEI,SENEGAL
1038 DATA NAMIBIA,URUGUAY,GUAYANA,SURINAME,SCHWEIZ,SCHWEDEN,NORWEGEN
1040 DATA FINNLAND,PAKISTAN,ALGERIEN,PORTUGAL,ALBANIEN,TUNESIEN
1042 DATA HONGKONG,THAILAND,BOLIVIEN,PARAGUAY,HONDURAS,PAKISTAN
1044 DATA GROENLAND,KAMPUCHEA,VENEZUELA,KOLUMBIEN,NIKARAGUA,GUATEMALA
1046 DATA KOSTARIKA,LUXEMBURG,BULGARIEN,RUMAENIEN,DAENEMARK,NEUGUINEA
1048 DATA FRANKREICH,SUEDAFRIKA,MOCAMBIQUE,AETHIOPIEN,OESTEREICH
1050 DATA BRASILIEN,ARGENTINIEN,NEUSEELAND,ELSALVADOR,PHILIPPINEN
1052 DATA NIEDERLANDE,MAURETANIEN,SOWJETUNION,AFGHANISTAN,JUGOSLAWIEN
1054 DATA GRIECHENLAND,SAUDIARABIEN,LIECHTENSTEIN
1056 NEXT
1058 PRINT AT(10,18);"BUCHSTABEN:"
1060 PRINT AT(10,29);C-8
1062 PRINT AT(7,7);""
1064 PRINT AT(8,3);"A-Z "
1066 PRINT AT(9,7);""
1068 WINDOW 8,8,8,11:CLS:GOTO 1106
1070 BEEP:CLS
1072 PRINT AT(5,7);" "
1074 PRINT AT(6,7);" "
1076 PRINT AT(7,7);" "
1078 PRINT AT(8,7);" "
1080 PRINT AT(9,7);" "
1082 PRINT AT(10,7);" "
1084 PRINT AT(11,7);" "
1086 PRINT AT(12,7);" "
1088 PRINT AT(13,7);" "
1090 PRINT AT(14,7);" "
1092 PRINT AT(15,7);" "
1094 PRINT AT(16,7);" "
1096 PRINT AT(21,10);"LAENDER RATEN!":PRINT AT(0,0);" "
1098 FOR I=1 TO 10:BEEP:NEXT I
1100 FOR I=1 TO 14:BEEP:NEXT I
1102 FOR I=1 TO 9:BEEP:NEXT I
1104 PAUSE 25:RETURN
1106 C=C-1
1108 N=0
1110 WINDOW 8,8,8,11:CLS:BEEP
1112 INPUT B$
1114 BEEP
1116 FOR T=1 TO C
1118 IF B$=MID$(X$,T,1)THEN PRINT AT(3,T+7);B$ :GOSUB 1140: N=N+1
1120 NEXT T
1122 IF N<C-7 THEN GOTO 1126
1124 IF N=C-7 THEN 1136
1126 IF B$<>MID$(X$,1,1)AND B$<>MID$(X$,2,1)THEN GOTO 1128:ELSE 1110
1128 IF B$<>MID$(X$,3,1)AND B$<>MID$(X$,4,1)THEN GOTO 1130:ELSE 1110
1130 IF B$<>MID$(X$,5,1)AND B$<>MID$(X$,6,1)THEN GOTO 1132:ELSE 1110
1132 IF B$<>MID$(X$,7,1)AND B$<>MID$(X$,8,1)THEN GOTO 1134:ELSE 1110
1134 IF B$<>MID$(X$,9,1)AND B$<>MID$(X$,10,1)THEN GOTO 1150:ELSE 1110
1136 PRINT AT(3,24);"SEHR GUT":BEEP: PAUSE 30:RUN
1138 END
1140 PRINT AT(3,24);"RICHTIG": FOR A=1 TO 2:BEEP
1142 BEEP
1144 NEXT A:BEEP
1146 WINDOW 3,3,24,31:CLS
1148 RETURN
1150 K=K+1
1152 PRINT AT(8+K,8);B$
1154 PRINT AT(3,24);"FALSCH"
1156 BEEP:
1158 BEEP
1160 BEEP
1162 BEEP
1164 BEEP
1166 WINDOW 3,3,24,31:CLS
1168 GOSUB 1174
1170 IF K=9 THEN PRINT AT(6,8); X$:PAUSE 30:RUN
1172 GOTO 1110
1174 IF K=1 THEN 1196
1176 IF K=2 THEN 1218
1178 IF K=3 THEN 1222
1180 IF K=4 THEN 1238
1182 IF K=5 THEN 1252
1184 IF K=6 THEN 1266
1186 IF K=7 THEN 1284
1188 IF K=8 THEN 1296
1190 IF K=9 THEN 1328
1192 IF K=10 THEN 1350
1194 RETURN
1196 PRINT AT(30,29);" "
1198 PRINT AT(29,29);" "
1200 PRINT AT(28,29);""
1202 PRINT AT(27,29);""
1204 PRINT AT(26,29);""
1206 PRINT AT(25,29);""
1208 PRINT AT(24,29);""
1210 PRINT AT(23,29);""
1212 PRINT AT(22,29);" "
1214 PRINT AT(21,29);" "
1216 GOTO 1110
1218 PRINT AT(22,23);""
1220 GOTO 1110
1222 WINDOW 17,21,29,31:CLS:PRINT AT(17,29); " "
1224 PRINT AT(18,29); ""
1226 PRINT AT(19,29); " "
1228 PRINT AT(20,29); " "
1230 PRINT AT(21,29); " "
1232 PRINT AT(25,1);"JETZT ABER "
1234 PRINT AT(26,1);"ANSTRENGEN! "
1236 GOTO 1110
1238 WINDOW 17,21,27,31:CLS
1240 PRINT AT(17,27); " "
1242 PRINT AT(18,27); ""
1244 PRINT AT(19,27); " "
1246 PRINT AT(20,27); " "
1248 PRINT AT(21,27); " "
1250 GOTO 1110
1252 WINDOW 17,21,24,31:CLS
1254 PRINT AT(17,25); " "
1256 PRINT AT(18,25); " "
1258 PRINT AT(19,25); " "
1260 PRINT AT(20,25); " "
1262 PRINT AT(21,25); " "
1264 GOTO 1110
1266 WINDOW 17,21,23,29:CLS
1268 PRINT AT(17,23); " "
1270 PRINT AT(18,23); ""
1272 PRINT AT(19,23); " "
1274 PRINT AT(20,23); " "
1276 PRINT AT(21,23); " "
1278 PRINT AT(28,1);"ERST DENKEN,"
1280 PRINT AT(29,1);"DANN TIPPEN!"
1282 GOTO 1110
1284 WINDOW 17,21,20,27:CLS
1286 PRINT AT(18,20); " "
1288 PRINT AT(19,20); " "
1290 PRINT AT(20,20); " "
1292 PRINT AT(21,20); " "
1294 GOTO 1110
1296 WINDOW 17,21,25,31:CLS
1298 PRINT AT(20,27); ""
1300 PRINT AT(21,27); "":PAUSE 2
1302 WINDOW 17,21,25,31:CLS
1304 PRINT AT(20,26); ""
1306 PRINT AT(21,26); "":PAUSE 2
1308 WINDOW 17,21,25,31:CLS
1310 PRINT AT(20,24);""
1312 PRINT AT(21,24); ""
1314 WINDOW 17,21,16,23:CLS
1316 PRINT AT(17,20); " "
1318 PRINT AT(18,20); ""
1320 PRINT AT(19,20); ""
1322 PRINT AT(20,20); " "
1324 PRINT AT(21,20); " "
1326 GOTO 1110
1328 WINDOW 17,21,20,23:CLS
1330 WINDOW 18,25,20,23:CLS
1332 PRINT AT(19,21); ""
1334 PRINT AT(20,21); " "
1336 PRINT AT(21,21); ""
1338 PRINT AT(22,21); ""
1340 PRINT AT(23,21); ""
1342 PRINT AT(24,21); " ":PRINT AT(18,20);" ":PAUSE 5
1344 WINDOW 18,30,17,23:CLS
1346 PRINT AT(28,17); " "
1348 PRINT AT(29,17); " "
1350 PRINT AT(30,17); " "
1352 PRINT AT(18,17);" ":PAUSE 15:WINDOW 18,30,17,23:CLS:BEEP
1354 GOTO 1170
2000 WINDOW:CLS:PRINT AT (10,10); "M A U E R S P I E L":PAUSE 10:BEEP:CLS
2002 FOR I=1 TO 8 :PRINT " ":NEXT
2004 INPUT "WIEVIEL VERSUCHE?";X
2006 FOR I=1 TO 8:PRINT " ":NEXT
2008 INPUT "SCHWIERIGKEITSSTUFE (1,2,3)?";Z
2012 PAUSE 20
2014 F=255:G=136:H=248:K=141:L=251:M=180:N=181:P=182:Q=0:D=-1
2016 FOR I=-5120 TO -4096:POKE I,F:NEXT
2018 POKE -5120,178:POKE -4128,177:POKE -4097,176:POKE -5089,179
2020 FOR I=-5119 TO -5090:POKE I,L:NEXT
2022 FOR I=-5088 TO -4160 STEP 32:POKE I,N:NEXT
2024 FOR I=-4127 TO -4098:POKE I,P:NEXT
2026 FOR I=-5057 TO -4129 STEP 32:POKE I,M:NEXT
2028 FOR J=128-Z*64 TO 256-Z*64 STEP 64
2030 FOR I=J-4927 TO J-4899 STEP 2:POKE I,G:NEXT I
2032 FOR I=J-4926 TO J-4898 STEP 2:POKE I,H:NEXT I
2034 FOR I=J-4895 TO J-4867 STEP 2:POKE I,H:NEXT I
2036 FOR I=J-4894 TO J-4866 STEP 2:POKE I,G:NEXT I
2038 NEXT J:W=256:S=(M-W)*W+G:T=(H-W)*W+G:U=(H-W)*W+N
2040 FOR I=1 TO X
2042 A=RND(1):A=-INT(A*29)+4127:POKE -A,K:BEEP
2044 FOR J=-4127 TO -4098:POKE J,P:NEXT J:PAUSE 5
2046 B=4111:POKE -B,32:POKE -B-1,142:POKE -B+1,191:PAUSE 5
2048 C=RND(1)*2:ON C GOTO 2098
2050 C=-A-32
2052 IF (PEEK(C) AND PEEK(C+1) AND PEEK(1-A))=F THEN 2072
2054 IF PEEK(C) = L THEN 2126
2056 IF DEEK(C)=S THEN POKE C,F:Q=Q+1:GOTO 2186
2058 IF PEEK(-A+1)=M THEN 2098
2060 IF DEEK(C)=T THEN DOKE C,D:Q=Q+1:GOTO 2126
2062 IF DEEK(C-1)=T THEN DOKE C-1,D:Q=Q+1:GOTO 2126
2064 IF DEEK(1-A)=T THEN DOKE 1-A,D:Q=Q+1:GOTO 2098
2066 IF DEEK(C+1)=T THEN DOKE C+1,D:Q=Q+1:GOTO 2160
2068 IF DEEK(C+1)=S THEN POKE C+1,F:Q=Q+1:GOTO 2160
2070 IF DEEK(1-A)=S THEN POKE 1-A,F:Q=Q+1:GOTO 2098
2072 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2074 IF Z=1 THEN GOSUB 2226
2076 POKE -A,F:A=A+31:FOR Y=1 TO Z:NEXT Y:POKE -A,K:GOTO 2050
2078 C=-A-32:R=PEEK(C)
2080 IF R=F THEN 2092
2082 IF DEEK(C)=S THEN POKE C,F:Q=Q+1:GOTO 2160
2084 IF DEEK(C-1)=U THEN POKE C,F:Q=Q+1:GOTO 2160
2086 IF R=L THEN 2160
2088 IF R=G THEN DOKE C,D:Q=Q+1:GOTO 2160
2090 IF R=H THEN DOKE C-1,D:Q=Q+1:GOTO 2160
2092 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2094 IF Z=1 THEN GOSUB 2226
2096 POKE -A,F:A=A+32:FOR Y=1 TO Z:NEXT Y :POKE -A,K:GOTO 2078
2098 C=-A-33
2100 IF PEEK(C+1)=F AND PEEK(C)=F AND PEEK(-1-A)=F THEN 2120
2102 IF PEEK(C+1)=L THEN 2186
2104 IF DEEK(C)=U THEN POKE C+1,F:Q=Q+1:GOTO 2126
2106 IF PEEK(-A-1)=N THEN 2050
2108 IF DEEK(C+1)=T THEN DOKE C+1,D:Q=Q+1:GOTO 2186
2110 IF DEEK(C)=T THEN DOKE C,D:Q=Q+1:GOTO 2186
2112 IF DEEK(-A-2)=T THEN DOKE -A-2,D:Q=Q+1:GOTO 2050
2114 IF DEEK(C-1)=T THEN DOKE C-1,D:Q=Q+1:GOTO 2160
2116 IF DEEK(C-1)=U THEN POKE C,F:Q=Q+1:GOTO 2160
2118 IF DEEK(-A-2)=U THEN POKE -A-1,F:Q=Q+1:GOTO 2050
2120 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2122 IF Z=1 THEN GOSUB 2226
2124 POKE -A,F:A=A+33:FOR Y=1 TO Z:NEXT Y: POKE -A,K:GOTO 2098
2126 C=-A+32:IF DEEK(C)=S THEN POKE C,F:Q=Q+1:GOTO 2098
2128 IF PEEK(C)=F AND PEEK(C+1)=F AND PEEK(-A+1)=F THEN 2154
2130 IF PEEK(1-A)=M THEN 2186
2132 R=PEEK(C):IF PEEK(C+1)=142 THEN 2098
2134 IF R=32 THEN 2050
2136 IF R=191 THEN 2220
2138 IF R=142 THEN 2078
2140 IF PEEK(C)=P THEN 2220
2142 IF DEEK(C)=T THEN DOKE C,D:Q=Q+1:GOTO 2050
2144 IF DEEK(C-1)=T THEN DOKE C-1,D:Q=Q+1:GOTO 2050
2146 IF DEEK(1-A)=T THEN DOKE 1-A,D:Q=Q+1:GOTO 2186
2148 IF DEEK(C+1)=T THEN DOKE C+1,D:Q=Q+1:GOTO 2078
2150 IF DEEK(C+1)=S THEN POKE C+1,F:Q=Q+1:GOTO 2078
2152 IF DEEK(1-A)=S THEN POKE 1-A,F:Q=Q+1:GOTO 2186
2154 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2156 IF Z=1 THEN GOSUB 2226
2158 POKE -A,F:A=A-33:FOR Y=1 TO Z:NEXT Y:POKE -A,K:GOTO 2126
2160 C=32-A:R=PEEK(C)
2162 IF R=F THEN 2180
2164 IF R=142 THEN 2098
2166 IF R=32 THEN 2078
2168 IF R=191 THEN 2050
2170 IF DEEK(C)=S THEN POKE C,F:Q=Q+1:GOTO 2078
2172 IF DEEK(C-1)=U THEN POKE C,F:Q=Q+1:GOTO 2078
2174 IF R=P THEN 2220
2176 IF R=G THEN DOKE C,D:Q=Q+1:GOTO 2078
2178 IF R=H THEN DOKE C-1,D:Q=Q+1:GOTO 2078
2180 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2182 IF Z=1 THEN GOSUB 2226
2184 POKE -A,F:A=A-32:FOR Y= 1 TO Z:NEXT Y:POKE -A,K:GOTO 2160
2186 C=32-A:IF DEEK(C-1)=U THEN POKE C,F:Q=Q+1:GOTO 2050
2188 IF PEEK(-A-1)=N THEN 2126
2190 IF PEEK(-A-1)=F AND PEEK(C)=F AND PEEK(C-1)=F THEN 2214
2192 R=PEEK(C):IF PEEK(C-1)=191 THEN 2050
2194 IF R=32 THEN 2098
2196 IF R=191 THEN 2078
2198 IF R=142 THEN 2220
2200 IF PEEK(C)=P THEN 2220
2202 IF DEEK(C)=T THEN DOKE C,F:Q=Q+1:GOTO 2098
2204 IF DEEK(C-1)=T THEN DOKE C-1,D:Q=Q+1:GOTO 2098
2206 IF DEEK(-A-2)=T THEN DOKE -A-2,D:Q=Q+1:GOTO 2126
2208 IF DEEK(C-2)=T THEN DOKE C-2,D:Q=Q+1:GOTO 2078
2210 IF DEEK(C-2)=U THEN POKE C-1,F:Q=Q+1:GOTO 2078
2212 IF DEEK(-A-2)=U THEN POKE -A-1,F:Q=Q+1:GOTO 2126
2214 GOSUB 2226:IF Z<3 THEN GOSUB 2226
2216 IF Z=1 THEN GOSUB 2226
2218 POKE -A,F:A=A-31:FOR Y=1 TO Z:NEXT Y:POKE -A,K:GOTO 2186
2220 POKE -A,F:BEEP: PAUSE 10:IF Q=117 THEN X=X-I+1:GOTO 2016:ELSE NEXT I
2222 BEEP:PRINT AT (15,5);"ANZAHL DER STEINE",Q
2224 PAUSE 50:RUN
2226 IF INKEY$<>CHR$(8)THEN 2234
2228 POKE 19,0
2230 B=B+1:IF B>4126 THEN B=B-1:GOTO 2242
2232 POKE -B+2,182:POKE -B+1,191:POKE-B,32:POKE -B-1,142:GOTO 2242
2234 IF INKEY$<>CHR$(9)THEN 2242
2236 POKE 19,0
2238 B=B-1:IF B<4099 THEN B=B+1:GOTO 2242
2240 POKE -B-2,182:POKE -B-1,142:POKE -B,32:POKE -B+1,191:GOTO 2242
2242 RETURN
3000 WINDOW:CLS
3002 PRINT STRING$(32,""):PRINT
3004 L$="=== 3D - NOUGHT AND CROSSES ===":PRINT L$:PRINT
3006 PRINT SPC(12);"3D-Muehle":PRINT
3008 PRINT STRING$(32,"")
3010 PRINT AT(9,0);" "
3012 PAUSE 10
3014 A=10:B=27:F=0
3016 PRINT AT(A,B);" ":X=A+1:Y=B+1
3018 PRINT AT(X,Y);" ":X=A+2
3020 PRINT AT(X,Y);" ":X=A+3
3022 PRINT AT(X,Y);" ":X=A+4
3024 PRINT AT(X,Y);" ":X=A+5:IF F=1 THEN RETURN
3026 PRINT AT(X,Y);" ":X=A+6
3028 PRINT AT(X,Y);" ":X=A+7
3030 PRINT AT(X,Y);" "
3032 PRINT AT(A,B);" ":X=A+1
3034 PRINT AT(X,B);" ":X=A+2:Y=B+1
3036 PRINT AT(X,Y);" ":X=A+3
3038 PRINT AT(X,Y);" ":X=A+4
3040 PRINT AT(X,Y);" ":X=A+5:IF F=2 THEN RETURN
3042 PRINT AT(X,B);" ":X=A+6
3044 PRINT AT(X,B);" ":X=A+7
3046 PRINT AT(X,B);" "
3048 F=1:B=B-1
3050 GOSUB 3016
3052 Z=B+2:PRINT AT(X,Z);" ":X=A+6
3054 PRINT AT(X,Y);" ":X=A+7
3056 PRINT AT(X,Y);" ":F=2
3058 GOSUB 3032
3060 PRINT AT(X,Y);" ":X=A+6
3062 PRINT AT(X,Y);" ":X=A+7
3064 PRINT AT(X,Y);" ":F=0
3066 B=B-1
3068 IF B<0 THEN 3080:ELSE 3016
3070 FOR V=0 TO 7
3072 FOR W=0 TO 3
3074 L=10+V:M=B+W:PRINT AT(L,M);" "
3076 NEXT W,V
3078 RETURN
3080 WINDOW 10,17,0,5:CLS:PRINT AT(10,0);" "
3082 PRINT AT(20,0);STRING$(32,"=")
3084 PRINT AT(23,2);"Wuenschen Sie eine Erklaerung?"
3086 FOR A=1 TO 20
3088 IF A/2=INT(A/2)THEN PRINT AT(25,12);"> / <":PAUSE 5
3090 PRINT AT(25,12);">J/N<"
3092 Z$=INKEY$
3094 IF Z$="J"THEN 3106
3096 IF Z$="N"THEN 3144
3098 NEXT
3100 PRINT AT(25,12);STRING$(5," ")
3102 PRINT AT(23,2);STRING$(30," ")
3104 GOTO 3014
3106 WINDOW:CLS:WIDTH 0
3108 PRINT L$
3110 PRINT "Sie sehen gleich einen Wuerfel"
3112 PRINT "mit 27 moeglichen Positionen"
3114 PRINT "fuer X oder O."
3116 PRINT "Das Ziel ist,moeglichst viele"
3118 PRINT "vollstaendige Dreierreihen zu"
3120 PRINT "besetzen.":PAUSE 30
3122 PRINT "Der erste Spieler() hat den"
3124 PRINT "Vorteil am Ende ein Feld mehr"
3126 PRINT "besetzen zu koennen.Als Aus-"
3128 PRINT "gleich darf erst der zweite"
3130 PRINT "Spieler() das zentrale Feld B5"
3132 PRINT "besetzen.":PAUSE 30
3134 PRINT:PRINT "Die Zuege werden durch Eingabe"
3136 PRINT "eines Buchstabens sowie einer"
3138 PRINT "Zahl eingegeben .":PAUSE 30
3140 PRINT "Bei Eingabe von R beginnt das":PRINT "Spiel von Neuem ."
3142 PAUSE 200
3144 WINDOW
3146 WIDTH 255:CLS:PRINT "Darf ich um die Namen der":PRINT
3148 PRINT "Spieler bitten!"
3150 PRINT STRING$(32,"-"):PRINT:PRINT:PRINT
3152 INPUT "Wer spielt mit ? ===>";M$
3154 PRINT:PRINT:PRINT
3156 INPUT "Wer spielt mit ? ===>";N$
3158 DIM A(30),Z(30),C(18),R(18),X(30),Y(30)
3160 ZZ$="":ZY$=""
3162 X$="020814020814020814061218061218061218101622101622101622"
3164 Y$="060606121212181818040404101010161616020202080808141414"
3166 FOR Z=1 TO 27
3168 X(Z)=VAL(MID$(X$,2*Z-1,2))
3170 Y(Z)=VAL(MID$(Y$,2*Z-1,2))
3172 NEXT
3174 C$="020405050505060810111111111213131313"
3176 R$="010301020304030109010809100903060912"
3178 FOR Z=1 TO 18
3180 C(Z)=VAL(MID$(C$,2*Z-1,2))
3182 R(Z)=VAL(MID$(R$,2*Z-1,2))
3184 NEXT
3186 FOR Z=1 TO 27:A(Z)=0:NEXT
3188 S=1:N=1
3190 CLS
3192 GOSUB 3278
3194 IF S=1 THEN PRINT AT(23,0);ZZ$,M$," Nach"
3196 IF S=-1 THEN PRINT AT(23,0);ZY$,N$," Nach"
3198 PRINT AT(24,0);"------"
3200 PRINT AT(25,0);"===>"
3202 PRINT AT(22,10);STRING$(20," ")
3204 WINDOW 25,25,10,30
3206 INPUT "";Z$:WINDOW:PRINT AT(0,0);" "
3208 IF N=28 THEN PRINT AT(22,10);"Game over":PAUSE 50:GOTO 3320
3210 IF LEFT$(Z$,1)="R"THEN 3320
3212 IF LEFT$(Z$,1)="A"THEN Z=0
3214 IF LEFT$(Z$,1)="B"THEN Z=9
3216 IF LEFT$(Z$,1)="C"THEN Z=18
3218 Z=Z+VAL(RIGHT$(Z$,1))
3220 IF A(Z)<>0 THEN 3238
3222 IF N=1 AND Z=14 THEN 3238
3224 A(Z)=S
3226 N=N+1
3228 IF S=1 THEN PRINT AT(Y(Z)+1,X(Z));ZZ$
3230 IF S=-1 THEN PRINT AT(Y(Z)+1,X(Z));ZY$
3232 GOSUB 3242
3234 S=-S
3236 GOTO 3194
3238 PRINT AT(22,10);"UNGUELTIG,WIEDERHOLEN!"
3240 GOTO 3204
3242 SX=0
3244 SO=0
3246 FOR Z=1 TO 13
3248 W=A(14-Z)+A(14)+A(14+Z)
3250 IF ABS(W)=3 THEN GOSUB 3272
3252 NEXT
3254 FOR Z=1 TO 18
3256 W=A(C(Z)-R(Z))+A(C(Z))+A(C(Z)+R(Z))
3258 IF ABS(W)=3 THEN GOSUB 3272
3260 V=28-C(Z)
3262 W=A(V-R(Z))+A(V)+A(V+R(Z))
3264 IF ABS(W)=3 THEN GOSUB 3272
3266 NEXT
3268 PRINT AT(29,0);"Punkte: ",LEFT$(M$,10),":",SX," ",LEFT$(N$,10),":",SO
3270 RETURN
3272 IF W=3 THEN SX=SX+1
3274 IF W=-3 THEN SO=SO+1
3276 RETURN
3278 PRINT AT(0,6);"3D-NOUGHT AND CROSSES"
3280 PRINT AT(1,0);STRING$(32,"=")
3282 PRINT AT(3,10);"123"
3284 PRINT AT(4,7);" "
3286 PRINT AT(5,6);"1 2 3 "
3288 PRINT AT(6,3);" "
3290 PRINT AT(7,2);"123 "
3292 PRINT AT(8,2);" "
3294 PRINT AT(9,2);" 4 5 6 "
3296 PRINT AT(10,2);" "
3298 PRINT AT(11,2);" 4 5 6 "
3300 PRINT AT(12,2);" "
3302 PRINT AT(13,2);"4 5 6 "
3304 PRINT AT(14,2);" "
3306 PRINT AT(15,2);" 789 C"
3308 PRINT AT(16,2);" "
3310 PRINT AT(17,2);" 7 8 9 B"
3312 PRINT AT(18,2);" "
3314 PRINT AT(19,2);"789 A"
3316 PRINT AT(21,0);STRING$(32,"=")
3318 RETURN
3320 WINDOW:CLS
3322 PRINT AT(10,5);"Noch einmal ? (J/N)":PRINT
3324 S$=INKEY$
3326 IF S$="J"THEN RUN
3328 IF S$="N"THEN 3330 ELSE 3324
3330 RUN
4000 CLS
4001 PRINT:PRINT:PRINT " O T H E L L O "
4002 PRINT:PRINT:PRINT "BRAUCHST DU DIE SPIELREGELN(J/N)"
4003 X$=INKEY$:IF X$=""THEN 4003
4004 IF X$="J"THEN GOSUB 4225:ELSE PRINT "ALSO EIN PROFI..."
4005 DIM A(10,10),I4(8),J4(8),C$(8),D$(3)
4006 F2=0:RESTORE 4016
4007 S2=2
4008 B=-1
4009 W=1
4010 D$(B+2)=CHR$(201)
4011 D$(0+2)="."
4012 D$(W+2)=CHR$(138)
4013 FOR K=1 TO 8
4014 READ I4(K)
4015 NEXT
4016 DATA 0,-1,-1,-1,0,1,1,1
4017 FOR K=1 TO 8
4018 READ J4(K)
4019 NEXT
4020 DATA 1,1,0,-1,-1,-1,0,1
4021 FOR K=1 TO 8
4022 READ C$(K)
4023 NEXT
4024 DATA A,B,C,D,E,F,G,H
4025 FOR I=1 TO 10
4026 FOR J=1 TO 10
4027 A(I,J)=0
4028 NEXT J
4029 NEXT I
4030 A(5,5)=W
4031 A(6,6)=W
4032 A(5,6)=B
4033 A(6,5)=B
4034 C1=2
4035 H1=2
4036 N1=4
4037 Z=0
4038 PRINT
4039 PRINT "WILLST DU MIT DEN WEISSEN ODER"
4040 PRINT:PRINT "MIT DEN SCHWARZEN STEINEN"
4041 PRINT:PRINT "SPIELEN ? (W/S)"
4042 C=W
4043 H=B
4044 INPUT X$
4045 IF X$="W"THEN 4049
4046 IF X$<>"S"THEN 4044
4047 C=B
4048 H=W
4049 PRINT
4050 PRINT "WILLST DU ANFANGEN?(J ODER N)";
4051 PAUSE 5
4052 INPUT X$
4053 IF X$="N"THEN PRINT:PRINT "MOMENT BITTE...":GOTO 4059
4054 IF X$<>"J"THEN 4052
4055 GOSUB 4210
4056 GOTO 4108
4057 PRINT:PRINT "ICH DENKE...";:IF F2=0 THEN 4059
4058 INPUT X$
4059 B1=-1
4060 I3=0
4061 J3=0
4062 T1=C
4063 T2=H
4064 FOR I=2 TO 9
4065 FOR J=2 TO 9
4066 IF A(I,J)<>0 THEN 4083
4067 GOSUB 4178
4068 IF F1=0 THEN 4083
4069 U=-1
4070 GOSUB 4185
4071 IF S1=0 THEN 4083
4072 IF(I-2)*(I-9)<>0 THEN 4074
4073 S1=S1+S2
4074 IF(J-2)*(J-9)<>0 THEN 4076
4075 S1=S1+S2
4076 IF S1<B1 THEN 4083
4077 IF S1>B1 THEN 4080
4078 R=RND(1)
4079 IF R>.5 THEN 4083
4080 B1=S1
4081 I3=I
4082 J3=J
4083 NEXT J
4084 NEXT I
4085 IF B1>0 THEN 4090
4086 PRINT "UND SETZE EINEN ZUG AUS.":BEEP:BEEP:BEEP
4087 IF Z=1 THEN 4157
4088 Z=1
4089 GOTO 4108
4090 Z=0
4091 PRINT "UND ZIEHE NACH";:BEEP
4092 PRINT I3-1;
4093 PRINT ",";
4094 PRINT C$(J3-1)
4095 I=I3
4096 J=J3
4097 U=1
4098 GOSUB 4185
4099 C1=C1+S1+1
4100 H1=H1-S1
4101 N1=N1+1
4102 PRINT "ICH BEKOMME";
4103 PRINT S1;
4104 PRINT "DEINER STEINE:"
4105 GOSUB 4210
4106 IF H1=0 THEN 4157
4107 IF N1=64 THEN 4157
4108 T1=H
4109 T2=C
4110 PRINT "DEIN ZUG--(ZEILE,SPALTE)"
4111 INPUT I,X$
4112 IF I<0 THEN 4111
4113 IF I>8 THEN 4111
4114 IF I<>0 THEN 4121
4115 PRINT "WILLST DU AUSSETZEN?(J ODER N)";
4116 INPUT X$
4117 IF X$<>"J"THEN 4110
4118 IF Z=1 THEN 4157
4119 Z=1
4120 GOTO 4057
4121 FOR Q=1 TO 8
4122 IF C$(Q)=X$ THEN 4125
4123 NEXT Q
4124 GOTO 4111
4125 J=Q
4126 I=I+1
4127 J=J+1
4128 IF A(I,J)=0 THEN 4132
4129 PRINT "DIESER PLATZ IST BESETZT."
4130 PRINT "NEUER VERSUCH!"
4131 GOTO 4111
4132 GOSUB 4178
4133 IF F1=1 THEN 4138
4134 PRINT "ACHTUNG!!!DU BIST IN"
4135 PRINT "DER NAEHE MEINER STEINE."
4136 PRINT "NEUER VERSUCH."
4137 GOTO 4111
4138 U=-1
4139 GOSUB 4185
4140 IF S1>0 THEN 4144
4141 PRINT "ACHTUNG!!!DU BILDEST KEINE"
4142 PRINT "REIHE.NEUER VERSUCH."
4143 GOTO 4111
4144 Z=0
4145 PRINT "DU BEKOMMST";
4146 PRINT S1;
4147 PRINT "MEINER STEINE:"
4148 U=1
4149 GOSUB 4185
4150 H1=H1+S1+1
4151 C1=C1-S1
4152 N1=N1+1
4153 GOSUB 4210
4154 IF C1=0 THEN 4157
4155 IF N1=64 THEN 4157
4156 GOTO 4057
4157 PRINT
4158 PRINT "DU HAST";
4159 PRINT H1;
4160 PRINT "UND ICH HABE";
4161 PRINT C1;
4162 PRINT "STEINE."
4163 IF H1=C1 THEN 4167
4164 IF H1>C1 THEN 4169
4165 PRINT "ICH HABE GEWONNEN."
4166 GOTO 4171
4167 PRINT "UNENTSCHIEDEN>"
4168 GOTO 4171
4169 PRINT "DU HAST GEWONNEN."
4170 PRINT
4171 PRINT "WILLST DU NOCHMAL ? (J ODER N)";
4172 INPUT X$
4173 IF X$="J"THEN 4025
4174 IF X$<>"N"THEN 4172
4175 PRINT "VIELEN DANK FUER DAS SPIEL!"
4176 PAUSE 50:RUN
4177 PAUSE 50:RUN
4178 F1=0
4179 FOR I1=-1 TO 1
4180 FOR J1=-1 TO 1
4181 IF A(I+I1,J+J1)=T2 THEN F1=1
4182 NEXT J1
4183 NEXT I1
4184 RETURN
4185 S1=0
4186 FOR K=1 TO 8
4187 I5=I4(K)
4188 J5=J4(K)
4189 I6=I+I5
4190 J6=J+J5
4191 S3=0
4192 IF A(I6,J6)<>T2 THEN 4208
4193 S3=S3+1
4194 I6=I6+I5
4195 J6=J6+J5
4196 IF A(I6,J6)=T1 THEN 4199
4197 IF A(I6,J6)=0 THEN 4208
4198 GOTO 4193
4199 S1=S1+S3
4200 IF U<>1 THEN 4208
4201 I6=I
4202 J6=J
4203 FOR K1=0 TO S3
4204 A(I6,J6)=T1
4205 I6=I6+I5
4206 J6=J6+J5
4207 NEXT K1
4208 NEXT K
4209 RETURN
4210 PRINT
4211 PRINT " ABCDEFGH"
4212 FOR I=2 TO 9
4213 PRINT I-1;
4214 FOR J=2 TO 9
4215 PRINT "";
4216 PRINT D$(A(I,J)+2);
4217 NEXT J
4218 IF I=3 THEN PRINT " DU:";H1;
4219 IF I=7 THEN PRINT " ZUG:";N1-4;
4220 IF I=5 THEN PRINT " ICH:";C1;
4221 PRINT
4222 NEXT I
4223 PRINT
4224 RETURN
4225 PRINT:PRINT "WIR SETZEN ABWECHSELND JEWEILS"
4226 PRINT:PRINT "EINEN STEIN UNSERER FARBE."
4227 PRINT:PRINT "ZIEL IST DAS EINSCHLIESSEN GEG-"
4228 PRINT:PRINT "NERISCHER STEINE ZWISCHEN EIGENE"
4229 PRINT "STEINE IN EINER LINIE (WAAGE-"
4230 PRINT:PRINT "RECHT, SENKRECHT, DIAGONAL)."
4231 PRINT:PRINT "EINGESCHLOSSENE STEINE WERDEN"
4232 PRINT:PRINT "IN EIGENE UMGEWANDELT.MAN KANN"
4233 PRINT:PRINT "AUCH MAL AUSSETZEN (0,0 TIPPEN)"
4234 PAUSE 200:CLS:RETURN
5000 WINDOW:CLS
5001 PRINT:PRINT:PRINT:PRINT " M E M O R Y"
5002 REMPeter Schellin Melanchthonstr.4
5003 REM G O E R L I T Z 8 9 0 0
5004 PRINT:PRINT:PRINT:PRINT:INPUT "SCHWIERIGKEITSGRAD A/F/G";A$
5005 IF A$="A"THEN SG=4:PRINT:PRINT "FUER ANFAENGER"
5006 IF A$="F"THEN SG=6:PRINT:PRINT "FUER FORTGESCHRITTENE"
5007 IF A$="G"THEN SG=8:PRINT:PRINT "FUER GENIES"
5008 IF A$="T" THEN SG=2:PRINT:PRINT:PRINT "TEST"
5009 BEEP:BEEP:BEEP
5010 PRINT:PRINT "TEILNEHMERZAHL (max.";SG;") :";:INPUT TN
5011 FOR I=1 TO TN
5012 PRINT:PRINT I;".TEILNEHMER HEISST:":PRINT
5013 INPUT TN$(I)
5014 NEXT I
5015 PAUSE 20:CLS
5016 PRINT:PRINT:PRINT:PRINT "GLEICH GEHTS LOS":PRINT:PRINT
5017 DIM SF(SG,SG):RESTORE 5018
5018 DATA 138,143,166,203,204,175,139,202
5019 DATA 25,16,29,20,184,255,162,164
5020 DATA 49,50,51,52,53,54,55,56
5021 DATA 33,35,37,38,42,43,123,125
5022 FOR I=1 TO SG^2/2
5023 READ A
5024 FOR J=1 TO 2
5025 Z=INT(SG*RND(1)+1)
5026 S=INT(SG*RND(1)+1)
5027 IF SF(Z,S)<>0 THEN 5025
5028 SF(Z,S)=A
5029 NEXT J
5030 PRINT CHR$(SF(Z,S));" ";
5031 NEXT I
5032 PRINT:PRINT:PRINT:PRINT:PRINT "FINDE NUN HERAUS, WIE DIESE"
5033 PRINT:PRINT "FIGUREN PAARWEISE VERTEILT SIND!"
5034 PRINT:PRINT "GIB DAZU IMMER ZEILE UND SPALTE"
5035 PRINT:PRINT "OHNE ZWISCHENZEICHEN EIN !"
5036 FOR J=2 TO 30
5037 FOR I=30 TO J STEP -1
5038 PRINT AT(28,I);"*":PRINT AT(28,I);" "
5039 NEXT I
5040 PRINT AT(28,I);"*"
5041 NEXT J
5042 CLS
5043 PRINT:PRINT
5044 FOR I=0 TO SG
5045 IF I=0 THEN PRINT " ";:GOTO 5047
5046 PRINT I;
5047 NEXT I
5048 PRINT "Na.";
5049 PRINT:PRINT:PRINT
5050 FOR I=1 TO SG
5051 PRINT I;:FOR J=1 TO SG:PRINT " .";:NEXT J
5052 IF I<=TN THEN PRINT " ";LEFT$(TN$(I),1);
5053 PRINT:PRINT:PRINT
5054 NEXT I
5055 WINDOW 29,31,0,31:CLS
5056 FOR I=1 TO TN:PRINT TN$(I);" IST DRAN:"
5057 INPUT "KOORDINATE 1,Z.B.23:";ZS
5058 Z=INT(ZS/10)
5059 S=ZS-Z*10
5060 IF Z<1 OR Z>SG THEN 5057
5061 IF S<1 OR S>SG THEN 5057
5062 IF SF(Z,S)=32 THEN BEEP:PRINT "SCHON AUFGEDECKT !":GOTO 5057
5063 FOR J=1 TO 10
5064 PRINT AT(3*Z+2,3*S+2);" ":PAUSE 2
5065 PRINT AT(3*Z+2,3*S+2);CHR$(SF(Z,S)):PAUSE 2
5066 NEXT J
5067 INPUT "ZEILESPALTE FUER FIGUR ZWEI:";SZ
5068 Z2=INT(SZ/10)
5069 S2=SZ-Z2*10
5070 IF Z2<1 OR Z2>SG THEN 5067
5071 IF S2<1 OR S2>SG THEN 5067
5072 IF SF(Z2,S2)=32 THEN BEEP:PRINT "SCHON AUFGEDECKT !":GOTO 5067
5073 FOR J=1 TO 10
5074 PRINT AT(3*Z2+2,3*S2+2);" ":PAUSE 2
5075 PRINT AT(3*Z2+2,3*S2+2);CHR$(SF(Z2,S2)):PAUSE 2
5076 NEXT J
5077 IF SF(Z,S)=SF(Z2,S2) THEN BEEP:EZ=EZ+1:GOSUB 5085
5078 IF EF>0 THEN 5094
5079 IF SF(Z,S)=SF(Z2,S2)THEN GOTO 5083
5080 PA=70-SG*5:PAUSE 5
5081 PRINT AT(3*Z+2,3*S+2);"."
5082 PRINT AT(3*Z2+2,3*S2+2);"."
5083 NEXT I
5084 GOTO 5055
5085 REM AUSWERTUNG
5086 IF EZ=SG^2/2 THEN EF=1
5087 SF(Z,S)=32:SF(Z2,S2)=32
5088 PT(I)=PT(I)+1
5089 PRINT AT(3*I+2,29);PT(I)
5090 CLS:BEEP:BEEP:BEEP
5091 PRINT TN$(I);" DARF NOCHMAL!"
5092 I=I-1
5093 RETURN
5094 WINDOW:CLS
5095 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT " E N D E"
5096 PRINT:PRINT " S";:BEEP:PRINT " I";:BEEP:PRINT " E";:BEEP:PRINT " G";:BEEP
5097 PRINT " E";:BEEP:PRINT " R";:BEEP:PRINT " E";:BEEP:PRINT " H";:BEEP
5098 PRINT " R";:BEEP:PRINT " U";:BEEP:PRINT " N";:BEEP:PRINT " G":BEEP:BEEP
5099 PRINT "*******************************":PRINT
5100 FOR I=SG^2/2 TO 0 STEP -1
5101 FOR J=1 TO TN
5102 IF PT(J)=I THEN PRINT PL+1;".PLATZ: ";TN$(J):PRINT:PZ=PZ+1:BEEP:BEEP
5103 NEXT J
5104 PL=PL+PZ:PZ=0
5105 NEXT I
5106 PRINT:PRINT "*******************************"
5107 PRINT:PRINT " Enter"
5108 INPUT "ENTER";W:RUN
6000 A4$="OHNE SECHSEN"
6002 A5$="EIN WUERFELSPIEL"
6004 WINDOW:CLS
6006 INK 10:PRINT AT(2,2);STRING$(29,"[")
6008 FOR I=3 TO 7:PRINT AT(I,2);"[":PRINT AT(I,30);"[":NEXT I
6010 PRINT AT(8 ,2);STRING$(29,"[")
6012 INK 7:PRINT AT(4 ,11);A4$:PRINT AT(6 , 9);A5$
6014 PRINT AT(16,9);"Angepasst an Z 1013"
6016 PRINT AT(18,14); " von"
6018 PRINT AT(20,3);" ROLF LENKER GRUENTALSTR.31"
6020 PRINT AT(24,9);" STEINACH 6406"
6022 PRINT INK 7;AT(31,24);">ENTER<"
6024 IF INKEY$<>CHR$(13)THEN 6024:ELSE GOTO 6056
6026 REM ===UP SPIELIDEE
6028 CLS:PRINT:PRINT "SPIELIDEE":PRINT "*********":PRINT
6030 PRINT "Dieses Wuerfelspiel ist fuer ma-ximal 8 Spieler gedacht."
6032 PRINT "Es wird mit 2 Wuefeln gespielt." :PRINT
6034 PRINT "Solange auf keinem der beiden Wuerfel eine 6 erscheint,kann
6036 PRINT "weitergewuerfelt werden.":PRINT
6038 PRINT "Das Spielende wird vorher fes- gelegt. Ausserdem kann in zwe
6040 PRINT "Schwierigkeiten gespielt werden. ":PRINT
6042 PRINT "In Stufe 2 muessen pro Runde mindestens 15 Augen erzielt"
6044 PRINT "werden.":PRINT
6046 PRINT "Sieger ist derjenige,der zuerst die vereinbarte "
6048 PRINT "Punktzahl erreicht hat."
6050 PRINT:PRINT:PRINT:PRINT
6052 PRINT AT(26,24);">ENTER<"
6054 IF INKEY$<>CHR$(13)THEN 6054:ELSE 6066
6056 PRINT AT(28,2);"WUENSCHEN SIE ERLAEUTERUNGEN ?"
6058 PRINT AT(30,23); ">(J)/N<"
6060 PRINT AT(31,23);" "
6062 J$=INKEY$:IF J$=""THEN 6062
6064 IF J$="J"THEN GOSUB 6028
6066 WINDOW:PAPER 3:INK 7:CLS:PRINT AT(12,3);STRING$(25,"*")
6068 FOR I=13 TO 15:PRINT AT(I,3);"*":PRINT AT(I,27);"*":NEXT I
6070 PRINT AT(16,3);STRING$(25,"*")
6072 PRINT AT(14,6 );"SPIELERANZAHL ?":WINDOW 24,24,24,31
6074 PRINT AT(24,24);"(1...8)":S$=INKEY$:IF S$=""THEN 6074
6076 IF ASC(S$)<49 OR ASC(S$)>56 THEN 6074
6078 S=ASC(S$)-48:DIM D$(6,3),N$(8)
6080 PRINT INK 2;AT(14,6 );" SPIELERNAMEN ?":WINDOW 24,24,12,30:CLS:FOR I=1 TO S
6082 PRINT "SPIELER";I;:INPUT ":";A$:N$(I)=LEFT$(A$,8):NEXT I
6084 CLS:PRINT INK 6;AT(14,6 );"SPIELENDE BEI..."
6086 INPUT "(50...500) ?";MAX
6088 IF MAX<>INT(MAX)OR MAX<50 OR MAX>500 THEN 6086
6090 CLS:PRINT INK 4;AT(14,5 );"SCHWIERIGKEITSSTUFE ?"
6092 PRINT AT(24,18);" => (1)/2":PRINT AT(22,18);" ":I$=INKEY$:IF I$=""THEN 6092
6094 IF ASC(I$)<49 OR ASC(I$)>50 THEN 6092:ELSE ST=ASC(I$)-48
6096 B2$=" SCHADE, ":B3$="ZUVIEL RISKIERT !":B4$="ES REICHT NICHT !"
6098 IF ST=1 THEN B5$=B2$+B3$:ELSE B5$=B2$+B4$
6100 DATA " "," * "," "," *"," ","* "," *"," * ","* "
6102 DATA "* *"," ","* *","* *"," * ","* *","* *","* *","* *"
6104 WINDOW:CLS:FOR I=1 TO 30
6106 PRINT AT(20,I);"_" :NEXT I
6108 FOR I=13 TO 25 STEP 6:FOR J=4 TO 20:PRINT AT(J,I);"I":NEXT J:NEXT I
6110 FOR I=1 TO S:PRINT INK 7;AT(2*I+3,5);N$(I):NEXT I
6112 PRINT AT(3,5);"NAME":PRINT AT(3,14);"RUNDE":PRINT AT(3,20);"GESAMT"
6114 REM =====DAS SPIEL BEGINNT
6116 BEEP:BEEP:PRINT AT(26,2);"ACHTUNG, DAS SPIEL BEGINNT !":BEEP:BEEP:PA=0
6118 PRINT AT(26,2);STRING$(33," ")
6120 FOR Z=1 TO S:PU(Z)=0:PRINT AT(2*Z+1,2);" ":PRINT AT(2*Z+3,2);B1$
6122 PRINT AT(24,2);" "
6124 PRINT AT(24,15);N$(Z)
6126 PRINT AT(26,2);STRING$(30," ")
6128 PRINT AT(24,1);"Es wuerfelt:"
6130 IF Z=1 THEN PRINT AT(2*S+3,2);" "
6132 GOSUB 6162
6134 PK(Z)=PK(Z)+PU(Z)
6136 PRINT AT(2*Z+3,20);PK(Z)
6138 IF PK(Z)>=MAX THEN 6186
6140 NEXT Z
6142 GOTO 6120
6144 END
6146 REM ===UP WUERFELN
6148 RESTORE 6100
6150 FOR I=1 TO 6:FOR J=1 TO 3:READ D$(I,J):NEXT J,I
6152 FOR J=1 TO 2:W(J)=INT(RND(1)*6+1)
6154 L=8+4*J-4:FOR K=1 TO 3:PRINT AT(L+K,28);" "
6156 NEXT K:PAUSE 1
6158 FOR K=1 TO 3:PRINT INK 2,PAPER 0;AT(L+K,28);D$(W(J),K):NEXT K,J
6160 RETURN
6162 REM =====WUERFELABFRAGE
6164 J$=INKEY$:IF J$=""THEN 6164
6166 IF J$=CHR$(78)AND ST=1 THEN PRINT AT(2*Z+3,14);" ":RETURN
6168 IF J$=CHR$(78)AND ST=2 AND PU(Z)>=15 THEN PRINT AT(2*Z+3,14);" ":RETURN
6170 IF J$=CHR$(13)OR J$=CHR$(74)THEN 6172:ELSE 6164
6172 PRINT AT(26,3);STRING$(33," "):GOSUB 6146
6174 IF W(1)=6 OR W(2)=6 THEN PU(Z)=0:PRINT AT(26,5);B5$:PAUSE 15:GOTO 6184
6176 PU(Z)=PU(Z)+W(1)+W(2)
6178 PRINT AT(2*Z+3,15);PU(Z)
6180 IF ST=2 AND PU(Z)<15 THEN 6164
6182 PRINT AT(26,1);" WUERFELN SIE WEITER (J)/N ?":GOTO 6164
6184 PRINT AT(2*Z+3,14);" ":RETURN
6186 REM ======ENDAUSWERTUNG
6188 PAUSE 15:PAPER 6:CLS:PRINT:PRINT " AUSWERTUNG:":PRINT " -------"
6190 DIM B(S):FOR I=1 TO S
6192 FOR J=1 TO S
6194 IF PK(J)>B(I)THEN B(I)=PK(J)
6196 NEXT J
6198 FOR J=1 TO S
6200 IF PK(J)=B(I)THEN PK(J)=-1:GOTO 6204
6202 NEXT J
6204 PRINT:PRINT I;".PLATZ: ";N$(J);" ";B(I);" PUNKTE":PRINT
6206 NEXT I
6208 INPUT "ENTER";W:RUN
7000 CLS
7002 PRINT:PRINT:PRINT:PRINT:PRINT
7004 PRINT:PRINT:PRINT:PRINT
7006 PRINT " "
7008 PRINT " "
7010 PRINT " "
7012 PRINT " "
7014 PRINT " "
7016 PRINT ""
7018 PRINT:INPUT "WIEVIELE VERSUCHE?";MM
7020 INPUT "Mit wievielen Banden?";R0
7022 PRINT
7024 IF R0<2 THEN PAUSE 10:PRINT "Das ist aber sehr einfach!":PAUSE 20
7026 IF R0>4 THEN PAUSE 10:PRINT "Sehr mutig fuer den Anfang!":PAUSE 20
7028 PRINT
7030 PRINT "SPIELANLEITUNG:"
7032 PRINT ""
7034 PRINT
7036 PRINT "1.Steht der Cursor hinter POSITION? ,so kann die Ab-"
7038 PRINT " schussposition mit den Tasten Cursor LINKS bzw. RECHTS"
7040 PRINT " veraendert werden. Nach ENTER"
7042 PRINT " rueckt der Cursor auf SCHUSS ?"
7044 PRINT
7046 PRINT "2.Steht der Cursor hinter SCHUSS ? , so kann der "
7048 PRINT " Abschuss mit der Taste L oder R ausgeloest werden."
7050 PRINT " Mit der Taste K ist ein Ruecksprung auf 1. moeglich"
7052 PRINT
7054 PRINT
7056 PRINT:INPUT " >ENTER";ENTER
7058 V0=1
7060 V=21
7062 H0=1
7064 H=30
7066 TR=0
7068 FOR M=1 TO MM
7070 R=0
7072 WINDOW
7074 P=INT((V-V0)*RND(1))+V0
7076 Q=INT((H-H0)*RND(1))+H0
7078 A$=""
7080 IF M>1 THEN 7296
7082 FOR K1=1 TO 1024
7084 PRINT A$;
7086 NEXT K1
7088 GOSUB 7280
7090 WINDOW V0,V,H0,H
7092 CLS
7094 X=INT((H-H0)/2)
7096 GOSUB 7254
7098 PAUSE 20
7100 GOSUB 7270
7102 PRINT AT(0,0);"L"
7104 PRINT AT(0,31);"R"
7106 PRINT AT(22,0);"<"
7108 PRINT AT(22,31);">"
7110 WINDOW
7112 PRINT AT(V,X);""
7114 WINDOW 25,25,17,30
7116 PRINT "POSITION?";
7118 Z$=INKEY$
7120 IF Z$=CHR$(8)OR Z$=CHR$(9)OR Z$=CHR$(13)THEN 7122 ELSE 7118
7122 WINDOW
7124 IF Z$=CHR$(9)THEN X0=X+1:Z=1:GOTO 7130
7126 IF Z$=CHR$(8)THEN X0=X-1:Z=2:GOTO 7130
7128 GOTO 7138
7130 GOSUB 7262
7132 X=X0
7134 GOSUB 7254
7136 GOTO 7114
7138 WINDOW 27,27,17,29
7140 PRINT "SCHUSS ?";
7142 Z$=INKEY$
7144 IF Z$="K"THEN 7114
7146 IF Z$="L"THEN Z=4:GOTO 7152
7148 IF Z$="R"THEN Z=3:GOTO 7152
7150 GOTO 7142
7152 I=V:J=X
7154 WINDOW V0,V,H0,H:CLS
7156 GOSUB 7270
7158 GOSUB 7254
7160 GOTO 7186
7162!Bandenunterscheidung
7164 IF I=V0 THEN A=-2
7166 IF I=V THEN A=2
7168 IF I>V0 AND I<V THEN A=0
7170 IF J=H0 THEN B=-1
7172 IF J=H THEN B=1
7174 IF J>H0 AND J<H THEN B=0
7176 Z0=Z
7178 Z=Z+A+B
7180 IF Z<>Z0 THEN R=R+1
7182 IF Z<>Z0 THEN GOSUB 7306
7184 IF R>R0 THEN 7228
7186 I0=I
7188 J0=J
7190!neue position in abhaengigkeit vonz
7192 IF Z=1 OR Z=2 THEN I=I+1
7194 IF Z=3 OR Z=4 THEN I=I-1
7196 IF Z=1 OR Z=3 THEN J=J+1
7198 IF Z=2 OR Z=4 THEN J=J-1
7200 PRINT AT(I,J);""
7202 PRINT AT(I0,J0);""
7204!trefferuntersuchung
7206 IF I<P OR I>P+1 THEN 7162
7208 IF J<Q OR J>Q+1 THEN 7162
7210!treffer!!
7212 IF R=R0 THEN 7218
7214 PRINT AT(10,5);"Leider zu zeitig!"
7216 GOTO 7228
7218 FOR K=1 TO 50
7220 BEEP
7222 NEXT K
7224 TR=TR+1
7226 PRINT AT(9,31);TR
7228 NEXT M
7230 PAUSE 20
7232 WINDOW
7234 CLS
7236 PRINT "Trefferanzahl von";MM;":";TR
7238 PRINT
7240 PRINT
7242 IF TR<3 THEN PRINT "ALLER ANFANG IST SCHWER!"
7244 IF TR>3 AND TR<8 THEN PRINT "SIE HABEN SICH WACKER GESCHLAGEN!"
7246 IF TR>7 THEN PRINT "SIE KOENNEN SICH ZUR WELTSPITZE RECHNEN!"
7248 PAUSE 50:CLS
7250 PRINT AT(11,10);"Auf Wiedersehen!"
7252 PAUSE 20:RUN
7254 PRINT AT(V,X);""
7256 PRINT AT(V-1,X-1);""
7258 PRINT AT(V-1,X+1);""
7260 RETURN
7262 PRINT AT(V,X);" "
7264 PRINT AT(V-1,X-1);" "
7266 PRINT AT(V-1,X+1);" "
7268 RETURN
7270 PRINT AT(P,Q);""
7272 PRINT AT(P,Q+1);""
7274 PRINT AT(P+1,Q);""
7276 PRINT AT(P+1,Q+1);""
7278 RETURN
7280 PRINT AT(23,11);"Billard"
7282 PRINT AT(25,4);R0
7284 PRINT AT(25,8);"Banden"
7286 PRINT AT(27,4);TR
7288 PRINT AT(27,8);"Treffer"
7290 PRINT AT(29,4);M
7292 PRINT AT(29,8);"Versuche"
7294 RETURN
7296 WINDOW 0,22,0,30
7298 FOR I=1 TO 681
7300 PRINT A$;
7302 NEXT I
7304 GOTO 7088
7306 BEEP
7308 RETURN
7310 END
8000 A$="Mikrorechnerbausatz -Z1013-"
8001 A2$="SPIELPROGRAMM"
8002 A4$="SIMULATION EINER"
8003 A5$="MONDLANDUNG"
8004 WINDOW:CLS:PRINT AT(0,0);" "
8005 PRINT AT(2,2);A$
8006 PRINT AT(4,0);"",STRING$(29,""),""
8007 PRINT AT(5,0);"":PRINT AT(5,30);""
8008 PRINT AT(6,0);"",STRING$(29,""),""
8009 PRINT AT(5,2);A2$
8010 PRINT AT(8,0);STRING$(31,"")
8011 FOR I=9 TO 13:PRINT AT(I,0);"":PRINT AT(I,30);"":NEXT I
8012 PRINT AT(14,0);STRING$(31,"")
8013 PRINT AT(10,29-LEN(A4$));A4$:PRINT AT(12,29-LEN(A5$));A5$
8014 PRINT AT(19,2);"* VEB ROBOTRON-ELEKTRONIK *
8015 PRINT AT(21,13);"RIESA"
8016 PRINT AT(30,22);">ENTER<"
8017 T$=INKEY$:IF T$=""THEN 8017
8018 WINDOW:CLS
8019 PRINT:PRINT:PRINT
8020 PRINT " SIMULATION EINER MONDLANDUNG"
8021 PRINT TAB(1);STRING$(30,CHR$(160)):PRINT
8022 PRINT
8023 PRINT "Sie haben die Handsteuerung beim
8024 PRINT "Landeanflug auf dem Mond 5000m":PRINT
8025 PRINT "ueber einem geeigneten Lande-":PRINT
8026 PRINT "platz uebernommen."
8027 PRINT
8028 PRINT "Die Sinkgeschwindigkeit betraegt
8029 PRINT "500m/s.":PRINT
8030 PRINT "Der Tank enthaelt nur noch 1200l"
8031 PRINT "Treibstoff."
8032 A$="N"
8033 PRINT:PRINT "Wuenschen Sie Instruktionen?:":PRINT
8034 PRINT:INPUT " J/(N)" ;A$
8035 IF A$="J" GOTO 8039
8036 IF A$="N" GOTO 8059
8037 CLS:PRINT "Antworten Sie bitte nur mit J oder N !":PRINT:PRINT
8038 GOTO 8033
8039 CLS:PRINT "HIER DIE VORSCHRIFT FUER DIE":PRINT "LANDUNG!:"
8040 PRINT STRING$(31,CHR$(160)):PRINT
8041 PRINT "1.Nach jeder Sekunde werden"
8042 PRINT " die Hoehe, die Geschwindig-"
8043 PRINT " keit, sowie der verbleibende":PRINT " Tankinhalt gemeldet."
8044 PRINT "2.Auf Anfrage geben Sie die"
8045 PRINT " Menge Treibstoff ein, die Sie"
8046 PRINT " in der naechsten Sekunde ver-":PRINT " brennen wollen."
8047 PRINT "3.Der max. Schub Ihrer Trieb-":PRINT " werke betraegt 500m/s^"
8048 PRINT " Das entspricht 300l Treib-":PRINT " stoff pro Sekunde."
8049 PRINT "4.Beim Beruehren der Mondober-"
8050 PRINT " flaeche schaltet das Trieb-"
8051 PRINT " werk automatisch aus und Sie"
8052 PRINT " erhalten Angaben ueber die":PRINT " Landeschwindigkeit und"
8053 PRINT " verbliebenen Treibstoff."
8054 PRINT "5.Ist der Tank vor der Landung"
8055 PRINT " leer, wird der Rapport "
8056 PRINT " weitergefuehrt,bis Sie den":PRINT " Mond erreicht haben."
8057 PRINT
8058 INPUT "ENTER";A$
8059 WINDOW
8060 CLS:PRINT TAB(7);"Beginn der Landung"
8061 PRINT TAB(7);"...VOLLE KONZENTRATION"
8062 H=5000:V=500:F=1200
8063 PRINT TAB(7)"HOEHE";TAB(13)"TEMPO";TAB(19)"TANK";
8064 PRINT TAB(24)"EINSATZ"
8065 PRINT TAB(8)"[m]";TAB(13)"[m/s]";TAB(19)"[l]";
8066 PRINT TAB(26)"[l]"
8067 PRINT TAB(7);STRING$(24,CHR$(160)),
8068 WINDOW 2,23,0,4:CLS
8069 PRINT AT(2,0);CHR$(193):FOR J=1 TO 3:PRINT AT(2,J);CHR$(158):NEXT
8070 PRINT AT(2,4);CHR$(137):FOR J=3 TO 22:PRINT AT(J,4);CHR$(192):NEXT
8071 PRINT AT(23,4);CHR$(200):FOR J=3 TO 1 STEP-1:PRINT AT(23,J);CHR$(248):NEXT
8072 PRINT AT(23,0);CHR$(136):FOR J=22 TO 3 STEP-1:PRINT AT(J,0);CHR$(159):NEXT
8073 FOR J=1 TO 3:PRINT AT(22,J);CHR$(184):NEXT:PRINT AT(3,2);CHR$(196)
8074 WINDOW 6,21,6,30:J=3:PRINT AT (2,0);CHR$(193)
8075!PRINT
8076 PRINT ;TAB(0)INT(H);TAB(7)INT(V);
8077 PRINT TAB(12)INT(F);TAB(18)" ";
8078 PRINT AT(25,0);"TREIBSTOFF FUER BREMSSTOSS ?":BEEP
8079 INPUT "";B
8080 PRINT AT(25,0);STRING$(28," ")
8081 IF B<0 THEN 8093
8082 IF B>300 THEN B=300
8083 IF B>F THEN B=F
8084 V1=V-B+50:F=F-B:H=H-.5*(V+V1)
8085 IF H<=0 THEN 8096
8086 PRINT AT(J,2);CHR$(32-(J=2)*126)
8087 J=INT(22-19*H/5000):IF J>1 THEN:PRINT AT(J,2);CHR$(196):ELSE J=2
8088 V=V1
8089 IF F>0 THEN 8075
8090 IF B=0 THEN 8092
8091 PRINT "*** TANK LEER ***"
8092 PRINT;TAB(1)INT(H);TAB(7)INT(V);TAB(13)"0":PAUSE 5
8093 IF B<0 THEN PRINT:PRINT "NICHT SCHUMMELN !!":PRINT
8094 B=0
8095 GOTO 8084
8096 WINDOW:CLS:PRINT:PRINT:PRINT:PRINT
8097 PRINT SPC(7) "*** KONTAKT ***"
8098 H=H+.5*(V+V1)
8099 IF B=50 THEN 8102
8100 D=(-V+SQR(V*V+H*(100-2*B)))/(50-B)
8101 GOTO 8103
8102 D=H/V
8103 V1=V+(50-B)*D
8104 PRINT:PRINT:PRINT:PRINT "LANDUNG NACH :";T+D;"s"
8105 PRINT "LANDEGESCHWINDIGK. :";V1;"m/s"
8106 IF F=0 THEN 8108
8107 PRINT "TREIBSTOFF :";F;"l":GOTO 8109
8108 PRINT "TANK LEER !"
8109 IF V1<>0 GOTO 8117
8110 WINDOW 11,20,0,30:CLS
8111 PRINT:PRINT STRING$(31,"+");
8112 PRINT " GRATULATION !!!"
8113 PRINT " PERFEKTE LANDUNG !!!":PRINT
8114 PRINT " Ihre Lizenz wird erneuert !"
8115 PRINT STRING$(31,"+")
8116 WINDOW 21,26,0,30:PRINT:PRINT
8117 IF ABS(V1)<5 THEN 8124
8118 PRINT:PRINT "*** BRUCHLANDUNG, SCHADE ***":PRINT
8119 PRINT "Ihre Verwandten werden benach- richtigt !"
8120 IF V1>=80 GOTO 8129
8121 IF V1>=15 GOTO 8135
8122 IF V1>=9 GOTO 8141
8123 PRINT:PRINT "Sie haben Ihren Landeapparat beschaedigt!":PRINT
8124 PRINT:INPUT "Wuenschen Sie noch einen Versuch?: (J)/N";A$
8125 IF A$<>"N" GOTO 8059
8126 WINDOW:CLS
8127 PRINT AT(0,0);" ":PRINT AT(14,7);" Auf Wiedersehen !"
8128 PAUSE 30:CLS:RUN
8129 PRINT
8130 PRINT "********************************"
8131 PRINT " SIE HABEN EIN NEUES MONDMEER"
8132 PRINT " GESCHAFFEN !"
8133 PRINT "********************************"
8134 GOTO 8124
8135 Q=V1*V1/100*14
8136 PRINT
8137 PRINT "Sie haben einen Krater von "
8138 PRINT Q;"m Tiefe geschaffen !"
8139 PRINT "================================"
8140 GOTO 8124
8141 PRINT
8142 PRINT "Sie haben Ihr Raumschiff in einen Berg";
8143 PRINT " Schrott verwandelt":PRINT
8144 GOTO 8124
9000 CLS:PRINT
9001 PRINT "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
9002 PRINT "S C H A T Z H O E H L E (Sch87)"
9003 PRINT "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
9004 PRINT " DU SOLLST DEN ZAUBERSCHATZ"
9005 PRINT " FINDEN! DAZU MUSST DU DURCH"
9006 PRINT " DIE HOEHLE NACH OBEN DURCH DIE"
9007 PRINT " BEIDEN LEITERN ! ABER ACHTUNG:"
9008 PRINT " IN DER HOEHLE ENTSTEHEN AB UND"
9009 PRINT " ZU LOECHER! STUERZE NICHT AB!"
9010 PRINT " NUTZE DIE CURSORTASTEN SOWIE"
9011 PRINT " DAS >U< BEI DEN LEITERN!"
9012 PRINT " DU MUSST IMMER IN BEWEGUNG"
9013 PRINT " SEIN, DENN NUR DIE ERSCHUET-"
9014 PRINT " TERUNG DEINER SCHRITTE WIRKT"
9015 PRINT " AUF DIE LOECHER! AUSSERDEM"
9016 PRINT " SCHRUMPFT DER $CHATZ RAPIDED!"
9017 PRINT " HAST DU DEN $CHATZ ERREICHT,"
9018 PRINT " SO SCHUETZT ER DICH UND ER"
9019 PRINT " BRINGT DICH AUF DEM KUER-"
9020 PRINT " ZESTEN WEG ZURUECK!"
9021 PRINT " VIEL GLUECK !":PRINT
9022 PRINT "$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
9023 GOTO 9027
9024 PRINT: PRINT " ANFAENG. ODER FORTG.?"
9025 F$=INKEY$:IF F$=""THEN 9025
9026 RETURN
9027 GOSUB 9024:Z=10000:CLS
9028 PRINT AT(5,1);"SCHATZSUMME:"
9029 IF F$<>"F"THEN PRINT AT(5,21);"MARK":GOTO 9031
9030 PRINT AT(5,21);"DOLLAR"
9031 A$="":B$=" ":C$=""
9032 PRINT AT(20,C);A$:C=C+1
9033 IF C=10 THEN C=C+1
9034 IF C=15 THEN C=C+1
9035 IF C=20 THEN C=C+1
9036 IF C=30 THEN 9038
9037 GOTO 9032
9038 PRINT AT(25,L);A$
9039 L=L+1
9040 IF L=10 THEN L=L+1
9041 IF L=15 THEN L=L+1
9042 IF L=20 THEN L=L+1
9043 PRINT AT(25,L);A$
9044 IF L=29 THEN 9046
9045 GOTO 9039
9046 PRINT AT(15,M);A$
9047 M=M+1
9048 IF M=10 THEN M=M+1
9049 IF M=20 THEN M=M+1
9050 IF M=30 THEN PRINT AT(14,29);"$":GOTO 9052
9051 GOTO 9046
9052 Q=24:W=0
9053 PRINT AT(Q,W);C$:L1=16
9054 PRINT AT(L1,1);"( )":L1=L1+1
9055 IF L1=20 THEN 9057
9056 GOTO 9054
9057 L2=21
9058 PRINT AT(L2,27);"( )":L2=L2+1
9059 IF L2=25 THEN 9061
9060 GOTO 9058
9061 D=INT(2*RND(1))+1:GOSUB 9075:GOSUB 9108:GOSUB 9075
9062 IF F$="F"THEN 9063:ELSE A$=""
9063 IF D=2 THEN G$=B$
9064 IF D=1 THEN G$=A$
9065 PRINT AT(15,10);G$
9066 PRINT AT(15,20);G$
9067 PRINT AT(20,10);G$
9068 PRINT AT(20,15);G$
9069 PRINT AT(20,20);G$
9070 PRINT AT(25,10);G$
9071 PRINT AT(25,15);G$
9072 PRINT AT(25,20);G$:GOSUB 9108:GOSUB 9075:PAUSE 1
9073 GOSUB 9075
9074 GOTO 9061
9075 R$=INKEY$:GOTO 9184:PRINT AT(5,15);Z:IF R$=""THEN 9075:ELSE GOTO 9078
9076 IF Z=0 THEN PRINT AT(8,1);"VERSAGER! DEIN SCHATZ"
9077 IF Z=0 THEN PRINT AT(10,1);"IST FLOETEN!":PAUSE 33:CLEAR:GOTO 9027
9078 R=ASC(R$):IF R=8 THEN 9083
9079 IF R=9 THEN 9091
9080 IF R$="U"THEN 9099
9081 GOTO 9075
9082 RETURN
9083 IF Q=14 AND W=28 THEN PRINT AT(7,9);"H U R R A !":GOTO 9149
9084 IF Q=24 OR Q=19 THEN 9087:IF W=0 THEN 9082
9085 IF Q=14 THEN 9087
9086 GOTO 9082
9087 PRINT AT(Q,W);B$:W=W-1
9088 PRINT AT(Q,W);C$
9089 GOSUB 9108
9090 GOTO 9082
9091 IF Q=14 AND W=28 THEN 9083
9092 IF Q=24 OR Q=19 THEN 9095:IF W=20 THEN 9082
9093 IF Q=14 THEN 9095
9094 GOTO 9082
9095 PRINT AT(Q,W);B$:W=W+1
9096 PRINT AT(Q,W);C$
9097 GOSUB 9108
9098 GOTO 9082
9099 IF W=28 AND Q>19 THEN 9104
9100 IF W=2 THEN 9102
9101 GOTO 9082
9102 IF Q>14 AND Q<20 THEN 9104
9103 GOTO 9082
9104 PRINT AT(Q,W);B$:Q=Q-1
9105 PRINT AT(Q,W);C$
9106 GOSUB 9108
9107 GOTO 9082
9108 GOTO 9110
9109 RETURN
9110 IF Q=14 THEN 9112
9111 GOTO 9115
9112 IF W=10 THEN 9125
9113 IF W=20 THEN 9125
9114 GOTO 9109
9115 IF Q=19 THEN 9117
9116 GOTO 9120
9117 IF W=10 OR W=15 THEN 9133
9118 IF W=20 THEN 9133
9119 GOTO 9109
9120 IF Q=24 THEN 9122
9121 GOTO 9124
9122 IF W=10 OR W=15 THEN 9140
9123 IF W=20 THEN 9140
9124 GOTO 9109
9125 IF W=10 AND G$=B$ THEN 9129
9126 IF W=15 AND G$=B$ THEN 9129
9127 IF W=20 AND G$=B$ THEN 9129
9128 GOTO 9109
9129 PRINT AT(Q,W);B$
9130 Q=Q+1:PRINT AT(Q,W);C$
9131 IF Q=19 THEN 9109
9132 GOTO 9129
9133 IF W=10 AND G$=A$ THEN 9109
9134 IF W=15 AND G$=A$ THEN 9109
9135 IF W=20 AND G$=A$ THEN 9109
9136 PRINT AT(Q,W);B$
9137 Q=Q+1:PRINT AT(Q,W);C$
9138 IF Q=24 THEN 9109
9139 GOTO 9136
9140 IF W=10 AND G$=A$ THEN 9109
9141 IF W=15 AND G$=A$ THEN 9109
9142 IF W=20 AND G$=A$ THEN 9109
9143 PRINT AT(Q,W);B$
9144 Q=Q+1:PRINT AT(Q,W);C$
9145 IF Q=30 THEN 9147
9146 GOTO 9143
9147 PRINT AT(Q,W);"TOT!":PAUSE 40
9148 GOTO 9177
9149 W1=15:PRINT AT(Q,W);C$:PAUSE 30
9150 PRINT AT(W1,27);"* *":PAUSE 1
9151 W1=W1+1:IF W1=25 THEN 9153
9152 GOTO 9150
9153 PRINT AT(15,10);A$:PRINT AT(15,20);A$:PRINT AT(15,15);A$
9154 FOR S=10 TO 20 STEP 5:PRINT AT(20,S);A$:NEXT
9155 FOR S=10 TO 30 STEP 5:PRINT AT(25,S);A$:NEXT
9156 PRINT AT(Q,W);C$:PAUSE 1
9157 PRINT AT(Q,W);B$
9158 IF W=28 THEN 9160
9159 W=W-1:GOTO 9156
9160!
9161 Q=Q+1
9162 PRINT AT(Q,W);C$:PAUSE 4
9163 PRINT AT(Q,W);B$
9164 IF Q=24 THEN 9166
9165 GOTO 9161
9166!
9167 W=W-1
9168 PRINT AT(Q,W);C$:PAUSE 1
9169 IF W=0 THEN WINDOW 0,31,0,31:GOTO 9172
9170 PRINT AT(Q,W);B$
9171 GOTO 9167
9172 PRINT AT(9,0);Z
9173 IF F$<>"F"THEN PRINT AT(9,7);"MARK HAST DU GERETTET!":GOTO 9175
9174 PRINT AT(9,7);"DOLLAR HAST DU GERETTET!"
9175 PAUSE 40
9176 CLEAR:RUN
9177 WINDOW 0,31,0,31:CLS
9178 PRINT:PRINT
9179 PRINT " DU VERMODERST IN DER"
9180 PRINT:PRINT " H O E H L E !"
9181 PRINT:PRINT " DER SCHATZ IST NOCH DA!"
9182 PRINT:PRINT " WER WAGT, GEWINNT!!!"
9183 PAUSE 20:CLEAR:RUN
9184 IF F$="F"THEN 9190
9185 Z=Z-1
9186 IF Z=0 THEN 9076
9187 PRINT AT(5,15);Z
9188 IF R$=""THEN 9075
9189 GOTO 9078
9190 Z=Z-10
9191 PRINT AT(5,15);Z
9192 IF Z=0 THEN 9076
9193 IF Z=0 THEN 9076
9194 IF R$=""THEN 9075
9195 GOTO 9078
10000!***************************
10005!* KOMBINATIONSSPIEL *
10010!* ---TRIPLETT--- *
10015!* Copyrights by *
10020!* Rainer Brosig IHD *
10025!***************************
10030!
10035 WINDOW:L=Q*PI/4*PEEK(862)+102:IF PEEK(L)<>201 THEN POKE L,201:DOKE L+1,Q
10040 KZ=1:!KENNZAHL 1=SPIELER 0=RECHNER
10045 CLS
10050 PRINT
10055 PRINT " KOMBINATIONSSPIEL"
10060 PRINT " "
10065 PRINT:PRINT "Wer nimmt den letzten Stein?"
10070 PRINT
10075 PRINT "Es bestehen 3 Haufen mit einer":PRINT
10080 PRINT "vom Rechner zufaellig festge_":PRINT
10085 PRINT "legten Anzahl von Steinen. ":PRINT
10090 PRINT "Sie und der Rechner duerfen nun":PRINT
10095 PRINT "abwechselnd eine beliebige An-":PRINT
10100 PRINT "zahl von Steinen von einem be-":PRINT
10105 PRINT "liebigen Haufen wegnehmen":PRINT
10110 PRINT "(mindestens einen, max. alles).":PRINT
10115 PRINT "Es verliert derjenige, der den":PRINT
10120 PRINT "letzten Stein nehmen muss!":PRINT AT(30,24);">ENTER<"
10125 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT
10130 A=INT(10*RND(1)+6)
10135 B=INT(10*RND(1)+6)
10140 C=INT(10*RND(1)+6):!HAUFEN SETZEN
10145 IF A=B OR A=C OR B=C THEN 10130:!NUR UNGLEICHE HAUFEN
10150 BG$=INKEY$ :!ABFRAGE ENTER
10155 IF BG$<>CHR$(13) THEN 10150
10160 CLS:WINDOW 0,3,0,21:PRINT AT(0,0);" "
10165 GOSUB 10935:PRINT AT(0,23);"R : S":PRINT AT(2,22);PEEK(L+1):!SPIED
10170 PRINT AT(2,28);PEEK(L+2):POKE L+1,PEEK(L+1)+1:!JEDES ABGEBR.SPIEL=.
10175 PRINT AT(28,2);"moechten Sie beginnen? (J/N)"
10180 BG$=INKEY$ :!Y/N ABFR.
10185 IF BG$="J" THEN 10195
10190 IF BG$="N" THEN 10390:ELSE GOTO 10180
10195 PRINT AT(28,0);" "
10200 GOSUB 10935
10205 PRINT AT(28,0);" "
10210 PRINT
10215 PRINT
10220 IF KZ=0 THEN PRINT AT(28,2);"NACH RECHNERZUG:"
10225 PRINT "Wieviele Steine von "
10230 PRINT AT(26,2);" "
10235 INPUT "Haufen(1,2,3):";AN,HA
10240 IF AN<1 THEN GOSUB 10810:GOTO 10200
10245 IF (AN-INT(AN))<>0 THEN GOSUB 10810:GOTO 10200:!FEHLER WENN EING<1 O.
10250 PRINT AT(28,2);" "
10255 ON HA GOTO 10270,10330,10360
10260 GOSUB 10810:!FERLERAUSG. 1
10265 GOTO 10200
10270 D=A:A=A-AN
10275 IF A<0 THEN 10290
10280 GOSUB 10690:GOTO 10395
10285 KZ=1
10290 A=D
10295 GOSUB 10305
10300 GOTO 10200
10305 INK 2:!UP FEHLERAUSG. 2
10310 PRINT AT(28,0);"so viele Steine liegen nicht da!"
10315 PAUSE(30)
10320 INK 7
10325 RETURN
10330 E=B:B=B-AN
10335 IF B<0 THEN 10350
10340 KZ=1
10345 GOSUB 10690:GOTO 10395
10350 B=E:GOSUB 10305:!FEHLER 2
10355 GOTO 10200
10360 F=C:C=C-AN
10365 IF C<0 THEN 10380
10370 KZ=1
10375 GOSUB 10690:GOTO 10395
10380 C=F:GOSUB 10305
10385 GOTO 10200
10390 PRINT AT(21,4);" "
10395 K1=8:K3=0:K9=8:K7=0
10400 D=A:E=B:F=C
10405 K8=0:KF=8:K0=3
10410 IF C>=8 THEN K2=6:C=C-8:K8=K8+1
10415 IF B>=8 THEN K2=5:B=B-8:K8=K8+1
10420 IF A>=8 THEN K2=4:A=A-8:K8=K8+1
10425 GOTO 10430
10430 K8=K8+1
10435 ON K8 GOTO 10445,10470,10445,10440
10440 K7=K7+K1
10445 K9=K9-2
10450 IF K9=0 THEN 10505
10455 A=A*2:B=B*2:C=C*2
10460 K1=K1/2
10465 GOTO 10405
10470 IF K3=0 THEN 10495
10475 KF=K3
10480 IF KF=K2 THEN 10440
10485 K7=K7-K1
10490 GOTO 10445
10495 K3=K2
10500 GOTO 10440
10505 IF K7=0 THEN GOSUB 10845
10510 IF K3>0 THEN K2=K3
10515 K0=0:KF=2
10520 IF D>=2 THEN K0=K0+5:ELSE K0=K0+D
10525 IF E>=2 THEN K0=K0+5:ELSE K0=K0+E
10530 IF F>=2 THEN K0=K0+5:ELSE K0=K0+F
10535 K2=K2-3
10540 ON K2 GOTO 10545,10555,10565
10545 IF D>=2 THEN K0=K0-5:ELSE K0=K0-D
10550 GOTO 10570
10555 IF E>=2 THEN K0=K0-5:ELSE K0=K0-E
10560 GOTO 10570
10565 IF F>=2 THEN K0=K0-5:ELSE K0=K0-F
10570 KF=3
10575 IF K0>=KF THEN 10640
10580 KH=K0+1
10585 ON KH GOTO 10610,10590,10610
10590 IF K2=1 THEN K7=D
10595 IF K2=2 THEN K7=E
10600 IF K2=3 THEN K7=F
10605 GOTO 10640
10610 ON K2 GOTO 10615,10625,10635
10615 IF D-1=0 THEN K7=1:ELSE K7=D-1
10620 GOTO 10640
10625 IF E-1=0 THEN K7=1:ELSE K7=E-1
10630 GOTO 10640
10635 IF F-1=0 THEN K7=1:ELSE K7=F-1
10640 IF K2=1 THEN D=D-K7
10645 IF K2=2 THEN E=E-K7
10650 IF K2=3 THEN F=F-K7
10655 A=D:B=E:C=F
10660 KZ=0
10665 IF A=0 AND B=0 AND C=0 THEN 10730
10670 IF A=1 AND B=0 AND C=0 THEN KZ=ABS(KZ-1):GOTO 10730
10675 IF A=0 AND B=1 AND C=0 THEN KZ=ABS(KZ-1):GOTO 10730
10680 IF A=0 AND B=0 AND C=1 THEN KZ=ABS(KZ-1):GOTO 10730
10685 GOTO 10200
10690 GOSUB 10935
10695 IF A=0 AND B=0 AND C=0 THEN 10730
10700 IF A=1 AND B=0 AND C=0 THEN KZ=ABS(KZ-1):GOTO 10730
10705 IF A=0 AND B=1 AND C=0 THEN KZ=ABS(KZ-1):GOTO 10730
10710 IF A=0 AND B=0 AND C=1 THEN KZ=ABS(KZ-1):GOTO 10730
10715 GOSUB 10935
10720 PRINT AT(26,4);"RECHNERZUG"
10725 RETURN
10730 GOSUB 10935:WINDOW:CLS
10735 PRINT
10740 PRINT
10745 IF KZ=1 THEN 10780
10750 PRINT "Herzlichen Glueckwunsch zu Ihrem"
10755 PRINT "Sieg! Anscheinend kennen Sie das"
10760 PRINT "System."
10765 PRINT:PRINT
10770 PRINT "Ich fordere Revanche!"
10775 PAUSE(40):POKE L+1,PEEK(L+1)-1:POKE L+2,PEEK(L+2)+1:GOTO 10045
10780 PRINT " Schade..."
10785 PRINT
10790 PRINT "Man muss halt ein bisschen nach-"
10795 PRINT "denken!":PRINT
10800 PRINT "Aber versuchen Sie es ruhig noch"
10805 PRINT "einmal!":PAUSE(40):RUN
10810 INK 2:!UP FEHLER 1
10815 PRINT CHR$(6)
10820 PRINT
10825 PRINT "EINGABEFEHLER!"
10830 PAUSE(30)
10835 INK 7
10840 RETURN
10845 IF D<=3 AND E<=3 AND F<=3 THEN K7=1:RETURN
10850 Z=INT(RND(1)*3+1)
10855 ZZ=INT(RND(1)*3+1)
10860 ON Z GOTO 10865,10875,10885
10865 IF D>=3 THEN K7=0:D=D-ZZ:ELSE GOTO 10845
10870 RETURN
10875 IF E>=3 THEN K7=0:E=E-ZZ:ELSE GOTO 10845
10880 RETURN
10885 IF F>=3 THEN K7=0:F=F-ZZ:ELSE GOTO 10845
10890 RETURN
10895 X2=-1
10900 FOR I=20 TO 10 STEP-2
10905 X2=X2+1
10910 FOR J=0 TO 4-(20-I)/2
10915 IF X1>0 THEN A$=CHR$(207) :ELSE A$=" "
10920 PRINT AT(I,J*2+X3+X2);A$:X1=X1-1
10925 NEXT J,I
10930 RETURN
10935 X1=A:X3=0:GOSUB 10895:PRINT AT(24,3);A
10940 X1=B:X3=11:GOSUB 10895:PRINT AT(24,14);B
10945 X1=C:X3=22:GOSUB 10895:PRINT AT(24,25);C
10950 RETURN
15000 REM ERSTELLT VON D.SCHROETER; E.REICHARDT-STR.3;NORDHAUSEN; 50
15002 CLS
15004 PRINT AT(0,0);" "
15006 PRINT AT(7,10);" "
15008 PRINT AT(8,10);" "
15010 PRINT AT(9,10);" "
15012 PRINT AT(10,10);" "
15014 PRINT AT(13,6);" "
15016 PRINT AT(14,6);" "
15018 PRINT AT(15,6);" "
15020 PRINT AT(16,6);" "
15022 PRINT AT(19,10);" "
15024 PRINT AT(20,10);" "
15026 PRINT AT(21,10);" "
15028 PRINT AT(22,10);" "
15030 PRINT AT(25,6);""
15032 PRINT AT(26,6);" "
15034 PRINT AT(27,6);" "
15036 PRINT AT(28,4);" "
15038 PRINT AT(29,4);" "
15040 PRINT AT(30,4);" "
15042 PRINT AT(31,5);" "
15044 FOR H=0 TO 5
15046 PRINT AT(14,26);"":PRINT AT(15,27);""
15048 PAUSE 2
15050 PRINT AT(15,27);" ":PRINT AT(14,26);""
15052 NEXT H
15054 CLS:PRINT AT(0,0);" ":PRINT AT(10,12);"SPIELREGELN"
15056 PRINT AT(11,11);"*************"
15058 PRINT AT(13,7);"MIT HILFE DER LEERTASTE"
15060 PRINT AT(15,7);"MUESSEN SIE VERSUCHEN"
15062 PRINT AT(17,7);"MOEGLICHST VIELE ENTEN":PRINT AT(19,7);"ABZUSCHIESSE"
15064 PRINT AT(21,15);"VIEL SPASS!"
15066 PRINT AT(25,7);"WEITER MIT 'W' (ENDE='E')
15068 IF INKEY$=CHR$(87)THEN GOTO 15074 ELSE 15066
15070 GOSUB 15074
15072 END
15074 CLS
15076 PRINT AT(16,27);"":PRINT AT(17,26);" ":PRINT AT(18,25);" "
15078 PRINT AT(19,0);" "
15080 PRINT AT(20,0);" "
15082 PRINT AT(21,0);" "
15084 PRINT AT(22,0);" "
15086 PRINT AT(23,0);" "
15088 PRINT AT(24,0);",,,,,,,,,,,,,,,,,,,,"
15090 PRINT AT(24,9);CHR$(156):PRINT AT(24,10);CHR$(152)
15092 PRINT AT(25,0);",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
15094 PRINT AT(26,0);",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
15096 PRINT AT(3,3);" ":PRINT AT(4,2);" ":PRINT AT(2,5);""
15098 PRINT AT(5,2);" ":PRINT AT(6,2);""
15100 PRINT AT(21,24);" ":PRINT AT(22,23);" ":PRINT AT(23,22);" "
15102 PRINT AT(24,22);"":PRINT AT(25,22);" " :PRINT AT(29,10);"TREFFER:"
15104 PRINT AT(29,18);Z:PRINT AT(31,10);"SCHUSS :":PRINT AT(31,18);S
15106 A=INT(6*RND(1))+6
15108 FOR B=1 TO 28
15110 C=INT(3*RND(1))-1:A=A+C:IF A<0 THEN A=0:IF A>14 THEN A=14
15112 PRINT AT(A,B);""
15114 IF INKEY$=CHR$(32)THEN GOSUB 15128
15115 IF INKEY$="E"THEN RUN
15116 PRINT AT(A,B);""
15118 PRINT AT(A,B);" "
15120 PRINT AT(3,3);" ":PRINT AT(4,2);" ":PRINT AT(2,5);""
15122 PRINT AT(5,2);" ":PRINT AT(6,2);"":PRINT AT(16,27);""
15124 PRINT AT(0,0);" ":NEXT
15126 GOTO 15100
15128!
15130 S=S+1:PRINT AT(21,24);""
15132 PRINT AT(22,23);"":PRINT AT(23,22);""
15134 PRINT AT(24,22);" ":PRINT AT(25,22);" "
15136 FOR F=0 TO 15
15138 B=B+1:PRINT AT(A,B-1);""
15140 IF B>=31 THEN B=B-1
15142 PRINT AT(20-F,24);"*"
15144 IF A=19-F AND B =24 THEN GOTO 15158
15146 IF A=19-F AND B+1=24 THEN GOTO 15158
15148 PRINT AT(20-F,24);" "
15150 PRINT AT(A,B-1);" "
15152 PRINT AT(A,B);" "
15154 NEXT F
15156 GOTO 15096
15158 Z=Z+1:FOR G=0 TO 20
15160 PRINT AT(A+G,B-2);" "
15162 PRINT AT(A+G,B);"":PRINT AT(A+G+1,B);"":PRINT AT(A+G+2,B);""
15164 PAUSE 1:PRINT AT(A+G,B);" ":PRINT AT(A+G+1,B);" "
15166 PRINT AT(A+G+2,B);" "
15168 PRINT AT(17,26);"":PRINT AT(18,25);""
15170 PRINT AT(19,25);""
15172 PRINT AT(20,25);""
15174 IF(A+G)=19 THEN GOTO 15096
15176 NEXT G