home *** CD-ROM | disk | FTP | other *** search
/ Super Games / visualcdgame.iso / dosgames / contintl / chart.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1992-08-06  |  8.2 KB  |  114 lines

  1. 10  REM =============================================
  2. 20  REM FM POWER CHART - by Steve Schott - March 1986
  3. 30  REM =============================================
  4. 40  REM
  5. 50  FORMFEED$ = CHR$(12) : REM Form Feed - Advance New Sheet in Printer
  6. 60  CL$ = "                                                                                " : REM  String of Blanks to Clear Line
  7. 65  LOCATE 1,1, :COLOR 15: PRINT "                                                  ":COLOR 0,15
  8. 70  CLS : COLOR 0,15 : KEY OFF
  9. 80  DP = 0 : REM Reset Decimal Point Flag
  10. 85  COLOR 4
  11. 90  PRINT "KEYTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENCLOSE":COLOR 8
  12. 100  PRINT "OPEN                      F M   P O W E R   C H A R T                            OPEN":COLOR 4
  13. 110  PRINT "SCREENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENTHENLOAD"
  14. 120  REM ----------
  15. 130  REM INPUT DATA
  16. 140  REM ----------
  17. 150  LOCATE 5,1 : COLOR 15 : PRINT "This program creates a chart of PA CURRENT vs. PA VOLTAGE for transmitter power"
  18. 160   PRINT "outputs from 90% to 105%.  Printer is set to "; : COLOR 9 : PRINT "8 lines/inch"; : COLOR 15: PRINT " and the pitch to "; : COLOR 9 : PRINT "15"; : COLOR 15: PRINT "."
  19. 170  PRINT "Select the "; : COLOR 9 : PRINT "STARTING"; : COLOR 15: PRINT " and"; : COLOR 9 : PRINT " ENDING"; : COLOR 15: PRINT " plate voltage and the increment voltage "; : COLOR 9 : PRINT "STEPS"; : COLOR 15: PRINT " so"
  20. 180  PRINT "as not to exceed the maximum number of data lines per page.  The maximum number"
  21. 190   PRINT "of data lines which can be printed on an 8.5 X 11 inch page is "; : COLOR 9 : PRINT "65"; : COLOR 15: PRINT "." : COLOR 4
  22. 200  LOCATE 10,1 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  23. 210  LOCATE 12,1 : COLOR 15: PRINT "Enter Normal Operating Voltage: "; : COLOR 9 : INPUT "", N$ : N = VAL(N$) : IF N =< 0 THEN BEEP : GOTO 210
  24. 220  LOCATE 12,60 : COLOR 15: PRINT "Voltage Steps: "; : COLOR 9 : INPUT "", ST$ : ST = VAL(ST$) : IF ST =< 0 THEN BEEP : GOTO 220
  25. 230  E = N - (32 * ST)
  26. 240  EE = N + (32 * ST)
  27. 250  LOCATE 12,1 : PRINT CL$
  28. 260  LOCATE 12,1 : COLOR 15: PRINT "Starting Voltage:"; : COLOR 9 : PRINT E
  29. 270  LOCATE 12,30 : COLOR 15: PRINT "Ending Voltage:"; : COLOR 9 : PRINT EE
  30. 280  LOCATE 12,60 : COLOR 15: PRINT "Voltage Steps:"; : COLOR 9 : PRINT ST
  31. 290  GOTO 330
  32. 300  LOCATE 12,1 : COLOR 15: PRINT "Starting Voltage: "; : COLOR 9 : INPUT "", E$ : E = VAL(E$) : IF E =< 0 THEN BEEP : GOTO 300
  33. 310  LOCATE 12,30 : COLOR 9 : PRINT "Ending Voltage: "; : COLOR 9 : INPUT "", EE$ : EE = VAL(EE$) : IF EE < E THEN BEEP : GOTO 310
  34. 320  LOCATE 12,60 : COLOR 15: PRINT "Voltage Steps: "; : COLOR 9 : INPUT "", ST$ : ST = VAL(ST$) : IF ST =< 0 THEN BEEP : GOTO 320
  35. 330  LX = INT(((EE - E) / ST) +1): REM Calculate Number of Data Lines
  36. 340  LOCATE 14,9 : COLOR 15: PRINT "This will print"; LX; "lines of data.  "; : COLOR 4 : PRINT "R"; : COLOR 15:  PRINT "e-enter or "; : COLOR 4 : PRINT "C"; : COLOR 15: PRINT "ontinue? "; : COLOR 4 : INPUT "", A$
  37. 350  IF A$ = "r" OR A$ = "R" THEN LOCATE 14,1 : PRINT CL$ : GOTO 300
  38. 360  IF A$ = "c" OR A$ = "C" THEN LOCATE 14,1 : PRINT CL$ ELSE GOTO 340
  39. 370  LOCATE 13,1 : COLOR 7 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  40. 380  LOCATE 22,16 : COLOR 15: PRINT "Transmitter Power Output (in kW): "; : COLOR 9 : INPUT "", TPO$ : COLOR 15: TPO = VAL(TPO$) : IF TPO =< 0 THEN 380
  41. 390  LOCATE 22,1 : PRINT CL$ : LOCATE 15,1 : PRINT "Transmitter Power Output:"; : COLOR 9 : PRINT TPO; "kW" : COLOR 15
  42. 400  LOCATE 22,19 : COLOR 15: PRINT "Transmitter Efficiency (in %): "; : COLOR 9 : INPUT "", EFF$ : COLOR 15: EFF = VAL(EFF$) : IF EFF =< 0 THEN 400
  43. 410  LOCATE 22,1 : PRINT CL$ : LOCATE 15,45 : PRINT "Transmitter Efficiency:"; : COLOR 9 : PRINT EFF; "%" : COLOR 15
  44. 420  LOCATE 16,1 : COLOR 4 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  45. 430  REM ------------------------
  46. 440  REM PRELIMINARY CALCULATIONS
  47. 450  REM ------------------------
  48. 460  EFF = EFF / 100 : REM Change Efficiency from Percent to Factor
  49. 470  P = TPO * 1000 : REM Change KW to Watts
  50. 480  I = P / (N * EFF) : IF I > 1 THEN DP = 1 : REM DP is Decimal Point Flag;  DP = 1 when current in Amps, DP = 0 when current in mA.
  51. 490   LOCATE 18,1 : COLOR 15: PRINT "Plate Current at"; N; "Plate Volts: "; : COLOR 9 : IF DP THEN I = INT (I * 100 + 0.5) / 100 : PRINT USING "#.## Amps"; I ELSE I = INT (I * 1000 + 0.5) / 1000 : PRINT USING "### mA"; I * 1000
  52. 500  LOCATE 19,1 : COLOR 4 : PRINT "SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND"
  53. 510  LOCATE 21,1:PRINT CL$:LOCATE 21,1:COLOR 15:PRINT"Select One:   ";:COLOR 4:PRINT"P";:COLOR 15:PRINT"RINT CHART     -     ";:COLOR 4:PRINT"R";:COLOR 15:PRINT"E-ENTER DATA     -     ";:COLOR 4:PRINT"Q";:COLOR 15:PRINT"UIT";:COLOR 4: INPUT"? ",A$
  54. 520  IF A$ = "p" OR A$ = "P" THEN 600
  55. 530  IF A$ = "r" OR A$ = "R" THEN 70
  56. 545  IF A$ = "q" OR A$ = "Q" THEN RUN "techmenu"
  57. 550  GOTO 510
  58. 560  REM ----------------
  59. 570  REM SET PRINT FORMAT
  60. 580  REM ----------------
  61. 600  LOCATE 21,1 : PRINT CL$ : LOCATE 21,1 : COLOR 5 : PRINT "Number of Characters in Lefthand Margin (15 Characters/Inch): "; : COLOR 7 : INPUT "", TB$ : TB = VAL (TB$) : IF TB < 1 THEN BEEP : GOTO 600
  62. 620  LOCATE 21,1 : PRINT CL$ : LOCATE 21,1 : COLOR 5 : PRINT "Enter Number of Lines in Top Margin (8 Lines per Inch): "; : COLOR 7 : INPUT "", TM$ : TM = VAL (TM$)
  63. 630  LOCATE 21,1 : PRINT CL$ : LOCATE 21,1 : COLOR 5 : PRINT "Printer: (1)-Brother/Diablo (2)-QuietWriter (3)-Epson (4)-Tandy (5)-LaserJet "; : COLOR 7 : INPUT "", PT$ : PT = VAL (PT$) : IF PT < 1 OR PT > 5 THEN BEEP : GOTO 630
  64. 640  ON PT GOSUB 1090, 1100, 1110, 1120, 1130
  65. 650  LOCATE 21,1 : PRINT CL$ : LOCATE 21,17 : COLOR 5 : PRINT "Enter Radio Station Call Letters: "; : COLOR 7 : INPUT "", NM$ : COLOR 5
  66. 660  LOCATE 21,1 : PRINT CL$ : LOCATE 21,1 : COLOR 5 : PRINT "Enter Salesman's Name (Press ENTER for No Name): "; : COLOR 7 : LINE INPUT "", SALESMAN$
  67. 670  LOCATE 21,1 : PRINT CL$ : LOCATE 21,4 : COLOR 7 : PRINT "PREPARE PRINTER - PRESS <ESC> ABORT or ANY OTHER KEY TO START PRINTING"; : A$ = INPUT$(1) : IF A$ = CHR$(27) THEN LOCATE 21,1 : PRINT CL$ : GOTO 510
  68. 680  LOCATE 21,1 : PRINT CL$ : LOCATE 21,23 : COLOR 7 : PRINT "- CALCULATING & PRINTING DATA -"
  69. 690  REM -----------------
  70. 700  REM PRINT PAGE HEADER
  71. 710  REM -----------------
  72. 720  WIDTH "LPT1:",135
  73. 730  IF TM < 1 THEN GOTO 740 ELSE FOR I = 1 TO TM : LPRINT : NEXT I
  74. 740  LPRINT PITCH$; LPI$: LPRINT TAB((56 + TB) - (LEN (NM$) / 2)); NM$: REM Set Printer to 15 Pitch, 8 Lines/Inch, then Center & Print Station Name in Bold
  75. 750  T$ = "TRANSMITTER POWER OUTPUT (TPO) CHART": LPRINT TAB((56 + TB) - (LEN (T$) / 2)); T$
  76. 760  LPRINT TAB(TB) " 90% TPO = "; : LPRINT USING "##.###-kW"; TPO * 0.9; : LPRINT TAB(TB + 93) "TRANSMITTER"
  77. 770  LPRINT TAB(TB) "100% TPO = "; : LPRINT USING "##.###-kW"; TPO; : LPRINT TAB(TB + 94) "EFFICIENCY"
  78. 780  LPRINT TAB(TB) "105% TPO = "; : LPRINT USING "##.###-kW"; TPO * 1.05; : LPRINT TAB(TB + 65) "AUTHORIZED PWR"; TAB(TB + 98) EFF$; "%"
  79. 790  LPRINT TAB(TB) "-----     -------------------------------------------------------------V--------------------------------"
  80. 800  LPRINT TAB(TB) "PA Ep      90%   91%   92%   93%   94%   94%   96%   97%   98%   99%  100%  101%  102%  103%  104%  105%"
  81. 810  LPRINT TAB(TB) "-----     ----------------------------------------------------------------------------------------------"
  82. 820  LPRINT
  83. 830  IF DP THEN HD$ = "P L A T E   C U R R E N T   ( i n   a m p e r e s )" ELSE HD$ = "P l a t e   C u r r e n t   ( i n   m i l l i a m p e r e s )"
  84. 840  LPRINT TAB((56 + TB) - (LEN (HD$) / 2)) HD$
  85. 850  LPRINT
  86. 860  REM ------------------
  87. 870  REM PRINT LINE OF DATA
  88. 880  REM ------------------
  89. 890  VOLTAGE = E
  90. 900  PCT = 0.9
  91. 910  LPRINT TAB(TB); : LPRINT USING "#####_V"; VOLTAGE;
  92. 920  FOR T = 10 TO 105 STEP 6
  93. 930  POWER = INT ((P * PCT) + 0.5)
  94. 940  CURRENT = POWER / (VOLTAGE * EFF)
  95. 950  IF DP THEN CURRENT = INT (CURRENT * 100 + 0.5) / 100 : LPRINT TAB(TB + T); : LPRINT USING "#.##"; CURRENT; ELSE CURRENT = INT (CURRENT * 1000 + 0.5) / 1000 : LPRINT TAB(TB + T + 1); : LPRINT USING "###"; CURRENT * 1000;
  96. 960  PCT = PCT + 0.01
  97. 970  NEXT T
  98. 980  VOLTAGE = VOLTAGE + ST : IF VOLTAGE > EE THEN 1000
  99. 990  GOTO 900
  100. 1000  LPRINT TAB(TB) "--------------------------------------------------------------------------------------------------------"
  101. 1010  DS$ = "Provided Courtesy of " + SALESMAN$ + " - Continental Electronics"
  102. 1020  LPRINT TAB((56 + TB) - (LEN (DS$) / 2)) DS$; NORMAL$
  103. 1040  GOTO 510
  104. 1050  REM --------------------------------------------------------------------
  105. 1060  REM PRINTER CODES FOR BROTHER (DIABLO) - IBM QUIETWRITER - EPSON - TANDY
  106. 1070  REM PITCH$ = 15-17 PITCH    LPI$ = 8 LINES/INCH   NORMAL$ = BOLD CLEAR
  107. 1080  REM --------------------------------------------------------------------
  108. 1090  PITCH$ = CHR$(27) + CHR$(31) + CHR$(9) : BOLD$ = CHR$(27) + CHR$(87) : NORMAL$ = CHR$(27) + CHR$(38) : LPI$ = CHR$(27) + CHR$(30) + CHR$(7) : RETURN 'Printer Codes for Brother/Dynex (Diablo)
  109. 1100  PITCH$ = CHR$(27) + CHR$(15) : BOLD$ = CHR$(27) + CHR$(71) : NORMAL$ = CHR$(27) + CHR$(72) : LPI$ = CHR$(48) : RETURN 'Printer Codes for IBM QuietWriter
  110. 1110  PITCH$ = CHR$(15) : BOLD$ = CHR$(69) : NORMAL$ = CHR$(70) : LPI$ = CHR$(27) + CHR$(48) : RETURN 'Printer Codes for Epson
  111. 1120  PITCH$ = CHR$(27) + CHR$(4) : BOLD$ = CHR$(15) : NORMAL$ = CHR$(14) : LPI$ = "" : RETURN 'Printer Codes for Tandy Daisy Wheel Printer II (BOLD$ is Underlining for Tandy - No Code for 8 Lines per Inch)
  112. 1130  PITCH$ = CHR$(27) + CHR$(40) + CHR$(115) + CHR$(49) + CHR$(53) + CHR$(72): BOLD$ = CHR$(27) + CHR$(40) + CHR$(115) + CHR$(51) + CHR$(66) :LPI$ = CHR$(27) + CHR$(38) + CHR$(108) + CHR$(56) + CHR$(68)
  113. 1140  NORMAL$ = CHR$(27) + CHR$(40) + CHR$(115) + CHR$(49) + CHR$(48) + CHR$(72) + CHR$(27) + CHR$(40) + CHR$(115) + CHR$(48) + CHR$(66) + CHR$(27) + CHR$(38) + CHR$(108) + CHR$(54) + CHR$(68): RETURN 'Printer Codes for LaserJet
  114.