Post Reply 
Sharp PC-1211/TRS-80 PC-1 Software
04-04-2022, 10:28 AM
Post: #24
RE: Sharp PC-1211/TRS-80 PC-1 Software
Listing of EE1 programs

Note: the special symbols for pi, square root and exponent have been changes to [PI], [SQR] and [E] so that the listings are plain ascii text. This was performed by the 'graph' option of Pocket Tools when decoding the wav files. Enjoy.

Code:

AMPDES

   10 "A" INPUT "VCC=";V
   20 INPUT "R TOL=";A
   30 INPUT "T MAX=";B
   40 INPUT "T MIN=";C
   50 INPUT "VCE=";D
   60 INPUT "ICBO=";I
   70 F=M: INPUT "IE MAX=";F:M=F
   80 E=N: INPUT "IE MIN=";E:N=E
   90 G=O: INPUT "BETA MAX=";G:O=G
  100 H=P: INPUT "BETA MIN=";H:P=H
  110 INPUT "RE=";R
  200 "S"F=F*0.85:E=E*1.15:H=H*.865*EXP (.00575*C)
  210 G=G*.865*EXP (.00575*B):X=2000*(V-D)/(E+F)-R: IF X<0 PAUSE "RE ERROR": END 
  215 GOSUB 500:S=X:X=G+1
  220 J=((F-E)*R+2.5*(B-C))/(I+E/(H+1)-F/X): IF J<=0 BEEP 1: PAUSE "IE ERROR": END 
  240 K=E*.001*(J/(H+1)+R)+.7-.0025*(C-25):X=V*J/K: GOSUB 500:T=X
  250 X=V*J/(V-K): GOSUB 500:U=X:K=INT (100*K+.5)/100
  260 "B" BEEP 2: PRINT "R1=";T: PRINT "R2=";U: PRINT "RC=";S: PRINT "RE=";R: PRINT "VB=";K: END 
  500 W=1.19927[E]-2*INT (1+1.5*A+.004*A*A):Y=INT (LN X/LN 10-INT (2.2-3*W)):X=X/10^Y
  510 FOR L=27 TO 28:A(L)=INT (EXP (W*(INT (LN X/W)+L-27))+.5)
  520 Z=1.88[E]-5*A(L)^3-.00335*A(L)*A(L)+.164*A(L)-1.284
  530 A(L)=A(L)+INT (Z*INT (3*W+.8)): NEXT L
  540 X=10^Y*A(X/[SQR](A(27)*A(28))+27):X=INT (X+.5): RETURN 
  600 "Z" INPUT "T J,MAX=";M
  610 INPUT "T AIR=";A
  620 INPUT "P J=";P
  630 INPUT "THETA JC=";J
  640 C=(M-A)/P-J: PAUSE "REQUIRED THETA CA IS:"
  645 IF C<0 PAUSE "INPUT ERROR": GOTO 600
  650 PRINT C;"DEG C/W": END 
  900 " " PRINT "TRANSISTOR AMPS": PAUSE "(C) 1981 TANDY CORP."
  910 PRINT "TRANS BIAS:SHFT-A"
  920 PRINT "HEAT SINK:SHFT-Z"

COMPLEX

    1 " " AREAD F$: RADIAN : IF F$="I" CLEAR :I=23: PAUSE "(C) 1981 TANDY CORP.": GOTO 6
    2 IF F$="C" GOSUB 18:I=I+2: GOSUB 17: GOTO 6
    3 IF F$="P" GOSUB 18: PRINT A,B:I=I+2: GOTO 6
    4 IF F$="" GOTO 6
    5 PRINT "INVALID, RE-ENTER": END 
    6 INPUT "R=";A,"I=";B: GOSUB 17: GOTO 6
    7 GOTO 6
    8 "A" GOSUB 35: GOTO 19
    9 "S" GOSUB 36: GOTO 19
   10 "D" GOSUB 37: GOTO 19
   11 "F" GOSUB 38: GOTO 19
   12 "N"I=I-2: GOSUB 18: GOSUB 39:A=LN A: GOSUB 17
   13 I=I+2: GOSUB 18:I=I+2: GOSUB 37: GOSUB 40: GOTO 19
   14 "J" GOSUB 42:I=I+2: GOTO 19
   15 "K" GOSUB 43:I=I+2: GOTO 19
   16 "L" GOSUB 17: GOSUB 43:I=I-2: GOSUB 17:J=I:I=I-2: GOSUB 18: GOSUB 42: GOSUB 17:I=J: GOSUB 18:I=J: GOSUB 38: GOTO 19
   17 GOSUB 20:A(I)=A:A(I+1)=B:I=I+2: RETURN 
   18 I=I-2: GOSUB 20:A=A(I):B=A(I+1): RETURN 
   19 I=I-4: GOSUB 17: PRINT A,B: GOTO 6
   20 IF I<23 LET I=23:U=0:V=0: PAUSE "STK UNDER": RETURN 
   21 IF I>46 LET I=45: PAUSE "STK OVER": RETURN 
   22 RETURN 
   23 "="I=I+2: GOSUB 39:A=LN A: GOTO 19
   24 "Z"I=I+2: GOSUB 40: GOTO 19
   25 "X" GOSUB 44:A=ASN E:B=LN (D+[SQR](DD-1)):I=I+2: GOTO 19
   26 "C" GOSUB 44:A=ACS E:B=LN (D+[SQR](DD-1)):I=I+2: GOTO 19
   27 "V"E=AA:F=BB:C=E+F+2B+1:C=.25*LN (C/(C-4B))
   28 A=2A:B=1-E-F+1[E]-10:G=A/B:A=ATN G/2: IF B<0 LET A=A+[PI]/2
   29 B=C:I=I+2: GOTO 19
   30 "B"J=I: GOSUB 39:A=LN A:I=I-2: GOSUB 17:I=I-2: GOSUB 18: GOSUB 39:A=LN A: GOSUB 17:I=J: GOSUB 18:I=J: GOSUB 38
   31 GOTO 19
   32 "M" GOSUB 17:A(I-4)=1:A(I-3)=0: GOSUB 38: GOTO 19
   33 "G"I=I+2: GOSUB 39: GOTO 19
   34 "H"I=I+2: GOSUB 41: GOTO 19
   35 A=A+A(I-4):B=B+A(I-3): RETURN 
   36 A=A(I-4)-A:B=A(I-3)-B: RETURN 
   37 E=A:A=AA(I-4)-BA(I-3):B=EA(I-3)+BA(I-4): RETURN 
   38 E=A:G=AA+BB:A=(AA(I-4)+BA(I-3))/G:B=(EA(I-3)-BA(I-4))/G: RETURN 
   39 A=[SQR](AA+BB):B=ASN (B/A): RETURN 
   40 A=EXP A: GOSUB 41: RETURN 
   41 E=A:A=E*COS B:B=E*SIN B: RETURN 
   42 E=A:F=EXP B:G=(F+1/F)/2:H=G-1/F:A=G*SIN A:B=H*COS E: RETURN 
   43 E=A:F=EXP B:G=(F+1/F)/2:H=G-1/F:A=G*COS A:B=-H*SIN E: RETURN 
   44 D=AA+2A+1+BB:F=[SQR]D:G=[SQR](D-4A):D=(F+G)/2:E=D-G: RETURN 

FILTERS

   10 INPUT "FC=";F
   20 INPUT "F MXATN=";M
   30 INPUT "TERM RESIS=";R
   40 M=[SQR](1-(F/M)^(K*2)): RETURN 
   50 "A"K=1: GOSUB 10:L=R/([PI]*F):C=1[E]6/([PI]*R*F):C=INT (100*M*C+.5)/100
   80 O=INT (M*L*1[E]5/2+.5)/100:N=INT ((1-M*M)*L/4/M*1[E]5+.5)/100
  100 PRINT "L1=";O: PRINT "L2=";N: PRINT "C=";C: END 
  110 "S"K=-1: GOSUB 10:L=R/(4*[PI]*F):O=(1[E]5*L/M+.5)/100:C=1[E]6/(4*[PI]*F*R):A=2*C/M
  150 B=4*M*C/(1-M*M):A=INT (100*A+.5)/100:B=INT (100*B+.5)/100:O=INT (100*O+.5)/100
  180 PRINT "C1=";A: PRINT "C2=";B: PRINT "L=";O: END 
  190 INPUT "FC=";F
  200 INPUT "G=";G
  210 INPUT "C1=";C
  220 INPUT "PEAKING=";P
  230 H=10^(G/20): RETURN 
  250 "Z" GOSUB 190:D=4*(H+1)*C/(P*P):X=(P*1[E]6)/(4*[PI]*F*C):Y=X/H:Z=X/(H+1)
  260 PRINT "C2=";D: PRINT "R1=";Y: PRINT "R2=";X: PRINT "R3=";Z: END 
  270 "X" GOSUB 190:D=C/H:Y=(2*H+1)*1[E]6/(2*[PI]*F*C*P):X=P*1[E]6/(2*[PI]*F*C*(2+1/H))
  280 PRINT "C2=";D: PRINT "R1=";Y: PRINT "R2=";X: END 
  290 "C" INPUT "CF=";F
  300 INPUT "G=";G
  310 INPUT "3 DB BW=";B
  320 INPUT "C1=";C
  330 INPUT "C2=";D
  340 H=10^(G/20):Q=F/B:Y=Q*1[E]6/(2*[PI]*F*C*H):X=1/(Q*(C+D)*2[E]-6*[PI]*F-1/Y)
  350 Z=Q*1[E]6*(1/C+1/D)/(2*[PI]*F)
  360 PRINT "R1=";Y: PRINT "R2=";X: PRINT "R3=";Z: END 
  900 " " PRINT "FILTERS": PAUSE "(C) 1981 TANDY CORP."
  910 PRINT "M DERIVED LOWPASS:SHFT-A"
  920 PRINT "M DERIVED HIPASS:SHFT-S"
  930 PRINT "ACTIVE LOWPASS:SHFT-Z"
  940 PRINT "ACTIVE HIPASS:SHFT-X"
  950 PRINT "ACTIVE BANDPASS:SHFT-C"

IMPCALC

   10 "A"G=0:H=0
   20 "G" GOSUB 100
   30 E=C*C+D*D:G=G+C/E:H=H-D/E: GOTO 20
   40 "S"E=G*G+H*H:C=G/E:D=-H/E: GOTO 60
   50 "Z" GOSUB 100
   60 A=A+C:B=B+D: PRINT A,B: GOTO 50
   70 "D"C=A:D=B:A=0:B=0:G=0:H=0: GOTO 30
   80 "C" INPUT "F=";F,"C=";E:Z=-1[E]6/(2*[PI]*F*E): PRINT "CZ=";Z: END 
   90 "X" INPUT "F=";F,"L=";E:Z=2*[PI]*F*E: PRINT "LZ=";Z: END 
  100 INPUT "R=";C,"I=";D: RETURN 
  110 "V" RADIAN : GOTO 130
  120 "F" DEGREE 
  130 O=[SQR](A*A+B*B):P=ATN (B/A): PRINT O,P: END 
  140 "B" PRINT A,B: END 
  900 " " CLEAR : PRINT "CMPLX Z CALCULATOR": PAUSE "(C) 1981 TANDY CORP."
  910 PRINT "PARALLEL NET INIT:SHFT-A": PRINT "PARALLEL NET END:SHFT-S"
  920 PRINT "SERIES NETWORK:SHFT-Z": PRINT "PARA CURRENT Z:SHFT-D"
  930 PRINT "Z IN POLAR(RAD):SHFT-V": PRINT "Z IN POLAR(DEG):SHFT-F": PRINT "CURRENT Z:SHFT-B"
  940 PRINT "CAPACITIVE Z:SHFT-C": PRINT "INDUCTIVE Z:SHFT-X"

SIMEQ

    1 F=84-9B:C=84-8G-B: RETURN 
    2 F=84-8B-H:C=84-8G-H: RETURN 
    3 F=84-B:C=84-G: RETURN 
    4 C=84-G:F=C-7G-B: RETURN 
    5 C=84-B:F=C-8B: RETURN 
    6 A(F)=A(F)+A(C): RETURN 
    7 A(C)=A(C)-E*A(F): RETURN 
    8 PRINT USING ;A(F): INPUT "CHANGE(C) OR ENTER";I$: IF I$="C" GOTO 10
    9 RETURN 
   10 INPUT "NEW VALUE=";A(F): RETURN 
   11 GOTO 10
   12 "S" GOSUB 5:D=A(F): IF D<>0 GOTO 16
   13 FOR G=1 TO B-1: GOSUB 1:D=A(C): IF D=0 NEXT G: PRINT "UNSOLVABLE": END 
   15 FOR H=1 TO B: GOSUB 2: GOSUB 6: NEXT H: GOSUB 3: GOSUB 6
   16 FOR G=1 TO B-1: GOSUB 1:E=A(C)/D: FOR H=1 TO B-1: GOSUB 2: GOSUB 7: NEXT H: GOSUB 3: GOSUB 7: NEXT G
   18 B=B-1: IF B>1 GOTO 12
   19 FOR B=1 TO A-1: GOSUB 5:A(C)=A(C)/A(F):E=A(C): FOR G=B+1 TO A: GOSUB 4: GOSUB 7: NEXT G: NEXT B
   20 B=A: GOSUB 5:A(C)=A(C)/A(F): BEEP 2
   21 "B" FOR G=1 TO A: GOSUB 4: PRINT "X(";USING ;G;")=";A(C): NEXT G: END 
   22 "A" INPUT "ORDER?";A:B=A: IF (A<=2)+(A>8) GOTO 22
   23 FOR G=1 TO A: FOR H=1 TO A:C=84-G:F=C-7G-H
   24 PAUSE USING "##";G;H: INPUT A(F): NEXT H: BEEP 1: GOTO 26
   25 GOTO 24
   26 INPUT A(C): NEXT G: END 
   27 GOTO 26
   28 "D" FOR G=1 TO A: FOR H=1 TO A:F=84-8G-H: PAUSE USING "##";G;H: GOSUB 8: NEXT H: BEEP 1:F=84-G: GOSUB 8: NEXT G: END 
   29 "F" INPUT "ROW?";G: IF (G>=1)*(G<=A) GOTO 31
   30 GOTO 29
   31 INPUT "COLUMN?";H: IF (H>=1)*(H<=A) LET F=84-8G-H: PAUSE USING "##";G;H: GOSUB 8: END 
   32 F=84-G: GOSUB 8: END 
   33 " " PRINT "SIMULTANEOUS EQUATIONS": PAUSE "(C) 1981 TANDY CORP."
   34 PRINT "ENTER EQU:SHFT-A": PRINT "SOLVE EQU:SHFT-S": PRINT "REVIEW ANS:SHFT-B"
   35 PRINT "DISPLAY EQU:SHFT-D": PRINT "EDIT ENTRY:SHFT-F"

TABLES

   10 "A" INPUT "AWG=";B:A=EXP (B*LN .79304+LN 105532):R=10.575/A: PRINT "R/FT =";R: END 
   15 GOTO 10
   20 "S" INPUT "I=";I: IF I>0 LET B=INT ((10*(2*LN 325-LN (500*I))/LN 10)+.5): PRINT "AWG=";B: END 
   25 GOTO 20
   30 "Z"B=1:V=0:T$="BAND"
   32 PAUSE "INPUT ";T$;" ";B: INPUT "COLOR=";C$: GOTO 40
   34 C$=" "
   40 IF C$="BLACK" LET A=0: GOTO 60
   41 IF C$="BROWN" LET A=1: GOTO 60
   42 IF C$="RED" LET A=2: GOTO 60
   43 IF C$="ORANGE" LET A=3: GOTO 60
   44 IF C$="YELLOW" LET A=4: GOTO 60
   45 IF C$="GREEN" LET A=5: GOTO 60
   46 IF C$="BLUE" LET A=6: GOTO 60
   47 IF C$="PURPLE" LET A=7: GOTO 60
   48 IF C$="VIOLET" LET A=7: GOTO 60
   49 IF C$="GRAY" LET A=8: GOTO 60
   50 IF C$="GREY" LET A=8: GOTO 60
   51 IF C$="WHITE" LET A=9: GOTO 60
   52 IF C$="SILVER" LET A=10: GOTO 60
   53 IF C$="GOLD" LET A=11: GOTO 60
   54 IF C$=" " LET A=12: GOTO 60
   55 PAUSE "REENTER COLOR": GOTO 32
   60 IF T$="DOT" GOTO 160
   61 IF A>9 GOTO 70
   62 IF B<3 LET V=V*10+A:B=B+1: GOTO 32
   70 IF B<3 GOTO 55
   72 IF B=4 GOTO 90
   74 IF A=10 LET A=-1: GOTO 80
   76 IF A=11 LET A=-2: GOTO 80
   78 IF A>11 GOTO 55
   80 V=V*10^A:B=B+1: GOTO 32
   90 IF A<10 GOTO 55
   92 IF A=11 LET A=5
   94 IF A=12 LET A=20
   96 PRINT "R=";V;"TOL=";A;"%": END 
  100 "C"B=1:V=0:T$="DOT": GOTO 32
  160 IF A>9 GOTO 55
  162 IF B<3 LET V=V*10+A:B=B+1: GOTO 32
  164 IF B=4 GOTO 180
  166 IF A>4 GOTO 170
  168 V=V*10^A:B=B+1: GOTO 32
  170 IF A>7 LET A=A-10: GOTO 168
  172 GOTO 55
  180 IF A=0 LET A=20: GOTO 190
  181 IF A<4 GOTO 190
  182 IF A=4 GOTO 55
  183 IF A=5 GOTO 190
  184 IF A=9 LET A=10: GOTO 190
  186 GOTO 55
  190 PRINT "C=";V;"TOL=";A;"%": END 
  200 "L" INPUT "L=";L: IF L>0 GOTO 210
  205 GOTO 200
  210 INPUT "AWG=";B
  220 INPUT "DIAMETER=";R: IF R>0 GOTO 230
  225 GOTO 220
  230 R=R/2:D=[SQR]((.79304^B)*105532)/1000:N=(10*D*L+[SQR](100*D*D*L*L+4*R*R*L*(9*R+10*D)
  240 N=N/(2*R*R)
  250 PRINT "NUMBER OF TURNS=";N: END 
  900 " " PRINT "EE TABLES": PAUSE "(C) 1981 TANDY CORP."
  910 PRINT "AWG TO R/FT:SHFT-A": PRINT "CURRENT TO AWG:SHFT-S"
  920 PRINT "R COLOR CODE:SHFT-Z": PRINT "C COLOR CODE:SHFT-C"
  930 PRINT "RF COIL TURNS:SHFT-L": END
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Sharp PC-1211/TRS-80 PC-1 Software - Hollerith - 04-04-2022 10:28 AM



User(s) browsing this thread: 1 Guest(s)