Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß) 1 A1$="HEIMCOMPUTER robotron Z9001" 2 A2$="SPIELE":A9=2 4 A3$="K+PONG" 6 A4$="JAGD AUF PONG" 8 A5$="EIN REAKTIONS-SPIEL" 9 REM LAKAN-COMPUTER LGH 5-28.03.83 10 REM VERFASSER:KITTELMANN 12 REM ANSCHRIFT:MKD,1EKG 14 REM DATUM 24.02.1985 VERSION 1.0 16 REM INITIALWERTE =================IN 18 BORDER A9:INK 8:PAPER 1:GOSUB 160 20 PX=1:DIM N(9),PN(9),PS(9),PM(9) 90 GOSUB 100:GOTO 1000 96 REM UNTERPROGRAMME ===============UP 98 REM TITELBILD --------------------UP 100 PRINT AT(2,2);A1$:PRINT AT(4,2);"",STRING$(34,""),"" 102 PRINT AT(5,2);"":PRINT AT(5,37);"" 104 PRINT AT(6,2);"",STRING$(34,""),"" 106 PRINT AT(5,3);A2$:PRINT INK 3;AT(5,31);A3$ 108 INK A9:PRINT AT(8,2);STRING$(36,"") 110 FOR I=9 TO 13:PRINT AT(I,2);"":PRINT AT(I,37);"":NEXT I 112 PRINT AT(14,2);STRING$(36,"") 114 INK 8:PRINT AT(10,36-LEN(A4$));A4$:PRINT AT(12,36-LEN(A5$));A5$ 116 INK 3:PRINT AT(17,2);"HANS KITTELMANN" 117 PRINT AT(19,2);"8019 DRESDEN" 118 PRINT AT(21,2);"HOLBEINSTR. 131" 119 REM >ENTER< ---------------------UP 120 PRINT INK 4;AT(22,31);">ENTER<" 124 GOSUB 170:IF T=13 THEN PRINT AT(20,27);STRING$(11," "):RETURN 126 GOSUB 130:GOTO 124 129 REM WIE BITTE ? -----------------UP 130 PRINT INK 2;AT(20,27);"WIE BITTE ?":RETURN 149 REM J/N ABFRAGE -----------------UP 150 PRINT INK 4;AT(22,(34-LEN(KY$)));KY$," ? J" 153 GOSUB 170:PRINT INK 2;AT(22,37);CHR$(T) 154 IF T=74 OR T=13 THEN T=1:PRINT AT(20,27);STRING$(11," "):RETURN 156 IF T=78 THEN T=0:PRINT AT(20,27);STRING$(11," "):RETURN 158 PAUSE 10:GOTO 150 159 REM STANDART-WINDOW -------------UP 160 WINDOW:CLS:PRINT AT(0,0);" ":RETURN 169 REM TASTENABFRAGE ---------------UP 170 T=PEEK(36):IF T=0 OR T=127 THEN 170 172 RETURN 199 REM ABFRAGE ---------------------UP 200 FOR I=1 TO 50:A$=INKEY$:IF A$<>""THEN 208 202 NEXT I:PRINT AT(20,36);"" 204 FOR I=1 TO 50:A$=INKEY$:IF A$<>""THEN 208 206 NEXT I:PRINT AT(20,36);" ":GOTO 200 208 IF A$<"1"OR A$>"9"THEN 200 210 PRINT AT(20,36);A$:X=VAL(A$):RETURN 211 REM ABFRAGE ZEICHENKETTE -------UP 212 FOR K=1 TO PY:PRINT AT(20,2);"NAME DES SPIELERS",K,"? ":GOSUB 218 214 PRINT AT(20,2);" SCHWIERIGKEIT SPIELER",K,"(1-9)? ":GOSUB 200 216 N(K)=20-2*X:NEXT K:RETURN 217 REM ABFRAGE ---------------------UP 218 B$="" 220 PRINT AT(20,24+LEN(B$));" ":FOR J=1 TO 50:A$=INKEY$:IF A$<>""THEN 226 222 NEXT J:PRINT AT(20,24+LEN(B$));"":FOR J=1 TO 50:A$=INKEY$:IF A$<>""THEN 226 224 NEXT J:GOTO 220 226 A=ASC(A$):PRINT AT(20,24+LEN(B$));"":IF A=13 THEN 236 228 IF A=8 AND LEN(B$)>1 THEN B$=LEFT$(B$,LEN(B$)-1):GOTO 220 230 IF A=8 AND LEN(B$)=1 THEN B$="":GOTO 220 232 IF NOT(A=32 OR(64<A AND A<91))THEN 220 233 PRINT AT(20,24+LEN(B$));A$:B$=B$+A$:IF LEN(B$)>11 THEN 236 234 GOTO 220 236 PN$(K)=B$:RETURN 238 KY$="SCHWIERIGKEITSGRAD AENDERN ?":GOSUB 150 240 IF T=0 THEN RETURN 242 GOSUB 160:PRINT AT(2,2);"SPIELER-NUMMER?":GOSUB 200:XX=X:IF X>PY THEN 242 244 A$=PN$(XX):PRINT AT(4,2);A$,"'S SCHWIERIGKEIT IST ",(20-N(XX))/2 246 PRINT AT(6,2);"DURCHSCHNITT IST ",PM(XX) 248 PRINT AT(8,2);"PUNKTESTAND WAR ",PS(XX) 250 PRINT AT(20,2);"NEUER SCHWIERIGKEITSGRAD (1-9)":GOSUB 200:N(XX)=20-X*2 252 KY$="WEITERE AENDERUNG":GOSUB 150 254 IF T=1 THEN 242 256 RETURN 999 REM HAUPTPROGRAMM ===============HP 1000 GOSUB 160 1002 PRINT AT(2,4);"PONG JAGD" 1004 PRINT AT(6,4);"VERSUCHEN SIE, PONG ZU TREFFEN!" 1006 PRINT AT(8,4);"PONG SIEHT SO AUS : * !" 1008 PRINT AT(10,4);"IHRE AUFGABE IST, PONG * MIT DER" 1010 PRINT AT(12,4);"KUGEL ZU TREFFEN." 1012 PRINT AT(14,4);"BENUETZEN SIE DIE TASTEN N UND M." 1014 PRINT AT(20,11);"WIEVIELE SPIELER (1-9)?":GOSUB 200:PY=X 1016 GOSUB 212 1018 PL=PL+1:IF PL>PY THEN PL=1 1022 TS=TI:PC=1:PK=-4620:PE=PK:D=1 1023 GOSUB 160:A$=INKEY$ 1024 PRINT AT(0,0);"SPIELER:",PN$(PL),STRING$(22-LEN(PN$(PL)),"") 1026 FOR I=1 TO 22:PRINT AT(I,0);"":PRINT AT(I,39);"":NEXT I 1028 PRINT AT(23,0);STRING$(15,""),"AUFGEBEN=A",STRING$(15,"") 1030 T=INT(RND(1)*900-5120):IF(T>-4640)AND(T<-4601)THEN 1030 1032 TD=1:NN=N(PL) 1034 IF PEEK(T)<>32 THEN 1030 1036 POKE T,42 1038 FOR II=1 TO NN:IF PEEK(PE)=207 THEN POKE PE,32 1040 PE=PK:I$=INKEY$:IF I$<>""THEN 1060 1042 IF PEEK(PK+D)<>32 THEN 1050 1044 PK=PK+D:POKE PK,207:NEXT II:POKE T,32:T=T+TD*D 1046 IF PEEK(T)<>32 THEN TD=-TD:T=T+TD*D 1048 POKE T,42:GOTO 1038 1050 IF PEEK(PK+D)=144 THEN PK=PK+D:D=D-SGN(D)*41:GOTO 1038 1052 IF PEEK(PK+D)=145 THEN PK=PK+D:D=SGN(D)*((ABS(D)AND 1)*40+(ABS(D)AND 40)/40):GOTO 1038 1054 D=-D:IF PEEK(PK-D)=42 THEN 1090 1056 GOTO 1038 1060 IF I$="N"THEN 1070 1062 IF I$="M"THEN 1076 1064 IF I$="A"THEN PS=0:GOTO 1092 1066 IF I$="E"THEN END 1068 GOTO 1042 1070 O=D:PC=PC+1:POKE PK,144 1072 D=D-SGN(D)*41:GOTO 1038 1074 REM IFPEEK(PK+D)=78THENPK=PK+D 1076 O=D:PC=PC+1:POKE PK,145 1078 IF O=-1 THEN D=-40 1080 IF O=40 THEN D=1 1082 IF O=1 THEN D=40 1084 IF O=-40 THEN D=-1 1086 GOTO 1038 1090 PS=1000-12*(PC-1)-INT((TI-TS)/6):IF PS<0 THEN PS=1 1092 PS(PL)=PS 1094 PM(PL)=INT((PM(PL)*(PX-1)+PS)/PX) 1096 GOSUB 160:PRINT AT(0,2);"SPIELER SCHW. PUNKTE DURCHSCH." 1098 FOR I=1 TO PY 1100 PRINT AT(I*2,2);PN$(I):A1$=STR$((20-N(I))/2):PRINT AT(I*2,14);A1$ 1101 A1$=STR$(PS(I)):PRINT AT(I*2,22);A1$:A1$=STR$(PM(I)):PRINT AT(I*2,30);A1$ 1102 NEXT I 1104 PRINT AT(20,2);"DAS WAR SPIEL NR. ",PX 1106 IF PL=PY THEN GOSUB 238:FOR I=1 TO PY:PS(I)=0:NEXT I:PX=PX+1:GOTO 1018 1108 KY$="WEITER SPIELEN":GOSUB 150 1110 IF T=1 THEN 1018 1112 GOTO 9000 8999 REM ENDE =====================ENDE 9000 GOSUB 160:PRINT INK 3;AT(8,2);"AUF WIEDERSEHEN!":PAUSE 50:T$=INKEY$:CLS