One more check on valid display which is known to be in the startup
[xcircuit.git] / lib / digital.lps
blob6c92c506b84462fb177de73a506b4fbbb446eb1f
1 %! PostScript set of library objects for XCircuit
2 %  Version: 3.2
3 %  Library name is: digital
4 %  Author: R. Timothy Edwards <tim@stravinsky.jhuapl.edu>
6 % XCircuitLib library built-in objects
8 /digital::nand {
9 % trivial
10 begingate
11 1 1.0 0 -48 -64 -48 -64 48 0 48 4 polygon
12 1 1.0 56 0 8 0 360 xcarc
13 1 1.0 0 0 48 -90 90 xcarc
14 1 0 0 scb
15 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
16 (In.1) {/Times-Roman cf} 1 7 0 1.0 -64 32 pinlabel
17 (In.2) {/Times-Roman cf} 1 7 0 1.0 -64 -32 pinlabel
18 sce
19 endgate
20 } def
22 /digital::nor {
23 % trivial
24 begingate
25 -64 48 -35 48 wire
26 -64 -48 -35 -48 wire
27 1 1.0 -128 0 80 -37 37 xcarc
28 1 1.0 56 0 8 0 360 xcarc
29 1 1.0 -35 -48 96 30 90 xcarc
30 1 1.0 -35 48 96 270 330 xcarc
31 1 0 0 scb
32 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
33 (In.1) {/Times-Roman cf} 1 7 0 1.0 -56 32 pinlabel
34 (In.2) {/Times-Roman cf} 1 7 0 1.0 -56 -32 pinlabel
35 sce
36 endgate
37 } def
39 /digital::invert {
40 % trivial
41 begingate
42 0  1.00 -32 -40 -32 40 40 0 3 polygon
43 1  1.00 48 0 8 0.00 360.00 xcarc
44 1  1.00 -32 0 -48 0 2 polygon
45 1  1.00 56 0 64 0 2 polygon
46 1.000 0.000 0.000 scb
47 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
48 (In) {/Times-Roman cf} 1 7 0 1.0 -48 0 pinlabel
49 sce
50 endgate
51 } def
53 /digital::and {
54 % trivial
55 begingate
56 1 1.0 0 -48 -64 -48 -64 48 0 48 4 polygon
57 1 1.0 0 0 48 -90 90 xcarc
58 1 0 0 scb
59 (Out) {/Times-Roman cf} 1 4 0 1.0 48 0 pinlabel
60 (In.1) {/Times-Roman cf} 1 7 0 1.0 -64 32 pinlabel
61 (In.2) {/Times-Roman cf} 1 7 0 1.0 -64 -32 pinlabel
62 sce
63 endgate
64 } def
66 /digital::or {
67 % trivial
68 begingate
69 1 1.0 -19 -48 96 30 90 xcarc
70 1 1.0 -19 48 96 270 330 xcarc
71 1 1.0 -112 0 80 -37 37 xcarc
72 -48 48 -19 48 wire
73 -48 -48 -19 -48 wire
74 1 0 0 scb
75 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
76 (In.1) {/Times-Roman cf} 1 7 0 1.0 -40 32 pinlabel
77 (In.2) {/Times-Roman cf} 1 7 0 1.0 -40 -32 pinlabel
78 sce
79 endgate
80 } def
82 /digital::buffer {
83 % trivial
84 begingate
85 0 1.0 -32 -40 -32 40 40 0 3 polygon
86 -32 0 -48 0 wire
87 40 0 64 0 wire
88 1.000 0.000 0.000 scb
89 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
90 (In) {/Times-Roman cf} 1 7 0 1.0 -48 0 pinlabel
91 sce
92 endgate
93 } def
95 /digital::xor {
96 % trivial
97 begingate
98 1 1.0 -19 -48 96 30 90 xcarc
99 1 1.0 -19 48 96 270 330 xcarc
100 1 1.0 -128 0 80 -37 37 xcarc
101 1 1.0 -112 0 80 -37 37 xcarc
102 -48 48 -19 48 wire
103 -48 -48 -19 -48 wire
104 1 0 0 scb
105 (Out) {/Times-Roman cf} 1 4 0 1.0 64 0 pinlabel
106 (In.1) {/Times-Roman cf} 1 7 0 1.0 -56 32 pinlabel
107 (In.2) {/Times-Roman cf} 1 7 0 1.0 -56 -32 pinlabel
109 endgate
110 } def
112 /digital::xnor {
113 % trivial
114 begingate
115 1 1.0 72 0 8 0 360 xcarc
116 1 1.0 -19 -48 96 30 90 xcarc
117 1 1.0 -19 48 96 270 330 xcarc
118 1 1.0 -128 0 80 -37 37 xcarc
119 1 1.0 -112 0 80 -37 37 xcarc
120 -48 48 -19 48 wire
121 -48 -48 -19 -48 wire
122 1 0 0 scb
123 (Out) {/Times-Roman cf} 1 4 0 1.0 80 0 pinlabel
124 (In.1) {/Times-Roman cf} 1 7 0 1.0 -56 32 pinlabel
125 (In.2) {/Times-Roman cf} 1 7 0 1.0 -56 -32 pinlabel
127 endgate
128 } def
130 /digital::5V {
131 % trivial
132 begingate
133 -32 0 32 0 wire
134 0 0 0 -32 wire
135 (V) {/Times-Roman cf} (+5) {/Symbol cf} 2 17 0 0.9 0 8 label
136 0.933 0.604 0 scb
137 (dVdd) {/Times-Roman cf} 1 13 0 1.0 0 -32 pinglobal
139 endgate
140 } def
142 /analog::gnd {
143 % trivial
144 begingate
145 0 0 0 -32 wire
146 -32 -32 32 -32 wire
147 -18 -46 18 -46 wire
148 -4 -60 4 -60 wire
149 0.933 0.604 0 scb
150 (GND) {/Times-Roman cf} 1 1 0 1.0 0 0 pinglobal
152 endgate
153 } def
155 /digital::battery {
156 % trivial
157 begingate
158 -32 32 32 32 wire
159 0 64 0 32 wire
160 -16 12 16 12 wire
161 -16 -28 16 -28 wire
162 -32 -8 32 -8 wire
163 0 -64 0 -28 wire
164 1 0 0 scb
165 (b.p) {/Times-Roman cf} 1 9 0 1.0 0 64 pinlabel
166 (b.m) {/Times-Roman cf} 1 13 0 1.0 0 -64 pinlabel
168 endgate
169 } def
171 /digital::passtrans {
172 % trivial
173 begingate
174 0 1.0 -64 48 0 -48 64 48 3 polygon
175 0 1.0 0 48 -64 -48 64 -48 3 polygon
176 -50 0 -80 0 wire
177 32 0 80 0 wire
178 0 48 0 64 wire
179 0 -48 0 -64 wire
180 1 1.0 -42 0 8 0 360 xcarc
181 1 0 0 scb
182 (c.p) {/Times-Roman cf} 1 7 0 1.0 -80 0 pinlabel
183 (c.n) {/Times-Roman cf} 1 4 0 1.0 80 0 pinlabel
184 (p.1) {/Times-Roman cf} 1 9 0 1.0 0 64 pinlabel
185 (p.2) {/Times-Roman cf} 1 13 0 1.0 0 -64 pinlabel
187 endgate
188 } def
190 % EndLib