Corrected a long-standing error in which ending text with a literal
[xcircuit.git] / examples / analoglib1.lps
blob1f74dd4e1be49f50b163e740e7f26cf72a6c7969
1 %! PostScript set of library objects for XCircuit
2 %  Version: 2.0
3 %  Library name is: analoglib
4 %  Author: Tim Edwards <tim@stravinsky.jhuapl.edu>
7 % XCircuitLib library objects
9 /arrowhead {
10 % -12 -32 24 36 bbox
11 begingate
12 8 -28 beginpath
13 3 -18 3 -15 0 0 curveto
14 -3 -15 -3 -18 -8 -28 curveto
15 -2 -26 2 -26 
16 8 -28 curveto
17 249  1.00 endpath
18 endgate
19 } def
21 /source {
22 % -32 -64 64 128 bbox
23 % hidden
24 begingate
25 1  1.00 0 0 32 0.00 360.00 xcarc
26 1  1.00 0 32 0 64 2 polygon
27 1  1.00 0 -32 0 -64 2 polygon
28 endgate
29 } def
31 /capacitor {
32 % -32 -64 177 128 bbox
33 (1.0)  (p)  2 beginparm
34 % fundamental
35 1  1.00 0 -64 0 -6 2 polygon
36 1  1.00 0 64 0 6 2 polygon
37 1  1.00 -32 6 32 6 2 polygon
38 1  1.00 -32 -6 32 -6 2 polygon
39 1.000 0.000 0.000 scb
40 (c.1) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
41 (c.2) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
42 sce
43 (spice:C%i %pc.1 %pc.2 %v"1.0"%v"p") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
44 (sim:c %pc.1 %pc.2) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
45 (F) v2 {hS} v1 {/Helvetica 1.000 cf} 5 20 0 48 0 label
46 endgate
47 } def
49 /polarized {
50 % -32 -64 177 128 bbox
51 (1.0)  (p)  2 beginparm
52 % fundamental
53 1  1.00 0 -64 0 -6 2 polygon
54 1  1.00 0 64 0 6 2 polygon
55 1  1.00 -32 6 32 6 2 polygon
56 1  1.00 0 -80 74 66.00 114.00 xcarc
57 1.000 0.000 0.000 scb
58 (t) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
59 (b) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
60 sce
61 (spice:C%i %pt %pb %v"1.0"%v"p") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
62 (sim:e %pt %pb %pb) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
63 (F) v2 {hS} v1 {/Helvetica 1.000 cf} 5 20 0 48 0 label
64 endgate
65 } def
67 /resistor {
68 % -14 -64 151 128 bbox
69 (1.0)  (k)  2 beginparm
70 % fundamental
71 1  1.00 0 64 0 36 2 polygon
72 1  1.00 0 -64 0 -36 2 polygon
73 1  1.00 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
74 1.000 0.000 0.000 scb
75 (r.1) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
76 (r.2) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
77 sce
78 (spice:R%i %pr.1 %pr.2 %v"1.0"%v"k") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
79 (sim:r %pr.1 %pr.2) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
80 (W) {/Symbol 1.000 cf} v2 {hS} v1 {/Helvetica 1.000 cf} 6 20 0 32 0 label
81 endgate
82 } def
84 /inductor {
85 % -14 -64 164 112 bbox
86 (1.0)  (m)  2 beginparm
87 % fundamental
88 1  1.00 20 -28 20 -44 0 -48 0 -24 spline
89 1  1.00 -20 -20 -20 -32 0 -28 0 -24 spline
90 1  1.00 
91 20 32 20 16 0 12 0 36 spline
92 1  1.00 20 12 20 -4 0 -8 0 16 spline
93 1  1.00 20 -8 20 -24 0 -28 0 -4 spline
94 1  1.00 -20 20 -20 
95 8 0 12 0 16 spline
96 1  1.00 -20 0 -20 -12 0 -8 0 -4 spline
97 1  1.00 0 -48 0 -64 2 polygon
98 1  1.00 0 36 0 48 2 polygon
99 1.000 0.000 0.000 scb
100 (l.1) {/Times-Roman 1.000 cf} 2 9 0 0 48 pinlabel
101 (l.2) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
103 (spice:L%i %pl.1 %pl.2 %v"1.0"%v"m") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
104 (sim:l %pl.1 %pl.2) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
105 (H) v2 {hS} v1 {/Helvetica 1.000 cf} 5 20 0 32 0 label
106 endgate
107 } def
109 /vsource {
110 % -32 -64 139 128 bbox
111 (5)  1 beginparm
112 % fundamental
113 1.00 0 0 0 source
114 (+) {/Symbol 1.000 cf} 2 5 0 0 18 label
115 (-) {/Symbol 1.000 cf} 2 5 0 0 -18 label
116 1.000 0.000 0.000 scb
117 (v.p) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
118 (v.m) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
120 (spice:V%i %pv.p %pv.m %v"5") {/Helvetica 1.000 cf} 2 20 0 -96 -160 infolabel
121 (V) {hS} v1 {/Helvetica 1.000 cf} 4 20 0 48 0 label
122 endgate
123 } def
125 /isource {
126 % -32 -64 163 128 bbox
127 (1)  (m)  2 beginparm
128 % fundamental
129 1.00 0 0 0 source
130 1  0.75 0 20 0 -8 2 polygon
131 0.80 180 0 -20 arrowhead
132 1.000 0.000 0.000 scb
133 (i.p) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
134 (i.m) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
136 (spice:I%i %pi.p %pi.m %v"1"%v"m") {/Times-Roman 1.000 cf} 2 20 0 -96 -160 infolabel
137 (A) v2 {hS} v1 {/Helvetica 1.000 cf} 5 20 0 48 0 label
138 endgate
139 } def
141 /acsource {
142 % -32 -64 211 128 bbox
143 (5)  (0)  (1)  (k)  4 beginparm
144 % fundamental
145 1.00 0 0 0 source
146 1  0.80 0 -48 0 48 -16 0 16 0 spline
147 1.000 0.000 0.000 scb
148 (s.p) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
149 (s.m) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
151 (spice:V%i %ps.p %ps.m SIN\(%v"0" %v"5" %v"1"%v"k"\)) {/Helvetica 1.000 cf} 2 20 0 -336 -160 infolabel
152 (offset) {ss} (V) {hS} v2 {/Helvetica 1.000 cf} 6 20 0 48 0 label
153 (p-p) {ss} (V) {hS} v1 {/Helvetica 1.000 cf} 6 20 0 48 48 label
154 (Hz) v4 {hS} v3 {/Helvetica 1.000 cf} 5 20 0 48 -48 label
155 endgate
156 } def
158 /nmos {
159 % -64 -64 161 128 bbox
160 (3)  (2)  2 beginparm
161 % fundamental
162 1  1.00 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
163 1  1.00 -44 -28 -44 28 2 polygon
164 1  1.00 -44 0 -64 0 2 polygon
165 1.000 0.000 0.000 scb
166 (G) {/Helvetica 1.000 cf} 2 7 0 -64 0 pinlabel
167 (S) {/Helvetica 1.000 cf} 2 13 0 0 -64 pinlabel
168 (D) {/Helvetica 1.000 cf} 2 9 0 0 64 pinlabel
170 (spice:M%i %pD %pG %pS GND nmos W=%v"3" L=%v"2") {/Times-Roman 1.000 cf} 2 4 0 -244 -139 infolabel
171 (sim:n %pG %pD %pS) {/Times-Roman 1.000 cf} 2 4 0 -244 -187 infolabel
172 v1 (W=) {/Helvetica 1.000 cf} 3 20 0 16 16 label
173 v2 (L=) {/Helvetica 1.000 cf} 3 20 0 16 -16 label
174 endgate
175 } def
177 /pmos {
178 % -64 -64 161 128 bbox
179 (3)  (2)  2 beginparm
180 % fundamental
181 1  1.00 -44 -28 -44 28 2 polygon
182 1  1.00 -60 0 -64 0 2 polygon
183 1  1.00 0 -64 0 -28 -32 -28 -32 28 0 28 0 64 6 polygon
184 1  1.00 -52 0 8 0.00 360.00 xcarc
185 1.000 0.000 0.000 scb
186 (S) {/Helvetica 1.000 cf} 2 9 0 0 64 pinlabel
187 (D) {/Helvetica 1.000 cf} 2 13 0 0 -64 pinlabel
188 (G) {/Helvetica 1.000 cf} 2 7 0 -64 0 pinlabel
190 (spice:M%i %pD %pG %pS Vdd pmos W=%v"3" L=%v"2") {/Times-Roman 1.000 cf} 2 4 0 -196 -139 infolabel
191 (sim:p %pG %pD %pS) {/Times-Roman 1.000 cf} 2 4 0 -196 -187 infolabel
192 v1 (W=) {/Helvetica 1.000 cf} 3 20 0 16 16 label
193 v2 (L=) {/Helvetica 1.000 cf} 3 20 0 16 -16 label
194 endgate
195 } def
197 /npn {
198 % -64 -64 73 128 bbox
199 begingate
200 % fundamental
201 1  1.00 -48 0 -64 0 2 polygon
202 1  1.00 -48 48 -48 -48 2 polygon
203 1  1.00 0 48 -48 22 2 polygon
204 1  1.00 0 48 0 64 2 polygon
205 1  1.00 0 -48 -48 -22 2 polygon
206 1  1.00 0 -48 0 -64 2 polygon
207 1.00 240 0 -48 arrowhead
208 1.000 0.000 0.000 scb
209 (C) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
210 (B) {/Times-Roman 1.000 cf} 2 7 0 -64 0 pinlabel
211 (E) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
213 (spice:Q%i %pC %pB %pE npn) {/Times-Roman 1.000 cf} 2 4 0 -244 -139 infolabel
214 (sim:b %pB %pE %pC) {/Times-Roman 1.000 cf} 2 4 0 -244 -187 infolabel
215 endgate
216 } def
218 /pnp {
219 % -64 -64 64 128 bbox
220 begingate
221 % fundamental
222 1  1.00 -48 0 -64 0 2 polygon
223 1  1.00 -48 48 -48 -48 2 polygon
224 1  1.00 0 48 -48 22 2 polygon
225 1  1.00 0 48 0 64 2 polygon
226 1  1.00 0 -48 -48 -22 2 polygon
227 1  1.00 0 -48 0 -64 2 polygon
228 1.00 120 -48 22 arrowhead
229 1.000 0.000 0.000 scb
230 (C) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
231 (B) {/Times-Roman 1.000 cf} 2 7 0 -64 0 pinlabel
232 (E) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
234 (spice:Q%i %pC %pB %pE pnp) {/Times-Roman 1.000 cf} 2 4 0 -244 -139 infolabel
235 endgate
236 } def
238 % EndLib