diff options
Diffstat (limited to 'psfiles/buses.ps')
-rw-r--r-- | psfiles/buses.ps | 245 |
1 files changed, 245 insertions, 0 deletions
diff --git a/psfiles/buses.ps b/psfiles/buses.ps new file mode 100644 index 0000000..76b21a7 --- /dev/null +++ b/psfiles/buses.ps @@ -0,0 +1,245 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Title: buses +%%Creator: Xcircuit v2.3 +%%CreationDate: Mon Nov 5 11:36:02 2001 +%%Pages: 1 +%%BoundingBox: 68 68 712 496 +%%DocumentNeededResources: font Helvetica font Helvetica-Oblique +%%EndComments +%%BeginProlog +% +% PostScript prolog for output from xcircuit +% Version: 2.3 +% +% Electrical circuit (and otherwise general) drawing program +% +% Written by Tim Edwards 8/5/93--5/16/01 (tim@bach.ece.jhu.edu) +% The Johns Hopkins University +% +%%BeginResource: procset XCIRCproc 2.3 2 +% supporting definitions --- these are the primary xcircuit types. + +/XCIRCsave save def +/topmat matrix currentmatrix def + +/fontslant { /slant exch def [1 0 slant 1 0 0] + exch findfont exch makefont dup length dict /ndict exch def + { 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall + ndict definefont pop} def +/ul { dup type /stringtype eq showflag 1 eq and { gsave + currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_) + false charpath flattenpath pathbbox grestore exch pop 1 index + sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0 + rlineto stroke moveto } if } def +/ol { dup type /stringtype eq showflag 1 eq and { gsave gsave + currentpoint topmat setmatrix 2 index stringwidth pop 3 index + true charpath flattenpath pathbbox grestore exch pop + exch pop topmat setmatrix (_) true charpath pathbbox grestore + exch pop 1 index sub setlinewidth exch pop currentpoint + exch 4 1 roll exch sub add moveto pop 0 rlineto stroke + moveto } if } def +/stW { gsave currentpoint newpath moveto true charpath flattenpath + pathbbox pop exch pop sub grestore } def +/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs + 0 currentpoint pop put} def +/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def +/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt + {currentpoint exch pop moveto exit} {pop} ifelse } for } def +/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt + {currentpoint exch pop moveto exit} {pop} ifelse } for } def +/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def +/hS { qS qS } def +/pspc 0 def +/cf0 { scalefont setfont } bind def +/Kn { dup kY add /kY exch def rmoveto } bind def +/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul + 0.33 mul neg Kn} def +/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul + 0.67 mul Kn } def +/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def +/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def +/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq + { 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def} + {fscale0 mul fscale mul cf0} ifelse } def +/ctmk { counttomark dup 2 add -1 roll pop } bind def +/label { gsave translate 0 0 moveto dup scale /rotval exch def /just exch def + just 16 and 0 gt {0 1 dtransform gsave pagemat setmatrix idtransform + exch grestore 1 0 dtransform gsave pagemat setmatrix idtransform + exch grestore dup 0 eq {pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse + {-1 /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse exch 0 lt + {-1 /just just dup 12 and 4 ne {12 xor} if def} {1} ifelse scale } + if /showflag 0 def /fspc pspc def /Bline 0 def /Tabs 0 array def + /fscale 1.0 def /kY 0 def + gsave dup 1 add copy 0 exch {exch dup type /stringtype eq {true + charpath flattenpath} {exec} ifelse } repeat pop pathbbox grestore + 3 -1 roll pop 3 1 roll just 1 and 0 gt {just 2 and 0 gt {exch pop + neg fspc sub} {exch sub 0.5 mul neg} ifelse} {pop neg fspc add} + ifelse exch Bline exch just 4 and 0 gt {just 8 and 0 gt {exch pop + neg fspc sub} {add 0.5 mul neg} ifelse} {pop neg fspc add} ifelse + /showflag 1 def rotval rotate Kn currentpoint translate + /Bline 0 def /Tabs 0 array def /fscale 1.0 def /kY 0 def + {dup type /stringtype eq {show}{exec} ifelse} repeat grestore } def +/pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 20 def label + /pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def +/pinglobal { pinlabel } def +/infolabel { pinlabel } def + +/scb { setrgbcolor } bind def /sce { defColor aload pop scb } bind def +/cRedef {/defColor currentcolor 3 array astore def} def +/begingate { /hlevel hlevel 1 add def /defColor currentcolor sce 3 array + astore def gsave sce translate 0 0 moveto dup 0 lt + {neg 1 sub -1 1 scale} if rotate dup scale } bind def +/makeparm {3 string cvs dup length 1 add string /tstr exch def tstr exch + 1 exch putinterval tstr 0 (v) putinterval tstr cvn} bind def +/beginparm { -1 1 {makeparm exch def} for + dup type /arraytype eq { aload length -1 1 {makeparm exch def} + for } if begingate } bind def +/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef + scb} bind def + +/hlevel 0 def +/tmpa [1 0 0 1 0 0] def +/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind +{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind +{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind +{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind +{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind +{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind +{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def +/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll + neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy + gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll + { 3 index exch 5 exch put dup -8 3 index { 3 index + exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def +/setstyles { + currentlinewidth mul setlinewidth /style exch def + style 1 and 0 gt not {closepath} if + style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if + style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if + style dup 256 ge exch 480 lt and { gsave 1 setgray eofill grestore } if + style 16 and 0 gt { gsave style 224 and -5 bitshift dup 7 lt + {gar exch get ppaint} { pop eofill } ifelse grestore } if + style 8 and 0 gt style 512 eq or { newpath } { stroke } ifelse grestore } def + +/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def +/xcarc { gsave newpath arc setstyles } def +/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll + 3 index div 1 scale } def +/ele { 0 4 1 roll 0 4 1 roll } bind def +/ellipse { gsave elb newpath ele arc setmatrix setstyles } def +/pellip { elb ele arc setmatrix } def +/nellip { elb ele arcn setmatrix } def +/spline { gsave moveto curveto setstyles } def +/polyc { {lineto} repeat } bind def +/beginpath { gsave moveto } bind def +/endpath { setstyles } bind def +/bop { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def +/insertion {/PSobj save def /showpage {} def bop translate} def +/end_insert {PSobj restore} def +/setpagemat {/pagemat matrix currentmatrix def} def +/inchscale {setpagemat 0.375 mul dup scale} def +/cmscale {setpagemat 0.35433071 mul dup scale} def + +%%EndResource +%%EndProlog + +% XCircuit output starts here. + +/dbus1 { +% -608 0 1216 42 bbox +begingate +1.000 0.000 0.000 scb +(d[3]) {/Helvetica cf} 2 23 0 1.00 -608 -64 pinlabel +(d[2]) {/Helvetica cf} 2 23 0 1.00 -608 -32 pinlabel +(d[1]) {/Helvetica cf} 2 23 0 1.00 -608 0 pinlabel +(d[0]) {/Helvetica cf} 2 23 0 1.00 -608 32 pinlabel +(d[3]) {/Helvetica cf} 2 20 0 1.00 608 -64 pinlabel +(d[2]) {/Helvetica cf} 2 20 0 1.00 608 -32 pinlabel +(d[1]) {/Helvetica cf} 2 20 0 1.00 608 0 pinlabel +(d[0]) {/Helvetica cf} 2 20 0 1.00 608 32 pinlabel +sce +(data bus) {/Helvetica cf} 2 17 0 1.00 -64 16 label +1 1.00 -608 0 608 0 2 polygon +endgate +} def + +/chip1 { +% -96 -96 192 192 bbox +(?) 1 beginparm +0 1.00 -96 -96 -96 96 96 96 96 -96 4 polygon +( data ) {/Helvetica cf} 2 23 0 1.00 96 0 label +1.000 0.000 0.000 scb +(p0) {/Helvetica cf} 2 20 0 1.00 96 48 pinlabel +(p1) {/Helvetica cf} 2 20 0 1.00 96 16 pinlabel +(p2) {/Helvetica cf} 2 20 0 1.00 96 -16 pinlabel +(p3) {/Helvetica cf} 2 20 0 1.00 96 -48 pinlabel +sce +mark v1 (Chip ) {/Helvetica cf} ctmk 21 0 1.00 0 64 label +endgate +} def + +/arrowhead { +% -12 -32 24 36 bbox +% trivial +begingate +8 -28 beginpath +3 -18 3 -15 0 0 curveto +-3 -15 -3 -18 -8 -28 curveto +-2 -26 2 -26 8 -28 curveto +249 1.00 endpath +endgate +} def + +/arrow { +% -12 -40 24 80 bbox +% trivial +begingate +1 0.80 0 -40 0 20 2 polygon +1.00 0 0 40 arrowhead +endgate +} def + +%%Page: 1 1 +%%PageOrientation: Portrait +/pgsave save def bop +% 1152 692 offsets +1.0000 inchscale +2.6000 setlinewidth + +1 1.00 288 756 288 884 672 884 672 756 4 polygon +1 1.00 352 1012 352 884 608 884 608 1012 4 polygon +1 1.00 432 1012 432 884 752 884 752 756 4 polygon +1 1.00 224 1012 224 884 864 884 864 756 4 polygon +1 2.00 224 884 864 884 2 polygon +1 1.00 1312 1108 1312 980 1728 980 1728 596 1888 596 5 polygon +1 1.00 1408 1108 1408 980 1728 980 1728 692 1888 692 5 polygon +1 1.00 1584 964 1600 996 2 polygon +(2) {/Helvetica cf} 2 17 0 1.00 1584 996 label +1.000 0.000 0.000 scb +(b\(1\)) {/Helvetica cf} 2 17 0 1.00 1312 1108 pinlabel +(b\(2\)) {/Helvetica cf} 2 17 0 1.00 1408 1108 pinlabel +(a[0]) {/Helvetica cf} 2 17 0 1.00 224 1012 pinlabel +(a[1]) {/Helvetica cf} 2 17 0 1.00 352 1012 pinlabel +(a[2]) {/Helvetica cf} 2 17 0 1.00 432 1012 pinlabel +(a[3]) {/Helvetica cf} 2 29 0 1.00 288 756 pinlabel +sce +1.00 0 1024 340 dbus1 +1.00 0 320 324 [(1) ] chip1 +1.00 -1 1728 324 [(2) ] chip1 +(Three styles of buses in xcircuit) {ul} {/Helvetica cf} 3 21 0 1.00 992 1300 +label +(1\) \252standard\272 method) {/Helvetica cf} 2 16 0 1.00 192 1172 label +(" to see actual pins.) {/Helvetica cf} (Options->Show Pin Positions) +{/Helvetica-Oblique cf} (2\) \252sneaky\272 method. Use ") {/Helvetica cf} 6 +16 0 1.00 224 500 label +1.00 120 448 388 arrow +(real pin position \(normally not seen\)) {/Helvetica cf} 2 16 0 0.80 496 420 +label +1.00 60 992 308 arrow +(named the same.) {CR} (Pins on either end are) {CR} (The bus is a subcircuit.) +{/Helvetica cf} 6 28 0 0.80 1040 276 label +pgsave restore showpage + +%%Trailer +XCIRCsave restore +%%EOF |