;TURBO RUN v1.2 ;Completed 7/09/88 by The Game Master and Waldo ? ; Special Thanks: The Monitor, CC, Barry Prowell, and many more! ; rc = race number ; pt = points ; tb = spaces from left side of screen to left side of road ; cr$= info on placement of road. ; tu$= info on placement of turbos ; cp = car position ; bs$= backspace (^H) ; ca$= car (in mousetext) ; mn = # of cars ; zz = # of turbos ; rc$= road character ; n$= name$ for topten varclear on nocar goto link.term mn=3 rc=1 pt=0 cr$="" bs$=chr$(8) ca$="C" zz=0 n$="" log "b:" check print chr$(12) setint(chr$(29)):printchr$(5);chr$(1,info(2)*15);:pe=(key(0)=29):setint("") if pe<>1 print "Sorry, you need ProTERM Special emulation...":goto back if info(2)=1 print "Sorry, no 300 baud.":goto back start print chr$(12); print "Welcome to TurboRun v1.2!" print ' Please disable the Status Bar with the ';chr$(16);chr$(65);chr$(14);'-O option. Apple IIgs users, if you are using sound, set speed to "normal" (1.0 megahertz) ' input @2"Do you want sound? [Y/n] :";so$ if so$="LUCY" gosub lucy if so$="TEN" goto display if left$(so$,1)="N" so=0:goto st.2 so=1 st.2 print chr$(12); input @2 "Do you want instructions? [y/N] :";in$ if left$(in$,1) <> "Y" goto countdown print chr$(12);chr$(14); print' _ ______ \\ _\__\________ |______/__\\________ | / ___ \| - T___ . ( \______/ . \__|_______/ . \_\____/ \_____/ \_____/' print chr$(16);:print' [[[[[[[[ [[ [[ [[[[[[ [[[[[[[ [[[[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[[[[[ [[[[[[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[ [[[[[[[[ [[ [[ [[[[[[[ [[[[ @A@A@A@A@A@A@A@ ]]]]]]] ]] ]] ]] ]] ]] ]] ]] ]] ]]] ]] A@A@A@A@A@A@A@A@A ]]]]]]] ]] ]] ]] ]] ]] ]] ]] ]] ]] ]] ]]]] @A@A@A@A@A@A@A@A@A@ ]] ]] ]]]]]]]]] ]] ]]' print chr$(14) for q=1 to 20 print chr$(24); for tt=1 to 7 print chr$(6);chr$(10); next next print chr$(30);chr$(32);chr$(55); if so=1 gosub race print "Press a key to continue....";:get a$ gosub wipeup print chr$(16);chr$(12) for q=1 to 40 print "VN"; next for q=1 to 40 print "NV"; next print chr$(30);chr$(32);chr$(53); for q=1 to 40 print "VN"; next for q=1 to 40 print "NV"; next print chr$(30);chr$(32);chr$(35); print chr$(14); ;normal text print' T U R B O R U N Version 1.2 Written by- Waldo ? The Game Master Welcome to the first GBBS arcade style game EVER! ' input @2 "Press for more";a$ gosub wipein print chr$(30);chr$(32);chr$(35); print \'The following letter arrived at your office yesterday: Welcome. You, 'a1$' 'a2$', have been chosen. The new TURBO "Ace" combat vehicle has been completed by our top ranked military scientists The prototype, codenamed "TurboRunner", awaits you. The president gives the "TurboRunner" project top priority. Weve chosen you because you are the best. Our contacts say youre the man for the job. Well contact you again...... (You find instructions slid under your door the next morning. You follow them) ' input @2 "Press for more info...";a$ gosub wipein print chr$(30);chr$(32);chr$(35); print ' You go to a phone booth outside of town. Hidden in the reciever you find a piece of paper which reads: TEST THE TURBO CAR FOR US. MANUEVER CAREFULLY AND COLLECT TURBOS! Use the <- and -> (Arrow keys) to control movement of your TURBO CAR Avoid going off the road (pass all the roads and win the game!) Pick up ';chr$(16);'[';chr$(14);', or TURBOs, for 5 points each. You have three lives plus one life every snowstorm. Icy roads make handling your TurboCar more difficult. ** Be sure to disable ProTERMs status bar before playing. Press a key to play Turbo Run.':get a$ gosub wipedown countdown if right$(time$,2)<>"PM" print "-3":get i$ print chr$(12);chr$(16); print chr$(18);"S";chr$(80); print chr$(30);chr$(70);chr$(32); print "U0 H";bs$;bs$; for rr=1 to 5 print (6-rr);bs$;bs$;:for q=1 to 2000:next:print"0"; next program if right$(time$,2)<>"PM" print "-2":get i$ bb$=" " if right$(time$,2)<>"PM" print "-1":get i$ print chr$(12) print chr$(16) cr$="" tu$="" cp=40 tb=35 wi=11-rc q=0 rc$=" " rogerrab q=q+1 t$=rnd$:m=random(3) if m=1 tb=tb-1 if m=2 tb=tb+1 if tb<1 tb=1 if tb>60 tb=60 cr$=cr$+chr$(tb) t$=rnd$:t=random(20) if t=5 tu$=tu$+"1":goto roger2 if t=6 tu$=tu$+"2":goto roger2 tu$=tu$+"0" roger2 print chr$(30);chr$(32+tb);chr$(32); print chr$(22); if (rc=5) or (rc=8) or (rc=2) rc$="N" if t=5 print "U[";chr$(18);rc$;chr$(wi-1);"H":goto roger3 if t=6 print "U";chr$(18);rc$;chr$(wi-1);"[H":goto roger3 print "U";chr$(18);rc$;chr$(wi);"H" roger3 setint(""):a$=chr$(key(0)) if ((rc=2) or (rc=5) or (rc=8)) and (q<23) goto pizza if (rc=2) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$ if (rc=5) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$ if (rc=8) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$ bb$=a$ pizza if a$=chr$(8) cp=cp-1 if a$=chr$(21) cp=cp+1 if cp<1 cp=1 if cp>79 cp=79 setint(""):a$=chr$(key(0)) if ((rc=2) or (rc=5) or (rc=8)) and (q<23) goto pizza.2 if (rc=2) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$:goto horse if (rc=5) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$:goto horse if (rc=8) and (a$<>chr$(8)) and (a$<>chr$(21)) a$=bb$:goto horse pizza.2 if a$=chr$(8) cp=cp-1 if a$=chr$(21) cp=cp+1 horse bb$=a$ if cp<1 cp=1 if cp>79 cp=79 print chr$(30);chr$(cp+32);chr$(55); print ca$; print chr$(24); if q<=23 goto roger4 ch$=left$(cr$,1) th$=left$(tu$,1) if (cp=asc(ch$)+1) and (th$="1") zz=zz+1: if so=1 print chr$(7); if (cp=asc(ch$)+wi) and (th$="2") zz=zz+1: if so=1 print chr$(7); pt=pt+1 if cp <= asc(ch$) gosub wipedown: goto lose if cp > (asc(ch$)+wi) gosub wipedown: goto lose cr$=right$(cr$,len(cr$)-1) tu$=right$(tu$,len(tu$)-1) roger4 if q<123 goto rogerrab gosub wipeup:goto win lose if so=1 gosub crash print chr$(14); print chr$(12);"You crashed with ";pt;" points." mn=mn-1 if mn<1 print \\\' GAME OVER':print:if so=1 gosub defeat if mn<1 goto playagain print "You only have "mn" car"; if mn>1 print "s left.":goto lose.2 print " left." lose.2 if mn=1 print "*** This is your last car. ***" if zz>0 print "Number of turbos you have: ";zz input @2 "Press to continue...";a$ goto program playagain pt=pt+(zz*5) print \\"You aquired "zz" turbos, so your score is now "pt"." goto highscor play.2 print chr$(12) input @2 "Do you want to play again? [Y/n] :";in$ if left$(in$,1)="N" goto back.3 goto varclear win if so=1 gosub victory print chr$(12);chr$(14) print "Congratulations!! You've won race "rc"! You now have "pt" points!" pt=pt+50:print "Plus a 50 point bonus for that race. That makes ";pt"." if (rc=5) or (rc=8) or (rc=2) mn=mn+1 if (rc=5) or (rc=8) or (rc=2) print"Not only that, but you got a new car!!" print "You have "mn" car"; if mn=1 print " left.":goto win.2 print "s left." win.2 if zz>0 print "Number of turbos you have: ";zz rc=rc+1 if rc=11 print ' You have successfully completed TurboRun.. Your check is in the mail. You have recieved a special bonus of 1000 points for doing such an exceptional job. Congratulations. Your government, and your nation thank you. ' if rc=11 input @2"Press a key...";a$:pt=pt+1000:goto playagain if (rc=2) or (rc=5) or (rc=8) print \\" Uh oh, looks like snow up ahead!"\ input @2 "Press to go to the next race. ";a$ goto program highscor print "Please hold. Updating high scores..." f$="turbo.topten" mt$="Empty" ms$="0" open #1,f$:if not mark(1) goto high.2 close #1 create f$ open #1,f$ for q=1 to 10 position #1,80,q:print #1,mt$\ms$ next high.2 if rc=11 rc=10 n$=a1$+" "+a2$+" ["+str$(rc)+"]" position #1,80,10 input #1,tn$\ts$ ts=val(ts$) pt$=str$(pt) if (ts<=pt) position #1,80,10:print #1,n$\pt$:goto high.3 close #1 goto display high.3 q=11 print "Congratulations! You are one of the Top 10 Elite. Hold a sec.." high.4 q=q-1 if q=1 close #1:goto display position #1,80,q input #1,a$\sc$ position #1,80,(q-1) input #1,bb$\s2$ if val(sc$) to continue";a$ goto play.2 back print chr$(14) if pe<>1 print ' If you are using ProTERM and have special emulation enabled but the program did not recognize it, please type PROTERM at this prompt. Type anything else to return to the system.'\:input pw$:if pw$="PROTERM" goto start back.3 p$="" if info(5) print "Delete Top Ten? for no: ";:input @2 p$ if p$="Y" kill "b:turbo.topten" ; this bring the variables in Turbo.var back back.2 link "a:games.seg","fromsys" wipedown print chr$(24); for q=1 to 24 print chr$(25);chr$(10); next return wipeup print chr$(30);chr$(32);chr$(54); for q=1 to 24 print chr$(25);chr$(11); next return wipein print chr$(30);chr$(32);chr$(35) for q=1 to 17 print chr$(25);chr$(10); next return defeat print chr$(20);chr$(35);chr$(1);chr$(50); gosub wait print chr$(20);chr$(35);chr$(1);chr$(20); gosub wait.2 print chr$(20);chr$(35);chr$(1);chr$(10); gosub wait.3 print chr$(20);chr$(35);chr$(1);chr$(90); print chr$(20);chr$(29);chr$(1);chr$(50); gosub wait.3 print chr$(20);chr$(31);chr$(1);chr$(20); gosub wait print chr$(20);chr$(31);chr$(1);chr$(32); gosub wait print chr$(20);chr$(35);chr$(1);chr$(20); gosub wait print chr$(20);chr$(35);chr$(1);chr$(32); gosub wait.2 print chr$(20);chr$(37);chr$(1);chr$(40); gosub wait.2 print chr$(20);chr$(35);chr$(1);chr$(127); return race print chr$(20);chr$(35);chr$(1);chr$(30); print chr$(20);chr$(31);chr$(1);chr$(27); print chr$(20);chr$(27);chr$(1);chr$(25); print chr$(20);chr$(22);chr$(1);chr$(60); print chr$(20);chr$(27);chr$(1);chr$(25); print chr$(20);chr$(22);chr$(1);chr$(70); return crash for q=1 to 100 print chr$(20);chr$(q);chr$(1);chr$(5); next return victory print chr$(20);chr$(22);chr$(1);chr$(40); print chr$(20);chr$(18);chr$(1);chr$(40); print chr$(20);chr$(16);chr$(1);chr$(30); print chr$(20);chr$(15);chr$(1);chr$(50); return lucy print chr$(20);chr$(41);chr$(1);chr$(60); print chr$(20);chr$(31);chr$(1);chr$(60); print chr$(20);chr$(20);chr$(1);chr$(70); print chr$(20);chr$(35);chr$(1);chr$(60); print chr$(20);chr$(20);chr$(1);chr$(70); print chr$(20);chr$(31);chr$(1);chr$(60); print chr$(20);chr$(37);chr$(1);chr$(60); print chr$(20);chr$(31);chr$(1);chr$(60); print chr$(20);chr$(20);chr$(1);chr$(70); print chr$(20);chr$(39);chr$(1);chr$(60); print chr$(20);chr$(22);chr$(1);chr$(40); print chr$(20);chr$(24);chr$(1);chr$(40); print chr$(20);chr$(31);chr$(1);chr$(60); return tt print chr$(20);chr$(22);chr$(18);chr$(40); gosub wait.2 print chr$(20);chr$(22);chr$(18);chr$(10); gosub wait.3 print chr$(20);chr$(22);chr$(18);chr$(10); gosub wait.3 print chr$(20);chr$(20);chr$(17);chr$(25); gosub wait.3 print chr$(20);chr$(22);chr$(18);chr$(10); gosub wait.3 print chr$(20);chr$(20);chr$(17);chr$(10); gosub wait.2 print chr$(20);chr$(18);chr$(15);chr$(90); return wait for rr=1 to 1000 next return wait.2 for rr=1 to 800 next return wait.3 for rr=1 to 500 next return link.term link "a:main.seg","term1"