10 REM WRITTEN BY ROBB (MITHRANDIR) BORLAND 10/4/77 11 REM______________________________________________________ 12 REM === STARWARS 1" === REWORKED 08.12.2017 16 REM 18 REM special conversion for SBC 6502 - 80 columnīs 20 REM and Win Hyperterminal - Igi 2017 22 REM______________________________________________________ 24 ? CHR$(12):?:?:?:POKE 15,80 30 ? TAB(36);"..=*=.." 40 ? TAB(32);".-=* *=-." 50 ? TAB(30);"-=/ \=-" 60 ? TAB(29);"+*(S T A R W A R S)*+" 70 ? TAB(30);"-=\ /=-" 80 ? TAB(32);"'-=* *=-'" 90 ? TAB(36);"''=*=''":?:? 100 ? TAB (20);" THIS PROGRAM WILL SIMULATE AN ATTEMPT TO" 110 ? TAB (20);" DESTROY THE INFAMOUS STARWARS DEATH STAR." 120 ? 130 ? " DO YOU NEED INSTRUCTIONS? " 140 GOSUB 3810 150 IF A9=0 THEN 1200 160 ? 200 ? " YOU MUST MANUVER DOWN A TRENCH 500,000 FEET" 210 ? " LONG, 200 FEET WIDE, AND 200 FEET DEEP TO A POINT" 220 ? " 10,000 FEET FROM THE END OF THE TRENCH AND DEAD" 230 ? " IN THE CENTER OF IT. AT THIS TIME, YOUR ON-BOARD" 240 ? " COMPUTER WILL AUTOMATICALLY FIRE 2 PROTON MISSILES AT" 250 ? " A SMALL THERMAL EXHAUST PORT AT THE END OF THE TRENCH." 260 ? " YOU MUST DO ALL OF THIS AND AT THE SAME TIME" 270 ? " NOT GET YOUR BUTT BLOWN OFF BY DARTH VADER, WHO IS" 280 ? " CHASING YOU. *** DO YOU STILL WANT TO TRY IT???" 290 GOSUB 3800 300 IF A9=0 THEN 3900 310 ? " GOOD. HERE ARE A FEW MORE DETAILS.":? 330 ? " MAXIMUM FIGHTER SPEED --- 5,000 FEET PER SECOND" 340 ? " MINIMUM FIGHTER SPEED --- 1,000 FEET PER SECOND" 350 ? " LENGTH OF TRENCH --- 500,000 FEET." 360 ? " WIDTH OF TRENCH --- 200 FEET." 370 ? " DEPTH OF TRENCH --- 200 FEET." 380 ? " AUTOMATIC FIRING RANGE --- 10,000 FEET." 390 ? " EXHAUST PORT DIAMETER --- 6 FEET." 400 GOSUB 3850 410 ? " THE TRENCH IS SET UP ON A CO-ORDINATE SYSTEM" 420 ? " WITH THE ORIGIN (0,0,0) AT THE CENTER OF THE EXHAUST PORT." 430 ? " YOU WILL START AT THE FAR END OF THE TRENCH" 440 ? " AT POSITION (0,0,500000). YOU COULD FLY STRAIGHT" 450 ? " DOWN THE CENTER OF THE TRENCH, EXCEPT THAT 5 SECONDS" 460 ? " AFTER YOU START, AND FOR EVERY 10 SECONDS AFTERWARD," 470 ? " A TURRET-MOUNTED TURBO-LASER WILL FIRE STRAIGHT DOWN THE" 480 ? " MIDDLE OF THE TRENCH, DESTROYING EVERYTHING IN IT'S PATH!" 490 GOSUB 3850 500 ? " SINCE YOU WILL BE ASKED EVERY 10 SECONDS IF" 510 ? " YOU WISH TO CHANGE COURSE AND/OR SPEED, THEN YOU" 520 ? " MUST GET AWAY FROM THE CENTER OF THE TRENCH ON YOUR" 530 ? " FIRST MANUVER OR ELSE BE DESTROYED." 540 ? " IF YOU ARE AWAY FROM THE CENTER, THERE IS ONE" 550 ? " CHANCE IN FORTY FOR EACH TEN SECOND INTERVAL THAT" 560 ? " YOU WILL BE DESTROYED BY RANDOM TURBO-LASER FIRE." 570 GOSUB 3850 600 ? " SINCE IT WILL TAKE YOU A MINIMUM OF 100 SECONDS TO" 610 ? " FLY THE LENGTH OF THE TRENCH, THEN YOU HAVE AT LEAST" 620 ? " ONE CHANCE IN FOUR THAT YOU WILL BE DESTROYED THAT WAY." 630 ? " ALSO, IF DARTH VADER GETS A SHOT OFF AT YOU AND" 640 ? " YOU DID NOT TRY TO AVOID HIM, YOU HAVE ONLY ONE " 650 ? " CHANCE IN FOUR OF SURVIVING. THEREFORE, IT BEHOOVES" 660 ? " YOU TO STAY AWAY FROM HIM WHENEVER POSSIBLE. " 670 GOSUB 3850 700 ? " THE FIRST NUMBER OF THE CO-ORDINATE SYSTEM REFERS" 710 ? " TO YOUR POSITION BETWEEN THE WALLS OF THE TRENCH. " 720 ? " THE LEFT WALL HAS A VALUE OF -100, THE CENTER IS " 730 ? " 0, AND THE RIGHT WALL IS 100." 740 ? " TRY NOT TO HIT THE WALLS." 750 GOSUB 3850 760 ? " THE SECOND NUMBER REFERS TO YOUR DEPTH IN THE" 770 ? " TRENCH. THE BOTTOM HAS A VALUE OF -100, THE CENTER" 780 ? " IS 0, AND THE TOP IS 100. YOU CAN FLY OUT OF THE TOP " 790 ? " OF THE TRENCH, BUT IF YOU DO, YOUR CHANCES OF BEING" 800 ? " HIT BY TURBO-LASER FIRE WILL INCREASE TO ONE CHANCE" 810 ? " IN FIVE FOR EACH 10 SECOND INTERVAL THAT YOU ARE OUT" 820 ? " OF THE TRENCH. ALSO, TRY NOT TO HIT THE BOTTOM." 830 GOSUB 3850 840 ? " THE THIRD NUMBER REFERS TO THE DISTANCE REMAINING" 850 ? " BETWEEN YOU AND THE APPROACHING END OF THE TRENCH." 860 ? " WHEN THAT DISTANCE EQUALS 10,000, YOUR MISSILES " 870 ? " WILL AUTOMATICALLY FIRE." 880 GOSUB 3850 890 ? " THE FIRST NUMBER OF THE COURSE CO-ORDINATES REFERS" 900 ? " TO THE HORIZONTAL POSITION YOU WILL HAVE WHEN YOU" 910 ? " REACH THE AUTOMATIC FIRING RANGE (A.F.R.) IF YOU" 920 ? " MAINTAIN THAT COURSE. ": ? 940 ? " THE SECOND COURSE CO-ORDINATE REFERS TO THE VERTICAL" 950 ? " POSITION YOU WILL HAVE WHEN YOU REACH THE A.F.R. IF" 960 ? " YOU MAINTAIN THAT COURSE. KEEP THIS IN MIND" 970 ? " WHEN YOU ARE ASKED TO MAKE COURSE CORRECTIONS." 980 GOSUB 3850 990 ? " SINCE YOUR WINGSPAN IS 30 FEET, THEN THE MAXIMUM" 1000 ? " VALUES THAT YOUR WIDTH CO-ORDINATE CAN HAVE IS" 1010 ? " + OR - 85. ALSO, SINCE YOUR FIGHTER IS TEN" 1020 ? " FEET DEEP, YOUR LOWEST DEPTH CO-ORDINATE IS -90." 1030 ? " EXCEED THESE AND YOU ARE A GONER. ALSO, YOU MUST" 1040 ? " PULL UP AT THE END OF THE TRENCH IN ORDER TO MISS" 1050 ? " THE END WALL AND A GUN EMPLACEMENT ON TOP OF THE WALL." 1060 ? " IF YOU MANAGE TO HIT EITHER OF THEM, YOU WILL NOT BE" 1070 ? " TOLD IF YOUR MISSILES WERE ON TARGET OR NOT.": ? 1090 ? " ARE YOU READY?" 1100 GOSUB 3800 1120 IF A9=0 THEN 3900 1190 REM ? 1200 ? " GOOD. HERE WE GO." 1210 ? 1220 P=500000 1225 P9=.1: REM ==== DIFFICULTY LEVEL: ORIGINAL WAS .001 1230 H1=0:V1=0:H2=0:V2=0:V6=0:T=0:U=1 1300 ? TAB(10);"VITAL STATS" 1310 ? TAB(9);"*************" 1320 REM ? 1330 ? " POSITION ----=>(";H1;",";V1;",";P;")" 1340 ? " COURSE ------=>(";H2;",";V2;" )" 1350 ? " SPEED -------=>" ;V6;" FT. PER SEC." 1360 ? " ELAPSED TIME =>" ;T;" SECONDS" 1370 IF P>60000 THEN 1410 1380 ? 1390 IF P>35000 THEN 2260 1400 IF P<35000 THEN 2550 1410 ? 1420 ? " INPUT NEW COURSE: (H2)---=>";:INPUT H2 1421 ? " INPUT NEW COURSE: (V2)---=>";:INPUT V2 1440 IF ABS(H2)<85 THEN 1510 1450 ? " ON THIS COURSE, YOU WILL EVENTUALLY IMPACT ON THE" 1460 IF H2<85 THEN ? " RIGHT WALL OF THE TRENCH." 1470 IF H2>-85 THEN ? " LEFT WALL OF THE TRENCH." 1510 IF V2>-90 THEN 1540 1520 ? " ON THIS COURSE, YOU WILL EVENTUALLY IMPACT ON THE" 1530 ? " FLOOR OF THE TRENCH." 1540 REM 1550 ?" INPUT NEW SPEED.: (V6)---=>";:INPUT V6 1570 ?:REM 1580 IF V6<1000 THEN ? " SPEED TOO LOW. TRY AGAIN." 1590 IF V6<1000 THEN 1540 1620 IF V6>5000 THEN ? " SPEED TOO HIGH. TRY AGAIN." 1630 IF V6>5000 THEN 1540 1640 H=ABS(H2-H1) 1650 V=ABS(V2-V1) 1660 R=SQR((H*H)+(V*V)) 1670 T1=R/(P-10000) 1680 T2=T1*(0.0174533): REM === CONVERSION TO RADIANS 1690 V8=TAN(T2): REM === WAS V9=V6*COS(ATN(T1)) 1700 V9=V6*COS(V8) 1710 D=V9*10 1720 H3=H*D/(P-10000) 1730 V3=V*D/(P-10000) 1740 IF H2