home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Glitch Apple Disk Collection
/
2014.glitch.apple.collection.zip
/
indexed
/
RENDEZ.DSK
/
LIFTOFF.bas
< prev
next >
Wrap
BASIC Source File
|
2014-09-09
|
3KB
|
40 lines
0 ONERR GOTO 400
1 GOTO 100
10 FOR I = 1 TO 2500: NEXT : RETURN
12 VTAB 21: CALL 24965: CALL 24987: CALL 24998
13 CALL 24976: RETURN
90 I = 0:N$ = STR$(X):Q = LEN(N$)
92 I = I +1:J = J +1: POKE 768 +J, ASC( MID$ (N$,I,1)): IF I = Q THEN J = J +1: POKE 768 +J,13: RETURN
94 GOTO 92
100 PRINT "<CTRL-D>BLOAD LSHAPES,A$9900"
102 POKE 232,0: POKE 233,153: HIMEM: 37376
105 PRINT "<CTRL-D>BLOAD LSCREEN"
106 PRINT "<CTRL-D>BLOAD BLIFT"
108 PRINT "<CTRL-D>BLOAD ROCKETDATA"
110 Y = .01:VX = 0:VY = 0:X = 0:Z = Y:F = 1175:M = 102:Q = 1:SY = 1.6:SX = 2:WR = 1.5708:WB = 256:XS = 99:YS = 159
112 G0 = 3.977E14:RE = 6.37E6:CR = 1/RE
114 CALL 2048: POKE 6912,11: POKE 6913,18: POKE 6914,27
200 CALL 26394: INVERSE
210 ON PEEK(227) GOTO 320,300,312,310
280 POKE -16303,0: GOSUB 12: PRINT : PRINT SPC( 5);"<CTRL-G><CTRL-G><CTRL-G>YOU HAVE TAKEN TOO MUCH TIME!";: GOSUB 10: GOTO 314
300 POKE -16303,0: GOSUB 12: PRINT : PRINT SPC( 11);"<CTRL-G><CTRL-G><CTRL-G>YOU HAVE BROKEN UP": PRINT SPC( 11);"IN THE ATMOSPHERE": GOSUB 10: GOSUB 12: GOTO 314
310 GOSUB 12: PRINT : PRINT SPC( 14);"<CTRL-G><CTRL-G><CTRL-G>OUT OF FUEL!": GOSUB 10: POKE -16303,0: GOTO 314
312 GOSUB 12: PRINT : PRINT SPC( 8);"<CTRL-G><CTRL-G><CTRL-G>YOU HAVE JUST BAILED OUT": GOSUB 10: POKE -16303,0
314 POKE -16368,0: VTAB 22: GOSUB 13: PRINT SPC( 10);"TRY ANOTHER LIFTOFF? ";: GET N$: PRINT : IF N$ < >"Y" AND N$ < >"N" THEN 314
315 IF N$ = "Y" THEN Y = .01:VX = 0:VY = 0: GOTO 200
316 VTAB 22: GOSUB 13: PRINT SPC( 8);"RETURN TO MISSION MENU?";: GET N$: PRINT : IF N$ < >"Y" AND N$ < >"N" THEN 316
317 TEXT : HOME : NORMAL
318 IF N$ = "N" THEN PRINT "RE-BOOT": CALL 46592
319 PRINT "<CTRL-D>RUN MENU"
320 R = 1000 *Y +RE:V = VX ^2:R0 = V *R *R/G0:V = V +VY *VY:E = 1 +R0 *(V/G0 -2/R): IF E <0 THEN E = 0:W = 0: GOTO 324
322 E = SQR(E):V = -VY * SQR(R0/G0)/E:W = -1.5708 * SGN(V): IF ABS(V) <1 THEN W = - ATN(V/ SQR( -V *V +1))
323 W = 3.14159 -W
324 GOSUB 12: PRINT : IF (CR *R0/(1 +E)) <1.03 THEN PRINT SPC( 9)"<CTRL-G><CTRL-G><CTRL-G><CTRL-G>ACHIEVED PARTIAL ORBIT": GOTO 330
326 PRINT SPC( 13);"<CTRL-G><CTRL-G><CTRL-G>ACHIEVED ORBIT"
330 T = PEEK(24771) +256 * PEEK(24772):U = PEEK(24773) +256 * PEEK(24774): POKE 768,U/100
331 J = 0:X = 100 *R0/RE: GOSUB 90:X = E: GOSUB 90:X = W: GOSUB 90:X = U: GOSUB 90:X = T: GOSUB 90
332 X = 0: GOSUB 90:X = INT(120 * RND(1)): GOSUB 90
334 CALL 62450: HPLOT 0,159 TO 0,0 TO 279,0 TO 279,159: HPLOT 1,0 TO 1,159: HPLOT 278,0 TO 278,159: CALL 24784
336 VTAB 23: PRINT " ENABLING ORBITAL NAVIGATION DISPLAY": VTAB 10
337 POKE 764,0: POKE 104,99: POKE 103,1: POKE 25344,0: PRINT "<CTRL-D>RUN ORBIT"
400 CALL 46613:ER = PEEK(222): TEXT : HOME : NORMAL : PRINT "<CTRL-G><CTRL-G><CTRL-G>ERR #";ER;" IN LINE #";( PEEK(218) + PEEK(219) *256): CALL 46592