home *** CD-ROM | disk | FTP | other *** search
- 1000 '** Intermod Run
- 1010 '** Variables: a,b,c,d,e,f,g,h,j,k,r,t,x,y,a$,b$
- 1020 U1$="###.####\ \###.####\ \###.#### #.### MHz"
- 1030 U2$="###.####\ \###.####\ \###.####\ \###.#### #.### MHz"
- 1040 REM
- 1050 A = 0
- 1060 DIM T(100)
- 1070 CLS
- 1080 PRINT " I N T E R M O D"
- 1090 A = A + 1
- 1100 INPUT "Enter Transmitter ";T(A)
- 1110 IF T(A)=0 GOTO 1140
- 1120 PRINT USING "\\ ## ###.####";"T",A,T(A)
- 1130 GOTO 1090
- 1140 INPUT "Do you want a printout ? Enter (Y) (N)";A$
- 1150 IF A$="Y" THEN GOSUB 1370
- 1160 INPUT "Do you want to correct or add any transmitters ? (Y) (N)";A$
- 1170 IF A$<>"Y" GOTO 1210
- 1180 PRINT "Enter transmitter # to change or add(x)";A
- 1190 INPUT "Enter new transmitter frequency";T(A)
- 1200 GOTO 1160
- 1210 INPUT "Do you want a printout again ? (Y) (N)";A$
- 1220 IF A$="Y" THEN GOSUB 1370
- 1230 ' START Transmitter bubble sort
- 1240 A=0
- 1250 F=1 ' Set flag
- 1260 A=A+1 ' Step a up one
- 1270 IF T(A+1)=0 GOTO 1300 ' Check for out of data
- 1280 IF T(A)>T(A+1) GOTO 1320 ' Go to switch
- 1290 GOTO 1260 ' Fetch another
- 1300 IF F=0 GOTO 1240 ' Out of data, go again
- 1310 GOTO 1430 ' Out of data and flag set
- 1320 X=T(A) ' Save t(a)
- 1330 T(A)=T(A+1) ' Swap
- 1340 T(A+1)=X ' Swap
- 1350 F=0 ' Reset flag
- 1360 GOTO 1260 ' Fetch another
- 1370 LPRINT CHR$(12);TAB(5);"Transmitters";CHR$(10)
- 1380 A=0
- 1390 A=A+1
- 1400 IF T(A)=0 THEN RETURN
- 1410 LPRINT USING "\\ ## ###.####";"t",A,T(A)
- 1420 GOTO 1390
- 1430 D=0 ' Input data: Receivers
- 1440 DIM R(100)
- 1450 CLS
- 1460 D = D + 1
- 1470 INPUT "Enter Receiver ";R(D)
- 1480 IF R(D)=0 GOTO 1510
- 1490 PRINT USING "\\ ## ###.####";"R",D,R(D)
- 1500 GOTO 1460
- 1510 INPUT "Do you want a printout ? Enter (Y) (N)";A$
- 1520 IF A$="Y" THEN GOSUB 1740
- 1530 INPUT "Do you want to correct or add any Receivers ? (Y) (N)";A$
- 1540 IF A$<>"Y" GOTO 1580
- 1550 PRINT "Enter Receiver # to change or add(x)";D
- 1560 INPUT "Enter new Receiver frequency";R(D)
- 1570 GOTO 1530
- 1580 INPUT "Do you want a printout again ? (Y) (N)";A$
- 1590 IF A$="Y" THEN GOSUB 1740
- 1600 ' START Receiver bubble sort"
- 1610 D=0
- 1620 F=1 ' Set flag
- 1630 D=D+1 ' Step d up one
- 1640 IF R(D+1)=0 GOTO 1670 ' Check for out of data
- 1650 IF R(D)>R(D+1) GOTO 1690 ' Go to switch
- 1660 GOTO 1630 ' Fetch another
- 1670 IF F=0 GOTO 1610 ' Out of data, go again
- 1680 GOTO 1800 ' Out of data and flag set
- 1690 X=R(D) ' Save r(d)
- 1700 R(D)=R(D+1) ' Swap
- 1710 R(D+1)=X ' Swap
- 1720 F=0 ' Reset flag
- 1730 GOTO 1630 ' Fetch another
- 1740 LPRINT CHR$(12);TAB(5);"Receivers";CHR$(10)
- 1750 D=0
- 1760 D=D+1
- 1770 IF R(D)=0 THEN RETURN
- 1780 LPRINT USING "\\ ## ###.####";"R",D,R(D)
- 1790 GOTO 1760
- 1800 K=0 ' Start IM calculations
- 1810 K=K+1
- 1820 IF K=4 GOTO 2100
- 1830 ON K GOSUB 1950,1980,2010
- 1840 A=1
- 1850 E=1
- 1860 E=E+1
- 1870 IF E=A GOTO 1900
- 1880 ON K GOSUB 2040,2060,2080
- 1890 GOSUB 2290
- 1900 IF T(E)<>0 GOTO 1860
- 1910 IF T(A)=0 GOTO 1810
- 1920 A=A+1
- 1930 E=1
- 1940 GOTO 1870
- 1950 LPRINT CHR$(10);" Third order INTERMOD products";CHR$(10)
- 1960 LPRINT " Receiver 2X Trans Trans +/- "
- 1970 RETURN
- 1980 LPRINT CHR$(10);" Fifth order INTERMOD products";CHR$(10)
- 1990 LPRINT " Receiver 3X Trans 2X trans +/-"
- 2000 RETURN
- 2010 LPRINT CHR$(10);" Seventh order INTERMOD Products";CHR$(10)
- 2020 LPRINT " Receiver 4X Trans 3X Trans +/-"
- 2030 RETURN
- 2040 G=T(A)+T(A)-T(E)
- 2050 RETURN
- 2060 G=T(A)+T(A)+T(A)-T(E)-T(E)
- 2070 RETURN
- 2080 G=T(A)+T(A)+T(A)+T(A)-T(E)-T(E)-T(E)
- 2090 RETURN
- 2100 LPRINT CHR$(10);" Three Transmitter, 3rd order products";CHR$(10)
- 2110 LPRINT " Receiver Trans Trans Trans +/-"
- 2120 A=1
- 2130 B=2
- 2140 C=2
- 2150 C=C+1
- 2160 IF C=A OR C=B GOTO 2190
- 2170 G=T(A)+T(B)-T(C)
- 2180 GOSUB 2290
- 2190 IF T(C+1)<>0 GOTO 2150
- 2200 IF T(B+1)=0 GOTO 2240
- 2210 B=B+1
- 2220 C=1
- 2230 GOTO 2160
- 2240 IF T(A+2)=0 GOTO 2420
- 2250 A=A+1
- 2260 B=A+1
- 2270 C=1
- 2280 GOTO 2160
- 2290 D=0 ' Compare subroutines
- 2300 REM
- 2310 REM
- 2320 D=D+1
- 2330 IF R(D)=0 GOTO 2380
- 2340 H=(G-R(D))
- 2350 J=ABS(H)
- 2360 IF J>.0125 GOTO 2320
- 2370 ON K GOSUB 2390,2390,2390,2410
- 2380 RETURN
- 2390 LPRINT USING U1$;R(D)," =",T(A)," -",T(E),H
- 2400 RETURN
- 2410 LPRINT USING U2$;R(D)," =",T(A)," +",T(B)," -",T(C),H
- 2420 SYSTEM
- 2430 END