Google
 

Trailing-Edge - PDP-10 Archives - decuslib10-04 - 43,50353/lan11.bas
There is 1 other file named lan11.bas in the archive. Click here to see a list.
00010 ' LAN11
00020 ' DUANE MOORE    D I G I T A L
00030 ' READS THE FILE GAIN.LAN AND SELECTED FUNCTIONS ARE LISTED
00040 ' IN A TABLE ON THE TTY.
00050 ' USED FOR VARYING LOAD PARAMETER.
00060 ' 
00070 DIM X(5),G(21)
00080 FILES GAIN.LAN,LAN.BAK
00090 SCRATCH #2
00100 LET S2=0
00110 GOTO 1400
00120 PRINT
00130 PRINT "TYPE H FOR HELP"
00140 PRINT "*";
00150 LET S1=0
00160 INPUT A$
00170 IF A$="SYS" GOTO 360
00180 IF A$="DIS" GOTO 380
00190 IF A$="H" GOTO 530
00200 IF A$="EXIT" GOTO 360
00210 IF A$="PLOT" GOTO 370
00220 IF A$="G" GOTO 390
00230 IF A$="AV" GOTO 410
00240 IF A$="ZIN" GOTO 430
00250 IF A$="AI" GOTO 450
00260 IF A$="ZOUT" GOTO 470
00270 IF A$="AVSL" GOTO 490
00280 IF A$="STA" GOTO 510
00290 IF A$="DB" GOTO 320
00300 IF A$="LIN" GOTO 340
00310 GOTO 130
00320 LET S2=1
00330 GOTO 140
00340 LET S2=0
00350 GOTO 140
00360 STOP
00370 CHAIN LAN8
00380 CHAIN LAN,200
00390 LET P9=20
00400 GOTO 680
00410 LET P9=4
00420 GOTO 680
00430 LET P9=2
00440 GOTO 680
00450 LET P9=0
00460 GOTO 680
00470 LET P9=6
00480 GOTO 680
00490 LET P9=8
00500 GOTO 680
00510 LET P9=18
00520 GOTO 680
00530 PRINT
00540 PRINT "COMMAND","DESCRIPTION"
00550 PRINT "AV","VOLTAGE GAIN "
00560 PRINT "AI","CURRENT GAIN "
00570 PRINT "AVSL","VOLTAGE GAIN (TAKING INTO ACCOUNT SOURCE AND LOAD) "
00580 PRINT "ZIN","INPUT IMPEDANCE "
00590 PRINT "ZOUT","OUTPUT IMPEDANCE "
00600 PRINT "G","POWER GAIN"
00610 PRINT "STA","LINVILL AND STERN STABILITY FACTORS"
00620 PRINT "DB","MAGNITUDE IN DB"
00630 PRINT "LIN","MAGNITUDE IN UNITS"
00640 PRINT "PLOT","OUTPUT DATA AS A PLOT"
00650 PRINT "EXIT","EXIT BACK TO BASIC"
00660 PRINT "DIS","RETURN TO DISPATCHER"
00670 GOTO 140
00680 LET G(21)=0
00690 LET S=0
00700 IF END #1, GOTO 900
00710 INPUT #1,X(0),X(1),X(2),X(3),X(4),X(5)
00720 INPUT #1,F
00730 IF F<0 GOTO 830
00740 FOR I=0 TO 17
00750 INPUT #1,G(I)
00760 NEXT I
00770 INPUT #1,G(20),G(18),G(19)
00780 LET G(21)=0
00790 IF S=1 GOTO 820
00800 PRINT #2,X(K0),G(P9),G(P9+1)
00810 LET S=1
00820 GOTO 720
00830 INPUT #1,A1$
00840 LET S=0
00850 RESTORE #2
00860 GOSUB 920
00870 RESTORE #2
00880 SCRATCH #2
00890 GOTO 700
00900 RESTORE #1
00910 GOTO 140
00920 IF S1=1 GOTO 1020
00930 PRINT
00940 PRINT ,"*** "A$" ***"
00950 PRINT
00960 PRINT "INITIAL VALUES:"
00970 PRINT
00980 PRINT,"RESISTANCE","CAPACITANCE","INDUCTANCE"
00990 PRINT "SOURCE",X(0),X(1),X(2)
01000 PRINT "LOAD",X(3),X(4),X(5)
01010 PRINT
01020 IF P9=18 GOTO 1320
01030 IF S1=1 GOTO 1150
01040 PRINT "  "A0$,"MAGNITUDE";
01050 IF S2=0 GOTO 1130
01060 IF P9=0 GOTO 1120
01070 IF P9=4 GOTO 1120
01080 IF P9=8 GOTO 1120
01090 IF P9=20 GOTO 1120
01100 
01110 GOTO 1130
01120 PRINT " (DB)";
01130 PRINT ,"  PHASE","REAL PART","IMAG PART"
01140 LET S1=1
01150 IF END #2 GOTO 1390
01160 INPUT #2,F,A,B
01170 LET B0=B*3.141592654/180
01180 LET C=A*COS(B0)
01190 LET D=A*SIN(B0)
01200 PRINT F,
01210 IF S2=0 GOTO 1300
01220 IF P9=20 GOTO 1270
01230 IF P9=0 GOTO 1290
01240 IF P9=4 GOTO 1290
01250 IF P9=8 GOTO 1290
01260 GOTO 1300
01270 LET A=10*CLOG(A)
01280 GOTO 1300
01290 LET A=20*CLOG(A)
01300 PRINT A,B,C,D
01310 GOTO 1150
01320 IF S1=1 GOTO 1350
01330 PRINT "  "A0$," LINVILL","  STERN"
01340 LET S1=1
01350 IF END #2 GOTO 1390
01360 INPUT #2,F,A,B
01370 PRINT F,A,B
01380 GOTO 1350
01390 RETURN
01400 INPUT  #1,X(0),X(1),X(2),X(3),X(4),X(5),F
01410 FOR I=0 TO 20
01420 INPUT #1,G(20)
01430 NEXT I
01440 INPUT #1,F
01450 IF F<0 GOTO 1470
01460 GOTO 1410
01470 INPUT #1,A0$
01480 IF END #1 GOTO 1530
01490 INPUT #1,G(0),G(1),G(2),G(3),G(4),G(5)
01500 FOR I=0 TO 5
01510 IF X(I)<>G(I) GOTO 1550
01520 NEXT I
01530 PRINT "THIS PROGRAM IS TO BE USED FOR VARIABLE TERMINATIONS ONLY."
01540 STOP
01550 LET K0=I
01560 RESTORE #1
01570 ON I+1 GOTO 1580,1600,1620,1640,1660,1680
01580 LET A0$="RS"
01590 GOTO 1690
01600 LET A0$="CS"
01610 GOTO 1690
01620 LET A0$="LS"
01630 GOTO 1690
01640 LET A0$="RL"
01650 GOTO 1690
01660 LET A0$="CL"
01670 GOTO 1690
01680 LET A0$="LL"
01690 GOTO 120
01700 END