home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / bus / hiway1.ba < prev    next >
Text File  |  2006-10-19  |  3KB  |  78 lines

  1. 0 'HIWAY1.BA   EJCarmody  11/29/87
  2. 1 'CLUB 100 Library - 415/939-1246 BBS,    937-5039 NEWSLETTER, 932-8856 VOICE
  3. 10  ONKEYGOSUB6000,7000,8000,9000,,,,10000:KEYON
  4. 20  CLS:CALL16959:CALL17001:PRINT@0,"HIGHWAY HELPER":CALL17006:PRINT
  5. 30  DEFINTI,K,Y:DEFSNGE,T:K1=1:INPUT"HIWAY FILE NAME";N$
  6. 40  OPENN$FORINPUTAS1
  7. 50  IFEOF(1)THEN70
  8. 60 INPUT#1,H$,M:K=K+1:GOTO50
  9. 70 CLOSE:DIMH$(K),M(K)
  10. 100 INPUT"RETURN TRIP(Y/N)? RESUME(Y/N)";A$,C$
  11. 110 IFC$="Y"ORC$="y"THENOPEN"ET.DO"FORINPUTAS2:INPUT#2,ET:CLOSE2:T$=TIME$:GOSUB20000:TS=T:GOTO130
  12. 120 FX=1
  13. 130 INPUT"STARTING CHECK POINT";K4
  14. 140 IFA$="Y"ORA$="y"THENK4=K+1-K4
  15. 150 K2=K4-1:K3=K4
  16. 160 IFK-K4<5THENK2=K-6
  17. 170 INPUT"ESTIMATED AVE. MPH (40-70)";DR
  18. 180 OPEN N$ FOR INPUTAS1
  19. 190 IFA$="Y"ORA$="y"THEN210
  20. 200 FORI=1TOK:INPUT#1,H$(I),M(I):NEXT:CLOSE:GOTO230
  21. 210 FORI=KTO1STEP-1:INPUT#1,H$(I),M(I):NEXT:CLOSE
  22. 220 FORI=KTO2STEP-1:M(I)=M(I-1):NEXT:M(1)=0
  23. 230 PRINT"TO START PROGRAM -----"
  24. 240 PRINT"PRESS ANY KEY AT ";H$(K4)
  25. 250 B$=INKEY$:IFB$=""THEN250
  26. 260 T$=TIME$:GOSUB20000:TB=T:T1=T:IFFX=0THENTD=T1-TS:ET=ET+TD
  27. 270 CLS:BEEP:CALL17001:PRINT@0,"HIGHWAY HELPER"
  28. 280 PRINT@22,LEFT$(N$,LEN(N$)-3):CALL17006:PRINT@30,"MPH:";INT(DR)
  29. 290 T1=T1+M(K3+1)/DR
  30. 300 GOSUB1000:IFK4=>K-5THENY=6-(K-K3):GOSUB2000:GOTO500
  31. 310 Y=K1:GOSUB2000
  32. 500 T$=TIME$:PRINT@15,LEFT$(TIME$,5)
  33. 510 GOSUB20000:T2=T
  34. 520 IFT2=>T1THENK1=K1+1:K3=K3+1:GOTO540
  35. 530 GOTO500
  36. 540 IFK3=KTHEN4000
  37. 550 T1=T1+M(K3+1)/DR
  38. 555 IFK4=>K-5THENY=6-(K-K3):GOSUB2000:GOTO500
  39. 560 IFK3=>K-2THENY=6-(K-K3):GOSUB2000:GOTO500
  40. 570 IFK1<=3THENY=K1:GOSUB2000:GOTO500
  41. 580 FORI=1TO6:PRINT@45+I*40,SPACE$(35):NEXT:K2=K2+1
  42. 590 GOSUB1000:GOTO500
  43. 1000 BEEP:FORI=1TO6
  44. 1010 PRINT@45+I*40,H$(I+K2)
  45. 1020 PRINT@70+I*40,M(I+K2);"MI."
  46. 1030 NEXT:RETURN
  47. 2000 BEEP:PRINT@41+(Y-1)*40,SPACE$(3):PRINT@41+Y*40,SPACE$(3)
  48. 2010 PRINT@41+Y*40,CHR$(232)CHR$(232)CHR$(254)
  49. 2020 PRINT@41+(Y+1)*40,CHR$(231)CHR$(231)CHR$(251):RETURN
  50. 4000 T$=TIME$:GOSUB20000:TX=T-(T2-T1)
  51. 4010 FORI=2TOK:DT=DT+M(I):NEXT
  52. 4020 IFFX=1THENDF=INT(DT/(TX-TB)+.5):GOTO4040
  53. 4030 ET=ET+(TX-TB):DF=INT(DT/ET+.5):KILL"ET.DO"
  54. 4040 PRINT@241,SPACE$(3):PRINT@281,"END":FORI=1TO5:BEEP:NEXT:PRINT@34,DF"*"
  55. 4050 GOTO4050
  56. 6000 T$=TIME$:KK=1:D$="!":GOSUB20000
  57. 6010 TX=T:GOSUB30000
  58. 6020 RETURN
  59. 7000 T$=TIME$:KK=2:D$="@":GOSUB20000
  60. 7010 TX=T:GOSUB30000
  61. 7020 RETURN
  62. 8000 T$=TIME$:KK=3:D$="#":GOSUB20000
  63. 8010 TX=T:GOSUB30000
  64. 8020 RETURN
  65. 9000 T$=TIME$:KK=4:D$="$":GOSUB20000
  66. 9010 TX=T:GOSUB30000
  67. 9020 RETURN
  68. 10000 BEEP:T$=TIME$:GOSUB20000:TX=T
  69. 10010 ET=ET+(TX-TB):OPEN"ET.DO"FOROUTPUTAS2:PRINT#2,ET:CLOSE2:POWER OFF
  70. 10020 RETURN
  71. 20000 T=VAL(LEFT$(T$,2))+VAL(MID$(T$,4,2))/60+VAL(RIGHT$(T$,2))/3600:RETURN
  72. 30000 M=0:FORI=1TOKK:M=M+M(K4+I):NEXT
  73. 30010 DX=INT(M/(TX-TB)+.5):IFDX>70ORDX<40THEN30050
  74. 30020 IFDX<DRTHENT1=TX+M(K3+1)/DX:GOTO30040
  75. 30030 IFDX>DRTHENDR=DX:PRINT@34,DR;D$:BEEP:BEEP:K1=K1+1:K3=K3+1:T1=TX+M(K3+1)/DX:GOTO555
  76. 30040 DR=DX:PRINT@34,DR;D$:BEEP:BEEP
  77. 30050 RETURN
  78.