home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HAM Radio 1
/
HamRadio.cdr
/
ant
/
quad
/
quad.bas
Wrap
BASIC Source File
|
1988-01-18
|
4KB
|
86 lines
10 REM PROGRAM TO FIND DEMENSIONS FOR 2 ELEMENT, SINGLE BAND QUAD
20 REM WRITTEN BY PAUL WISIOLEK K1TKL 2/1/85
30 CLS:KEY OFF
40 LOCATE 10,28:PRINT "Two Element Quad Program"
50 LOCATE 12,32:PRINT "By Paul Wisiolek"
60 LOCATE 14,38:PRINT "K1TKL"
70 LOCATE 16,35:PRINT "[76327,765]"
80 GOSUB 90:GOTO 160
90 PAUSE%=3
100 SECS%=VAL(RIGHT$(TIME$,2))
110 ENOUGH%=(SECS%+PAUSE%) MOD 60
120 WHILE SECS%<>ENOUGH%
130 SECS%=VAL(RIGHT$(TIME$,2))
140 WEND
150 RETURN
160 CLS
170 LOCATE 10,1
180 PRINT "THE FOLLOWING PROGRAM IS FOR A TWO ELEMENT QUAD WITH A FEED IMPEDANCE"
190 PRINT "OF 70 OHMS. YOU WILL BE ASKED FOR A FREQUENCY IN MHZ. THE PROGRAM"
200 PRINT "WILL PROVIDE DATA DIMENSION OUTPUT IN FEET AND INCHES FOR THE SIDE OF"
210 PRINT "THE QUAD, THE TOTAL WIRE LENGTH, THE DIAGONAL MEASUREMENT ALONG THE"
220 PRINT "SPIDER OR SUPPORT MEMBER FROM THE BOOM CENTER, FOR THE DRIVEN ELEMENT"
230 PRINT "AND THE REFLECTOR. THE OPTIMUM BOOM LENGTH WILL ALSO BE GIVEN."
240 PRINT:INPUT "ENTER <CR> TO CONTINUE",CR$
250 CLS
260 LOCATE 14,25:PRINT "For example: 14.025"
270 LOCATE 11,38:FOR AB=1 TO 7:PRINT CHR$(177):LOCATE 11,38+AB:NEXT
280 X=0:LOCATE 10,1:PRINT:INPUT "WHAT IS THE FREQUENCY TO USE IN MHZ? ",X
290 IF X<=0 THEN BEEP ELSE 320
300 LOCATE 12,10:PRINT "Error in data entry. Try again...."
310 GOSUB 90:GOTO 250
320 LR=258/X
330 WR=4*LR
340 DR=(LR^2/2)^.5
350 LD=251/X
360 WD=4*LD
370 DD=(LD^2/2)^.5
380 SP=118/X
390 CLS
400 PRINT TAB(15) "DESIGN FREQUENCY IS:";X;"MHZ"
410 PRINT:PRINT TAB(20) "REFLECTOR DIMENSIONS"
420 PRINT TAB(20) "********************"
430 PRINT
440 PRINT "SIDE LENGTH OF REFLECTOR IS: ";USING "### FEET, ##.## INCHES";FIX(LR),(FIX(100*(LR-FIX(LR))*12))/100
450 PRINT "TOTAL WIRE LENGTH OF REFL IS: ";USING "### FEET, ##.## INCHES";FIX(WR),(FIX(100*(WR-FIX(WR))*12))/100
460 PRINT "DRILL HOLE IN REFL SPIDER AT: ";USING "### FEET, ##.## INCHES";FIX(DR),(FIX(100*(DR-FIX(DR))*12))/100
470 PRINT:PRINT
480 PRINT TAB(21) "DRIVEN DIMENSIONS"
490 PRINT TAB(21) "*****************"
500 PRINT
510 PRINT "SIDE LENGTH OF DRIVEN IS: ";USING " ### FEET, ##.## INCHES";FIX(LD),(FIX(100*(LD-FIX(LD))*12))/100
520 PRINT "TOTAL WIRE LENGTH OF DRI. IS: ";USING "### FEET, ##.## INCHES";FIX(WD),(FIX(100*(WD-FIX(WD))*12))/100
530 PRINT "DRILL HOLE IN DRI. SPIDER AT: ";USING "### FEET, ##.## INCHES";FIX(DD),(FIX(100*(DD-FIX(DD))*12))/100
540 PRINT:PRINT
550 PRINT TAB(10) "BOOM LENGTH IS: ";USING "### FEET, ##.## INCHES";FIX(SP),(FIX(100*(SP-FIX(SP))*12))/100
560 PRINT TAB(10) "**************************************"
570 PRINT:A$="":PRINT "DO YOU WANT A HARD COPY OUTPUT (Y/N)?";A$
580 A$=INKEY$:IF A$="" GOTO 580
590 ON INSTR("YyNn",A$) GOTO 620,620,610,610
600 PRINT "INVALID ENTRY, TRY AGAIN.":BEEP:GOTO 570
610 CLS:GOTO 800
620 LPRINT "THE FREQUENCY IN MHZ IS:";USING "###.###";X
630 LPRINT:LPRINT
640 LPRINT TAB(20) "REFLECTOR DIMENSIONS"
650 LPRINT TAB(20) "********************"
660 LPRINT
670 LPRINT "SIDE LENGTH OF REFLECTOR IS: ";USING "### FEET, ##.## INCHES";FIX(LR),(FIX(100*(LR-FIX(LR))*12))/100
680 LPRINT "TOTAL WIRE LENGTH OF REFL IS: ";USING "### FEET, ##.## INCHES";FIX(WR),(FIX(100*(WR-FIX(WR))*12))/100
690 LPRINT "DRILL HOLE IN REFL SPIDER AT: ";USING "### FEET, ##.## INCHES";FIX(DR),(FIX(100*(DR-FIX(DR))*12))/100
700 LPRINT:LPRINT
710 LPRINT TAB(21) "DRIVEN DIMENSIONS"
720 LPRINT TAB(21) "*****************"
730 LPRINT
740 LPRINT "SIDE LENGTH OF DRIVEN IS: ";USING " ### FEET, ##.## INCHES";FIX(LD),(FIX(100*(LD-FIX(LD))*12))/100
750 LPRINT "TOTAL WIRE LENGTH OF DRI. IS: ";USING "### FEET, ##.## INCHES";FIX(WD),(FIX(100*(WD-FIX(WD))*12))/100
760 LPRINT "DRILL HOLE IN DRI. SPIDER AT: ";USING "### FEET, ##.## INCHES";FIX(DD),(FIX(100*(DD-FIX(DD))*12))/100
770 LPRINT:LPRINT
780 LPRINT TAB(10) "BOOM LENGTH IS: ";USING "### FEET, ##.## INCHES";FIX(SP),(FIX(100*(SP-FIX(SP))*12))/100
790 LPRINT TAB(10) "**************************************"
800 CLS:A$=""
810 LOCATE 10,15:PRINT "Do you want to rerun the program (Y/N)?";A$
820 A$=INKEY$:IF A$="" GOTO 810
830 ON INSTR("YyNn",A$) GOTO 250,250,850,850
840 PRINT:PRINT "INVALID ENTRY, TRY AGAIN.":BEEP:PAUSE%=2:GOSUB 100:GOTO 800
850 CLS:END