home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / gam / shtl.ba < prev    next >
Text File  |  2006-10-19  |  5KB  |  89 lines

  1. 0 'SHTL.BA - BY G. LUDEKE
  2. 1 'CLUB 100 LIBRARY - 415/939-1246 BBS,    937-5039 NEWSLETTER, 932-8856 VOICE
  3. 2 GOTO5
  4. 3 PRINT@288,"<Press any key to go on>";
  5. 4 B$=INKEY$:IFB$=""THEN4ELSERETURN
  6. 5 SCREEN,0:CLS:PRINT@12,"SPACE SHUTTLE":PRINT@87,"--- STS-27 Landing ---":PRINT@170,"<F>ull descent":PRINT@210,"<P>ractice final approach":PRINT@250,"<I>nstructions";
  7. 6 A$=INPUT$(1):M=INSTR(" FfPpIi",A$)\2:IFM=0THENBEEP:GOTO6
  8. 7 ONMGOSUB63,62,64:CLS:LINE(0,46)-(239,47),1,BF:PRINT@240,CHR$(27)+"p";:PRINT@241,"mph";:PRINT@246,"alt";:PRINT@252,"da";:PRINT@256,"dme";:PRINT@260,"tr";
  9. 8 PRINT@263,"hdg";:PRINT@267,"dist";:PRINT@273,"vs";:PRINT@277,"s";:PRINT@278,"g";:PRINT@279,CHR$(27)+"q";:PRINT@318,"^";:V=880:V2=V:PI=3.141592654#:RE=15:Y2=14:Y4=14:Y1=14:Y3=14:RB=18:X1=120:X3=120:X2=114:X4=126:YL=24:YR=24:YM=24
  10. 9 FORI=1TO12:A$=INKEY$:IFA$=CHR$(30)THENAN=AN-1
  11. 10 IFA$=CHR$(31)THENAN=AN+1
  12. 11 IFA$=CHR$(29)THENTR=TR-1
  13. 12 IFA$=CHR$(28)THENTR=TR+1
  14. 13 IFTR<-3THENTR=-3
  15. 14 IFTR>3THENTR=3
  16. 15 IFA$="G"ORA$="g"THENG=1
  17. 16 IFA$="S"ORA$="s"THENS=1
  18. 17 IFA$="C"ORA$="c"THENS=0
  19. 18 NEXTI:HG=HG+TR:IFHG>359THENGOSUB49
  20. 19 IFHG<0THENHG=HG+360
  21. 20 RA=PI*AN/180:AC=(3.22E+06*SIN(RA)-2.5*V*V-2.5*V*V*S-2.5*V*V*G)/100000!:V=V+AC:VM=V*15/22:VG=V*SIN(PI/2-RA):IFVM<200THENSOUND4697,10
  22. 21 IFVM<180THEN40
  23. 22 DR=V*SIN(RA):AL=AL-DR:IFAL<=0THEN41
  24. 23 RA=PI*HG/180:V1=VG*SIN(RA):D1=D1+V1:V2=VG*SIN(PI/2-RA):D2=D2+V2:DM=D2/5280:PRINT@280,INT(VM);:PRINT@291,AN;:DIST=10*DM/10:PRINT@295,USING"##.#";DIST;:PRINT@284,USING"######";INT(AL);:PRINT@300,TR;:PRINT@302,HG;
  25. 24 IFD1<0THENPRINT@271,"W";ELSEPRINT@271,"E";
  26. 25 PRINT@307,USING"#####";INT(ABS(D1));:PRINT@312,INT(DR);:IFG=1THENPRINT@318,"v";
  27. 26 IFS=1THENPRINT@317,"*";ELSEPRINT@317," ";
  28. 27 IFF=1THEN48
  29. 28 IFSW=0THEN29ELSE37
  30. 29 LINE(0,YL)-(239,YR),0:IFAN>42THEN36
  31. 30 IFAN<-35THEN36
  32. 31 CH=24-AN/2:YL=CH+TR:YM=CH:YR=CH-TR:IFYR<YM-4THENYR=YM-4
  33. 32 IFYR>YM+4THENYR=YM+4
  34. 33 IFYL<YM-4THENYL=YL-4
  35. 34 IFYL>YM+4THENYL=YL+4
  36. 35 LINE(0,YL)-(239,YR):GOTO37
  37. 36 LINE(0,YL)-(239,YR),0:GOTO37
  38. 37 IFHG=180ANDABS(D1)<100ANDSW=0THENGOSUB60
  39. 38 IFHG=180ANDABS(D1)<100THENGOSUB68
  40. 39 GOTO9
  41. 40 PRINT@162,"Aircraft Stalled-CRASHED!":GOTO57
  42. 41 IFDR>7THEN50
  43. 42 IFDM>0THEN51
  44. 43 IFDM<-3THEN52
  45. 44 IFABS(D1)>10THEN53
  46. 45 IFG=0THEN54
  47. 46 IFHG<179ORHG>181THEN55
  48. 47 PRINT@162,"Touchdown!!!";:F=1:AN=0:AL=0:DR=0:TR=0:FORI=1TO4:SOUND400,1:SOUND600,1:SOUND999,2:NEXTI:FORI=1TO1500:NEXTI:GOSUB83:PRINT@162,"Parachute out!":FORI=1TO3500:NEXTI:GOSUB83
  49. 48 FORI=1TO450:NEXTI:VM=V:FORJ=1TO5000:NEXT:GOTO59
  50. 49 HG=HG-360:PRINT@203,"  ";:RETURN
  51. 50 PRINT@162,"Crashed-Sink rate > 7fps";:GOTO57
  52. 51 PRINT@162,"Crashed short of runway":GOTO57
  53. 52 PRINT@162,"Attempted to land beyond runway":GOTO57
  54. 53 PRINT@162,"missed runway";:GOTO57
  55. 54 PRINT@162,"Landed gear up";:GOTO57
  56. 55 PRINT@162,"Ran off runway";:GOTO57
  57. 56 PRINT@162,"Passed runway end";:GOTO57
  58. 57 SOUND4697,100
  59. 58 GOTO58
  60. 59 PRINT@162,"Stopped. Welcome home!";:GOTO57
  61. 60 LINE(0,YL)-(239,YR),0:LINE(0,8)-(2,8):FORI=1TO23:READX6,Y6:DATA20,5,44,6,50,11,47,8,58,0,68,12,65,8,71,5,81,12,91,8,97,4:DATA111,13,126,13,147,6,150,6,171,10,164,13,170,10,190,1:DATA210,11,203,13,232,3,239,7:LINE-(X6,Y6):NEXTI
  62. 61 LINE(55,2)-(57,3):LINE-(59,2):LINE(0,13)-(239,13):LINE(188,3)-(191,4):LINE-(193,3):SW=1:RETURN
  63. 62 AN=1:D1=0:AL=10000:HG=180:D2=52800!:RETURN
  64. 63 AN=15:D1=-5280:AL=30000:HG=0:RETURN
  65. 64 CLS:PRINTTAB(8)"Land the Space Shuttle.":PRINT"Your craft is a glider and has no power.":PRINT"To land safely you must meet the            following conditions:":GOSUB3:CLS:PRINT
  66. 65 PRINT"  1. Heading (HG) must be 180 degrees":PRINT"  2. Distance (Dist.) from runway":PRINT"     centerline must be less than 10":PRINT"  3. Gear must be down
  67. 66 PRINT"  4. Vertical speed (VSI) must be less       than 7 fps":GOSUB3:CLS:PRINT"Stall speed is 180.  Alarm sounds if":PRINT"airspeed drops below 200.":PRINT"You may take any course to runway.
  68. 67 PRINT"Landing area will come into view when     you are on course.":PRINTTAB(15)"Good luck!":GOSUB3:GOTO5
  69. 68 DST=DM:IFDST>20THENGOSUB78:GOSUB76:GOSUB77:RETURN
  70. 69 GOSUB78:IFDST<0THENGOSUB87:GOTO73
  71. 70 YB=9*LOG(DST):IFYB>24THENYB=24
  72. 71 IFYB<-8THENYB=-8
  73. 72 GOTO75
  74. 73 IFE<0THEN56
  75. 74 IFE<1THENXC=(X4-X3)/10:YC=(Y4-Y1)/10:X1=X1-XC:X3=X3+XC:Y1=Y1+YC:Y3=Y1
  76. 75 Y2=38-YB:Y4=38-YB:GOSUB76:X2=18+XB:X4=223-XB:GOSUB77:GOSUB79:RETURNELSERETURN
  77. 76 X2=114:X4=126:H=AL*2:XB=10*LOG(H):RETURN:RETURN
  78. 77 LINE(X1,Y1)-(X2,Y2):LINE-(X4,Y4):LINE-(X3,Y3):LINE-(X1,Y1):RETURN
  79. 78 LINE(X1,Y1)-(X2,Y2),0:LINE-(X4,Y4),0:LINE-(X3,Y3),0:LINE-(X1,Y1),0:LINE(120,7)-(120,Y4),0:RETURN
  80. 79 IFDM>5THENFORK=RETOY4STEP2:PSET(120,K):NEXTK:RETURN
  81. 80 IFDM>.5ANDDM<1THEN82
  82. 81 IFDM<.5THEN83ELSE84
  83. 82 LINE(120,Y3)-(120,Y4):FORK=Y3+1TOY4-1STEP7:LINE(120,K)-(120,K+1),0:NEXTK:RETURNELSERETURN
  84. 83 LINE(120,Y3)-(120,Y4):FORK=RE+1TOY4-1STEP9:LINE(120,K)-(120,K+1),0:NEXTK:RE=RE+3:IFRE>RB+5THENRE=Y3:RETURNELSERETURN
  85. 84 ONDSTGOSUB85,85,86,86:RETURN
  86. 85 FA=5-INT(DST):LINE(120,Y3)-(120,Y4):FORK=RE+1TOY4-1STEPFA+2:PRESET(120,K):PRESET(120,K+1):NEXTK:RE=RE+1:IFRE>RB+FATHENRE=Y3:RETURNELSERETURN
  87. 86 FA=5-INT(DST):LINE(120,Y3)-(120,Y4):FORK=RE+1TOY4-1STEPFA+1:PRESET(120,K):NEXTK:RE=RE+1:IFRE>RB+FATHENRE=Y3:RETURNELSERETURN
  88. 87 PRINT@81,"over runway":E=3+DST:PRINT@110,"end:";:PRINT@115,USING"#.##";E;:RETURN:REM translating NEC82 Basic to M100 Basic.
  89.