BEFEHLSLISTE :
--------------
NAV - NAVIGATION IM RAUM
SRS - KURZSTRECKENSENSOREN
LRS - LANGSTRECKENSENSOREN
PHA - PHASER STEUERN
TOR - PHOTONENTORPEDO
SHE - SCHILD AUFLADEN
DAM - FEHLERUEBERWACHUNG
COM - COMPUTERDIALOG
XXX - AUFGEBEN
Der Weltraum -
unendliche Weiten...
Dies sind die Abenteuer
des Raumschiffs ENTERPRISE
die mit ihrer 400 Mann starken
Besatzung unterwegs ist, um
die feindliche Bedrohung durch
die Klingonen abzuwehren und
die Planeten der Foederation
vor feindlichen Angriffen zu
schuetzen.
IHRE MISSION IST FOLGENDE
-------------------------
ZERSTOEREN SIE DIE 26 KLINGONEN-
KRIEGSSCHIFFE, DIE IN DIE
GALAXIS EINGEDRUNGEN SIND,
BEVOR SIE DAS HAUPTQUARTIER
DER FOEDERATION ANGREIFEN.
KOENNEN, BIS ZUR STERNZEIT 2627
SIE HABEN 27 TAGE DAFUER ZEIT.
ES BEFINDEN SICH 2 STERNBASEN
IN DER GALAXIS, UM IHR SCHIFF ZU
VERSORGEN.
SIND SIE BEREIT DAS KOMMANDO
ZU UEBERNEHMEN (Y/N) █
Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)
1 GOSUB 558
2 GOTO 5
3 PRINT AT(29,23);">ENTER<":A$=INKEY$:IF A$=""THEN 3 :A$="":CLS
4 PRINT AT(29,23);" ": RETURN
5 CLEAR 600
6 CLS
7 PRINT "Der Weltraum -":PRINT:PRINT "unendliche Weiten..."
8 PRINT:PRINT "Dies sind die Abenteuer":PRINT
9 PRINT "des Raumschiffs ENTERPRISE":PRINT
10 PRINT "die mit ihrer 400 Mann starken "
11 PRINT "Besatzung unterwegs ist, um "
12 PRINT "die feindliche Bedrohung durch "
13 PRINT "die Klingonen abzuwehren und "
14 PRINT "die Planeten der Foederation "
15 PRINT "vor feindlichen Angriffen zu "
16 PRINT "schuetzen.":PRINT
17 Z$=" "
18 DIM G(8,8),C(9,2),K(3,3),N(3),Z(8,8),D(8)
19 T=INT(RND(1)*20+20)*100:T0=T:T9=25+INT(RND(1)*10):D0=0:E=3000:E0=E
20 P=10:P0=P:S9=200:S=0:B9=0:K9=0:X$="IS ":X0$="T "
21 DEF FN D(D)=SQR((K(I,1)-S1)^2+(K(I,2)-S2)^2)
22 DEF FN R(R)=INT(RND(R)*7.98+1.01)
23 Q1=FN R(1):Q2=FN R(1):S1=FN R(1):S2=FN R(1)
24 FOR I=1 TO 9:C(I,1)=0:C(I,2)=0:NEXT
25 C(3,1)=-1:C(2,1)=-1:C(4,1)=-1:C(4,2)=-1:C(5,2)=-1:C(6,2)=-1
26 C(1,2)=1:C(2,2)=1:C(6,1)=1:C(7,1)=1:C(8,1)=1:C(8,2)=1:C(9,2)=1
27 FOR I=1 TO 8:D(I)=0:NEXT
28 A1$="NAVSRSLRSPHATORSHEDAMCOMXXX"
29 FOR I=1 TO 8:FOR J=1 TO 8:K3=0:Z(I,J)=0:R1=RND(1)
30 IF R1>.98 THEN K3=3:K9=K9+3:GOTO 33
31 IF R1>.95 THEN K3=2:K9=K9+2:GOTO 33
32 IF R1>.8 THEN K3=1:K9=K9+1
33 B3=0:IF RND(1)>.96 THEN B3=1:B9=B9+1
34 G(I,J)=K3*100+B3*10+FN R(1):NEXT J:NEXT I:IF K9>T9 THEN T9=K9+1
35 IF B9<>0 THEN 38
36 IF G(Q1,Q2)<200 THEN G(Q1,Q2)=G(Q1,Q2)+100:K9=K9+1
37 B9=1:G(Q1,Q2)=G(Q1,Q2)+10:Q1=FN R(1):Q2=FN R(1)
38 K7=K9:IF B9<>1 THEN X$="EN ":X0$="N "
39 GOSUB 3
40 PRINT "IHRE MISSION IST FOLGENDE"
41 PRINT "-------------------------":PRINT:PRINT
42 PRINT "ZERSTOEREN SIE DIE";K9;"KLINGONEN-"
43 PRINT "KRIEGSSCHIFFE,DIE IN DIE":PRINT
44 PRINT "GALAXIS EINGEDRUNGEN SIND,":PRINT
45 PRINT "BEVOR SIE DAS HAUPTQUARTIER":PRINT
46 PRINT "DER FOEDERATION ANGREIFEN.":PRINT
47 PRINT "KOENNEN,BIS ZUR STERNZEIT";T0+T9:PRINT
48 PRINT "SIE HABEN";T9;"TAGE DAFUER ZEIT.":PRINT
49 PRINT "ES BEFINDE";X0$;"SICH";B9;"STERNBAS";X$:PRINT
50 PRINT "IN DER GALAXIS,UM IHR SCHIFF ZU "
51 PRINT "VERSORGEN.":PRINT
52 PRINT:PRINT:PRINT "SIND SIE BEREIT DAS KOMMANDO":PRINT
53 INPUT "ZU UEBERNEHMEN (Y/N)";I5$
54 IF I5$="Y"THEN 55:ELSE 52
55!
56 GOSUB 487
57 WINDOW 1,18,2,29
58 Z4=Q1:Z5=Q2:K3=0:B3=0:S3=0:G5=0:D4=.5*RND(1):Z(Q1,Q2)=G(Q1,Q2)
59 IF Q1<1 OR Q1>8 OR Q2<1 OR Q2>8 THEN 75
60 GOSUB 455:PRINT:IF T0<>T THEN 65
61 PRINT "IHRE MISSION BEGINNT. ":PRINT
62 PRINT "DIE ENTERPRISE BEFINDET SICH"
63 PRINT "IN DEM GALAKTISCHEN ":PRINT
64 PRINT "QUADRANTEN ";G2$;" .":GOTO 67
65 CLS:PRINT:PRINT "SIE FLIEGEN IN DEN ":PRINT
66 PRINT "QUADRANTEN ";G2$:PRINT:PRINT "EIN ."
67 PRINT:K3=INT(G(Q1,Q2)*.01):B3=INT(G(Q1,Q2)*.1)-10*K3
68 S3=G(Q1,Q2)-100*K3-10*B3:IF K3=0 THEN 74
69 PRINT "FEINDGEBIET ALARMSTUFE ";:FOR BE=1 TO 10:PRINT "ROT";:BEEP:PAUSE 3
70 PRINT CHR$(8);CHR$(8);CHR$(8);:PRINT " ";CHR$(8);CHR$(8);CHR$(8);:PAUSE 3
71 NEXT:PRINT "ROT":PRINT
72 IF S>200 THEN 74
73 PRINT "SCHILDENERGIE GEFAEHRLICH":PRINT:PRINT "KLEIN"
74 FOR I=1 TO 3:K(I,1)=0:K(I,2)=0:NEXT
75 FOR I=1 TO 3:K(I,3)=0:NEXT:Q$=Z$+Z$+Z$+Z$+Z$+Z$+Z$+LEFT$(Z$,17)
76 A$=""+CHR$(154)+"":Z1=S1:Z2=S2:GOSUB 438:IF K3<1 THEN 79
77 FOR I=1 TO K3:GOSUB 436:A$="":Z1=R1:Z2=R2
78 GOSUB 438:K(I,1)=R1:K(I,2)=R2:K(I,3)=S9*(.5+RND(1)):NEXT
79 IF B3<1 THEN 81
80 GOSUB 436:A$=CHR$(151)+"":Z1=R1:B4=R1:Z2=R2:B5=R2:GOSUB 438
81 FOR I=1 TO S3:GOSUB 436:A$=" * ":Z1=R1:Z2=R2:GOSUB 438:NEXT
82 GOSUB 328
83 GOSUB 350:IF S+E>10 THEN IF E>10 OR D(7)=0 THEN 95
84 PRINT
85 PRINT " ** FATALER FEHLER **"
86 PRINT
87 PRINT "SIE SIND SCHIFFBRUECHIGE IM":PRINT
88 PRINT SPC(9);"WELTRAUM!"
89 PRINT
90 PRINT "SIE HABEN ZU WENIG"
91 PRINT "ANTRIEBSENERGIE UND ES "
92 PRINT "KANN KEINE ENERGIE VOM "
93 PRINT "SCHILD IN DEN":PRINT "MASCHIENENRAUM UMGELEITET":PRINT "WERDEN."
94 PRINT:GOSUB 3:GOTO 312
95 WINDOW 28,30,22,30:INPUT "BEFEHL :";A$:PRINT
96 FOR I=1 TO 9:IF LEFT$(A$,3)<>MID$(A1$,3*I-2,3)THEN 99
97 CLS:WINDOW 1,18,2,29:CLS:PRINT
98 ON I GOTO 112,82,184,199,228,266,276,360,315
99 NEXT
100 CLS:WINDOW 1,18,2,29:CLS:PRINT
101 PRINT "BEFEHLSLISTE :"
102 PRINT "--------------"
103 PRINT:PRINT "NAV - NAVIGATION IM RAUM"
104 PRINT "SRS - KURZSTRECKENSENSOREN"
105 PRINT "LRS - LANGSTRECKENSENSOREN"
106 PRINT "PHA - PHASER STEUERN"
107 PRINT "TOR - PHOTONENTORPEDO"
108 PRINT "SHE - SCHILD AUFLADEN"
109 PRINT "DAM - FEHLERUEBERWACHUNG"
110 PRINT "COM - COMPUTERDIALOG"
111 PRINT "XXX - AUFGEBEN ":GOTO 83
112 INPUT "KURS (1-9)";C1:PRINT:IF C1=9 THEN C1=1
113 IF C1>=1 AND C1<9 THEN 115
114 PRINT "LT. SULU :":PRINT:PRINT "FALSCHE KURSDATEN,SIR!":GOTO 83
115 X$="8":IF D(1)<0 THEN X$=".2"
116 PRINT "TEMPO (WARP 0-";X$;"):";:INPUT " ";W1:PRINT
117 IF D(1)<0 AND W1>.2 THEN 123
118 IF W1>0 AND W1<=8 THEN 125
119 IF W1=0 THEN 83
120 PRINT "CHEFINGENIEUR SCOTT :":PRINT:PRINT "GESCHWINDIGKEIT WARP";W1
121 PRINT:PRINT "UEBERSCHREITET DIE MAXIMALE":PRINT
122 PRINT "TRIEBWERKSLEISTUNG!":PRINT:GOTO 83
123 PRINT "WARP-TRIEBWERKE SIND DEFEKT."
124 PRINT "HOECHSTGESCHWINDIGKEIT":PRINT:PRINT "BETRAEGT WARP=0.2 !":GOTO 83
125 N=INT(W1*8+.5):IF E-N>0 THEN 133
126 PRINT "ENERGIEZENTRALE :":PRINT:PRINT "KEINE AUSREICHENDE ENERGIE"
127 PRINT:PRINT "FUER MANOEVER MIT WARP";W1:PRINT:PRINT "VERFUEGBAR!!":PRINT
128 IF S<N-E OR D(7)<0 THEN 83
129 PRINT "DEFLEKTORSTEUERRAUM :":PRINT
130 PRINT " DAS SCHUTZSCHILD IST AUF":PRINT:PRINT S;
131 PRINT "EINHEITEN AUFGELADEN."
132 GOTO 83
133 FOR I=1 TO K3:IF K(I,3)=0 THEN 136
134 A$=" ":Z1=K(I,1):Z2=K(I,2):GOSUB 438:GOSUB 436
135 K(I,1)=Z1:K(I,2)=Z2:A$="":GOSUB 438
136 NEXT:GOSUB 294:D1=0:D6=W1:IF W1>1 THEN D6=1
137 FOR I=1 TO 8:IF D(I)>=0 THEN 142
138 D(I)=D(I)+D6:IF D(I)>-.1 AND D(I)<0 THEN D(I)=-.1:GOTO 142
139 IF D(I)<0 THEN 142
140 IF D1<>1 THEN D1=1:PRINT "AUTOMATISCHE":PRINT:PRINT "FEHLERUEBERWACHUNG :"
141 R1=I:GOSUB 443:PRINT:PRINT G2$:PRINT:PRINT "REPERATUR ABGESCHLOSSEN."
142 PRINT:NEXT:IF RND(1)>.2 THEN 150
143 R1=FN R(1):IF RND(1)>.6 THEN 147
144 D(R1)=D(R1)-(RND(1)*5+1):PRINT "AUTOMATISCHE":PRINT
145 PRINT "GERAETEUEBERWACHUNG :":PRINT
146 GOSUB 443:PRINT G2$:PRINT:PRINT "DEFEKT":GOSUB 3:GOTO 150
147 D(R1)=D(R1)+RND(1)*3+1:PRINT "AUTOMATISCHE":PRINT
148 PRINT "GERAETEUEBERWACHUNG :":PRINT
149 GOSUB 443:PRINT G2$:PRINT:PRINT "STAND DER REPERATUR GEPRUEFT":PAUSE 20
150 A$=" ":Z1=INT(S1):Z2=INT(S2):GOSUB 438
151 X1=C(C1,1)+(C(C1+1,1)-C(C1,1))*(C1-INT(C1)):X=S1:Y=S2
152 X2=C(C1,2)+(C(C1+1,2)-C(C1,2))*(C1-INT(C1)):Q4=Q1:Q5=Q2
153 FOR I=1 TO N:S1=S1+X1:S2=S2+X2:IF S1<1 OR S1>=9 OR S2<1 OR S2>=9 THEN 163
154 S8=INT(S1)*24+INT(S2)*3-26:IF MID$(Q$,S8,2)=" "THEN 158
155 S1=INT(S1-X1):S2=INT(S2-X2):PRINT "WARP-TRIEBWERKE ABGESCHALTET"
156 PRINT "IM SEKTOR";S1;" WEGEN":PRINT:PRINT "NAVIGATIONSFEHLER!":GOSUB 3
157 GOTO 159
158 NEXT:S1=INT(S1):S2=INT(S2)
159 A$=""+CHR$(154)+"":Z1=INT(S1):Z2=INT(S2):GOSUB 438:GOSUB 180:T8=1
160 IF W1<1 THEN T8=.1*INT(10*W1)
161 T=T+T8:IF T>T0+T9 THEN PRINT "IHRE ZEIT IST ABGELAUFEN":PRINT:GOTO 312
162 GOTO 82
163 X=8*Q1+X+N*X1:Y=8*Q2+Y+N*X2:Q1=INT(X/8):Q2=INT(Y/8):S1=INT(X-Q1*8)
164 S2=INT(Y-Q2*8):IF S1=0 THEN Q1=Q1-1:S1=8
165 IF S2=0 THEN Q2=Q2-1:S2=8
166 X5=0:IF Q1<1 THEN X5=1:Q1=1:S1=1
167 IF Q1>8 THEN X5=1:Q1=8:S1=8
168 IF Q2<1 THEN X5=1:Q2=1:S2=1
169 IF Q2>8 THEN X5=1:Q2=8:S2=8
170 IF X5=0 THEN 178
171 PRINT "LT. UHURA : NACHRICHT VOM":PRINT:PRINT "FLOTTENKOMMANDO --":PRINT
172 PRINT "SIE HABEN KEINE ERLAUBNIS":PRINT "DIE GALAXIS ZU VERLASSEN"
173 PRINT "SCHALTEN SIE SOFORT DIE":PRINT "TRIEBWERKE AB.--":GOSUB 3
174 PRINT "CHEFINGENIEUR SCOTT :":PRINT:PRINT "TRIEBWERKE WURDEN GESTOPPT"
175 PRINT "IM SEKTOR ";S1;",";S2:PRINT:PRINT "DES QUADRANTEN";Q1;",";Q2
176 GOTO 83
177 IF T>T0+T9 THEN 312
178 IF 8*Q1+Q2=8*Q4+Q5 THEN 159
179 T=T+1:GOSUB 180:GOTO 58
180 E=E-N-10:IF E>0 THEN RETURN
181 PRINT "SCHILDSTEUERUNG LIEFERTE DIE":PRINT "ENERGIE ZUR ";
182 PRINT "VOLLENDUNG":PRINT:PRINT "DES MANOEVERS.":PRINT:S=S+E:E=0
183 IF S<=0 THEN S=0:RETURN
184 IF D(3)<0 THEN 185:ELSE 187
185 PRINT "LANGSTRECKENSENSOREN":PRINT:PRINT "AUSSER FUNKTION.":PRINT
186 GOTO 83
187 PRINT SPC(5);"LANGSTRECKENRADARBILD"
188 PRINT SPC(5);"---------------------":PRINT
189 PRINT "QUADRANT :";Q1;",";Q2
190 PRINT:PRINT
191 O1$="-------------------":PRINT SPC(6);O1$
192 FOR I=Q1-1 TO Q1+1:N(1)=-1:N(2)=-2:N(3)=-3:FOR J=Q2-1 TO Q2+1
193 IF I>0 AND I<9 AND J>0 AND J<9 THEN N(J-Q2+2)=G(I,J):Z(I,J)=G(I,J)
194 NEXT J:PRINT SPC(6);:FOR L=1 TO 3:PRINT "| ";
195 IF N(L)<0 THEN PRINT "*** ";:GOTO 197
196 PRINT RIGHT$(STR$(N(L)+1000),3);" ";
197 NEXT L:PRINT "|":PRINT SPC(6);O1$:NEXT I:PRINT
198 GOTO 83
199 IF D(4)<0 THEN PRINT "PHASER AUSSER FUNKTION.":PRINT:GOTO 83
200 IF K3>0 THEN 204
201 PRINT "WISSENSCHAFTSOFFIZIER":PRINT:PRINT "SPOCK":PRINT:PRINT "SENSOREN";Z
202 PRINT:PRINT "FEINDLICHEN SCHIFFE IN":PRINT:PRINT "DIESEM QUADRANTEN."
203 GOTO 83
204 IF D(8)<0 THEN 205:ELSE 206
205 PRINT "COMPUTERFEHLER BEEINTRAECH- ":PRINT "TIGT GENAUIGKEIT.":PRINT
206 GOSUB 480:PRINT " PHASER AKTIVIERT.":PRINT
207 PRINT " VERFUEGBARE ENERGIE":PRINT:PRINT E;" EINHEITEN.":PRINT
208 INPUT " SCHUSSENERGIE :";X:PRINT:IF X<=0 THEN 83
209 IF E-X<0 THEN 207
210 GOSUB 481
211 E=E-X:IF D(7)<0 THEN X=X*RND(1)
212 H1=INT(X/K3):FOR I=1 TO 3:IF K(I,3)<=0 THEN 227
213 H=INT((H1/FN D(0))*RND(1)+2):IF H>.15*K(I,3)THEN 217
214 PRINT "SENSOREN ZEIGEN KEINE":PRINT:PRINT "ZERSTOERUNG DES FEINDES"
215 PRINT:PRINT "AUF";K(I,1);CHR$(8);",";K(I,2);CHR$(8);".":PRINT:PAUSE 20
216 GOTO 83
217 K(I,3)=K(I,3)-H:PRINT "TREFFER MIT ";H;" ENERGIE-":PRINT
218 PRINT "EINHEITEN AUF KLINGON IM":PRINT:PRINT "SEKTOR ";K(I,1);CHR$(8);
219 PRINT ",";K(I,2);CHR$(8);".":PRINT
220 IF K(I,3)<=0 THEN 221:ELSE 223
221 PRINT:GOSUB 483:PRINT "*** KLINGON ZERSTOERT ***":PRINT
222 FOR BE=1 TO 10:BEEP:PAUSE 5:NEXT:PAUSE 20:GOTO 225
223 PRINT "(SENSOREN ZEIGEN ";K(I,3):PRINT:PRINT "ENERGIEEINHEITEN UEBRIG)"
224 PRINT:PAUSE 20:GOTO 227
225 K3=K3-1:K9=K9-1:Z1=K(I,1):Z2=K(I,2):A$=" ":GOSUB 438
226 K(I,3)=0:G(Q1,Q2)=G(Q1,Q2)-100:Z(Q1,Q2)=G(Q1,Q2):IF K9<=0 THEN 324
227 NEXT:GOSUB 294:GOTO 83
228 IF P<=0 THEN PRINT "ALLE PHOTONENTORPEDOS":PRINT:PRINT "ABGESETZT!":GOTO 83
229 IF D(5)<0 THEN PRINT "TORPEDOROHRE BLOCKIERT!":PRINT:GOTO 83
230 GOSUB 480:INPUT "TORPEDOKURS (1-9) :";C1:PRINT:IF C1=9 THEN C1=1
231 IF C1>=1 AND C1<9 THEN 234
232 PRINT "INGENIEUR CHEKOV :":PRINT:PRINT "FALSCHE KURSDATEN, SIR.":PRINT
233 GOTO 83
234 X1=C(C1,1)+(C(C1+1,1)-C(C1,1))*(C1-INT(C1)):E=E-2:P=P-1
235 X2=C(C1,2)+(C(C1+1,2)-C(C1,2))*(C1-INT(C1)):X=S1:Y=S2
236 PRINT
237 X=X+X1:Y=Y+X2:X3=INT(X+.5):Y3=INT(Y+.5)
238 IF X3<1 OR X3>8 OR Y3<1 OR Y3>8 THEN 265
239 A$=" ":Z1=X:Z2=Y:GOSUB 452
240 IF Z3<>0 THEN 237
241 A$="":Z1=X:Z2=Y:GOSUB 452:IF Z3=0 THEN 248
242 GOSUB 533:GOSUB 487:GOSUB 350:PRINT "*** KLINGONE ZERSTOERT ***":PRINT
243 FOR BE=1 TO 10:BEEP:PAUSE 5:NEXT
244 K3=K3-1:K9=K9-1:IF K9<=0 THEN 324
245 FOR I=1 TO 3:IF X3=K(I,1)AND Y3=K(I,2)THEN 247
246 NEXT:I=3
247 K(I,3)=0:GOTO 263
248 A$=" * ":Z1=X:Z2=Y:GOSUB 452:IF Z3=0 THEN 251
249 GOSUB 485:GOSUB 482:PRINT "STERN IN";X3;",";Y3:PRINT
250 PRINT "ABSORBIERTE TORPEDOENERGIE!":PRINT:GOSUB 294:GOTO 82
251 A$=CHR$(151)+"":Z1=X:Z2=Y:GOSUB 452:IF Z3=0 THEN 230
252 GOSUB 486:GOSUB 482:PRINT " * STERNENBASIS ZERSTOERT * ":B3=B3-1
253 B9=B9-1
254 IF B9>0 OR K9>T-T0-T9 THEN 259
255 PRINT "DAS WAR'S CAPTAIN !!":PRINT:PRINT "SIE SIND IHRES KOMMANDOS"
256 PRINT:PRINT "ENTHOBEN UND ZU ":PRINT:PRINT "99 STERNTAGEN ZWANGSARBEIT"
257 PRINT "AUF ZYGNUS 12 VERURTEILT !!"
258 PRINT:GOTO 315
259 PRINT " DAS FLOTTENKOMMANDO ":PRINT " REVIDIERT IHRE"
260 PRINT " BISHERIGEN AUSZEICHNUNGEN,"
261 PRINT "UND ERWARTET STELLUNGNAHME !":GOSUB 3
262 D0=0
263 Z1=X:Z2=Y:A$=" ":GOSUB 438
264 G(Q1,Q2)=K3*100+B3*10+S3:Z(Q1,Q2)=G(Q1,Q2):GOSUB 294:GOTO 82
265 GOSUB 486:PRINT "*** FEHLSCHUSS ***":PRINT:GOSUB 294:PAUSE 20:GOTO 82
266 IF D(7)<0 THEN PRINT " SCHILDSTEUERUNG AUSSER":PRINT:PRINT " FUNKTION"
267 PRINT "VERFUEGBARE ENERGIE =";E+S:PRINT
268 INPUT "WIEVIEL ENERGIE ZUM SCHILD : ";X:PRINT
269 IF X<0 OR S=X THEN PRINT ">SCHILD UNVERAENDERT<":GOTO 83
270 IF X<E+S THEN 273
271 PRINT "SCHILDSTEUERUNG :":PRINT:PRINT "'UEBERSCHREITUNG DER":PRINT:PRINT "M
272 PRINT:PRINT ">SCHILD UNVERAENDERT<":PRINT:GOTO 83
273 E=E+S-X:S=X:PRINT "DEFLEKTOR STEUERRAUM :":PRINT
274 PRINT "'SCHILD JETZT AUF";INT(S):PRINT:PRINT "EINHEITEN AUFGELADEN'"
275 PRINT:GOTO 83
276 IF D(6)>=0 THEN 289
277 PRINT "KEIN ZUGRIFF ZUR FEHLER-":PRINT:PRINT "UEBERWACHUNG MOEGLICH."
278 PAUSE 10
279 IF D0=0 THEN 83
280 D3=0:FOR I=1 TO 8:IF D(I)<0 THEN D3=D3+.1
281 NEXT:IF D3=0 THEN 83
282 D3=D3+D4:IF D3>=1 THEN D3=.9
283 PRINT:PRINT "DIE TECHNIKER DER BASIS SIND";:PRINT "ZUR REPARATUR BEREIT"
284 PRINT "REPARATURZEIT :";.01*INT(100*D3):PRINT "STERNTAGE."
285 PRINT:PRINT "BEFEHLEN SIE DIE REPARATUR? ":INPUT "(Y/N)";A$:PRINT
286 IF A$<>"Y"THEN 83
287 FOR I=1 TO 8:IF D(I)<0 THEN D(I)=0
288 NEXT:T=T+D3+.1
289 PRINT:PRINT "GERAET STAND DER REPARATUR"
290 PRINT "------ -------------------":FOR R1=1 TO 8
291 GOSUB 443:PRINT G2$;LEFT$(Z$,21-LEN(G2$));INT(D(R1)*100)*.1
292 NEXT:IF D0<>0 THEN 280
293 GOTO 83
294 IF K3<=0 THEN RETURN
295 IF D0<>0 THEN 296:ELSE 297
296 PRINT "BASIS-SCHILD SCHUETZT DIE":PRINT:PRINT "ENTERPRISE.":PRINT:RETURN
297 FOR I=1 TO 3:IF K(I,3)<=0 THEN 311
298 H=INT((K(I,3)/FN D(1))*(2+RND(1))):S=S-H:K(I,3)=K(I,3)/(3+RND(0))
299 PRINT H;"EINHEITEN AUS":PRINT:PRINT " SEKTOR";K(I,1);",";K(I,2):PRINT
300 PRINT " TRAFEN DIE ENTERPRISE.":PRINT:PAUSE 20
301 IF S<=0 THEN 313
302 PRINT ">SCHILDENERGIE AUF ";S:PRINT:PRINT "EINHEITEN GEFALLEN<":PRINT
303 GOSUB 3
304 IF H<20 THEN 311
305 IF RND(1)>.6 OR H/S<=.2 THEN 311
306 R1=FN R(1):IF D(R1)>0 THEN D(R1)=0
307 D(R1)=D(R1)-H/S-.5*RND(1):GOSUB 443
308 PRINT "FEHLERUEBERWACHUNG :":PRINT
309 PRINT G2$:PRINT:PRINT "WURDE DURCH DEN SCHLAG":PRINT:PRINT "ZERSTOERT."
310 GOSUB 3
311 NEXT:RETURN
312 PRINT "ES IST STERNZEIT";T;".":PRINT:GOSUB 3:GOTO 315
313 PRINT "DIE ENTERPRISE WURDE":PRINT:PRINT "ZERSTOERT. ";
314 PRINT "DIE FOEDERATION":PRINT:PRINT "IST EROBERT.":PRINT:GOTO 312
315 PRINT "ES VERBLEIBEN";K9:PRINT:PRINT "FEINDLICHE KREUZER.":PRINT
316 PRINT "AM ENDE IHRER MISSION.":GOSUB 3
317 PRINT:IF B9=0 THEN 323
318 PRINT "DIE FOEDERATION BRAUCHT"
319 PRINT "EINEN RAUMSCHIFFKOMMANDANTEN"
320 PRINT "FUER EINE AEHNLICHE MISSION."
321 PRINT "FREIWILLIGE MELDEN SICH":INPUT "BITTE MIT - 'AYE'";A$
322 PRINT:IF A$="AYE"THEN RUN
323 PRINT "NA DANN EBEN NICHT FEIGLINGE":WINDOW:CLS:END
324 PRINT "GRATULATION, CAPTAIN !":PRINT
325 PRINT "DER LETZTE KLINGONEN-KREUZER"
326 PRINT "WURDE ZERSTOERT.":PRINT:GOSUB 3
327 PRINT "IHRE EFFIZIENZ-RATE IST ":PRINT 1000*(K7/(T-T0))^2:GOTO 317
328 FOR I=S1-1 TO S1+1:FOR J=S2-1 TO S2+1
329 IF INT(I+.5)<1 OR INT(I+.5)>8 OR INT(J+.5)<1 OR INT(J+.5)>8 THEN 331
330 A$=CHR$(151)+"":Z1=I:Z2=J:GOSUB 452:IF Z3=1 THEN 332
331 NEXT J:NEXT I:D0=0:GOTO 335
332 D0=1:C$="ANGEDOCKT":E=E0:P=P0
333 GOSUB 503:GOSUB 487
334 PRINT "SCHILD ABGESCHALTET ":S=0:PAUSE 20:GOTO 337
335 IF K3>0 THEN C$="** ROT **":GOTO 337
336 C$="* GRUEN *":IF E<E0*.1 THEN C$="* GELB * "
337 IF D(2)>=0 THEN 340
338 PRINT " KURZSTRECKENSENSOREN "
339 PRINT " SIND DEFEKT ":GOTO 349
340 CLS:WINDOW 1,18,3,30:CLS:O1$="+-1--2--3--4--5--6--7--8-+":ZE=1
341 PRINT O1$
342 FOR I=1 TO 8:PRINT RIGHT$(STR$(I),1);
343 FOR J=(I-1)*24+1 TO(I-1)*24+22 STEP 3:PRINT MID$(Q$,J,3);:NEXT J
344 PRINT RIGHT$(STR$(I),1)
345 IF I=8 THEN 348
346 PRINT "|";SPC(24);"|"
347 NEXT I
348 PRINT O1$
349 WINDOW 28,30,22,30:RETURN
350 PRINT AT(22,17);C$
351 PRINT AT(26,10);" "
352 PRINT AT(26,10);.1*INT((T0+T9-T)*10+.5)
353 PRINT AT(22,2);Q1:PRINT AT(22,5);",":PRINT AT(22,6);Q2
354 PRINT AT(22,10);S1:PRINT AT(22,12);",":PRINT AT(22,13);S2
355 PRINT AT(26,20);INT(P)
356 PRINT AT(30,4);INT(E+S)
357 PRINT AT(30,15);INT(S)
358 PRINT AT(26,3);K9
359 RETURN
360 IF D(8)<0 THEN PRINT "COMPUTER DISABLED.":GOTO 83
361 PRINT "COMPUTER ACTIVE AND AWAITING":PRINT:INPUT "COMMAND";A:PRINT
362 IF A<0 THEN 83
363 H8=1:ON A+1 GOTO 373,386,399,431,406,372
364 PRINT " FUNCTIONS AVAILABLE FROM ":PRINT " LIBRARY COMPUTER :"
365 PRINT STRING$(28,"-")
366 PRINT "0 = CUMULATIVE STATUS REPORT"
367 PRINT "1 = STATUS REPORT":PRINT
368 PRINT "2 = PHOTON TORPEDOS DATA":PRINT
369 PRINT "3 = STARBASE NAV DATA":PRINT
370 PRINT "4 = DIRECTIONS/DISTANCE ":PRINT " CALCULATOR"
371 PAUSE 20:GOTO 361
372 H8=0:G5=1
373 PRINT "CUMULATIVE GALACTIC REPORT":PRINT "-------------------------- "
374 PRINT "STARBASES --> S":PRINT:PRINT "KLINGONS --> K"
375 PRINT:INPUT "EINGABE :";D$
376 IF D$="S"THEN AN=4:GOTO 379
377 IF D$="K"THEN AN=3:GOTO 379
378 GOTO 361
379 CLS:WINDOW 1,18,6,29:O1$="+-1-2-3-4-5-6-7-8-+":PRINT O1$
380 FOR I=1 TO 8:PRINT RIGHT$(STR$(I),1);SPC(1);
381 FOR J=1 TO 8:IF Z(I,J)=0 THEN PRINT "* ";:GOTO 383
382 PRINT MID$(STR$(Z(I,J)+1000),AN,1);" ";
383 NEXT J:PRINT RIGHT$(STR$(I),1):IF I=8 THEN 385
384 PRINT
385 NEXT I:PRINT O1$:WINDOW 28,30,22,30:GOTO 83
386 PRINT " STATUS REPORT":PRINT " -------------":PRINT:X$=""
387 IF K9>1 THEN X$="S"
388 PRINT K9;"KLINGON";X$;" LEFT."
389 PRINT " MISSION MUST BE COMPLETED":PRINT " IN";.1*INT((T0+T9-T)*10+.5);
390 PRINT "STARDATES.":PRINT
391 X$="S":IF B9<2 THEN X$="":IF B9<1 THEN 396
392 IF B9<1 THEN 396
393 PRINT " THE FEDERATION IS":PRINT " MAINTAINING";B9;"STARBASE";X$
394 PRINT " IN THE GALAXY.":PRINT
395 GOSUB 3:CLS:GOTO 276
396 PRINT " YOUR STUPIDITY HAS LEFT":PRINT " YOU ON YOUR OWN IN."
397 PRINT:PRINT " THE GALAXY --":PRINT " YOU HAVE NO STARBASES LEFT!"
398 GOSUB 3:GOTO 276
399 IF K3<=0 THEN 201
400 X$="":IF K3>1 THEN X$="S"
401 PRINT "FROM ENTERPRISE TO KLINGON":PRINT:PRINT "BATTLE CRUSER";X$
402 PRINT
403 H8=0:FOR I=1 TO 3:IF K(I,3)<=0 THEN 430
404 W1=K(I,1):X=K(I,2)
405 C1=S1:A=S2:GOTO 411
406 PRINT "DIRECTION/DISTANCE":PRINT "CALCULATOR : ":ZV=1:PRINT
407 PRINT "YOU ARE AT":PRINT "QUADRANT ";Q1;",";Q2:PRINT "SECTOR ";S1;",";
408 PRINT S2;".":PRINT:PRINT
409 PRINT "PLEASE ENTER":INPUT "INITIAL COORDINATES";C1,A
410 INPUT "FINAL COORDINATES";W1,X:PRINT
411 X=X-A:A=C1-W1:IF X<0 THEN 419
412 IF A<0 THEN 421
413 IF X>0 THEN 415
414 IF A=0 THEN C1=5:GOTO 416
415 C1=1
416 IF ABS(A)<=ABS(X)THEN 418
417 PRINT "DIRECTIONS =";C1+(((ABS(A)-ABS(X))+ABS(A))/ABS(A)):PRINT:GOTO 425
418 PRINT "DIRECTIONS =";C1+(ABS(A)/ABS(X)):PRINT:GOTO 425
419 IF A>0 THEN C1=3:GOTO 422
420 IF X<>0 THEN C1=5:GOTO 416
421 C1=7
422 IF ABS(A)>=ABS(X)THEN 424
423 PRINT "DIRECTION =";C1+(((ABS(X)-ABS(A))+ABS(X))/ABS(X)):PRINT:GOTO 425
424 PRINT "DIRECTION =";C1+(ABS(X)/ABS(A)):PRINT
425 PRINT "DISTANCE =";
426 IF ZV=1 THEN ZV=0:PRINT SQR(X^2+A^2):GOTO 429
427 IF ZV=2 THEN ZV=0:PRINT(SQR(X^2+A^2))/10-.1:GOTO 429
428 PRINT(SQR(X^2+A^2))/10
429 PRINT:IF H8=1 THEN 83
430 NEXT I:GOTO 83
431 IF B3<>0 THEN 432:ELSE 433
432 PRINT "FROM ENTERPRISE TO STARBASE:":PRINT:W1=B4:X=B5:ZV=2:GOTO 405
433 PRINT "MR. SPOCK : SENSORS SHOW NO":PRINT:PRINT "STARBASES IN THIS";
434 PRINT " QUADRANT.":PRINT
435 GOTO 83
436 R1=FN R(1):R2=FN R(1):A$=" ":Z1=R1:Z2=R2:GOSUB 452:IF Z3=0 THEN 436
437 RETURN
438 S8=INT(Z2-.5)*3+INT(Z1-.5)*24+1
439 IF LEN(A$)<>3 THEN PRINT "ERROR":PRINT:CALL*F20C:RUN
440 IF S8=1 THEN Q$=A$+RIGHT$(Q$,189):RETURN
441 IF S8=190 THEN Q$=LEFT$(Q$,189)+A$:RETURN
442 Q$=LEFT$(Q$,S8-1)+A$+RIGHT$(Q$,190-S8):RETURN
443 ON R1 GOTO 444,445,446,447,448,449,450,451
444 G2$="WARP ENGINES":RETURN
445 G2$="SHORT RANGE SENSORS":RETURN
446 G2$="LONG RANGE SENSORS":RETURN
447 G2$="PHASER CONTROL":RETURN
448 G2$="PHOTON TUBES":RETURN
449 G2$="DAMAGE CONTROL":RETURN
450 G2$="SHIELD CONTROL":RETURN
451 G2$="LIBRARY-COMPUTER":RETURN
452 Z1=INT(Z1+.5):Z2=INT(Z2+.5):S8=(Z2-1)*3+(Z1-1)*24+1:Z3=0
453 IF MID$(Q$,S8,3)<>A$ THEN RETURN
454 Z3=1:RETURN
455 IF Z5<=4 THEN ON Z4 GOTO 457,458,459,460,461,462,463,464
456 GOTO 465
457 G2$="ANTARES":GOTO 474
458 G2$="RIGEL":GOTO 474
459 G2$="PROCYON":GOTO 474
460 G2$="VEGA":GOTO 474
461 G2$="CANOPUS":GOTO 474
462 G2$="ALTAIR":GOTO 474
463 G2$="SAGITTARIUS":GOTO 474
464 G2$="POLLUX":GOTO 474
465 ON Z4 GOTO 466,467,468,469,470,471,472,473
466 G2$="SIRIUS":GOTO 474
467 G2$="DENEB":GOTO 474
468 G2$="CAPELLA":GOTO 474
469 G2$="BETEIGEUZE":GOTO 474
470 G2$="ALDEBARAN":GOTO 474
471 G2$="REGULUS":GOTO 474
472 G2$="ARCTURUS":GOTO 474
473 G2$="SPICA"
474 IF G5<>1 THEN ON Z5 GOTO 476,477,478,479,476,477,478,479
475 RETURN
476 G2$=G2$+" I":RETURN
477 G2$=G2$+" II":RETURN
478 G2$=G2$+" III":RETURN
479 G2$=G2$+" IV":RETURN
480 RETURN
481 RETURN
482 RETURN
483 RETURN
484 RETURN
485 RETURN
486 RETURN
487 CLS
488 FOR I=0 TO 31:PRINT AT(0,I);CHR$(255):PRINT AT(31,I);CHR$(255):NEXT
489 FOR I=1 TO 30:PRINT AT(I,0);CHR$(255):PRINT AT(I,31);CHR$(255):NEXT
490 PRINT AT(19,1);""
491 PRINT AT(20,1);"QUADRANTSECTORCONDITION"
492 PRINT AT(21,1);"NAV"
493 PRINT AT(22,9);"":PRINT AT(22,16);"":PRINT AT(22,26);""
494 PRINT AT(23,1);"432"
495 PRINT AT(24,1);"KLINGONS DAYS TORPEDOS5E1"
496 PRINT AT(25,1);"678"
497 PRINT AT(26,9);"":PRINT AT(26,26);"":PRINT AT(26,16);""
498 PRINT AT(27,1);""
499 PRINT AT(28,1);"TOTAL ENERGYSHIELDS"
500 PRINT AT(29,1);""
501 PRINT AT(30,13);"":PRINT AT(30,21);""
502 WINDOW 1,18,2,29:POKE-5120,255:PRINT:RETURN
503 WINDOW:CLS:X=18:Y=0
504 PRINT AT(0,13);" "
505 PRINT AT(1,12);" "
506 PRINT AT(2,14);" "
507 PRINT AT(3,14);" ":PRINT AT(4,14);" "
508 PRINT AT(5,14);" "
509 PRINT AT(6,12);"",CHR$(158)," ",CHR$(158),""
510 PRINT AT(7,10);" "
511 PRINT AT(8,9);" "
512 PRINT AT(9,9);" "
513 PRINT AT(10,10);" "
514 PRINT AT(11,13);" ",CHR$(145)," ",CHR$(145)
515 PRINT AT(12,12);" ",CHR$(145)," ",CHR$(145)
516 PRINT AT(13,11);" ",CHR$(145)," ",CHR$(145)
517 PRINT AT(14,11);" "
518 PRINT AT(X,Y);" "
519 PRINT AT(X+1,Y);" "
520 PRINT AT(X+2,Y);" "
521 PRINT AT(X+3,Y);" "
522 PRINT AT(X+4,Y);" "
523 PRINT AT(X+5,Y);" "
524 PRINT AT(X+6,Y);" "
525 FOR J=1 TO 150:NEXT
526 BEEP
527 IF Y<14 THEN 528:ELSE 529
528 FOR I=X TO X+6:PRINT AT(I,Y);" ":NEXT:Y=Y+1:GOTO 518
529 IF ZV=3 THEN ZV=0:RETURN
530 FOR I=12 TO 20:PRINT AT(I,19);"":NEXT
531 PAUSE 60:FOR I=12 TO 20:PRINT AT(I,19);" ":NEXT
532 PRINT AT(20,19);"":RETURN
533 WINDOW:CLS
534 PRINT AT(12,22);""
535 PRINT AT(13,20);" "
536 PRINT AT(14,18);""
537 PRINT AT(15,17);" ",CHR$(145)
538 PRINT AT(16,16);" ",CHR$(145)
539 PRINT AT(17,15);" ",CHR$(145)
540 PRINT AT(18,14);CHR$(153)," ",CHR$(153)," ",CHR$(155)
541 PRINT AT(19,14);CHR$(152)," ",CHR$(152)," ",CHR$(156)
542 PRINT AT(18,31);CHR$(155):PRINT AT(19,31);CHR$(156)
543 PRINT AT(20,14);" "
544 N$="":M$=CHR$(151):NM$=N$+M$
545 FOR I=0 TO 16:PRINT AT(16,I);NM$
546 IF I=16 THEN 548
547 PRINT AT(16,I);" "
548 NEXT
549 FOR I=12 TO 20
550 FOR J=12 TO 31
551 PRINT AT(I,J);CHR$(219)
552 POKE-4715+A,32
553 NEXT J,I
554 FOR I=12 TO 20
555 FOR J=12 TO 31
556 PRINT AT(I,J);" "
557 NEXT J,I:RETURN
558 WINDOW:CLS:PRINT:PRINT AT(1,0);CHR$(32)
559 PRINT " "
560 PRINT " "
561 PRINT " "
562 PRINT " "
563 PRINT " "
564 PRINT " "
565 PRINT " "
566 PRINT " "
567 PRINT " "
568 PRINT " ":PRINT
569 PRINT " "
570 PRINT " "
571 PRINT " "
572 PRINT " "
573 PRINT " "
574 PRINT " "
575 PRINT " "
576 PRINT " "
577 PRINT " "
578 PRINT " "
579 PRINT:PRINT:PRINT "THE USS ENTERPRISE -NCC-1701-"
580 X=25:Y=0:ZV=3:GOSUB 518
581 PAUSE 2:RETURN