%! PostScript set of library objects for XCircuit
%  Version: 3.2
%  Library name is: quadparts
%  Author: Tim Edwards <tim@opencircuitdesign.com>
%

% XCircuitLib library built-in objects
/quadnand {
<</part (1) (set part [lindex {1 2 3 4} 0]) pop
/pinA (1) (lindex {0 1 4 9 12} $part) pop
/pinB (2) (lindex {0 2 5 10 13} $part) pop
/pinO (3) (lindex {0 3 6 8 11} $part) pop /idx (?) >> begingate
1 1.00 0 -48 -64 -48 -64 48 0 48 4 polygon
1 1.00 56 0 8 0.00 360.00 xcarc
1 1.00 0 0 48 -90.00 90.00 xcarc
mark idx (pcb:U) {/Helvetica cf} ctmk 20 0 1.00 -80 -96 infolabel
mark part (7400-) {/Helvetica cf} ctmk 21 0 0.50 0 0 label
1.000 0.000 0.000 scb
mark pinO {/Times-Roman cf} ctmk 4 0 1.00 64 0 pinlabel
mark pinA {/Times-Roman cf} ctmk 7 0 1.00 -64 32 pinlabel
mark pinB {/Times-Roman cf} ctmk 7 0 1.00 -64 -32 pinlabel
sce
endgate
} def

<< /part (2) (set part [lindex {1 2 3 4} 1]) pop >> /quadnand libinst
<< /part (3) (set part [lindex {1 2 3 4} 2]) pop >> /quadnand libinst
<< /part (4) (set part [lindex {1 2 3 4} 3]) pop >> /quadnand libinst

/quadnor {
<</part (1) (set part [lindex {1 2 3 4} 0]) pop
/pinA (1) (lindex {0 1 4 10 13} $part) pop
/pinB (2) (lindex {0 2 5 8 11} $part) pop
/pinO (3) (lindex {0 3 6 9 12} $part) pop /idx (?) >> begingate
1 1.00 -64 48 -35 48 2 polygon
1 1.00 -64 -48 -35 -48 2 polygon
1 1.00 -128 0 80 -37.00 37.00 xcarc
1 1.00 56 0 8 0.00 360.00 xcarc
1 1.00 -35 -48 96 30.00 90.00 xcarc
1 1.00 -35 48 96 270.00 330.00 xcarc
mark idx (pcb:U) {/Helvetica cf} ctmk 20 0 1.00 -64 -96 infolabel
mark part (7402-) {/Helvetica cf} ctmk 21 0 0.50 0 0 label
1.000 0.000 0.000 scb
mark pinO {/Times-Roman cf} ctmk 4 0 1.00 64 0 pinlabel
mark pinA {/Times-Roman cf} ctmk 7 0 1.00 -56 32 pinlabel
mark pinB {/Times-Roman cf} ctmk 7 0 1.00 -56 -32 pinlabel
sce
endgate
} def

<< /part (2) (set part [lindex {1 2 3 4} 1]) pop >> /quadnor libinst
<< /part (3) (set part [lindex {1 2 3 4} 2]) pop >> /quadnor libinst
<< /part (4) (set part [lindex {1 2 3 4} 3]) pop >> /quadnor libinst

/quador {
<</part (1) (set part [lindex {1 2 3 4} 0]) pop
/pinA (1) (lindex {0 1 4 9 12} $part) pop
/pinB (2) (lindex {0 2 5 10 13} $part) pop
/pinO (3) (lindex {0 3 6 8 11} $part) pop /idx (?) >> begingate
1 1.00 -19 -48 96 30.00 90.00 xcarc
1 1.00 -19 48 96 270.00 330.00 xcarc
1 1.00 -112 0 80 -37.00 37.00 xcarc
1 1.00 -48 48 -19 48 2 polygon
1 1.00 -48 -48 -19 -48 2 polygon
mark idx (pcb:U) {/Helvetica cf} ctmk 20 0 1.00 -64 -96 infolabel
mark part (7432-) {/Helvetica cf} ctmk 21 0 0.50 16 0 label
1.000 0.000 0.000 scb
mark pinO {/Times-Roman cf} ctmk 4 0 1.00 64 0 pinlabel
mark pinA {/Times-Roman cf} ctmk 7 0 1.00 -40 32 pinlabel
mark pinB {/Times-Roman cf} ctmk 7 0 1.00 -40 -32 pinlabel
sce
endgate
} def

<< /part (2) (set part [lindex {1 2 3 4} 1]) pop >> /quador libinst
<< /part (3) (set part [lindex {1 2 3 4} 2]) pop >> /quador libinst
<< /part (4) (set part [lindex {1 2 3 4} 3]) pop >> /quador libinst

% EndLib
