Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)
1 CLEAR 1000:A1$="HEIMCOMPUTER robotron Z9001"
2 A2$="SPIELE":A9=2
4 A3$="K+SPIEDI"
6 A4$="SPIEDIE"
8 A5$="EIN REAKTIONS-SPIEL"
9 REM (C) 1983 BY T. STAHMER ,2000 HAMBURG 60, PREYSTR. 13
18 BORDER A9:INK 8:PAPER 1:GOSUB 160
20 W1$=STRING$(38,""):W2$=STRING$(36,""):W3$=STRING$(36,"")
22 W4$=STRING$(36,""):W5$=STRING$(18,"")
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,29);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$
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 GOSUB 130: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
198 REM LAUFBILD -------------------UP
200 GOSUB 160
202 A$(1)=" SSS PPPP III EEEE DDD III EEEE"
204 A$(2)="S S P P I E D D I E "
206 A$(3)="S P P I E D D I E "
208 A$(4)=" SSS PPPP I EEE D D I EEE "
210 A$(5)=" S P I E D D I E "
212 A$(6)="S S P I E D D I E "
214 A$(7)=" SSS P III EEEE DDD III EEEE"
216 D$=STRING$(16," ")
218 FOR I=1 TO 7:FOR II=1 TO 39
220 PRINT AT(I+5,39-II);LEFT$(A$(I),II):NEXT II:NEXT I
222 IF RR=0 THEN KY$="BRAUCHEN SIE EINE ANLEITUNG":GOSUB 150:ELSE PAUSE 5:RETURN
224 IF T=0 THEN RETURN
226 GOSUB 160
228 PRINT AT(2,2);"BEI SPIEDIE HABEN SIE DIE AUFGABE,"
230 PRINT AT(4,2);"EINEN BALL ODER EINE ANDERE FIGUR,"
232 PRINT AT(6,2);"JE NACH RUNDENZAHL, MIT EINEM"
234 PRINT AT(8,2);"PADDEL AN DIE WAND ZURUECKZUSCHLAGEN."
236 PRINT AT(10,2);"JE NACH ANZAHL DER GESCHLAGENEN"
238 PRINT AT(12,2);"WANDELEMENTE GIBT ES PUNKTE. ZUM"
240 PRINT AT(14,2);"BEWEGEN DES PADDELS BENUTZEN SIE"
242 PRINT AT(16,2);"LINKS = <-- RECHTS = -->"
244 PRINT AT(18,2);"VIEL SPASS BEIM 'PADDELN' !!":GOSUB 120:RETURN
246 REM SPIELFELD -------------------UP
248 B=-5120:B$="":G$=" ":ZZ=0:Q=0:X=720:DX=-80:Y=14:DY=1:Z$=W2$
250 YY=14:Y2=34:R=1:P1=20:ZE=207:Q1=0:PK=0:L$=" ":RR=1:SC=3:SC$="***"
252 GOSUB 160
254 PRINT AT(1,1);W1$:FOR I=1 TO 22:PRINT AT(I,1);"":PRINT AT(I,38);"":NEXT I
256 PRINT AT(23,1);W1$
258 PRINT AT(21,YY);B$
260 FOR I=5 TO 7:PRINT AT(I,2);Z$:NEXT I
262 RETURN
264 Q=0:Q1=-67:ZE=207:RETURN
266 Q=0:Q1=1:ZE=144:RETURN
268 Q=0:Q1=2:ZE=167:RETURN
270 Q=0:Q1=1:ZE=136:RETURN
272 PRINT AT(15,10);RR,". R U N D E ! ! !"
274 FOR I=1 TO 20:BEEP:PAUSE 1:NEXT I
276 PRINT AT(15,10);STRING$(22," ")
278 RETURN
999 REM HAUPTPROGRAMM ===============HP
1000 GOSUB 200:GOSUB 248
1002 POKE B+X+Y,32
1004 IF X>320 THEN 1010
1006 IF X=320 AND ABS(DX)=80 THEN DX=DX/2:GOTO 1010
1008 IF X=320 AND ABS(DX)=40 THEN DX=DX*2:GOTO 1010
1010 X=X+DX:IF X<80 OR X>880 THEN DX=-DX:BEEP:GOTO 1010
1012 Y=Y+DY:IF Y<2 OR Y>37 THEN DY=-DY:BEEP:GOTO 1012
1014 IF PEEK(B+X+Y)<>32 AND X<840 THEN POKE B+X+Y,32:POKE B+X+Y-1,32:POKE B+X+1,199:GOTO 1040
1016 IF PEEK(B+X+Y-40)<>32 AND X>840 THEN DX=-DX:BEEP:GOTO 1010
1018!
1020!
1022! SPRITES !!!
1024!
1026!
1028 IF X=880 THEN GOTO 1110
1030 Q=Q1-Q:POKE B+X+Y,ZE+Q:Y1=YY:A=PEEK(36):IF A=0 THEN 1002
1032 IF A=8 AND YY-3>0 THEN YY=YY-3:GOTO 1038
1034 IF A=9 AND YY+3<Y2 THEN YY=YY+3:GOTO 1038
1036 GOTO 1002
1038 PRINT AT(21,Y1);L$:PRINT AT(21,YY);B$:GOTO 1002
1040 ON(INT(RND(1)*3)+1)GOTO 1042,1044,1046
1042 DX=-DX:BEEP:GOTO 1048
1044 DY=-DY:BEEP:GOTO 1048
1046 DX=-DX:DY=-DY:BEEP:GOTO 1048
1048 PK=PK+INT(RND(1)*P1):IF HI<PK THEN HI=PK
1050 PRINT AT(0,1);"PUNKTE:",PK," ",SC$," HI:",HI," "
1052 PRINT AT(0,29);RR,".RUNDE "
1054 ZZ=ZZ+1:IF ZZ=25 THEN ON R GOSUB 264,266,268,270
1056 IF ZZ=50 THEN ZZ=0:ON R GOTO 1062,1072,1078,1084
1058 IF SC>=0 THEN 1016
1060 GOTO 1090
1062 IF SC<3 THEN SC=SC+1:SC$=SC$+"*"
1064 R=2:RR=RR+1
1066 PRINT AT(21,YY);L$:PRINT AT(21,Y1);L$:B$="":L$=" "
1068 PRINT AT(21,Y1);B$
1070 Z$=W3$:Q=0:Q1=0:ZE=144:P1=30:Y2=36:GOSUB 260:GOSUB 272:ZZ=ZZ-1:GOTO 1050
1072 IF SC<3 THEN SC=SC+1:SC$=SC$+"*"
1074 R=3:RR=RR+1
1076 Z$=W4$:Q=0:Q1=0:ZE=167:P1=40:GOSUB 260:GOSUB 272:ZZ=ZZ-1:GOTO 1050
1078 IF SC<3 THEN SC=SC+1:SC$=SC$+"*"
1080 R=4:RR=RR+1
1082 Z$=W5$:Q=0:Q1=0:ZE=136:P1=50:GOSUB 260:GOSUB 272:ZZ=ZZ-1:GOTO 1050
1084 IF SC<3 THEN SC=SC+1:SC$=SC$+"*"
1086 R=1:RR=RR+1
1088 Z$=W2$:Q=0:Q1=0:ZE=207:P1=30:GOSUB 260:GOSUB 272:ZZ=ZZ-1:GOTO 1050
1090 A$(1)="**************************"
1092 A$(2)="* *"
1094 A$(3)="* NEUES SPIEL? *"
1096 A$(5)="* NEUES GLUECK!! *"
1098 A$(7)="* NICHT VERZAGEN ! *"
1100 A$(4)=A$(2):A$(6)=A$(2):A$(8)=A$(2):A$(9)=A$(1)
1102 FOR I=9 TO 17:PRINT AT(I,7);A$(I-8):NEXT I
1104 KY$="NEUER VERSUCH":GOSUB 150
1106 IF T=1 THEN 1000
1108 GOTO 9000
1110 SC=SC-1:ZZ=ZZ-1:IF SC>=0 THEN SC$=LEFT$(SC$,SC)
1112 FOR I=1 TO 10:BEEP:PAUSE 2:NEXT I:PAUSE 20
1114 X=X-80:DX=-DX:Y=Y1+1:GOTO 1050
8999 REM ENDE =====================ENDE
9000 GOSUB 160:PRINT INK 3;AT(8,2);"AUF WIEDERSEHEN!":PAUSE 50:T$=INKEY$:CLS