1 REM ************************* 2 REM FILE FROM JMOFFAT ARCHIVE 3 REM MINOR CORRECTIONS 4 REM RUNS ON HP2116-HPBASIC / 2025 MAY, BH 5 REM ************************* 6 REM CHEAT: 5*0 20 25 20 15 15 10 0 10 7 REM ****** 10 PRINT "IF YOU ARE FAMILAR WITH THIS PROGRAM TYPE IN 1 WHEN" 11 PRINT " '?' IS PRINTED" 12 PRINT "IF NOT FAMILAR TYPE IN 0" 13 INPUT A 14 IF A=1 THEN 400 50 PRINT 60 PRINT "LUNAR LANDING SIMULATOR" 70 PRINT 80 PRINT 90 PRINT "YOU ARE LANDING ON THE MOON AND HAVE TAKEN OVER MANUAL" 100 PRINT "CONTROL 500 FT ABOVE A GOOD LANDIND SPOT AND HAVE A" 110 PRINT "DOWNWARD VELOCITY OF 50 FT/SEC. 120 UNITS OF FUEL REMAIN" 120 PRINT "HERE ARE THE RULES THAT GOVERN YOUR SPACE VEHICLE:" 130 PRINT " 1) AFTER EACH SECOND, THE HEIGHT, VELOCITY,AND REMAIN-" 140 PRINT " ING FUEL WILL BE PRINTED OUT." 150 PRINT " (2) AT THE RIGHT-HAND EDGE OF PRINTOUT A '?' WILL BE" 160 PRINT " TYPED. SIMPLY TYPE IN THE NUMBER OF UNITS OF FUEL TO BE" 170 PRINT " BURNED DURING THE NEXT SECOND. EACH UNIT OF FUEL WILL" 180 PRINT " SLOW YOUR DESCENT BY 1 FT/SEC." 190 PRINT " (3) THE MAXIMUN THRUST OF YOUR DESCENT ENGINE IS 30 UNITS" 200 PRINT " OF FUEL/SEC OR 30 FT/SEC/SEC." 210 PRINT " (4) WHEN YOU MAKE CONTACT WITH THE LUNAR SURFACE, YOUR" 220 PRINT " ENGINE WILL AUTOMATICALLY CUT OFF AND YOU WILL BE GIVEN A" 230 PRINT " REPORT OF YOUR REMAINING FUEL AND LANDING VELOCITY." 240 PRINT " (5) IF YOU RUN OUT OF FUEL, YOU WILL NO LONGER BE" 250 PRINT " IN CONTROL, AND YOUR REPORT WILL CONTINUE," 260 PRINT " UNTIL YOU CONTACT THE LUNAR SURFACE." 270 PRINT 280 PRINT "LIST OF VARIABLES AND DEFINITIONS:" 290 PRINT " T=ELAPSED TIME (SEC)" 300 PRINT " H=HEIGHT (FT)" 310 PRINT " V=DOWNWARD VELOCITY (FT/SEC)" 320 PRINT " F=REMAINING UNITS OF FUEL" 330 PRINT " D=UNITS OF FUEL TO BE BURNED DURING NEXT SECOND" 340 PRINT " (SUPPLIED BY USER)." 350 PRINT 360 PRINT "THE LUNAR SIMULATOR WILL NOW BEGIN." 370 PRINT "G O O D L U C K ! ! ! ! " 380 PRINT 390 PRINT 400 LET T=0 410 LET H=INT(1000*RND(T)) 420 IF H<500 THEN 410 421 LET V=.1*H 430 LET F=120*(H/500) 431 LET F=INT(F) 435 PRINT 436 PRINT 437 PRINT 440 PRINT " T"," H"," V"," F"," D" 450 PRINT T,H,V,F, 460 IF F=0 THEN 480 470 GOTO 510 480 LET D=0 490 PRINT D 500 GOTO 560 510 INPUT D 520 IF D <= F THEN 521 521 REM PRINT 522 IF D <= 30 THEN 550 530 PRINT "ILLEGAL MOVE, TRY AGAIN" 540 GOTO 510 550 IF D<0 THEN 530 560 LET T=T+1 570 LET V2=V 580 LET F=F-D 590 LET V=V+5-D 600 LET H2=H 610 LET H=H-((V2+V)/2) 620 IF H=0 THEN 650 630 IF H<0 THEN 770 640 GOTO 450 650 IF V <= 2.5 THEN 720 660 PRINT T,H,V,F,"CRASHED!!!" 661 PRINT 662 PRINT 669 LET Z=V 670 PRINT "YOU HAD "F" UNITS OF FUEL LEFT" 671 PRINT "AND HIT AT ",V" FT/SEC" 672 PRINT "WELL, IDIOT, YOU RUINED ANOTHER 100 MILLION DOLLARS" 673 PRINT "WORTH OF EQUIPMENT. YOUR LUNAR LANDING LICENCE WILL" 700 PRINT "BE REVOKED!" 710 GOTO 840 720 PRINT T,H,V,F,"SOFT TD!" 721 PRINT 722 PRINT 730 PRINT "FUEL REMAINING WAS "F" UNITS" 731 PRINT "LANDING SPEED WAS",V" FT/SEC" 740 PRINT "CONGRATULATIONS....YOU HAVE MADE A SUCCESFUL LANDING." 760 GOTO 840 770 LET D2=ABS(H2-H) 780 LET T=T-1 790 LET P=(INT(100*(H2/D2)+.5))/100 800 LET T=T+P 810 LET V=V2+(5-D)*P 820 LET H=0 830 GOTO 650 840 REM : PROGRAM BY J. PICAZO 850 END