From c885d393447d5d4e3edbc21bcb1a587128c463d4 Mon Sep 17 00:00:00 2001 From: Alessandro Rubini <rubini@gnudd.com> Date: Thu, 6 Sep 2012 14:28:57 +0200 Subject: [PATCH] docs: added img/ subdirectory with eps files Signed-off-by: Alessandro Rubini <rubini@gnudd.com> --- docs/specification/img/sdb-bridge.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-component.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-device.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-empty.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-integration.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-interconnect.ps | 224 +++++++++++++++++++++ docs/specification/img/sdb-product.ps | 224 +++++++++++++++++++++ 7 files changed, 1568 insertions(+) create mode 100644 docs/specification/img/sdb-bridge.ps create mode 100644 docs/specification/img/sdb-component.ps create mode 100644 docs/specification/img/sdb-device.ps create mode 100644 docs/specification/img/sdb-empty.ps create mode 100644 docs/specification/img/sdb-integration.ps create mode 100644 docs/specification/img/sdb-interconnect.ps create mode 100644 docs/specification/img/sdb-product.ps diff --git a/docs/specification/img/sdb-bridge.ps b/docs/specification/img/sdb-bridge.ps new file mode 100644 index 0000000..39ad1a1 --- /dev/null +++ b/docs/specification/img/sdb-bridge.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +bridge + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-component.ps b/docs/specification/img/sdb-component.ps new file mode 100644 index 0000000..0da11df --- /dev/null +++ b/docs/specification/img/sdb-component.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +comp + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-device.ps b/docs/specification/img/sdb-device.ps new file mode 100644 index 0000000..005e130 --- /dev/null +++ b/docs/specification/img/sdb-device.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +dev + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-empty.ps b/docs/specification/img/sdb-empty.ps new file mode 100644 index 0000000..2fb8305 --- /dev/null +++ b/docs/specification/img/sdb-empty.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +empty + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-integration.ps b/docs/specification/img/sdb-integration.ps new file mode 100644 index 0000000..b460a41 --- /dev/null +++ b/docs/specification/img/sdb-integration.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +integr + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-interconnect.ps b/docs/specification/img/sdb-interconnect.ps new file mode 100644 index 0000000..0e13ad8 --- /dev/null +++ b/docs/specification/img/sdb-interconnect.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +inter + +showpage \ No newline at end of file diff --git a/docs/specification/img/sdb-product.ps b/docs/specification/img/sdb-product.ps new file mode 100644 index 0000000..cf7900f --- /dev/null +++ b/docs/specification/img/sdb-product.ps @@ -0,0 +1,224 @@ +%!PS-Adobe-2.0 EPSF-1.2 +%%Creator: Alessandro Rubini +%%Title: crap +%%BoundingBox: 0 0 200 80 +%%EndComments + +/S {dup ==} def +/S2 {2 copy == ==} def +/S3 {3 copy == == ==} def +/S4 {4 copy == == == ==} def + +/minx 0 def +/miny 0 def +/maxx 200 def +/maxy 80 def + +0 setlinecap 1 setlinejoin + +/centerstring { % fontname width string -- fontsize + gsave + 3 2 roll findfont setfont % width string + dup 3 1 roll % string width string + stringwidth pop div dup 3 1 roll % scale string scale + dup neg 0 exch rmoveto % scale string scale + currentfont exch scalefont setfont % scale string + show + grestore +} def + +/centeratsize { % x y string -- + gsave + 3 1 roll moveto + dup stringwidth pop 2 div neg 0 rmoveto show + grestore +} def + + +/grid { + gsave + .8 .8 .8 setrgbcolor + .2 setlinewidth + % vertical lines + minx 10 maxx { + dup + miny moveto maxy lineto stroke + } for + % horizontal lines + miny 10 maxy { + dup + minx exch moveto maxx exch lineto stroke + } for +} def +%grid + +0 0 moveto +30 10 translate +10 15 scale + +% make a 4-byte word, with ticks inside +/word { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath fill + setrgbcolor + 0 0 moveto 4 0 rlineto 0 1 rlineto -4 0 rlineto closepath stroke + 1 0 moveto 0 .1 rlineto stroke + 2 0 moveto 0 .25 rlineto stroke + 3 0 moveto 0 .1 rlineto stroke + grestore +} def + +% only the border, but same arguments as above +/short { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 2 0 rlineto 0 1 rlineto -2 0 rlineto closepath stroke + grestore +} def + +% only the border, but same arguments as above +/byte { % r g b fillr fillg fillb x y -- + gsave + translate + .08 setlinewidth + 1 setlinejoin + 1 setlinecap + setrgbcolor + setrgbcolor + 0 0 moveto 1 0 rlineto 0 1 rlineto -1 0 rlineto closepath stroke + grestore +} def + + +%%%%%%%%%%%%%%%%%%%%%%%%%%% + +/colempty {.7 .7 .7 1 1 1} def +/colred {.8 .4 .4 1 .8 .8} def +/colblu {.4 .4 .8 .8 .8 1} def +/colgre {.4 .8 .4 .8 1 .8} def + +/Helvetica-Bold findfont .7 scalefont setfont +-2.5 0.2 moveto (0x30) show +-2.5 1.2 moveto (0x20) show +-2.5 2.2 moveto (0x10) show +-2.5 3.2 moveto (0x00) show + +/Courier-Bold findfont .7 scalefont setfont + +/name { % x y wid string -- + /s exch def + /wid exch def + /y exch def + gsave + wid 2 div add y .4 add %translate 1.5 0 scale 0 0 + s + centeratsize + grestore +} def + +/frame { + 0 4 12 { + /xf exch def + 0 1 3 { + /yf exch def + colempty xf yf word + } for + } for +} def + +/prod { + frame + colblu 8 2 word + colblu 12 2 word + 0 4 12 { + /xf exch def + 0 1 1 { + /yf exch def + colblu xf yf word + } for + } for + + colblu 15 0 byte + 0 0 .6 setrgbcolor + 8 2 8 (....vendor_id....) name + 0 1 4 (device_id) name + 4 1 4 (version) name + 8 1 4 (..date..) name + 12 1 4 (..name..) name + 0 0 15 (...............name...............) name + 15 0 1 (T) name +} def + +/comp { + prod + 0 .4 0 setrgbcolor + colgre 8 3 word + colgre 12 3 word + colgre 0 2 word + colgre 4 2 word + 8 3 8 (...addr_first...) name + 0 2 8 (...addr_last...) name + +} def + +/inter { + comp + colempty 4 3 short + colempty 6 3 byte + colempty 7 3 byte + .2 .2 .2 setrgbcolor + 0 3 4 (magic) name + 4 3 2 (nrec) name + 6 3 1 (V) name + 7 3 1 (B) name +} def + +/dev { + comp + colempty 0 3 short + colempty 2 3 byte + colempty 3 3 byte + .2 .2 .2 setrgbcolor + 0 3 2 (class) name + 2 3 1 (A) name + 3 3 1 (a) name + 4 3 4 (bus-spec) name +} def + +/bridge { + comp + .2 .2 .2 setrgbcolor + 0 3 8 (......child......) name +} def + +/integr { + prod + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 8 (....reserved....) name +} def + +/empty { + frame + .2 .2 .2 setrgbcolor + 0 3 16 (..............reserved..............) name + 0 2 16 (..............reserved..............) name + 0 1 16 (..............reserved..............) name + 0 0 15 (..............reserved............) name + colempty 15 0 byte + 15 0 1 (T) name +} def + +prod + +showpage \ No newline at end of file -- GitLab