Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß) 5 PAPER 8:INK 5 10 WINDOW:CLS:OUT 136,0:FOR I=1 TO 8:P$(I)="JB SOFTWARE":NEXT I:GOTO 9000 100 REM *** CYCLUS *** 110 IF GO=0 THEN GOSUB 2600 190 IF ZG>0 THEN ZG=ZG-1:GOTO 280 200 REM *** G-STRAT *** 202 S1=G:S2=SG 205 U=PEEK(G+40):LS=PEEK(G-1):RS=PEEK(G+1):ON SGN(EG-EM)+2 GOTO 210,235,225 210 IF U=188 THEN R=39:EG=EG+1:SG=SG-1:GOTO 255 215 IF U=189 THEN R=41:EG=EG+1:SG=SG+1:GOTO 255 220 GOTO 235 225 IF LS=189 THEN R=-41:EG=EG-1:SG=SG-1:GOTO 255 230 IF RS=188 THEN R=-39:EG=EG-1:SG=SG+1:GOTO 255 235 IF ABS(EG-EM)<3 THEN ON SGN(SG-SM)+2 GOTO 240,240,250 237 ON SGN(R)+2 GOTO 250,250,240 240 R=V1:IF RS=199 OR RS=182 THEN 3500 245 SG=SG+1:GOTO 255 250 R=-V1:IF LS=199 OR LS=182 THEN 3600 252 SG=SG-1 255 POKE G,VG:GW=GW+R:G=INT(GW):VG=PEEK(G):IF VG=255 THEN 3000 257 POKE G,207:IF S1=G THEN SG=S2 260 IF VG=196 THEN 2000 265 U=PEEK(G+40):IF U=199 OR U>181 AND U<190 THEN 280 270 EG=EG+1:R=40:GOTO 255 280 REM *** G END *** 290 IF ZH>0 THEN ZH=ZH-1:GOTO 380 300 REM *** H-STRAT *** 302 S1=H:S2=SH 305 U=PEEK(H+40):LS=PEEK(H-1):RS=PEEK(H+1):ON SGN(EH-EM)+2 GOTO 310,335,325 310 IF U=188 THEN S=39:EH=EH+1:SH=SH-1:GOTO 355 315 IF U=189 THEN S=41:EH=EH+1:SH=SH+1:GOTO 355 320 GOTO 335 325 IF LS=189 THEN S=-41:EH=EH-1:SH=SH-1:GOTO 355 330 IF RS=188 THEN S=-39:EH=EH-1:SH=SH+1:GOTO 355 335 ON SGN(SH-SM)+2 GOTO 340,340,350 340 S=V2:IF RS=199 OR RS=182 THEN 3700 345 SH=SH+1:GOTO 355 350 S=-V2:IF LS=199 OR LS=182 THEN 3800 352 SH=SH-1 355 POKE H,VH:HW=HW+S:H=INT(HW):VH=PEEK(H):IF VH=207 THEN 3100 357 POKE H,255:IF S1=H THEN SH=S2 360 IF VH=196 THEN 2000 365 U=PEEK(H+40):IF U=199 OR U>181 AND U<190 THEN 380 370 EH=EH+1:S=40:GOTO 355 380 REM *** H END *** 500 REM *** MENSCH *** 510 U=PEEK(M+40):LS=PEEK(M-1):RS=PEEK(M+1) 520 J=JOYST$(1):ON J+1 GOTO 100,550,570,100,100,590,600,100,100,610,620 521 IF J=16 THEN 2000 530 J=ABS(J-127):ON J GOTO 700,800,855 540 GOTO 100 550 IF LS=199 OR LS=182 OR U=189 AND LS=189 AND PEEK(M+39)<>182 THEN 100 560 W1=-1:SM=SM-1:GOTO 630 570 IF RS=199 OR RS=182 OR U=188 AND RS=188 AND PEEK(M+41)<>182 THEN 100 580 W1=1:SM=SM+1:GOTO 630 590 IF U=188 THEN W1=39:EM=EM+1:SM=SM-1:GOTO 630:ELSE 550 600 IF U=189 THEN W1=41:EM=EM+1:SM=SM+1:GOTO 630:ELSE 570 610 IF LS=189 THEN W1=-41:EM=EM-1:SM=SM-1:GOTO 630:ELSE 550 620 IF RS=188 THEN W1=-39:EM=EM-1:SM=SM+1:GOTO 630:ELSE 570 630 POKE M,VM:M=M+W1:VM=PEEK(M):POKE M,196:U=PEEK(M+40) 640 IF VM=140 THEN VM=32:GO=GO-1:PZ=PZ+20+B*10:PRINT AT(0,32);PZ 650 IF VM=207 OR VM=255 THEN 2000 660 IF VM=161 AND AU=1 THEN AU=2:VM=32:GOSUB 2500 670 IF VM=169 AND AU=1 THEN AU=3:VM=32:GOSUB 2500 680 IF VM=159 OR VM=192 THEN 2900 690 IF U>181 AND U<190 OR U=199 THEN 100:ELSE W1=40:EM=EM+1:GOTO 630 700 ON AU GOTO 710,790,790 710 IF U=188 OR U=189 THEN 100 720 FOR I=1 TO 2:POKE M,VM:M=M-40:VM=PEEK(M):POKE M,196 730 NEXT I 740 IF VM=161 AND AU=1 THEN AU=2:VM=32:GOSUB 2500 745 IF VM=140 THEN GO=GO-1:VM=32:PZ=PZ+20+B*10:PRINT AT(0,32);PZ 750 IF VM=169 AND AU=1 THEN AU=3:VM=32:GOSUB 2500 760 IF VM=195 THEN VM=32:GOSUB 2800 770 FOR I=1 TO 2:POKE M,VM:M=M+40:VM=PEEK(M):POKE M,196:NEXT I 780 GOTO 100 790 GOTO 100 800 ON AU GOTO 804,910,980 804 LS=PEEK(M-41):IF LS=199 OR LS=182 THEN 100 805 POKE M,VM:M=M-41:VM=PEEK(M):LS=PEEK(M-1):POKE M,196:SM=SM-1 810 IF LS=199 OR LS=182 THEN W1=40:GOTO 630 815 POKE M,VM:M=M-41:VM=PEEK(M):LS=PEEK(M-1):U=PEEK(M+40):POKE M,196:SM=SM-1 820 IF VM=161 AND AU=1 THEN AU=2:VM=32:GOSUB 2500 823 IF VM=140 THEN GO=GO-1:VM=32:PZ=PZ+20+B*30:PRINT AT(0,32);PZ 825 IF VM=169 AND AU=1 THEN AU=3:VM=32:GOSUB 2500 830 IF VM=195 THEN GOSUB 2800 835 IF LS=199 OR U=182 THEN W1=0:EM=EM-2:GOTO 630 840 POKE M,VM:M=M+39:VM=PEEK(M):LS=PEEK(M-1):U=PEEK(M+40):POKE M,196:SM=SM-1 845 IF LS=199 OR U=199 OR U=182 OR LS=182 THEN W1=0:EM=EM-1:GOTO 630 850 W1=39:SM=SM-1:GOTO 630 855 ON AU GOTO 859,920,992 859 RS=PEEK(M-39):IF RS=182 OR RS=199 THEN 100 860 POKE M,VM:M=M-39:VM=PEEK(M):RS=PEEK(M+1):POKE M,196:SM=SM+1 865 IF RS=199 OR RS=182 THEN W1=0:GOTO 630 870 POKE M,VM:M=M-39:VM=PEEK(M):RS=PEEK(M+1):U=PEEK(M+40):POKE M,196:SM=SM+1 875 IF VM=161 AND AU=1 THEN AU=2:VM=32:GOSUB 2500 880 IF VM=169 AND AU=1 THEN AU=3:VM=32:GOSUB 2500 885 IF VM=195 THEN GOSUB 2800 890 IF RS=199 OR U=182 THEN W1=0:EM=EM-2:GOTO 630 895 POKE M,VM:M=M+41:VM=PEEK(M):RS=PEEK(M+1):U=PEEK(M+40):POKE M,196:SM=SM+1 900 IF RS=199 OR U=199 OR U=182 OR RS=182 THEN W1=0:EM=EM-1:GOTO 630 905 W1=41:SM=SM+1:GOTO 630 910 IF LS=199 THEN 100 915 AU=1:GOSUB 2500:W1=-1:W2=M:GOTO 930 920 IF RS=199 THEN 100 925 AU=1:GOSUB 2500:W1=1:W2=M:GOTO 930 930 W2=W2+W1:W3=PEEK(W2) 935 IF W3=207 THEN 6100 940 IF W3=255 THEN 6200 945 IF W3=199 AND W1<>40 THEN W2=W2-W1:W1=40:GOTO 930 950 IF W3=199 OR W3=182 THEN W2=W2-40:GOTO 960 955 POKE W2,161:POKE W2,W3:GOTO 930 960 W3=PEEK(W2) 965 IF W3=32 THEN POKE W2,161:GOTO 100 970 FOR I=1 TO 2:POKE W2,W3:W2=W2-40:W3=PEEK(W2):POKE W2,161:NEXT 975 GOTO 100 980 IF PEEK(M+39)<>182 THEN 100 985 POKE M+39,32:AU=1:GOSUB 2500 990 GOTO 100 992 IF PEEK(M+41)<>182 THEN 100 994 POKE M+41,32:AU=1:GOSUB 2500 996 GOTO 100 1000 REM *** OBJ *** 1010 READ Z1:IF Z1=40 THEN RETURN:ELSE READ S1,PR$ 1020 PRINT AT(Z1,S1);PR$:GOTO 1000 1100 REM *** TREPP L H *** 1110 READ Z1:IF Z1=40 THEN RETURN:ELSE READ S1,Z2 1120 FOR I=Z1 TO Z2 STEP-1:PRINT AT(I,S1);"":S1=S1-1:NEXT:GOTO 1100 1200 REM *** TREPP R H *** 1210 READ Z1:IF Z1=40 THEN RETURN:ELSE READ S1,Z2 1220 FOR I=Z1 TO Z2 STEP-1:PRINT AT(I,S1);"":S1=S1+1:NEXT:GOTO 1200 1300 REM *** DATA-READING *** 1310 READ M,VM,AU,EM,SM,GW,R,VG,ZG,EG,SG,HW,S,VH,ZH,EH,SH,TZ,TN,GO,V1,V2 1320 G=GW:H=HW:FOR I=3 TO 22:PRINT AT(I,0);"":PRINT AT(I,39);"":NEXT 1330 PRINT AT(23,0);STRING$(40,""):PRINT AT(2,0);STRING$(40,"") 1340 POKE M,196:RETURN 2000 REM *** TOT *** 2005 LB=LB-1:PRINT AT(0,5);LB:IF LB=0 THEN 2100 2020 FOR I=5 TO 1 STEP-1:PRINT AT(1,21);"Ein Leben weniger !":PAUSE I*2 2022 PRINT AT(1,21);" ":PAUSE I+1:NEXT 2030 W1=2:GOTO 9200 2100 REM *** GAME OVER *** 2110 PRINT AT(12,14);"":PRINT AT(14,14);"" 2120 PRINT AT(13,14);"GAME OVER":PAUSE 7 2130 FOR I=6 TO 1 STEP-1:PRINT AT(13,15);" ":PAUSE INT(I*1.2) 2140 PRINT AT(13,15);"GAME OVER":PAUSE I:NEXT I 2200 PZ=PZ+99*LB:CLS:PRINT "Sie erhielten ";PZ;" Punkte.":PRINT:PRINT 2210 PRINT "Liste der Besten:" 2220 FOR I=1 TO 8:IF PZ>P(I)THEN GOSUB 2400 2230 NEXT I 2240 PRINT:PRINT "Punkte Name":PRINT:PRINT STRING$(38,""):PRINT 2250 FOR I=1 TO 8:PRINT P(I);TAB(6);P$(I):NEXT I 2260 PRINT:INPUT ">ENTER<";A$:RUN 2400 FOR J=8 TO I STEP-1:P(J)=P(J-1):P$(J)=P$(J-1):NEXT J 2410 P(I)=PZ:P$(I)=P$:RETURN 2500 PRINT AT(1,12);A$(AU):RETURN 2600 REM *** TUER Z *** 2610 IF TZ=0 THEN 2700 2620 POKE TZ-82,195 2700 POKE TN-82,195:RETURN 2800 REM *** TUER OE *** 2810 IF M=TZ-82 THEN W1=TZ:ELSE W1=TN 2820 POKE W1-40,193:POKE W1-39,137 2830 IF M=W1 THEN VM=159:GOTO 2850 2835 IF G=W1 THEN VG=159:GOTO 2850 2840 IF H=W1 THEN VH=159:ELSE POKE W1,159 2850 IF M=W1+1 THEN VM=192:GOTO 2870 2855 IF G=W1+1 THEN VG=192:GOTO 2870 2860 IF H=W1+1 THEN VH=192:ELSE POKE W1+1,192 2870 RETURN 2900 REM *** TUER D *** 2910 IF M=TZ OR M=TZ+1 THEN B=B-1:W1=1 2920 IF M=TN OR M=TN+1 THEN B=B+1:W1=0 2930 CLS:GOTO 9200 3000 REM *** G1 INIT *** 3010 WW=0:VG=32:GW=-4982:ZG=20:SG=18:EG=3:G=-4982:GOTO 280 3100 REM *** G2 INIT *** 3110 WW=0:VH=32:HW=-4981:ZH=20:SH=19:EH=3:H=-4981:GOTO 380 3500 IF LS=199 OR LS=182 THEN POKE G,VG:GOTO 3000:ELSE 250 3600 IF RS=199 OR RS=182 THEN POKE G,VG:GOTO 3000:ELSE 240 3700 IF LS=199 OR LS=182 THEN POKE H,VH:GOTO 3100:ELSE 350 3800 IF RS=199 OR RS=182 THEN POKE H,VH:GOTO 3100:ELSE 340 6100 REM *** G1 T *** 6110 POKE W2,202:W3=VG:VG=161:ZG=50:GOTO 965 6200 REM *** G2 T *** 6210 POKE W2,202:W3=VH:VH=161:ZH=50:GOTO 965 9000 PRINT STRING$(38,""):PRINT "";TAB(37);"" 9001 A$(1)="KEINE ":A$(2)="SCHWERT":A$(3)="HACKE " 9002 PRINT " Programm ''PYRAMIDE''";TAB(37);"":PRINT "";TAB(37);"" 9003 PRINT STRING$(38,""):PRINT:PRINT "Nach einem Programm von KONAMI"; 9004 PRINT " (Japan)":PRINT:PRINT "KC85/1 Version 1.3 (S/W)" 9005 PRINT:PRINT "von J.Bochmann Karl-Marx-Stadt 19.9.86" 9006 PRINT:PRINT:PRINT "Kurzerlaeuterungen (J/N) ?" 9007 A$=INKEY$:IF A$="N"THEN CLS:GOTO 9030 9008 IF A$<>"J"THEN 9007 9009 OUT 136,20:CLS:PRINT "Sie ( ) wollen eine Pyramide ausrau-" 9011 PRINT "ben. Zwei boese Gespenster wollen Sie" 9013 PRINT "daran hindern .Sie koennen sich mit den" 9014 PRINT "Pfeiltasten bewegen und mit SPACE" 9016 PRINT "springen. Wenn Sie ein Schwert () oder" 9017 PRINT "eine Hacke () tragen, bewirken 'SPACE" 9018 PRINT "und PFEIL ' (links/rechts) das" 9019 PRINT "Werfen des Schwerts oder das Hacken ei-" 9021 PRINT "nes Lochs. Am besten probieren Sie es" 9023 PRINT "selbst.(Zum Glueck haben Sie 10 Leben.)":PRINT "Koennen Sie nicht"; 9024 PRINT " mehr weiter, druecken Sie 'ESC'." 9025 PRINT "Figuren :";TAB(11);" Mensch (Sie)" 9026 PRINT TAB(11);" Gespenster":PRINT TAB(11);" G O L D" 9027 PRINT TAB(11);" Hacke bzw. Schwert":PRINT TAB(11);" Tuerklinke" 9029 PRINT:PRINT:INPUT ">ENTER<";A$:CLS:OUT 136,0 9030 DATA 23,2,"",8,9,"",40 9032 RESTORE 9030:GOSUB 1000:PRINT AT(0,0);"DEFA-Dokumentarfilm 0815" 9034 S1=8:S2=10:FOR I=9 TO 21 STEP 2:PRINT AT(I,S1);"":PRINT AT(I,S2);"" 9036 PRINT AT(I+1,S1);"":PRINT AT(I+1,S2);"":S1=S1-1:S2=S2+1:NEXT I 9038 FOR I=17 TO 20:PRINT AT(39-I,I);"":NEXT 9040 FOR I=8 TO 18:PRINT AT(I,I+2);"":NEXT 9050 A$=" ":B$=" " 9055 FOR I=35 TO 19 STEP-1:PRINT AT(10,I);A$:PRINT AT(11,I);B$:PAUSE 1:NEXT 9060 PRINT AT(10,21);" ":FOR I=12 TO 20:PRINT AT(I,21);"":PAUSE 2 9061 PRINT AT(I,21);" ":NEXT 9064 PRINT AT(2,5);"ACHTUNG !! (GESPENST)" 9065 FOR I=9 TO 21:PRINT AT(7,I);"":PAUSE 2:PRINT AT(7,I);" ":NEXT 9067 DATA 8,21,"",9,20,"",10,19,"",8,21," ",11,19,"",9,20 9068 DATA " ",10,19,"",11,19,"",10,19," ",11,19," ",40 9070 READ Z:IF Z=40 THEN 9073:ELSE READ S,A$:PRINT AT(Z,S);A$:PAUSE 4:GOTO 9070 9073 FOR I=21 TO 9 STEP-1:PRINT AT(7,I);"":PAUSE 2:PRINT AT(7,I);" ":NEXT 9100 WINDOW 4,8,0,39:INPUT "Ihr Name bitte ? ";P$:WINDOW 9110 B=1:LB=10 9200 REM *** allg Steuerp.*** 9204 IF W1=2 THEN 9215 9205 CLS:PRINT AT(5,10);"Ihre Richtung:":IF B=0 THEN B=1 9206 IF W1=0 THEN PRINT AT(10,3);B-1:A$="":ELSE PRINT AT(10,3);B:A$="" 9207 IF W1=0 THEN PRINT AT(10,34);B:ELSE PRINT AT(10,34);B+1:GOTO 9209 9208 FOR I=6 TO 30:PRINT AT(10,I);" ",A$:PAUSE 2:NEXT:GOTO 9210 9209 FOR I=30 TO 6 STEP-1:PRINT AT(10,I);A$," ":PAUSE 2:NEXT 9210 FOR J=5 TO 1:PRINT AT(10,I);A$:PAUSE J:PRINT AT(10,I);" ":PAUSE J:NEXT:BEEP 9215 ON B GOTO 9220,9222,9225,9227,9230,9231 9220 RESTORE 10000:GOTO 9300 9222 RESTORE 10040:GOTO 9300 9225 RESTORE 10070:GOTO 9300 9227 RESTORE 10200:GOTO 9300 9230 RESTORE 10300:GOTO 9300 9231 GOTO 2200 9300 CLS:GOSUB 1000:GOSUB 1100:GOSUB 1200:GOSUB 1300 9305 PRINT AT(0,0);"Leben",LB:PRINT AT(0,9);"Pyramide",B 9306 PRINT AT(1,0);"Ausruestung ",A$(AU) 9307 PRINT AT(0,25);"Punkte",PZ 9310 GOTO 100 10000 REM *** data bild 1 *** 10003 DATA 8,0," ",12,0,"" 10006 DATA 12,32,"",16,1,"" 10009 DATA 20,2," ",7,28,"",11,1,"" 10012 DATA 19,29,"",22,1,"",22,38,"",22,3,"",19,20,"",40 10021 DATA 11,6,8,15,5,12,19,5,16,19,33,16,15,20,8,40 10024 DATA 11,34,8,22,6,20,22,33,20,15,34,12,19,12,16,40 10027 DATA-4839,32,1,7,1,-4235,0,32,50,22,5,-4204,0,32,105,22,36 10030 DATA 0,-4490,5,.7,.5 10040 DATA 6,1," ",5,1,"",5,24,"",10,17,"" 10041 DATA 8,26,"" 10043 DATA 9,1," ",12,22,"",10,13,"" 10046 DATA 13,1,"",12,1,"",17,28,"",14,34,"" 10049 DATA 15,19,"",14,20,"",16,16,"",17,14,"",18,11," " 10052 DATA 19,1," ",22,1,"",22,36,"",21,38,"",40 10055 DATA 12,11,9,22,10,19,16,28,12,7,27,6,40 10058 DATA 8,6,6,18,3,13,22,22,17,11,27,8,40 10061 DATA-4805,32,1,7,35,-4914,1,32,3,5,6,-4448,-1,32,20,16,32 10064 DATA-4806,-4901,6,0.7,0.6 10070 REM *** data bild 3 *** 10073 DATA 6,3,"",6,23," ",5,13,"",5,37,"" 10076 DATA 5,22," ",10,26,"",14,14,"",11,36,"" 10079 DATA 18,9,"",17,20,"",16,29,"" 10082 DATA 15,38,"",22,3,"",20,31,"",21,31," ",22,31," " 10085 DATA 7,3,"",8,3,"",9,3,"",10,3," ",11,3," ",12,3," " 10088 DATA 13,3,"",14,3," ",15,3," ",16,3,"",17,3,"" 10091 DATA 18,1," ",19,1,"",12,33,"",40 10094 DATA 17,16,6,17,8,15,40,13,15,6,13,22,10,22,8,18,22,22,12,40 10097 DATA-4732,32,1,9,28,-4886,-1,32,25,5,34,-4212,-1,32,30,22,28 10100 DATA-4733,-4224,7,0.6,0.7 10200 REM *** data bild 4 *** 10205 DATA 6,1,"",6,20,"",5,1," ",7,1,"" 10210 DATA 5,21," ",7,13,"",8,36,"",10,1,"",9,35,"" 10215 DATA 12,1,"",14,1,"",15,1,"",16,10,"",22,1,"",12,14,"" 10220 DATA 19,1,"",18,11," ",17,11,"",15,11,"" 10225 DATA 14,11,"",13,11,"",12,22,"",11,34,"" 10230 DATA 16,23,"",17,23,"",18,35,"",19,35,"",22,37,"" 10235 DATA 20,35,"",40 10240 DATA 14,7,10,22,8,19,16,28,12,11,31,6,40 10245 DATA 9,5,6,18,3,15,22,27,17,40 10250 DATA-4216,32,2,22,24,-4750,1,32,3,9,10,-4236,1,32,0,22,4 10255 DATA-4216,-4219,9,.7,.7 10300 REM *** data bild 5 *** 10305 DATA 6,1," ",5,11,"",5,35,"" 10310 DATA 10,1," ",9,11,"",9,18,"" 10315 DATA 9,24,"",9,38,"",14,2," " 10320 DATA 13,3,"",13,14," ",17,9," ",17,30,"",21,1,"",21,8,"" 10325 DATA 18,1," ",21,16,"",21,38,"" 10330 DATA 22,1," ",40 10335 DATA 13,37,10,40,9,3,6,17,3,14,21,33,18,40 10340 DATA-4916,32,1,5,4,-4747,1,32,2,9,13,-4907,1,32,2,5,13 10345 DATA-4916,-4883,10,.9,.9