1!**************************** 2!* * 3!* *** ENTERPRISE *** * 4!* * 5!* PROGRAMM BY M.BRUMME * 6!* 9022 KARL-MARX-STADT * 7!* VETTERSSTR.61 * 8!* 25.4.1974 * 9!**************************** 10 CLEAR 1000:WINDOW:CLS 20 GOSUB 4840 30!SEKTORBECHNUNG 40 DIM A(72),K(72),B(72),D(72),F$(72) 50 FOR N=1 TO 72 60 A(N)=INT(RND(1)*7+1) 70 NEXT N 80 KA=INT(RND(1)*13+36) 90 FOR S=1 TO KA 100 N=INT(RND(1)*71+1) 110 IF K(N)>0 THEN K(N)=K(N)+1:GOTO 130 120 K(N)=1 130 NEXT S 140 BA=INT((KA-21)/3) 150 FOR S=1 TO BA 160 N=INT(RND(1)*71+1) 170 IF B(N)=1 THEN S=S-1:GOTO 190 180 B(N)=1 190 NEXT S 200 E=5000:P=8 210!BILDAUFBAU 220 N=33:U=13:L=2 230 GOSUB 1370 240 D(N)=2:WINDOW:CLS 250 PRINT AT(0,0);" RAUMSEKTOR",KO,KO$ 260 ZQ$="" 270 ZU$=" " 280 FOR J=3 TO 17 290 IF J/2=INT(J/2)THEN ZZ$=ZU$:ELSE ZZ$=ZQ$ 300 PRINT AT(J,0);ZZ$:NEXT J 310!STERNE 320 ON A(N)GOTO 410,400,390,380,370,360,350,340 330 IF A(N)=0 THEN 420 340 PRINT AT(13,8);"" 350 PRINT AT(11,4);"" 360 PRINT AT(15,2);"" 370 PRINT AT(9,8);"" 380 PRINT AT(11,12);"" 390 PRINT AT(5,12);"" 400 PRINT AT(15,10);"" 410 PRINT AT(7,2);"" 420!KLINGONEN 430 IF K(N)=0 THEN 570 440 FOR I=1 TO K(N) 450 X(I)=INT(RND(1)*10+5) 460 IF X(I)/2=INT(X(I)/2)THEN X(I)=X(I)+1 470 Y(I)=INT(RND(1)*10+2) 480 IF Y(I)/2<>INT(Y(I)/2)THEN Y(I)=Y(I)-1 490 IF X(I)=U AND Y(I)=L THEN I=I-1:GOTO 560 500 FOR J=1 TO K(N) 510 IF I=J THEN 540 520 IF X(I)=X(J)THEN I=I-1:GOTO 560 530 IF Y(I)=Y(J)THEN I=I-1:GOTO 560 540 NEXT J 550 PRINT AT(X(I),Y(I));"K" 560 NEXT I 570!BASISRAUMER 580 IF B(N)=0 THEN 690 590 F=INT(RND(1)*10+5) 600 IF F/2=INT(F/2)THEN F=F-1 610 FOR I=0 TO K(N) 620 IF F=X(I)THEN 590 630 NEXT I 640 C=INT(RND(1)*10+2) 650 IF C/2<>INT(C/2)THEN C=C+1 660 FOR I=0 TO K(N) 670 IF C=Y(I)THEN 640 680 NEXT I:PRINT AT(F,C);"B" 690 IF RH=1 THEN D(N)=1:RETURN 700!ENTERPRISE 710 Q=PEEK(32*U+L-5120) 720 PRINT AT(U,L);"" 730!REPORT-RAHMEN 740 PRINT AT(0,17);"" 750 PRINT AT(1,17);" COMPUTER- " 760 PRINT AT(2,17);"":PRINT AT(2,31);"" 770 PRINT AT(3,17);" REPORT " 780 PRINT AT(4,17);"" 790 FOR Z=5 TO 16 800 PRINT AT(Z,17);"":PRINT AT(Z,31);"" 810 NEXT Z 820 PRINT AT(17,17);"" 825 IF Q<>166 THEN GOSUB 1430:GOSUB 4060 830 GOSUB 4510:GOSUB 1430:IF AH=1 THEN 1820 840 IF YH=1 THEN 2010 860 GOSUB 1220:WINDOW 19,31,0,31:CLS:WINDOW:PRINT AT(0,0);" " 870!KOMMANDO-EINGABE 880 PRINT AT(20,5);"KOMANDO-EINGABE!" 890 PRINT AT(22,0);"->HYPERANTRIEB" 900 PRINT AT(24,0);"->PLASMAWOLKE" 910 PRINT AT(26,0);"->STERNENKARTE" 920 PRINT AT(28,0);"->UMKREISSENSOREN" 930 PRINT AT(30,0);"->CHECK ENTERPRISE" 940 PRINT AT(22,19);"->ANTRIEB" 950 PRINT AT(24,19);"->TORPEDO" 960 PRINT AT(26,19);"->RAUMSEKTOR-" 970 PRINT AT(27,21);"BILD" 980 TH=TH+1:IF TH>2 THEN T=T-1:TH=0:GOSUB 4460 990 IY$=INKEY$ 1000 IF IY$="A"THEN RD=1:GOSUB 4320:ELSE 1020 1010 IF GT(1)=0 THEN PAUSE 5:GOSUB 1590:GOSUB 1760:GOTO 1820:ELSE PAUSE 20:GOTO 830 1020 IF IY$="H"THEN RD=2:GOSUB 4320:ELSE 1040 1030 IF GT(2)=0 THEN GOSUB 1590:GOSUB 1760:GOTO 2070:ELSE PAUSE 20:GOTO 830 1040 IF IY$="T"THEN RD=3:GOSUB 4320:ELSE 1060 1050 IF GT(3)=0 THEN GOSUB 1590:GOTO 2270:ELSE PAUSE 20:GOTO 830 1060 PRINT AT(20,5);"KOMANDO-EINGABE!":PAUSE 1 1070 IF IY$="S"THEN RD=6:GOSUB 4320:ELSE 1090 1080 IF GT(6)=0 THEN 3400:ELSE PAUSE 20:GOTO 830 1090 PRINT AT(20,5);STRING$(19," "):PAUSE 1 1100 IF IY$="C"THEN 3790 1110 IF IY$="R"THEN RD=7:GOSUB 4320:ELSE 1130 1120 IF GT(7)=0 THEN 2500:ELSE PAUSE 20:GOTO 830 1130 IF IY$="P"THEN RD=4:GOSUB 4320:ELSE 1150 1140 IF GT(4)=0 THEN 2740:ELSE PAUSE 20:GOTO 830 1150 IF IY$="U"THEN RD=5:GOSUB 4320:ELSE 990 1160 IF GT(5)=0 THEN 2880:ELSE PAUSE 20:GOTO 830 1170! 1180!************************** 1190!* UNTERPROGRAMME * 1200!************************** 1210! 1220!KLINGONEN-BESCHUSS 1230 IF K(N)=0 THEN RETURN 1240 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" " 1250 PRINT AT(22,0);"KLINGONENBESCHUSS" 1260 BEEP:ES=K(N)*300 1270 PRINT AT(25,0);"ENERGIESCHILD AUFGEBAUT!" 1280 PRINT AT(27,0);ES,"ENERGIE BENOETIGT" 1290 IF AGD=1 THEN 1340 1300 E=E-ES:IF E>0 THEN 1340 1310 BEEP:CLS:PRINT AT(24,0);"SIE HABEN KEINE CHANCE MEHR !" 1320 PRINT AT(27,0);"ENERGIE RESTLOS VERBRAUCHT !!!" 1330 PRINT AT(29,0);"AUSFALL LEBENSERHALTUNGSSYSTEME!":WINDOW:END 1340 GOSUB 1430:WINDOW 19,31,0,31:PRINT AT(19,0);" " 1350 PAUSE 45:CLS:WINDOW:RETURN 1360! 1370!KOORDINATENBERECHNUNG 1380 KO=INT(((N-1)/6)+1) 1390 H=N-((KO-1)*6)+64 1400 KO$=CHR$(H) 1410 RETURN 1420! 1430!COMPUTER-REPORT 1440 WINDOW 5,16,18,30:CLS 1450 PRINT "STERNTAGE ";T 1460 PRINT "ENERGIE ";E 1470 IF E<100 THEN PRINT 1480 PRINT "TORPEDO ";P 1490 IF AGD=1 THEN PRINT " ANGEDOCKT !":PRINT:ELSE PRINT:PRINT 1500 PRINT "KLINGONEN ";KA 1510 PRINT "BASISRAUMER";BA; 1520 WINDOW:PRINT AT(0,0);" " 1530 IF T<1 THEN PRINT AT(25,0);"IHRE VORRAETE SIND ERSCHOEPFT !":ELSE 1550 1540 PRINT AT(28,0);"DIE MISSION IST GESCHEITERT !!!":WINDOW:END 1550 IF KA>0 THEN RETURN:ELSE WINDOW 19,31,0,31:CLS 1560 PRINT AT(24,1);"SIE HABEN DIE GALAXIS BEFREIT !" 1570 PRINT AT(27,1);"DIE ERDE IST STOLZ AUF SIE !!!":WINDOW:END 1580! 1590!RICHTUNG 1600 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" " 1610 PRINT AT(25,2);"RICHTUNG" 1620 PRINT AT(23,19);"W E R":PRINT AT(24,20);"" 1630 PRINT AT(25,19);"AD":PRINT AT(26,20);"" 1640 PRINT AT(27,19);"Y X C":IY$="" 1650 IY$=INKEY$ 1660 IF IY$="W"THEN M=-2:LC=-2:W=-7:GOTO 1740 1670 IF IY$="E"THEN M=0:LC=-2:W=-6:GOTO 1740 1680 IF IY$="R"THEN M=2:LC=-2:W=-5:GOTO 1740 1690 IF IY$="A"THEN M=-2:LC=0:W=-1:GOTO 1740 1700 IF IY$="D"THEN M=2:LC=0:W=1:GOTO 1740 1710 IF IY$="Y"THEN M=-2:LC=2:W=5:GOTO 1740 1720 IF IY$="X"THEN M=0:LC=2:W=6:GOTO 1740 1730 IF IY$="C"THEN M=2:LC=2:W=7:ELSE 1650 1740 CLS:PRINT AT(19,0);" ":RETURN 1750! 1760!ENTFERNUGS-WAHL 1770 PRINT AT(25,2);"ENTFERNUNGS-WAHL (0..9) 1780 IY$=INKEY$:IF IY$=""THEN 1780:ELSE SW=ASC(IY$)-48 1790 IF SW<0 OR SW>9 THEN 1780 1800 CLS:RETURN 1820!ANTRIEB 1830 AH=0 1840 IF SW=0 THEN WINDOW 19,31,0,31:CLS:GOTO 830 1850 FOR IJ=1 TO SW 1860 GOSUB 4510 1870 IF ADG=1 THEN 1890 1880 E=E-10:IF E<1 THEN 4730 1890 KU=U:U=U+LC 1900 IF U<3 THEN SW=SW-IJ:D(N)=1:AHH=1:GOSUB 2120:N=N-6:GOSUB 2200:U=17:ELSE 1920 1910 AHH=0:AH=1 1920 IF U>17 THEN SW=SW-IJ:D(N)=1:AHH=1:GOSUB 2120:N=N+6:GOSUB 2200:U=3:ELSE 1940 1930 AHH=0:AH=1 1940 KL=L:L=L+M 1950 IF L<0 THEN SW=SW-IJ:D(N)=1:AHH=1:GOSUB 2120:N=N-1:GOSUB 2200:ELSE 1970 1960 AHH=0:L=14:AH=1 1970 IF L>14 THEN SW=SW-IJ:D(N)=1:AHH=1:GOSUB 2120:N=N+1:GOSUB 2200:ELSE 1990 1980 AHH=0:L=0:AH=1 1990 IF AH=1 THEN 230 2000 PRINT AT(KU,KL);"" 2010 Q=PEEK(32*U+L-5120) 2020 PRINT AT(U,L);"" 2030 IF Q<>166 THEN IJ=SW:GOSUB 4060 2040 IF YH=1 THEN YH=0:GOTO 840 2050 NEXT IJ:AH=0:GOTO 830 2060! 2070!HYPERANTRIEB 2080 D(N)=1:PRINT AT(23,5);"HYPERANTRIEB !":PRINT AT(19,0);" " 2090 IF SW=0 THEN WINDOW 19,31,0,31:CLS:GOTO 830 2100 IF SW>5 THEN TH=TH-1 2110 FOR JI=1 TO SW 2120 FOR S=1 TO 67 STEP 6 2130 IF AHH=1 AND L>0 THEN 2150 2140 IF N=S AND W=5 OR N=S AND W=-7 OR N=S AND W=-1 THEN 4800 2150 IF AHH=1 AND L<14 THEN 2170 2160 IF N=S+5 AND W=1 OR N=S+5 AND W=7 OR N=S+5 AND W=-5 THEN 4800 2170 NEXT S 2180 IF AHH=1 THEN RETURN 2190 N=N+W 2200 IF N<1 OR N>72 THEN 4800 2210 IF AHH=1 THEN RETURN 2220 IF ADG=1 THEN 2240 2230 E=E-100:IF E<1 THEN 4730 2240 GOSUB 1430:YH=1 2250 NEXT JI:GOTO 230 2260! 2270!TORPEDO 2280 R=U:O=L:P=P-1:IF P<0 THEN PRINT AT(25,2);"TORPEDOS SIND ALLE !":P=0:GOTO 2480 2290 PRINT AT(23,4);"TORPEDO !":RT=0:FOR TP=1 TO 10 2300 PH=R:RT=RT+1 2310 R=R+LC:OH=O:O=O+M 2320 IF R<3 OR R>17 THEN 2470 2330 IF O<0 OR O>14 THEN 2470 2340 Q=PEEK(32*R+O-5120) 2350 IF Q=166 THEN PAUSE 2:HH=0:GOTO 2410:ELSE HH=1 2360 TP=10 2370 ZQ$="KLINGONE VERNICHTET !":ZU$="BASISRAUMER VERNICHTET !":ZZ$="" 2380 IF Q=75 THEN ZZ$=ZQ$:KA=KA-1:K(N)=K(N)-1 2390 IF Q=66 THEN ZZ$=ZU$:BA=BA-1:B(N)=0 2400 IF Q=201 THEN ZZ$="STERN VERNICHTET !":A(N)=A(N)-1 2410 IF RT=1 THEN 2430 2420 PRINT AT(PH,OH);"" 2430 PRINT AT(R,O);"" 2440 IF HH=1 THEN 2460 2450 NEXT TP:GOTO 2480 2460 PRINT AT(25,2);ZZ$:PRINT AT(R,O);"":GOTO 2480 2470 PRINT AT(PH,OH);"" 2480 PAUSE 10:WINDOW 19,31,0,31:CLS:GOTO 830 2490! 2500!RAUMSKTORBILD 2510 WINDOW 19,31,0,31:CLS:E=E-20:PRINT AT(19,0);" " 2520 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT " RAUMSEKTOR ? (ZEILE,SPALTE)" 2530 PRINT:INPUT " --";RA,RA$ 2540 NH=N:RSH=ASC(RA$)-64 2550 IF RSH<1 OR RSH>6 THEN 2510 2560 IF RA<1 OR RA>12 THEN 2510 2570 N=((RA-1)*6)+RSH 2580 IF D(N)=0 THEN CLS:PRINT AT(25,2);"SEKTOR NICHT ERFORSCHT !":ELSE 2600 2590 PRINT AT(19,0);" ":PAUSE 15:CLS:N=NH:GOTO 830 2600 RH=1:GOSUB 230:RH=0 2610 PRINT AT(24,9);"RAUMSEKTORBILD" 2620 PRINT AT(30,24);">ENTER<" 2630 PRINT AT(4,17);"BEACHTEN SIE," 2640 PRINT AT(6,17);"DASS SICH" 2650 PRINT AT(8,17);"KLINGONEN UND" 2660 PRINT AT(10,17);"BASISRAUMER" 2670 PRINT AT(12,17);"INNERHALB DES" 2680 PRINT AT(14,17);"SEKTORS BEWEGEN" 2690 PRINT AT(16,17);"KOENNEN !" 2700 BEEP:N=NH 2710 IY$=INKEY$:IF IY$=""THEN 2710 2720 GOTO 230 2730! 2740!PLASMAWOLKE 2750 WINDOW 19,31,0,31:CLS:ES=0:PRINT AT(19,0);" " 2760 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT " PLASMAWOLKE !" 2770 PRINT:INPUT " ENERGIEMENGE --";ES 2780 IF AGD=1 THEN 2810 2790 E=E-ES:IF E<1 THEN 4730 2800 GOSUB 1430 2810 IF K(N)=0 THEN PRINT AT(26,2);"VERSCHWENDUNG ! ":GOTO 2860 2820 EBN=K(N)*300+200 2830 IF ES<EBN THEN PRINT AT(26,2);EBN-ES,"ENERGIE ZU WENIG !":GOTO 2860 2840 PRINT AT(26,2);"KLINGONEN VERNICHTET !" 2850 KA=KA-K(N):K(N)=0:BEEP 2860 PAUSE 20:GOTO 230 2870! 2880!UMKREISSENSOREN 2890 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" " 2900 US=3 2910 FOR UH=5 TO 7 2920 NU=N-UH:IF NU<1 THEN U(US)=0:GOTO 2940 2930 U(US)=A(NU)*100+K(NU)*10+B(NU) 2940 US=US-1 2950 NEXT UH 2960 IF N-1<1 THEN 2980 2970 U(4)=A(N-1)*100+K(N-1)*10+B(N-1) 2980 IF N+1>72 THEN 3000 2990 U(6)=A(N+1)*100+K(N+1)*10+B(N+1) 3000 FOR UH=5 TO 7 3010 IF N+UH>72 THEN U(UH+2)=0:GOTO 3030 3020 U(UH+2)=A(N+UH)*100+K(N+UH)*10+B(N+UH) 3030 NEXT UH 3040 FOR UH=1 TO 9 3050 IF UH=5 THEN NEXT UH 3060 F$(UH)=STR$(U(UH)) 3070 NEXT UH 3080 F$(5)=" *KB" 3090 PRINT AT(23,0);"UMKREIS-":I=1 3100 PRINT AT(25,0);"SENSOREN-BILD" 3110 IF N=I THEN 3140 3120 I=I+6:IF I>67 THEN 3150 3130 GOTO 3110 3140 F$(1)="":F$(4)="":F$(7)="" 3150 IF N/6<>INT(N/6)THEN 3170 3160 F$(3)="":F$(6)="":F$(9)="" 3170 IF N-6>0 THEN 3190 3180 F$(1)="":F$(2)="":F$(3)="" 3190 IF N+6<73 THEN 3210 3200 F$(7)="":F$(8)="":F$(9)="" 3210 UY=19:UX=21 3220 FOR US=1 TO 9 3230 PRINT AT(UX,UY);F$(US) 3240 IF UY=27 THEN UY=15:UX=UX+3 3250 UY=UY+4 3260 NEXT US 3270 IY$=INKEY$ 3280 PRINT AT(30,25);">ENTER<" 3290 IF IY$=""THEN 3270 3300 IF F$(1)<>""THEN D(N-7)=1 3310 IF F$(2)<>""THEN D(N-6)=1 3320 IF F$(3)<>""THEN D(N-5)=1 3330 IF F$(4)<>""THEN D(N-1)=1 3340 IF F$(6)<>""THEN D(N+1)=1 3350 IF F$(7)<>""THEN D(N+5)=1 3360 IF F$(8)<>""THEN D(N+6)=1 3370 IF F$(9)<>""THEN D(N+7)=1 3380 CLS:GOTO 830 3390! 3400!STERNENKARTE 3410 WINDOW:CLS:PRINT AT(0,0);"" 3420 FOR S=1 TO 30 3430 PRINT AT(S,0);"":PRINT AT(S,4);"":PRINT AT(S,30);"" 3440 NEXT S 3450 FS$=STRING$(29,"") 3460 PRINT AT(0,1);FS$:PRINT AT(2,1);FS$:PRINT AT(30,1);FS$ 3470 PRINT AT(28,1);FS$ 3480 PRINT AT(30,0);"":PRINT AT(30,30);"" 3490 PRINT AT(28,0);"":PRINT AT(28,4);"":PRINT AT(28,30);"" 3500 PRINT AT(0,0);"":PRINT AT(2,0);"" 3510 PRINT AT(0,30);"":PRINT AT(2,30);"" 3520 PRINT AT(1,1);"*KB":PRINT AT(1,7);"A":PRINT AT(1,11);"B" 3530 PRINT AT(1,15);"C":PRINT AT(1,19);"D":PRINT AT(1,23);"E" 3540 PRINT AT(1,27);"F" 3550 SX=2 3560 FOR S=1 TO 9 3570 SX=SX+2 3580 PRINT AT(SX,1);S 3590 NEXT S:PRINT AT(29,1);"STERNENKARTE":PRINT AT(29,23);">ENTER<" 3600 PRINT AT(22,1);"10":PRINT AT(24,1);"11":PRINT AT(26,1);"12" 3610 NH=N:PRINT AT(15,10);"BITTE WARTEN !" 3620 FOR N=1 TO 72 3630 IF D(N)=0 THEN F$(N)=" XXX":GOTO 3660 3640 IF D(N)=2 THEN F$(N)=" *KB":GOTO 3660 3650 F$(N)=STR$(A(N)*100+K(N)*10+B(N)) 3660 NEXT N:N=1:PRINT AT(15,10);STRING$(15," ") 3670 FOR G=4 TO 26 STEP 2 3680 FOR M=5 TO 25 STEP 4 3690 PRINT AT(G,M);F$(N) 3700 N=N+1 3710 NEXT M:NEXT G 3720 N=NH:IY$="" 3730 IY$=INKEY$ 3740 IF IY$<>CHR$(13)THEN 3730 3750 E=E-25:IF E<1 THEN 4730 3760 TH=TH+1:IF TH>6 THEN T=T-1:TM=0 3770 GOTO 230 3780! 3790!CHECK ENTERPRISE 3800 WINDOW:CLS 3810 PRINT AT(3,4);"CHECK ENTERPRISE" 3820 PRINT AT(5,21);"REPARATUR-":PRINT AT(6,21);"DAUER" 3830 PRINT AT(8,2);"BORDSYSTEM":PRINT AT(8,18);"ZUSTAND" 3840 PRINT AT(8,27);"TAGE" 3850 PRINT AT(11,2);"ANTRIEB":PRINT AT(13,2);"HYPERANTRIEB" 3860 PRINT AT(15,2);"TORPEDO-ANTRIEB":PRINT AT(17,2);"PLASMAWOLKE" 3870 PRINT AT(19,2);"UMKREISSENSOREN":PRINT AT(21,2);"STERNENKARTE" 3880 PRINT AT(23,2);"RAUMSEKTOR-BILD":PRINT AT(30,21);">ENTER<" 3890 CB$="BEREIT":CD$="DEFECKT" 3900 FOR S=1 TO 7 3910 IF TG(S)=0 THEN CC$(S)=CB$:ELSE CC$(S)=CD$ 3920 NEXT S:CX=9 3930 FOR S=1 TO 7 3940 CX=CX+2 3950 PRINT AT(CX,18);CC$(S) 3960 IF TG(S)=0 THEN 3990 3970 PRINT AT(CX,29);TG(S) 3980 TG(S)=TG(S)-1 3990 NEXT S 4000 T=T-1:PRINT AT(0,0);" " 4010 IY$="" 4020 IY$=INKEY$ 4030 IF IY$<>CHR$(13)THEN 4020 4040 GOTO 230 4050! 4060!KOLOSION 4070 KH=1 4080 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" " 4090 IF Q=201 THEN ALS=3:A(N)=A(N)-1:AL$="STERN !" 4100 IF Q=75 THEN ALS=1:K(N)=K(N)-1:KA=KA-1:AL$="KLINGON !" 4110 IF Q=66 THEN ALS=2:B(N)=B(N)-1:BA=BA-1:AL$="BASISRAUMER !" 4120 IF AL$=""THEN RETURN 4130 PRINT AT(22,5);"KOLOSION MIT ",AL$ 4140 PRINT AT(24,5);"ARLARMSTUFE",ALS 4150 BEEP:BEEP:BEEP 4160 FOR S=1 TO 10 4170 BEEP:PRINT AT(U,L);"":PRINT AT(26,5);"ENTERPRISE BESCHAEDIGT !":PAUSE 2 4180 PRINT AT(26,5);STRING$(23," "):PRINT AT(U,L);"":BEEP:PAUSE 2:NEXT S 4190 PRINT AT(26,5);"ENTERPRISE BESCHAEDIGT":CK=INT(RND(1)*7+1) 4200 PRINT AT(28,5);"HINDERNISS VERNICHTET !":PAUSE 1:FOR S=1 TO CK 4210 CA=INT(RND(1)*7+1) 4220 TG(CA)=INT(RND(1)*6+1) 4230 NEXT S:PAUSE 20:CLS:IF TG(1)<6 AND TG(2)<6 THEN 4300 4240 PRINT:PRINT:PRINT:PRINT:PRINT " ALLE ANTRIEBSSYSTEME DEFECKT" 4250 PRINT:PRINT " REPARATUR NICHT MOEGLICH !" 4260 BEEP:PRINT:PRINT "SIE DRIFTEN ANTRIEBSLOS IM ALL !":WINDOW:END 4270 PRINT:PRINT 4280 IF CK=8 THEN PRINT:PRINT:PRINT:PRINT "SAEMTLICHE BORDSYSTEME DEFECKT !" 4290 PRINT:PRINT " KEINE RETTUNG MEHR MOEGLICH !" 4300 AL$="":Q=166:RETURN 4310! 4320!REPARATURDAUER 4330 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" " 4340 IF TG(RD)=0 THEN GT(RD)=0:RETURN 4350 ON RD GOTO 4360,4370,4380,4390,4400,4410,4420 4360 RD$=" ANTRIEB":GOTO 4430 4370 RD$="HYPERANTRIEB":GOTO 4430 4380 RD$=" TORPEDO-ANTRIEB":GOTO 4430 4390 RD$=" PLASMAWOLKE":GOTO 4430 4400 RD$="UMKREISSENSOREN":GOTO 4430 4410 RD$=" STERNENKARTE":GOTO 4430 4420 RD$="RAUMSEKTOR-BILD" 4430 PRINT AT(24,2);RD$," DEFECKT !" 4440 PRINT AT(26,2);"REPARATURDAUER",TG(RD),"STERNENTAGE" 4450 T=T-1 4460 FOR S=1 TO 7 4470 TG(S)=TG(S)-1 4480 IF TG(S)<0 THEN TG(S)=0:GT(S)=0:ELSE GT(S)=1 4490 NEXT S:RETURN 4500! 4510!ANDOCKKONTROLLE 4520 DH=1 4530 AG=0:AD=2:GOTO 4680 4540 DH=2 4550 AG=-2:AD=2:GOTO 4680 4560 DH=3 4570 AG=-2:AD=0:GOTO 4680 4580 DH=4 4590 AG=-2:AD=-2:GOTO 4680 4600 DH=5 4610 AG=0:AD=-2:GOTO 4680 4620 DH=6 4630 AG=2:AD=-2:GOTO 4680 4640 DH=7 4650 AG=2:AD=0:GOTO 4680 4660 DH=8 4670 AG=2:AD=2:GOTO 4680 4680 Q=PEEK(32*(U+AG)+(L+AD)-5120) 4690 IF Q=66 THEN AGD=1:E=5000:P=8:RETURN:ELSE AGD=0 4700 IF DH=8 THEN RETURN 4710 ON DH GOTO 4540,4560,4580,4600,4620,4640,4660 4720! 4730!VERSCHOLLEN 4740 WINDOW 19,31,0,31:CLS:PRINT AT(19,0);" ":BEEP:BEEP 4750 PRINT AT(23,0);"IHRE ENERGIE REICHTE NICHT AUS !" 4760 PRINT AT(25,0);"SIE SIND IM HYPERRAUM":PRINT AT(27,0);"VERSCHOLLEN !!!" 4770 PAUSE 50:WINDOW:BEEP:CLS 4780 BEEP:END 4790! 4800!GALAGSIS GEFLOHEN 4810 GL=1:BEEP:BEEP:BEEP 4820! 4830 WINDOW:CLS 4840!TITEL 4850 PRINT AT(0,0);" " 4860 DATA " " 4870 DATA " " 4880 DATA " " 4890 DATA " " 4900 RESTORE 4860:FOR I=25 TO 28:READ A$:PRINT AT(I,1);A$:NEXT I 4910 PRINT AT(24,23);"":PRINT AT(29,17);"" 4920 PRINT AT(23,0);"",STRING$(30,""),"" 4930 FOR I=24 TO 29:PRINT AT(I,0);"":PRINT AT(I,31);"":NEXT I 4940 PRINT AT(30,0);"",STRING$(30,""),"" 4950 FOR I=1 TO 70 4960 V=INT(RND(1)*21):W=INT(RND(1)*31) 4970 Z=INT(RND(1)*17+207) 4980 IF Z=207 THEN Z=42 4990 IF Z=223 THEN Z=201 5000 PRINT AT(V,W);CHR$(Z) 5010 NEXT I:PAUSE 20 5020 A$=" " 5030 B$=" " 5040 C$=" " 5050 FOR J=1 TO 3:B=1:GH=0 5060 FOR I=-31 TO 12 5070 IF GH=0 THEN G=ABS(I):ELSE G=0 5080 F=I+32:IF F>14 THEN F=14 5090 IF G=0 AND J=3 THEN 5160 5100 IF G=0 THEN B=B+1:GH=1 5110 PRINT AT(10,G);MID$(A$,B,F) 5120 PRINT AT(11,G);MID$(B$,B,F) 5130 PRINT AT(12,G);MID$(C$,B,F) 5140 PAUSE 1:NEXT I 5150 PAUSE 25:NEXT J 5160 WINDOW 2,20,15,31:CLS 5170 IF GL=1 THEN 5270 5180 PRINT:PRINT:PRINT:PRINT "FUER WIEVIEL TAGE" 5190 PRINT "MOECHTEN SIE":PRINT:PRINT "VORRAETE LADEN ?" 5200 PRINT:PRINT:INPUT "--";T 5210 IF T<40 THEN PRINT:PRINT "DAMIT KOMMEN SIE":PRINT:PRINT "KAUM AUS !!":GOTO 5200 5220 IF T<55 THEN PRINT:PRINT "WENN SIE":PRINT:PRINT "UNBEDINGT WOLLEN!" 5230 IF T>70 THEN PRINT:PRINT "SOVIEL TRAEGT":PRINT:PRINT "ENTERPRISE" 5240 IF T>70 THEN PRINT:PRINT "NICHT !!!":GOTO 5200 5250 PRINT:PRINT:PRINT "OKEY.":PRINT:PRINT "ENTERPRISE":PRINT:PRINT "STARTET !!!" 5260 PRINT AT(20,15);" ":RETURN 5270 PRINT:PRINT:PRINT "SIE MISERRABLER":PRINT:PRINT "FEIGLING !!" 5280 PRINT:PRINT "SIE SIND AUS DER":PRINT:PRINT "GALAXIS GEFLOHEN!" 5290 PRINT:PRINT "DIE ERDE":PRINT:PRINT "VERACHTET SIE !!!" 5300 WINDOW:END