% % %! (C:\\Documents and Settings\\don\\Desktop\\gonzo\\gonzo.ps) run % use external gonzo /trystone true def % name of textfile: blat 63 waywere % .... % X E Activate XON/XOFF if necessary. % Z Values are shown for Apple Super Serial Card %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This .GPS (Guru PostScript) file DEMANDS the persistant download % of GONZO15A.PTL #517 and GUTIL13A.PTL #280. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % statusdict begin % statusdict /setduplexmode known {true setduplexmode} if % end systemdict /setstrokeadjust known {true setstrokeadjust} if %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % modified nextcol allows pages without text and deferred xpos calcs. /nextcol { numpgcol 0 gt { curpage curcol get aload pop exec /txtwide exch def exec /ylimit exch def exec /ypos exch def exec /xpos exch def /curcol curcol 1 add def}{ nextpage} ifelse} def %%%%%% doembeddedproc executes |/name installdoembeddedproc links it /doembeddedproc {mark 50 {stringmode {getstringchar}{currentfile read} ifelse not {exit} if dup dup dup 32 eq exch 13 eq or exch 10 eq or {pop exit} if} repeat counttomark dup string /pstr1 exch def 1 sub -1 0 {pstr1 3 1 roll exch put} for pstr1 exch pop cvx exec} def /installdoembeddedproc {gonzo begin commands (/) 0 get {doembeddedproc} put end} def installdoembeddedproc %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % ------ COMMAND SUMMARY --------- % Note that "|" is used as a printable escape command below % |0 - drop cap font |1 - main text font |2 - text italics % |3 - heading font |4 - text caps font |5 - txt ital. caps % |6 - txt bold caps |8 - special font |= - symbol font % |a - start drop cap |b - indent drop text |c - start header % |d - finish header |k - kern -1 point |j - kern +1 point % |h - half linefeed |y - neg linefeed |C - center justify % |Z - column rule |x - enter PostScript |F - fill justify % \261 - em dash \274 elipsis ... %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % MIDNIGHT ENGINEERING TEMPLATE CORE ps.util.1 begin % here to simplify debug printerror nuisance begin systemdict /setstrokeadjust known {true setstrokeadjust} if /boxgrays 0.94 def % color of box fills. Use 1.0 for white 0.94 for gray % blackflash % This default gonzo page making template is a useful starting point for % creating your own custom templates. It allows multiple page documents % with full picture insertions and total text control. % Note that any template MUST have an internal proc named templatestartup % and that your template MUST NOT call gonzofont before run time. 300 dict /midnightdoc exch def midnightdoc begin /templatefonts { % Remember: all fonts MUST defer till run time! /font0 /StoneSans-Bold [45 0 0 40.1 0 -23] gonzofont % temp "I" /font1 /StoneSerif 8.38 gonzofont /font2 /StoneSerif [ 7.95 0 1.10 8.38 0 0 ] gonzofont /font3 /StoneSans-Bold [9.25 0 0 9.25 0 -8] gonzofont % old /font4 /StoneSerif 8.15 gonzofont /font5 /StoneSerif [ 8.12 0 1.1 8.12 0 0 ] gonzofont /font6 /StoneSerif-Bold [8.5 0 0 8.5 0 -5] gonzofont /font7 /StoneSans-Bold 7.9 gonzofont /font8 /Benguiat-Bold [22 0 0 24 0 0] gonzofont /font9 /Benguiat-Bold [14 0 0 14 0 0] gonzofont /font= /Symbol 9.75 gonzofont /font: /Times-Bold 9.75 gonzofont /font- /ZapfDingbats [9 0 0 9.01 0 -.7] gonzofont } def trystone not { /templatefonts { % Remember: all fonts MUST defer till run time! /font0 /Helvetica-Bold [45 0 0 40.1 0 -23] gonzofont /font1 /Times-Roman 9.75 gonzofont /font2 /Times-Italic 9.75 gonzofont /font3 /Helvetica-Bold [10 0 0 10.05 0 -8] gonzofont % old /font4 /Times-Roman 9.25 gonzofont /font5 /Times-Italic 9.25 gonzofont /font6 /Times-Bold [9 0 0 9.1 0 -6] gonzofont /font7 /Helvetica-Bold 9.5 gonzofont /font8 /Benguiat-Bold [22 0 0 24 0 0] gonzofont /font9 /Benguiat-Bold [14 0 0 14 0 0] gonzofont /font= /Symbol 9.75 gonzofont /font: /Times-Bold 9.75 gonzofont /font- /ZapfDingbats [9 0 0 9.01 0 -.7] gonzofont } def } if % values used by gonzo justify ... /cstretch 0.15 def % minimum character kerning /sstretch 0 def % minimum space kerning /dropcount 3 def % number of lines drop cap drops /lastlinestretch 0.04 def % open last paragraph line slightly /pm 10 def % use paragraph indents /yinc 11 def % line spacing /ypara yinc 2 div def % extra interparagraph spacing /ypara 0 def % but not here % These macros handle an initial drop cap and low center subheads ... /amacro {(zyL0) stringmacro /ypos ypos ypara add def} def % start drop cap /bmacro {(iFy1) stringmacro /ypos ypos ypara add def} def % finish drop cap /cmacro {0.33 setgray (znyL3) stringmacro /ypos ypos ypara 2 mul add def} def % centered title /dmacro {black (pF1) stringmacro /ypos ypos ypara 2 mul add def} def % normal text after centered title % reference values for internal doc control that become calculated % array values. Note that it is best to work in fixed yinc heights % to prevent alignment problems under figures. Note that it is nearly % always best to AVOID FIXED VALUES IN DOCMATRIX. % set screen here or comment out for stock gray 106 45 {dup mul exch dup mul add 1.0 exch sub} setscreen /showboxgrays true def % show grays in boxes and figs? /txw 242 def % width of normal text columns /cmb 60 def % column bottom position /cmt cmb 62 1 sub yinc mul add .1 add def % page is 63 normal text lines high /cml 60 def % first column left margin /cms 260 def % spacing of normal columns /cm# 2 def % number of normal columns /cm1 cml def % c1 starts at left margin /cm2 cml cms add def % c2 in middle /cm3 cml cms 2 mul add def % c3 to right /cmw cms txw sub def % white space between columns /hdw cms txw add def % normal header/footer width /hdc cm1 hdw 2 div add def % normal header/footer center /hdr cm1 hdw add def % normal header/footer right /hdl cm1 def % normal header left /fdp 28 def % amount of footer drop below cml /bh1 yinc 13 mul def % 12 vlines reserved for title & blurb /rwd 0.50 def % width of rules /rlt {cmt 12 add} def % adjusted vrule top /rlb {cmb 7 sub} def % adjusted vrule bottom /rl1 {cm2 cmw 2 div sub} def % center rules /stdfigrad 4 def % radius of standard figure box /1colwide txw def % width of single column figure /2colwide txw cms add def % width of double column figure /3colwide txw cms 2 mul add def % width of triple column figure /f1h yinc 25 mul def % height of figure one % sidebar /f2h yinc 22 mul def % temp tower figures /f3h yinc 22 mul def % temp tower figures /pix1h yinc 21 mul def % steplock picture /pix2h yinc 21 mul def % steplock picture /pix3h yinc 21 mul def % steplock picture /pix4h yinc 21 mul def % steplock picture /s1h yinc 20 mul def % height of figure two /fig1 {cm1 cmt f1h sub 1colwide f1h yinc add true true /f1name /figure1 stdfig} def % link resource sidebar /fig2 {cm2 cmt f2h sub 1colwide f2h yinc add true true /f2name /figure2 grayfig2} def % link /fig3 {cm2 cmt f2h sub 1colwide f3h yinc add true true /f3name /figure3 grayfig2} def % link /side1 {cm1 cmt s1h sub 5 add 3colwide s1h true false /s1name /sidebar1 stdfig} def % link /pix1 {cm1 cmt pix1h sub 1colwide pix1h yinc add true true /pix1name /picture1 stdfigx} def % link pix /pix2 {cm2 cmt pix2h sub 1colwide pix2h yinc add true true /pix1name /picture2 stdfigx} def % link pix /pix3 {cm1 cmt pix3h sub 1colwide pix3h yinc add true true /pix3name /picture3 stdfigx} def % link pix /pix4 {cm2 cmt pix4h sub 1colwide pix4h yinc add true true /pix1name /picture4 stdfigx} def % link pix % this is an experimental pull /pull1 [ cm2 70 sub % left position cmb 8 yinc mul add % bottom position 1 index 204 add % width in points 1 index 9 yinc mul add % top position (|3I've yet to find any product whose main purpose is to let end users attractively hold |j|j|jpapers |j|j|jtogether.) % message NOT USED THIS COLUMN ] def /pull1top {pull1 3 get} def /pull1bot {pull1 1 get 0.1 add yinc sub} def % requires column [ cm1 pullleftset etc.. /pull1leftset {pull1 3 get yinc sub pull1 1 get yinc sub pull1 0 get 3 index sub} def /pull1rightset { pull1 2 get exch pull1 3 get yinc sub exch pull1 1 get yinc sub exch pull1 2 get sub txw add} def % this is an experimental "standard" pull for MIDENG... /stdpull {aload pop save /pullsnap exch def /msg exch def 6 sub /pt exch def 6 sub /pr exch def 0 add /pb exch def 6 add /pl exch def newpath pl pb moveto pl pt lineto pr pt lineto pr pb lineto closepath gsave 1 setgray 8 setlinewidth stroke grestore gsave showboxgrays {0.94}{0} ifelse setgray fill grestore [2 0 1 1] superstroke /sstretch 0.8 def /cstretch 0.2 def /font1 /Helvetica-Bold 12.5 gonzofont /font2 /Helvetica-Bold 11.5 gonzofont font1 /yinc 15 def /ylimit -9999 def pl dup pr sub 2 div neg add pt 28 sub msg cc pullsnap restore} def % this is a "standard" figure border for MIDENG. It has rounded edges, % a bottom single line title, and links to the actual figure art... /stdfig { /jsave justx 4 get def save /stdsnap exch def /colcheck {} def /figproc exch def cvx /figname exch def /showtitle exch def /showborder exch def /figheight exch def /figwidth exch def translate showborder {1 5 figwidth 2 sub figheight 15 sub stdfigrad roundbox gsave showboxgrays {0.94}{0} ifelse setgray fill grestore [2 0 1 1] superstroke } if /font7 /Helvetica-Bold 9 gonzofont showtitle {figwidth 2 div 12 font7 figname cc} if /bw figwidth def /bt figheight def /bl 0 def /bb 0 def /bc figwidth 2 div def /xpos 20 def /ypos bt 20 sub def /cstretch 0 def /sstretch 0 def /lastlinestretch 0 def /pmrun 0 def /ypara 0 def /linestring linestring2 def % needed to run interference 3 1 roll translate dup scale mark figproc cvx exec cleartomark stdsnap restore justx 4 jsave put } def %%%%%%%%%%%% % stdfigx just lets the artwork do its thing after translation /stdfigx { /jsave justx 4 get def save /stdsnap exch def /colcheck {} def /figproc exch def cvx /figname exch def /showtitle exch def /showborder exch def /figheight exch def /figwidth exch def translate {showborder {1 5 figwidth 2 sub figheight 15 sub stdfigrad roundbox gsave showboxgrays {0.94}{0} ifelse setgray fill grestore [2 0 1 1] superstroke } if } pop /font7 /Helvetica-Bold 9 gonzofont {showtitle {figwidth 2 div 12 font7 figname cc} if /bw figwidth def /bt figheight def /bl 0 def /bb 0 def /bc figwidth 2 div def /xpos 20 def /ypos bt 20 sub def /cstretch 0 def /sstretch 0 def /lastlinestretch 0 def /pmrun 0 def /ypara 0 def} pop /linestring linestring2 def % needed to run interference 3 1 roll translate dup scale mark figproc cvx exec cleartomark stdsnap restore justx 4 jsave put } def %%%%%%%%%%%% %%%%%%%%%%%%%%%%% % grayfig two has a title box (modified for reverse) /grayfig2 { /jsave justx 4 get def save /stdsnap exch def /colcheck {} def /figproc exch def cvx /figname exch def /showtitle exch def /showborder exch def 2 add % temp for blat 25 /figheight exch def 20 sub /figwidth exch def translate showborder {1 10 add 5 10.4 figheight 33 sub moveto figwidth 0.8 sub 0 rlineto figwidth 2 sub figheight 15 sub stdfigrad roundbox % gsave showboxgrays {grayshade}{1} ifelse setgray fill grestore gsave white fill grestore % temp gray box, white top gsave newpath 0 0 moveto 0 figheight 38 sub rlineto figwidth 2 sub 0 rlineto 0 figheight 38 sub neg rlineto closepath 0.33 setgray setgray fill grestore [2 0 1 1] superstroke } if /font7 /Helvetica-Bold 9 gonzofont trystone { /cstretch 0.5 store /font7 /StoneSans-Bold 9 gonzofont} if showtitle {white figwidth 2 div figheight 31 sub font7 figname cc black} if /bw figwidth def /bt figheight def /bl 0 def /bb 0 def /bc figwidth 2 div def /xpos 20 def /ypos bt 20 sub def /cstretch 0 def /sstretch 0 def /lastlinestretch 0 def /pmrun 0 def /ypara 0 def /linestring linestring2 def % needed to run interference 3 1 roll translate dup scale mark figproc cvx exec cleartomark stdsnap restore justx 4 jsave put } def % Here is the master document control matrix. It is manual in this example % Note that the result of internal calcs are ORDINARY NUMBERS. Note also % that you make room for figures by adding or subtracting only where and % as needed. /docmatrix [ [ { } { } { } ] % initial document files [ [{leftfooter} {fullheader} {cm1 cmt bh1 sub titleblock} {rl1 rlb rlt bh1 sub yinc 2 mul sub rwd vrule} % {pull1 stdpull} ] % page one figures and control % no stdpull this time % [ cm1 cmt bh1 sub pull1top txw] % column1 xpos ypos ylimit txtwide % [ cm1 pull1leftset] % [ cm1 pull1bot cmb txw] % [ cm2 cmt bh1 sub pull1top txw] % column2 xpos ypos ylimit txtwide % [ cm2 pull1rightset] % [ cm2 pull1bot cmb txw] % adjusted for double title [ cm1 cmt bh1 sub yinc 2 mul sub cmb txw] % column1 xpos ypos ylimit txtwide [ cm2 cmt bh1 sub yinc 2 mul sub cmb txw] % column2 xpos ypos ylimit txtwide ] [ [{aqua} {rightfooter} {fullheader} {rl1 rlb rlt rwd vrule} % {0 0 0.8 fig1} % {0 0 0.8 pix1} %{0 0 0.8 pix2} {rl1 rlb rlt rwd vrule} ] % page two figures and control [ cm1 cmt cmb txw] % column1 xpos ypos ylimit txtwide [ cm2 cmt cmb txw] % column2 xpos ypos ylimit txtwide ] /coladj {yinc 21 mul pop 0 add} def [ [{aqua} {leftfooter} {fullheader} % {0 -6 0.8 fig1} {rl1 rlb rlt rwd vrule} % {0 0 0.8 pix3} % {0 0 0.8 pix4} {rl1 rlb rlt rwd vrule} ] % page three figures and control % was f1h sub yinc sub % [ cm1 cmt f1h sub yinc sub cmb coladj txw] % column1 xpos ypos ylimit txtwide [ cm1 cmt cmb txw] [ cm2 cmt cmb txw] % column2 xpos ypos ylimit txtwide ] [ [{aqua} {rightfooter} {fullheader} {rl1 rlb rlt rwd vrule} ] % page four figures and control [ cm1 cmt cmb txw] % column1 xpos ypos ylimit txtwide [ cm2 cmt cmb txw] % column1 xpos ypos ylimit txtwide ] [ [{leftfooter} {fullheader} {rl1 rlb rlt rwd vrule} ] % page four figures and control [ cm1 cmt cmb txw] % column1 xpos ypos ylimit txtwide [ cm2 cmt cmb txw] % column1 xpos ypos ylimit txtwide ] [ [{rightfooter} {rightheader} {rl1 rlb rlt rwd vrule} ] % page five figures and control [ cm1 cmt cmb txw] % column1 xpos ypos ylimit txtwide [ cm2 cmt f2h sub yinc sub cmb txw] % column1 xpos ypos ylimit txtwide ] [ {quit} ] % final document wrapup % NOTE: will not execute with short copy! ] def /nextpage { showpage adjustpage /pagenum pagenum 1 add def docpage numpages lt { /docpage docpage 1 add def docmatrix docpage get /curpage exch def curpage length 1 sub /numpgcol exch def curpage 0 get {cvx exec} forall /curcol 1 def nextcol} {docmatrix curpage 1 add get {cvx exec} forall } ifelse } def /nextcol { curpage curcol get aload pop /txtwide exch def /ylimit exch def /ypos exch def /xpos exch def /curcol curcol 1 add def } def /colcheck { ypos ylimit le { curcol numpgcol gt {nextpage} {nextcol} ifelse} if } def /templatestartup { templatefonts font1 /gonzojust true def /rslashok true def docmatrix length /numpages exch def /docpage 1 def docmatrix 0 get {cvx exec} forall % do initial document files docmatrix docpage get /curpage exch def curpage length 1 sub /numpgcol exch def curpage 0 get {cvx exec} forall % do initial page files /curcol 1 def nextcol } def end % simpledoc template %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%% MIDNIGHT 35 TEXT STARTS HERE %%%%%%%%%%%%%%%% % //// demo - remove or alter before reuse //// % ps.util.1 begin % blurb uses my utilities % printerror % nuisance begin gonzo begin % be sure to start gonzo first! /dropindent 19 def % indent for drop cap CHANGE BELOW /pubname (Blatant |jOpportunist) def % for footers /issuename (Jul-Aug, 2001) def % for footers /titlename (The|j|j|j|j|j|j|j W|k|kay|j|j|j|j|j|j|j Things |j|j|j|j|j|j|jW|k|kere) def % the title /blatnum (63) def % for blurb /pagenum 1 def % first printed page number % this can give you oversize copies for camera ready use /makeitbig false def % big is 150 percent /printbottomhalf true def % only used if 1.5 scale /adjustpage { makeitbig {landscape printbottomhalf {0 -20 translate} {0 -550 translate} ifelse 1.333 dup scale}if} def adjustpage % roundbox draws a box path with rounded corners and locks you to the % lower lefthand box corner using this format ... % -xpos- -ypos- -yheight- -cornerrad- roundbox % (this will become a part of the utilities) /roundbox {gsave /rad exch def /bt exch def /br exch def /bb exch def /bl exch def bl bb translate rad mark br 2 div 0 0 0 0 bt br bt br 0 br 2 div 0] roundpath} def %% INCLUDED FILES (blurbs, figures, pulls, rules, footers, etc..) % vrule gives a fixed vertical rule, inputting xpos ystart yend linewidth /vrule {gsave newpath setlinewidth 2 index 4 2 roll moveto exch lineto 0 setgray stroke grestore} def % hrule gives a fixed horizontal rule, inputting ypos xstart xend linewidth /hrule {gsave newpath setlinewidth 1 index 4 2 roll moveto lineto 0 setgray stroke grestore} def % titleblock straddles all three columns at top of first page % blatlogo here /blatlogo {save /blsave exch def translate 5 dup scale /cstretch .05 def /sstretch 0.7 def /font; /Revue [2.6 0 0 2.6 0 0] gonzofont /font: /Revue [5 0 0 6 0 0] gonzofont /kern -0.1 def 1 [10 0 0 0 0 9 20 9 20 0 10 0] roundpath gsave boxgrays setgray fill grestore [0.9 0 0.7 1 0.55 0] superinsidestroke gsave -0.45 0 translate 1 [25 0 20 0 20 9 30 9 30 0 25 0] roundpath gsave boxgrays setgray fill grestore [0.9 0 0.7 1 0.55 0] superinsidestroke grestore /yinc 3 def font; 10 5 (the |j|jblatant opportunist) cc font: 24.55 2 blatnum cc blsave restore } def /titleblock { save /tbsnap exch def translate /ylimit -9999 def /txtwide 1000 def 340 10 yinc 2 add % temporary upshift mul 3 add blatlogo /cstretch 0.2 def /sstretch 0.2 def /font1 /Helvetica-Bold 11 gonzofont trystone {/font1 /StoneSans-Bold 11 gonzofont} if font1 412 102 yinc 2 mul add % temp upshift 5 sub (by Don Lancaster) cc /cstretch 0.05 def /sstretch 0.05 def /font2 /Helvetica-Bold 47 gonzofont trystone {/font2 /StoneSans-Bold [43.6 0 0 45 0 0] gonzofont} if /yinc 50 def % temp for two %%% 0 87 18 sub 22 sub % 24 add % temp shift two lines 0 87 18 sub 22 sub % 24 add % temp shift two lines when active titlename cl tbsnap restore } def % mergestr is a tool useful for page numbers; evenutally it will go % into the nuisance dictionary /mergestr {2 copy length exch length add string dup dup 4 3 roll 4 index length exch putinterval 3 1 roll exch 0 exch putinterval} def % fullheader is stripe across top. /fullheader {save /hdrsnap exch def cml cmt 21 add moveto 2 setlinewidth hdw 0 rlineto stroke hdrsnap restore} def % leftheader is left column stripe /leftheader {save /hdrsnap exch def cml cmt 21 add moveto 2 setlinewidth txw 0 rlineto stroke hdrsnap restore} def % rightheader is right column stripe /rightheader {save /hdrsnap exch def cml hdw add cmt 21 add moveto 2 setlinewidth txw neg 0 rlineto stroke hdrsnap restore} def % left footer has left, center, and right elements for the left pages /leftfooter {save /footsnap exch def /colcheck {} def font7 hdc cmb fdp sub pubname cc hdl cmb fdp sub issuename cl hdr cmb fdp sub pagenum ( ) cvs cr footsnap restore} def % right footer does the same for right pages; headers would work the same /rightfooter {save /footsnap exch def /colcheck {} def font7 hdc cmb fdp sub (Blatant |jOpportunist) cc hdr cmb fdp sub issuename cr hdl cmb fdp sub pagenum ( ) cvs cl footsnap restore} def % this is a simple horizontal rule that tracks text position ... /Zmacro {xpos ypos 2 add xpos txw add 4 add 0.5 hrule} def %%%%%%%%%%%%%% FIGURES START HERE %%%%%%%%%%%%%%%%%%%%% /figure1 { /title ( ) def /figscale 0.8 def % makes position size independent /cstretch 0.1 def /sstretch 0.1 def /font2{/Helvetica-Bold findfont [9 0 0 9 0 0 ] makefont setfont}def /font7 {/Helvetica-Bold findfont [6 0 0 6 0 0] makefont setfont} def /font8 {/Helvetica findfont [8 0 0 8 0 0] makefont setfont} def font2 bc bt 25 sub 2 add % ( ) % use stdfig title below instead ( ) cc /amacro {/ypos ypos squash add def} def /bmacro {/yhold ypos def /ypos ytopoflist def /xpos xpos columnspacing add def /ypos ypos yinc add def} def /squash 0.8 def % default /squash -2.5 def /yinc 9 def /colspacing 85 def /font7 {/Helvetica findfont [8 0 0 8 0 0] makefont setfont} def /font8 {/Helvetica-Bold findfont [8 0 0 8 0 0] makefont setfont} def /font1 {/Helvetica findfont [8 0 0 8 0 0] makefont setfont} def % bee patch /font2 {/Helvetica-Bold findfont [8 0 0 8 0 0] makefont setfont} def /xpos bl 28 add def /ypos bt 52 sub def /ytopoflist ypos figscale div def /columnspacing 116 def xpos figscale div ypos figscale div % (|8Adobe Acrobat|7 % 1585 Charleston Rd % Mountain View CA 94039 % (800) 833-6687 % |a % ) cl (|2Adobe Acrobat System|1 1585 Charleston Rd Mountain View CA 94039 (800) 833-6687 |/surl |2www.adobe.com|1|/adobe |a |2Arcata ImageViewer|1 600 F Street Arcata CA 95521 (800) 822-9085 |/surl |2www.arcatapet.com|/arcatapet |a |2Auction Advisory|1 Box 61104 Phoenix 85082 (602) 994-4512 |/surl |2www.auctionadvisory.com|/auctionadvmag |a |2eBay|1 2005 Hamilton Ave, Ste 350 San Jose CA 95125 |/surl |2www.ebay.com|1|/ebay |a |2eBay Magazine|1 700 E. State St. Iola, WI 54990 (715) 445-4087 |/surl |2http://www.krause.com|/ebaymag |b |2 Ipswitch, Inc |1 81 Hartwell Ave Lexington MA 02421 (781) 676-5700 |/surl |2http://www.ipswitch.com|/ipswitch |a |2Levy-Latham|1 6263 N. Scottsdale Rd #371 Scottsdale, Arizona 85250 (480) 367-1100 |/surl |2http://www.levylatham.com|/levylat |a |2Synergetics|1 Box 809 Thatcher AZ 85552 (928) 428-4073 |/surl |2www.tinaja.com|1|/tinaja |a |2Test Equipment Connection|1 525 Technology Park Lake Mary FL 32746 (800) 615-8378 |/surl |2www.4testequipment.com|/tec |a |2WebTrends|1 621 SW Morrison #1025 Portland OR 97205 (502) 294-7025 |/surl |2www.webtrends.com|1|/webtrends |a )cl /font9 {/Helvetica findfont [9 0 0 9 0 0] makefont setfont} def font9 % /yinc 14 def /yinc yinc 1.9 add def % temp adjust /up3 {/ypos ypos -7 add store} def % gsave % xpos 108 add 69 sub ytopoflist 187 sub 15 add mt 135 pr 93 pd % 135 pl closepath grayshade 0.10 sub setgray fill grestore % xpos 108 add ytopoflist 187 sub % (|8RECOMMENDED WEB SITES % |h|7|/up3 % |/surl www.amazon.com|/amazon % |/surl www.keynet.net/~lindsay|/lindsay % |/surl www.patent.womplex.ibm.com|/patent.womplex.ibm % |/surl www.tinaja.com/patnt01.html|/patnt01 % |/surl www.mediafinder.com|/mediafinder % ) cc {{ /tabs [75] def (|7address finder |/surl |t|8bigfoot.com |/bigfoot |7address finder |/surl |t|8www.drebes.com|/drebes |7address finder |/surl |t|8www.infospace.com |/infospace |7address finder |/surl |t|8www.whowhere.com |/whowhere |7book locator |/surl |t|8www.tinaja.com/amlink01.html|/amlink01 |7consulting net |/surl |t|8net www.tinaja.com/consul01.html|/consul01 |h |7electronic data |/surl |t|8www.tinaja.com/eeweb01.html|/eeweb01 |7ezine & zines |/surl |t|8www.factsheet5.com|/factsheet5 |7ezine directory |/surl |t|8www.meer.net/~johnl/e-zine-list|/meer |7ezine directory |/surl |t|8www.dominis.com/Zines|/dominis |7ezine directory |/surl |t|8www.edoc.com/ejurnal|/ejournal |7faq library |/surl |t|8www.faqlib.com|/faq |h |7infopacks |/surl |t|8www.tinaja.com/info1.html|/info01 |7manufacturers |/surl |t|8www.thomasregister.com|/thomas |7maps |/surl |t|8www.mapquest.com/map|/mapquest |7newsgroup finder |/surl |t|8www.tinaja.com/text/newslist.html|/newslist |7newsletter index |/surl |t|8www.NeoSoft.com/internet/paml|/paml |7newsgroup search |/surl |t|8web3.dejanews.com|/deja |h |7search tutorials |/surl |t|8www.searchenginewatch.com|/watch |7search engine |/surl |t|8www.altavista.digital.com|/alta |7search engine |/surl |t|8www.hotbot.com|/hotbot |7search engine |/surl |t|8www.inference.com/infind|/infer |7search engine |/surl |t|8www.wp.com/resch/search.htm|/wpsearch |7patent stash |/surl |t|8patent.womplex.ibm.com|/patent |h |7patents |/surl |t|8www.tinaja.com/patnt01.html|/patnt01 |7phone numbers |/surl |t|8www.lookupusa.com|/lookup |7phone numbers |/surl |t|8www.switchboard.com|/switchboard |7resource help |/surl |t|8www.tinaja.com/resbn01.html|/resbn01 |7technical info |/surl |t|8techweb.cmp.com/eet|/techweb |7tech info |/surl |t|8news:sci.electronics.design|/scieldes |h |7techical info |/surl |t|8www.questlink.com|/quest |7technical ventures |/surl |t|8www.tinaja.com/ismm01.html |/ismm01 |7toll free phones |/surl |t|8att.net/dir800|/bell800 |7trade journals |/surl |t|8www.mediafinder.com|/oxbridge |7useful web links |/surl |t|8www.tinaja.com/webwb01.html|/webwb01 |7zip code info |/surl |t|8www.usps.gov/ncsc|/zipcode ) cl }} pop } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /figure2 {save /f1snap exch def f1snap restore} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /figure3 {save /f1snap exch def f1snap restore} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /adjpix {-16 1 translate 0.835 dup scale} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /picture1 {save /f1psnap exch def adjpix /ylimit -9999 def /colbot -9999 def /ybot -9999 def /showpage {} def (E:\\Medocs-E\\Blat\\steplock\\pixn24.psl) run f1psnap restore} def /picture2 {save /f2psnap exch def adjpix /ylimit -9999 def /colbot -9999 def /ybot -9999 def /showpage {} def (E:\\Medocs-E\\Blat\\steplock\\pixe24.psl) run f2psnap restore} def /picture4 {save /f4psnap exch def adjpix /ylimit -9999 def /colbot -9999 def /ybot -9999 def /showpage {} def (E:\\Medocs-E\\Blat\\steplock\\pixd24.psl) run f4psnap restore} def /picture3 {save /f3psnap exch def adjpix /ylimit -9999 def /colbot -9999 def /ybot -9999 def /showpage {} def (E:\\Medocs-E\\Blat\\steplock\\pixp24.psl) run f3psnap restore} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /sidebar1 {} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % This is a titling and tracking box used for the figures.. /ttheight 20 yinc mul def /ttwidth 240 def /ttrad 3 def /ttbox {/ttmsg exch def /ylimit -9999 def /colbot -9999 def /ybot -9999 def xpos txtwide ttwidth sub 2 div add ypos ttheight sub 2 add 10 setgrid 0 ttheight 10 div 1.5 sub 0.5 sub moveto ttwidth 10 div 0 rlineto 0 0 ttwidth 10 div ttheight 10 div ttrad 10 div roundbox gsave 0.33 setgray fill grestore % temp whitebox, gray top gsave newpath 0 0 moveto 0 ttheight 10 div 1.5 sub 0.5 sub rlineto ttwidth 10 div 0 rlineto 0 ttheight 10 div 1.5 sub 0.5 sub neg rlineto closepath white fill grestore [0.2 0 0.1 1] superstroke % 14 8 showgrid /cstretch 0.02 def /sstretch 0.02 def /font1 /Helvetica-Bold 0.85 gonzofont font1 white ttwidth 10 div 2 div ttheight 10 div 1.3 sub ttmsg cc black } def /makeroom {/ypos ypos ttheight sub yinc 0 mul sub def} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /twobrain.cut {save /cutsnap exch def % name of textfile: PostScript to flutterwumper interface % ............................ electronics begin (POSTSCRIPT DRIVEN FLUTTERWUMPER) ttbox % bl -10 add bb -60 add 10 setgrid % 30 40 showgrid -0.5 -4.6 translate 0.75 dup scale /cstretch 0.015 def /sstretch 0.07 def /font1 /Helvetica 0.85 gonzofont /font2 /Helvetica-Bold 0.75 gonzofont % bold /font3 /Helvetica 0.75 gonzofont /yinc 0.85 def gsave 10 20 translate line1 5 6 mt 11 r [{5 5 mt 1 u} 0.5 23] xrpt line2 5 5 mt 5 u 11 r 5 d 11 l 1.5 [14 8 4 8 4 11 14 11] roundpath closepath gsave white fill grestore stroke font1 10.5 6.8 (PostScript laser printer) cc grestore %%%%%%%%%%%%%%%%%%% % stamp box gsave 0 2 translate line2 4 15.5 mt 4 r 4.5 u 4 l 4.5 d font1 6 18 (PIC Micro) cc grestore %%%%%%%%%%%%%%%%%%% % lasercomm line1 15 27.35 mt 10 l 2.15 d 6.5 r 4.2 d 3.5 l 4.5 26.7 mt darrow 15 27.6 mt 10.5 l 3.8 d 6.5 r 2.3 d 3 l 5 26.7 mt uarrow /box2.54 {gsave translate line1 0 0 mt 2.5 u 4 r 2.5 d 4 l grestore} def % flutter %%%%%%%%%%%% gsave 0 -5 translate line2 13 13 mt 13.5 u 15 r 13.5 d 15 l line1 8 25.5 mt 3 r 0.75 d 3 rx 8 25 mt 2.5 r 1.25 d 3.5 rx 8 24.5 mt 2 r 2.75 d 4 rx 8 24 mt 1.5 r 3.25 d 4.5 rx 8 23.5 mt 1 r 5.25 d 5 rx 8 23 mt 0.5 r 7.75 d 5.5 rx 11.4 15.25 mt larrow 12.3 18.25 mt rarrow 12.3 20.75 mt rarrow 12.3 21.75 mt rarrow 12.3 23.75 mt rarrow 12.3 24.75 mt rarrow [{14 14 box2.54} 3 4] yrpt font3 16 24.5 (x-axis stepper) cc 16 21.5(y-axis stepper) cc 16 18.5 (pen up/down) cc 16 15.5 (home sensor) cc /yinc 1.1 def /kern 0.1 def font1 23 24.6 (Custom vinyl cutter, wood|j routing, milling|k|k machine, animation stand, awards engraver, embroidery|j|j setup, circuit|j board|j drilling, Santa|k Claus|k machine, etc. etc. etc\274) cc grestore %%%%%%%%%%%% font3 8 13.8 11.7 add (task feedback) cc 8 12.3 11.8 add (task commands) cc 12.7 26.5 (serial port) cc font1 20.5 22.2 (HOMEBREW FLUTTERWUMPER) cc cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%% /schmidtcut {save /cutsnap exch def cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%% /vortexcut {save /cutsnap exch def cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%% /hposccut {save /cutsnap exch def cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%% /duracellcut {save /cutsnap exch def cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%% /ne2cut {save /cutsnap exch def cutsnap restore makeroom } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /f1name (SOME |j|jMENTIONED |j|jRESOURCES) def /f2name (A |j|jTYPICAL |j|jTRAM |j|jTOWER) def /f3name (THE |j|jTRAM |j|jCAR |j|jOR |j|j"CARRIER") def /s1name (No name used) def /pix1name { } def % for steplock /pix2name { } def /pix3name { } def /pix4name { } def %% patches for internet %%%% %%%%% TEMPORARY TINTER %%%% makes gray a blue tint error under .11 setgray /setgray {/gvalue exch store % .12360 = .11/.89 gvalue 0 eq {0 0 0 setrgbcolor} if gvalue 1 eq {1 1 1 setrgbcolor} if gvalue 0 gt gvalue 1 lt and {gvalue 1 gvalue sub 0.12360 mul sub dup 1 setrgbcolor} if } bind def %%%%%%%%%%%% BLAT WEB PATCHES %%%%%%%%%% % Beige tinter /setgray {dup 0.731 ge { 1 exch dup .41 mul .30 sub .11 div setrgbcolor} {.856 div dup 1.155 mul exch 1.155 div 0 setrgbcolor} ifelse} def /showgrays true store /boxgrays 0.94 def /leftfooter {save /footsnap exch def /colcheck {} def /font7 /Helvetica-Bold 9.5 gonzofont font7 trystone { /font7 /StoneSans-Bold 8.5 gonzofont} if font7 hdc cmb fdp sub pubname cc hdl cmb fdp sub issuename cl hdr cmb fdp sub blatnum (.) mergestr pagenum ( ) cvs mergestr cr /txtwide 1000 store /font3 /Helvetica 4.5 gonzofont font3 hdc cmb fdp sub 14 sub (Copyright c 2000 by Don Lancaster and Synergetics (928) 428-4073 www.tinaja.com \ All commercial rights and all electronic media rights fully reserved.) cc footsnap restore} def % right footer does the same for right pages; headers would work the same /rightfooter {save /footsnap exch def /colcheck {} def /font7 /Helvetica-Bold 9.5 gonzofont trystone { /font7 /StoneSans-Bold 8.5 gonzofont} if font7 hdc cmb fdp sub (Blatant |jOpportunist) cc hdr cmb fdp sub issuename cr hdl cmb fdp sub blatnum (.) mergestr pagenum ( ) cvs mergestr cl /txtwide 1000 store /font3 /Helvetica 4.5 gonzofont font3 hdc cmb fdp sub 14 sub (Copyright c 2000 by Don Lancaster and Synergetics (928) 428-4073 \ www.tinaja.com \ All commercial rights and all electronic media rights fully reserved.) cc footsnap restore} def % blatlogo here /blatlogo {save /blsave exch def translate 5 dup scale /cstretch .05 def /sstretch 0.7 def /font; /Revue [2.6 0 0 2.6 0 0] gonzofont /font: /Revue [5 0 0 6 0 0] gonzofont /kern -0.1 def 1 [10 0 0 0 0 9 20 9 20 0 10 0] roundpath gsave boxgrays setgray fill grestore [0.9 0 0.7 1 0.55 0] superinsidestroke gsave -0.45 0 translate 1 [25 0 20 0 20 9 30 9 30 0 25 0] roundpath gsave boxgrays setgray fill grestore [0.9 0 0.7 1 0.55 0] superinsidestroke grestore /yinc 3 def font; 10 5 (the |j|jblatant opportunist) cc font: 24.55 2 blatnum cc blsave restore} def %%%%%%%%%%%%%% end blatpatch %%%% TEMPORARY Gonzo patches - makes text gray for later colorize /graytocolor 0.33 def /fornet false def /blueon {fornet {mark graytocolor /setgray cvx ] cvx % printlist only printlist exch 3 index exch put exch 1 add exch}if} def /blueoff {mark 0 /setgray cvx ] cvx % printlist only printlist exch 3 index exch put exch 1 add exch} def /staygray {graytocolor setgray} def % permanant /stayblack {0 setcolor} def % permanant %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%% Blatant opportunist patches 6.0 %%%%%%%%%%%%%%%%%% % February 17, 1997 % Place at end of "A" file just before IXE /wanttouseustify % COLORIZING BLACK AND WHITE POSTSCRIPT MODULE % ==================================== midnightdoc begin /boxgrays 0.92 def % Gonzo character colorizer /blueon {mark /blue cvx 0.33 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /blueoff {mark /aqua cvx 0 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /tinton {mark 0.33 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /tinton1 {mark 0.25 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /tinton1r {mark /red cvx 0.25 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /tintoff {mark 0 /setgray cvx] cvx printlist exch 3 index exch put exch 1 add exch} def /staytint {aqua 0.33 setgray} def /staytint1 {aqua 0.25 setgray} def /staytint1r {red 0.25 setgray} def /staytint1b {beige 0.25 setgray} def %%%%%%%%%%%%%% COMPACT VERSION OF COLORIZER II %%%%%%%%%%%%%%%%%%%%%% /settint {dup /currenttint exch store 5.999 mul dup floor cvi /&cbar exch store dup floor sub /&cwt exch store [ {/setgray [ /dup cvx 0.3 &cwt 0.59 mul add /ge cvx [1 /exch cvx &cwt 0.59 mul 0.30 add /sub cvx 1 &cwt sub 0.59 mul 0.11 add /div cvx /dup cvx 1 &cwt sub /mul cvx &cwt /add cvx /exch cvx ] cvx [ &cwt 0.59 mul 0.3 add /div cvx /dup cvx &cwt /mul cvx 0] cvx /ifelse cvx /setrgbcolor cvx] cvx /def cvx} {/setgray [/dup cvx 0.59 1 &cwt sub 0.3 mul add /ge cvx [1 &cwt sub 0.3 mul 0.59 add /sub cvx &cwt 0.3 mul 0.11 add /div cvx /dup cvx &cwt /mul cvx 1 &cwt sub /add cvx /exch cvx 1 /exch cvx] cvx [1 &cwt sub 0.3 mul 0.59 add /div cvx /dup cvx 1 &cwt sub /mul cvx /exch cvx 0] cvx /ifelse cvx /setrgbcolor cvx] cvx /def cvx} {/setgray [/dup cvx 0.59 &cwt 0.11 mul add /ge cvx [&cwt 0.11 mul 0.59 add /sub cvx 1 &cwt sub 0.11 mul 0.30 add /div cvx /dup cvx 1 &cwt sub /mul cvx &cwt /add cvx 1 /exch cvx] cvx [0 /exch cvx &cwt 0.11 mul 0.59 add /div cvx /dup cvx &cwt /mul cvx] cvx /ifelse cvx /setrgbcolor cvx] cvx /def cvx} {/setgray [/dup cvx 0.59 1 &cwt sub mul 0.11 add /ge cvx [1 &cwt sub 0.59 mul 0.11 add /sub cvx &cwt 0.59 mul 0.30 add /div cvx /dup cvx &cwt /mul cvx 1 &cwt sub /add cvx 1] cvx [0 /exch cvx 1 &cwt sub 0.59 mul 0.11 add /div cvx /dup cvx 1 &cwt sub /mul cvx /exch cvx] cvx /ifelse cvx /setrgbcolor cvx] cvx /def cvx} {/setgray [/dup cvx 0.11 &cwt 0.30 mul add /ge cvx[&cwt 0.30 mul 0.11 add /sub cvx 1 &cwt sub 0.30 mul 0.59 add /div cvx /dup cvx 1 &cwt sub /mul cvx &cwt /add cvx /exch cvx 1] cvx [ &cwt 0.30 mul 0.11 add /div cvx /dup cvx &cwt /mul cvx /exch cvx 0 /exch cvx ] cvx /ifelse cvx /setrgbcolor cvx ] cvx /def cvx} {/setgray [ /dup cvx 0.30 1 &cwt sub 0.11 mul add /ge cvx[ 1 /exch cvx 1 &cwt sub 0.11 mul 0.30 add /sub cvx &cwt 0.11 mul 0.59 add /div cvx /dup cvx &cwt /mul cvx 1 &cwt sub /add cvx ] cvx [ 1 &cwt sub 0.11 mul 0.30 add /div cvx /dup cvx 1 &cwt sub /mul cvx 0 /exch cvx] cvx /ifelse cvx /setrgbcolor cvx ] cvx /def cvx} ] &cbar get exec exec} bind def /beige {0.10 settint} def % examples of convenience operators /aqua {0.52 settint} def /blue {0.67 settint} def /lime {0.44 settint} def /red {0 settint} def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% aqua % normal for blat /leftfooter {save /footsnap exch def /colcheck {} def 0.33 setgray /font7 /Helvetica-Bold 9.5 gonzofont font7 trystone {/font7 /StoneSans-Bold 8.5 gonzofont} if font7 hdc cmb fdp sub pubname cc hdl cmb fdp sub issuename cl hdr cmb fdp sub blatnum (.) mergestr pagenum ( ) cvs mergestr cr /txtwide 1000 store /font3 /Helvetica 4.5 gonzofont font3 hdc cmb fdp sub 14 sub (Copyright c 2000 by Don Lancaster and Synergetics (928) 428-4073 www.tinaja.com \ All commercial rights and all electronic media rights fully reserved. Reposting expressly forbidden.) cc footsnap restore} def % right footer does the same for right pages; headers would work the same /rightfooter {save /footsnap exch def /colcheck {} def 0.33 setgray /font7 /Helvetica-Bold 9.5 gonzofont font7 trystone {/font7 /StoneSans-Bold 8.5 gonzofont} if font7 hdc cmb fdp sub (Blatant Opportunist) cc hdr cmb fdp sub issuename cr hdl cmb fdp sub blatnum (.) mergestr pagenum ( ) cvs mergestr cl /txtwide 1000 store /font3 /Helvetica 4.5 gonzofont font3 hdc cmb fdp sub 14 sub (Copyright c 2000 by Don Lancaster and Synergetics (928) 428-4073 \ www.tinaja.com \ All commercial rights and all electronic media rights fully reserved. Reposting expressly forbidden.) cc footsnap restore} def % blatlogo here /blatlogo {save /blsave exch def translate 5 dup scale /cstretch .05 def /sstretch 0.7 def /font; /Revue [2.6 0 0 2.6 0 0] gonzofont /font: /Revue [5 0 0 6 0 0] gonzofont /kern -0.1 def 1 [10 0 0 0 0 9 20 9 20 0 10 0] roundpath gsave boxgrays setgray fill grestore [0.9 0.33 0.7 1 0.55 0.33] superinsidestroke gsave -0.45 0 translate 1 [25 0 20 0 20 9 30 9 30 0 25 0] roundpath gsave boxgrays setgray fill grestore [0.9 0.33 0.7 1 0.55 0.33] superinsidestroke grestore /yinc 3 def font; 10 5 (the |j|jblatant opportunist) cc font: 24.55 2 blatnum cc blsave restore} def /titleblock { save /tbsnap exch def translate 0.33 setgray /ylimit -9999 def /txtwide 1000 def 340 10 yinc 2 add % temporary upshift mul 3 add blatlogo /cstretch 0.2 def /sstretch 0.2 def /font1 /Helvetica-Bold 11 gonzofont trystone {/font1 /StoneSans-Bold 11 gonzofont} if font1 412 102 yinc 2 mul add % temp upshift 5 sub (by Don Lancaster) cc /cstretch 0.05 def /sstretch 0.05 def /font2 /Helvetica-Bold 47 gonzofont trystone {/font2 /StoneSans-Bold [43.6 0 0 45 0 0 ] gonzofont} if font2 /yinc 50 def % temp for two %%% 0 87 18 sub 22 sub % 24 add % temp shift two lines 0 87 18 sub 22 sub % 24 add % temp shift two lines when active titlename cl tbsnap restore } def /amacro {(zy0) stringmacro /ypos ypos ypara add def 0.33 setgray } def % start drop cap /bmacro {(iFy1) stringmacro /ypos ypos ypara add def black} def % finish drop cap /vrule {gsave 0.33 setgray newpath setlinewidth 2 index 4 2 roll moveto exch lineto 0.33 setgray stroke grestore} def % hrule gives a fixed horizontal rule, inputting ypos xstart xend linewidth /hrule {gsave 0.33 setgray newpath setlinewidth 1 index 4 2 roll moveto lineto 0.33 setgray stroke grestore} def /fullheader {save /hdrsnap exch def 0.33 setgray cml cmt 21 add moveto 2 setlinewidth hdw 0 rlineto stroke hdrsnap restore} def %%%%%%%%%%%%%%%%% % grayfig two has a title box (modified for reverse) /grayfig2 { /jsave justx 4 get def save /stdsnap exch def /colcheck {} def /figproc exch def cvx /figname exch def /showtitle exch def /showborder exch def 2 add % temp for blat 25 /figheight exch def 20 sub /figwidth exch def translate showborder {1 10 add 5 10.4 figheight 33 sub moveto figwidth 0.8 sub 0 rlineto figwidth 2 sub figheight 15 sub stdfigrad roundbox % gsave showboxgrays {0.94}{0} ifelse setgray fill grestore gsave 0.33 setgray fill grestore % temp gray box, white top gsave newpath 0 0 moveto 0 figheight 38 sub rlineto figwidth 2 sub 0 rlineto 0 figheight 38 sub neg rlineto closepath grayshade setgray fill grestore [2 0 1 1] superstroke } if /font7 /Helvetica-Bold 9 gonzofont trystone {/cstretch 0.5 store /font7 /StoneSans-Bold 9 gonzofont} if font7 showtitle {white figwidth 2 div figheight 31 sub font7 figname cc black} if /bw figwidth def /bt figheight def /bl 0 def /bb 0 def /bc figwidth 2 div def /xpos 20 def /ypos bt 20 sub def /cstretch 0 def /sstretch 0 def /lastlinestretch 0 def /pmrun 0 def /ypara 0 def /linestring linestring2 def % needed to run interference 3 1 roll translate dup scale mark figproc cvx exec cleartomark stdsnap restore justx 4 jsave put } def /grayshade 0.92 def % %%%ZZZZ%%%%%%%%%%%%%% URL PATCHES %%%%%%%%%%%%%%%%%%%%%%%%%%%% % patch definitions... % dictionary method << /barro (http://www.tinaja.com/barro.jpg) /barrox (http://www.tinaja.com/barrox.jpg) /napali (http://www.topozone.com/map.asp?z=4&n=2455469&e=436636&s=25&size=1) /eac (http://www.eac.cc.az.us) /paia (http://www.paia.com) /signetics (http://www.signetics.com) /kartchner (http://www.pr.state.az.us/parkhtml/kartchner.html) /nss (http://www.caves.org) /pulaski (http://www.wildfire-equipment.com/WildfireMain.html) /nahs (http://www.nallegheny.k12.pa.us) /asu (http://www.asu.edu) /stats (http://www.tinaja.com/users/month.htm) /ti (http://www.ti.com) /lehigh (http://www.lehigh.edu) /allen (http://www.allenorgan.com) /lafayette (http://www.lafayette.edu) /bostcomp (http://www.tcm.org) /dvorak (http://www.dvorak.org) /buhl (http://www.planetarium.cc) /whole (http://www.wholeearthmag.com) /active(http://www.amazon.com/exec/obidos/ISBN=075062986X/donlancastersgurA) /enhance1(http://www.amazon.com/exec/obidos/ISBN=0672218224/donlancastersgurA) /cheap1(http://www.amazon.com/exec/obidos/ISBN=0672215241/donlancastersgurA) /cheap(http://www.amazon.com/exec/obidos/ISBN=0672215241/donlancastersgurA) /soncheap(http://www.amazon.com/exec/obidos/ISBN=0672217236/donlancastersgurA) /tvt(http://www.amazon.com/exec/obidos/ISBN=0672213133/donlancastersgurA) /micro1(http://www.amazon.com/exec/obidos/ISBN=0672218283/donlancastersgurA) /applewriter(http://www.amazon.com/exec/obidos/ISBN=0672224607/donlancastersgurA) /assy(http://www.amazon.com/exec/obidos/ISBN=0672223317/donlancastersgurA) /enhance1(http://www.amazon.com/exec/obidos/ISBN=0672218224/donlancastersgurA) /ttl(http://www.amazon.com/exec/obidos/ISBN=0672210355/donlancastersgurA) /cmos(http://www.amazon.com/exec/obidos/ISBN=0750699434/donlancastersgurA) /active(http://www.amazon.com/exec/obidos/ISBN=075062986X/donlancastersgurA) /rtl(http://www.amazon.com/exec/obidos/ISBN=067220715X/donlancastersgurA) /ismm(http://www.amazon.com/exec/obidos/ISBN=1882193652/donlancastersgurA) /smallbeaut(http://www.amazon.com/exec/obidos/ISBN=0881791695/donlancastersgurA) /fuller(http://www.amazon.com/exec/obidos/ISBN=0020653204/donlancastersgurA) /wqed (http://www.wqed.org) /pannier (http://www.pannier.com) /carnegie (http://www.cmu.edu) /ccell (http://www.circuitcellar.com/guru) /ebay (http://cgi6.ebay.com/aw-cgi/eBayISAPI.dll?ViewListedItems&userid=abeja&include=0&since=-1&sort=2) /stats (http://www.tinaja.com/users/month.htm) /drhtml (http://www2.imagiware.com/RxHTML) /ourfav (http://www.tinaja.com/favicon.ico) /favicon (http://www.favicon.com) /mostpop (http://www.tinaja.com/#sampler) /banndata (http://www.tinaja.com/banners/banndatax.txt) /deja (http://groups.google.com) /colors (http://www.htmlhelp.com/icon/hexchart.gif) /w3org (http://www.w3.org/Graphics/SVG/Overview.htm8) /iisplugin (http://www.adobe.com/support/downloads/8122.htm) /ngjava (news://comp.lang.javascript) /iis (news://microsoft.public.inet.server.iis) /auctbut (http://cgi6.ebay.com/aw-cgi/ebayISAPI.dll?ViewListedItemsLinkBUttons&userid=abeja) /drmobut (http://www.drms.dla.mil/newsales/html/drms_property.html#placeabid) /adobe (http://www.adobe.com) /arcatapet (http://www.arcatapet.com) /auctionadvmag (http://www.auctionadvisory.com) /ebay (http://www.ebay.com) /ebaymag (http://www.krause.com) /ipswitch (http://www.ipswitch.com) /levylat (http://www.levylatham.com) /tec (http://www.4testequipment.com) /webtrends (http://www.webtrends.com) /imag1 (http://www.tinaja.com/images/bargs/lumin1.jpg) /imag2 (http://www.tinaja.com/images/bargs/thermoc1.jpg) /imag3 (http://www.tinaja.com/images/bargs/noisegn1.jpg) /imag4 (http://www.tinaja.com/images/bargs/casio1.jpg) /imag5 (http://www.tinaja.com/images/bargs/punchdn1.jpg) /deja (http;//2www.dejanews.com/home_ps.shtnl) /whois (http://2www.dejanews.com/home_ps.shtnl) /whowhere (http://www.whowhere.com) /bigfoot (http://www.bigfoot.com) /infospace (http://www.infospace.com) /mapquest (http://www.mapquest.com) /mapsonus (http://www.MapsOnUs.com) /aerial (http://terraserver.microsoft.com) /postvect (http://www.tinaja.com/psutils/postvect) /levyl (http://www.levylatham.com) /auct (http://www.auctionadvisory.com) /ebay (http://www.ebay.com) /teconn (http://www.4testequipment.com) /keely (http://www.keelynet.com) /oxbridge (http://www.mediafinder.com) /arrl (http://www.arrl.com/field/hamfests) /vartel(http://www.vartel.com/hamfest.htm) /sww (http://www.auctionsww.com/results/surplus.htm) /onsale(http://www.onsale.com) /ng1 (news:///sci.electronics.equipment) /ng2 (news:///sci.electronics.repair) /drms1 (http://www.drms.com/catalog/Catsite.html) /drms2 (http://www.drms.dla.mil/national/abstracts/indexabt.html) /drms3 (http://www.drms.dla.mil/newsales/html/bid_results.html) /drms4 (http://www.drms.dla.mil/htbin/drmsrch?Z11=0) /drms5 (http://www.drms.dla.mil/) /uwb (http://www.uwb.org) /ulab (http://commsci.usc.edu/ulab/links.html) /timed (http://www.time-domain.com) /boston (http://cuprum.chem.umn.edu/boston98.html) /eecs (http://www-eecs.mit.edu/AY96-97/events/19.html) /questlink(http://www.questlink.com) /nts (http://www.nts.mh.se/~johma/psd) /whidbey (http://ww2.whidbey.net/optoinfo/LED_FAQ.html) /spie (http://www.spie.org) /bap (http://positron.aps.org/BAPSMAR98/abs/S1690007.html) /aachen (http://www.rwth-aachen.de/isea/Ww/texte/abstract/ka_vrla.html) /tefbbs (http://www.tefbbs.com/spacetime/index.htm) /dnai (http://www.dnai.com/~jfox) /forum (http://www.dejanews.com/group/dejanews.members.tech.tinaja.gurus-lair) /xx1 (http://www.tinaja.com/glib/bannyear.pdf) /xx2 (http://www.tinaja.com/glib/bwhistle.pdf) /xx3 (http://www.tinaja.com/psutils/graburls.ps) /xx4 (http://www.tinaja.com/text/reflog1.html) /xx5 (http://www.tinaja.com/text/refsum1.html) /xx6 (http://www.tinaja.com/glib/muse116.pdf) /xx7 (http://www.tinaja.com/glib/muse124.pdf) /xx8 (http://www.tinaja.com/glib/pdflink.pdf) /xx9 (http://www.tinaja.com/glib/weaveweb.pdf) /xx10 (http://www.tinaja.com/psutils/weberru2.ps) /xx11 (http://www.tinaja.com/psutils/weblogu2.ps) /xx12 (http://www.tinaja.com/psutils/websitan.ps) >> {mark exch/eurl cvx ] cvx def} forall /specialpj {(http://www.tinaja.com/glib/picojust.pdf) eurl} def % picojust not allowed as gonzo variagle /maildon {(mailto:don@tinaja.com) eurl } def /tinaja {(http://www.tinaja.com) eurl } def /consult {(http://www.tinaja.com/consul01.html) eurl} def /netscape {(http://www.netscape.com) eurl } def /adobe {(http://www.adobe.com) eurl } def /parallax {(http://www.parallaxinc.com) eurl } def /coriolis {(http://www.coriolis.com) eurl } def /hottalk {(mailto:hottalk@printer-net) eurl } def /adobe1 {(http://www.adobe.com/supportservices/devrelations/technotes.html) eurl} def /tn5150 {( http://www.adobe.com/suportservice/devrelations/PDFS/TN5150.PDFMARK.PDF) eurl} def /gonzo {(http://www.tinaja.com/psutils/gonzo.ps) eurl} def /muse {(http://www.tinaja.com/muse01.html) eurl} def /m135p {(http://www.tinaja.com/glib/muse135.psl) eurl} def /graburls {(http://www.tinaja.com/psutils/graburls.ps) eurl} def /linkpdf {(http://www.tinaja.com/linkpdf1.html) eurl} def /rxhtml {(http://www2.imagiware.com/RxHTML) eurl} def /n1 {(news://sci.electronics.design) eurl} def /n2 {(news://sci.electronics.misc) eurl} def /hotbot {(http://www.hotbot.com) eurl} def /alta {(http://www.digital.altavista.com) eurl} def /xp {(www.dejanews.com/rg_mkgrp.xp) eurl} def /ifilter {(http://www.adobe.com/prodindex/acrobat/ifilter.html)eurl} def /srchpdf {(http://www.tinaja.com/text/srchpdf.html) eurl} def /redirect {(http://www.tinaja.com/text/redirect.html) eurl} def /hack73 {(http://www.tinaja.com/glib/hack73.pdf) eurl} def /hacklib {(http://www.tinaja.com/hack01.html) eurl} def /magic {(http://www.tinaja.com/magsin01.html) eurl} def /fourier {(http://www.tinaja.com/psutils/fourier.ps) eurl} def /zeroharm {(http://www.tinaja.com/psutils/zeroharm.ps) eurl} def /sincat210 {(http://www.tinaja.com/sn210cat.ps) eurl} def % power method... /setglib {mark (http://www.tinaja.com/glib/) 2 index 20 string cvs mergestr (.pdf) mergestr /eurl cvx ] cvx def} def /setpost {mark (http://www.tinaja.com/psutils/) 2 index 20 string cvs mergestr (.ps) mergestr /eurl cvx ] cvx def} def /sethtml {mark (http://www.tinaja.com/) 2 index 20 string cvs mergestr (.asp) mergestr /eurl cvx ] cvx def} def /setweb {mark (http://www.) 2 index 20 string cvs mergestr (.com) mergestr /eurl cvx ] cvx def} def /magicsin {/msinprop} def /parallax {/parallaxinc} def [ /when2pat /patnthor /msinprop /magicsin /nuts08 /hack35 /gramtram /muse116 /hack84 /muse112 /muse113 /colorizd2 /spotcolr /urlindoc /emergop1 /emergop5 /resbn63 /muse135 /muse120 /muse131 /resbn88 /contests /muse115 /muse137 /infopack /hack64 /hack68 /resbn37 /resbn18 /stezine /resbn26 /hack47 /hack68 /hack60 /hack69 /newsgrp /bwhistle /elesimp /resbn80 /resbn91 /resbn82 /resbn73 /resbn87 /imagimag /muse90 /muse151 /hack71 /hack73 /hack76 /resbn19 /acrocat /twenty47 /muse139 /muse115 /muse116 /bannyear /advetorl /resbn81 /infopack /postjust ] {setglib} forall [ /magsn01 /patnt01 /blat01 /h2gas01 /capvid01 /whtnu01 /ismm01 /bod01 /synlib01 /muse01 /pseudo01 /post01 /libry01 /consul01 /weblib01 /patnt01 /post01 /info01 /acrob01 /b /advt01 /info01 /dntkwb01 /beewb01 /hack01 /flut01 /webwb01 /tinaja /barg01 /blat01 /barg01 /linkpdf1 /psweb01 /amlink01 /resbn01 /blat01 /webwb01 /amlink01 /map01 /guru01 /tinaja01 ] {sethtml} forall % now asp [/colorizd2 /websitan /acatdata /catwords /coloriz2 /catools1] {setpost} forall [ /parallaxinc /mediafinder /hotbot /patent.womplex.ibm /amazon /digital.altavista ] {setweb} forall /lindsay {(http://www.keynet.net/~lindsay) eurl} def /resch {(http://www.wp.com/resch/search.html) eurl} def /redirect {(http://www.tinaja.com/text/redirect.html) eurl} def /websitan {(http://www.tinaja.com/psutils/websitan.ps) eurl} def /bannlast {(http://www.tinaja.com/text/bannlast.html) eurl} def /byternge {(http://www.tinaja.com/text/byternge.html) eurl} def %%%%%% << /billb (http://www.eskimo.com~billb) /billbfe (http://www.eskimo.com/~bilb/freenrgl/fnrg) /randi (http://www.randi.org/jr/pigasus.html) /skeptic (http://www.csicop.org) >> {mark exch /eurl cvx ] cvx def} forall /bigfoot {(http://www.bigfoot.com) eurl} def /drebes {(http://www.drebes.com) eurl} def /infospace {(http://www.infospace.com) eurl} def /factsheet5 {(http://www.factsheet5.com) eurl} def /watch {(http://www.searchenginewatch.com) eurl} def /scieldes {(news:sci.electronics.design) eurl} def /quest {(http://www.questlink.com) eurl} def /acronews {(news:comp.text.pdf) eurl} def /acroread {(http://www.adobe.com/prodindex/acrobat/readstep.html) eurl} def /alta {(http://www.altavista.digital.com) eurl} def /dominis {(http://www.dominis.com/Zines) eurl} def /ejournal {(http://www.edoc.com/ejournal) eurl} def /parallax {(http://www.parallaxinc.com) eurl} def /homeart {(http://www.homearts.com/affil/ahi/main/ahihome.htm) eurl} def /amazon {(http://www.amazon.com) eurl} def /meer {(http://www.meer.net/~johnl/e-zine-list) eurl} def /scweb01 {(http://www.tinaja.com/scweb01.html) eurl} def /blackrange {(http://www.zianet.com/blackrange/lodge.html) eurl} def /blond {(http://www.winn.com/pwinn/humor/index/html) eurl} def /trader {(http://www.traderonline.com) eurl} def /cowmoo {(http://www.qtm.net/~geibdan/framest.html) eurl} def /subgen {(http://sunsite/unc.edu/subegnius) eurl} def /c2000 {(http://www.classifieds2000.com) eurl} def /dilbert {(http://www.unitedmedia.com/comics/dilbert) eurl} def /tinaja {(http://www.tinaja.com) eurl} def /medweb {(http://www.gen.emory.edu/medweb) eurl} def /factsheet {(http://www.well.com/conf/f5/f5index2.html) eurl} def /fmfind {(http://wmbr.mit.edu/stations/locate.html) eurl} def /four11 {(http://www.Four11.com) eurl} def /freecat {(http://catalog.savvy.com) eurl} def /freenrg {(http://www.eskimo.com/~bilb/freenrg/frng) eurl} def /healthy {(http://www.healthy.net) eurl} def /bentley {(http://www.bentleysauction.com) eurl} def /eeweb01 {(http://www.tinaja.com/eeweb01.html) eurl} def /hotbot {(http://www.hotbot.com) eurl} def /infer {(http://www.inference.com/infind) eurl} def /info01 {(http://www.tinaja.com/info01.asp) eurl} def /persian {(http://www.persiankitty.com) eurl} def /ccodes {(http://www.Four11.com/cgi-bin/Four11Main?Country) eurl} def /thelist {(http://thelist.iworld.com) eurl} def /keelynet {(http://www.keelynet.com) eurl} def /jobs {(http://www.datamation.com/PlugIn/jobs/jobs.html) eurl} def /kelly {(http://www.kbb.com) eurl} def /lindsay {(http://www.keynet.net/~lindsay) eurl} def /lookup {(http://www.lookupusa.com) eurl} def /bell800 {(http://att.net/dir800) eurl} def /mapquest {(http://www.mapquest.com) eurl} def /faq {(http://www.faqlib.com) eurl} def /pic500 {(http://www.tinaja.com/pic500) eurl} def /wpsearch {(http://www.wp.com/resch/search.htm) eurl} def /microchip {(http://www.microchip.com) eurl} def /mohotta {(http://www.mohotta.com) eurl} def /acrob01 {(http://www.tinaja.com/acrob01.asp) eurl} def /movie {(http://us.imdb.com) eurl} def /booksol {(http://www.cs.cmu.edu/books.html) eurl} def /oxbridge {(http://www.mediafinder.com) eurl} def /paml {(http://www.NeoSoft.com/internet/paml/byname.html) eurl} def /patent {(http://patent.womplex.ibm.com) eurl} def /elements {(http://www2.shef.ac.uk/~chem?web-elements) eurl} def /picup01 {(http://www.tinaja.com/picup01.html) eurl} def /yahoo {(http://www.yahoo.com/bin/top2?122.25) eurl} def /azstream {(http://wwwdaztcn.wr.usgs.gov/rt-cgi/gen_tbl_pg) eurl} def /saucer {(http://www.mcs.com/~kvg/smear.htm) eurl} def /scott {(http://www.seetron.com) eurl} def /billb {(http://www.eskimo.com/~billb) eurl} def /shepard {(http://home.att.net/~dennis.shepard) eurl} def /switchboard{(http://www.switchboard.com/) eurl} def /techweb {(http://techweb.cmp.com/eet/docs) eurl} def /govsurp {(http://131.87.1.51) eurl} def /zipcode {(http://www.usps.gov/ncsc) eurl} def /vanagon {(mailto:Vanagon@gerry.sdsc.edu) eurl} def /wsrn {(http://wsrn.com) eurl} def /launch {(http://www2com.com/~upfront/launch) eurl} def /webann {(http://www.ep.com/faq/webannounce.html) eurl} def /whois {(http://www.internic.net/cgi-bin/whois) eurl} def /internic {(http://www.internic.net) eurl} def /weblib01 {(http://www.tinaja.com/weblib01.html) eurl} def /whowhere {(http://www.whowhere.com) eurl} def /deja {(http://www.dejanews.com/home_ps.shtml) eurl} def /newslist {(http://www.tinaja.com/text/newslist.html) eurl} def /thomas {(http://www.thomasregister.com/index.html) eurl} def /selfref {(http://www.tinaja.com/glib/resbn71.pdf) eurl} def % This code locks pdfmark commands out of a PostScript printer. /pdfmark where {pop}{userdict /pdfmark /cleartomark load put} ifelse % /surl "start url" marks the beginning of a text sequence to be urled. % It also paints the text blue... /surl {mark /blue cvx 0.33 /setgray cvx % change text to blue /currentpoint cvx % remember box start /urly /exch cvx /store cvx /urlx /exch cvx /store cvx ] cvx % complete deferred command printlist exch 3 index exch put % stuff into gonzo printlist exch 1 add exch % increment gonzo list count } def % /eurl "end url" unmarks the end of a text sequence and sets up % the pdfmark needed to define the Acrobat web link. /eurl {mark % start deferred proc exch % position url string /aqua cvx 0 /setgray cvx % turn blue marker off /makeurl cvx % defer call of url builder ] cvx % complete deferred proc printlist exch 3 index exch % stuff into gonzo printlist put exch 1 add exch % increment gonzo list count } def % /makeurl generates the pdfmark, receiving a {(urlstring) makeurl}. % Note that it is not called until formatted printlist time... /urlover 0.2 def % fraction of hot area over bounds /makeurl { /cururlname exch store % save the url string mark % start pdfmark currentfont /ScaleMatrix get 3 get /fsize exch store % guess height /Rect [ urlx fsize urlover mul sub % set box left x urly fsize urlover mul sub % set box left y currentpoint exch fsize urlover mul add exch fsize add ] /Border [ 0 0 0] % [0 0 0 ] = none; [0 0 2] = debug /Color [ .7 0 0 ] /Action <> /Subtype /Link /ANN % annotation type pdfmark % call pdf operators } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /wanttousepicojustify true def % this globally turns picojust on or off %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% wanttousepicojustify false 40 array dictstack {/^picoset known or} forall not and { % FILL JUSTIFICATION IMPROVER version 3.0, November 3, 1994. c 1994 by % Don Lancaster & Synergetics (602) 428-4073. [support on GEnie PSRT] % Personal use premitted; All commercial & media rights fully reserved. % Install this where it will redefine all print time uses of % the -awidthshow- operator. Use picojust true or false to control. /picoflag true def % selective availability switch /picofract 0.5 def % percentage of excess space to be internalized /picothresh 0.03 def % percentage/100 increment per font change /picomax 0.15 def % percentage/100 max stretch (limits fat chars) /^picoset true def % job multiple def lockout /picojust {/picoflag exch store} def % use for local turn on or off /awidthshow {1 index 4 index 6 index add add 32 eq not picoflag not or {//awidthshow}{/^msg exch store pop /^cst exch store pop pop /^sst exch store /^cct ^msg length store /^rwd ^msg stringwidth pop store /^sct 0 ^msg {( ) search {pop pop exch 1 add exch}{pop exit} ifelse} loop store /^jwd ^cct ^cst mul ^sct ^sst mul add store /^saj ^jwd dup ^rwd add dup 0 eq {pop 0.0001} if div picothresh div floor picothresh mul picofract 1.33 mul mul dup picomax ge {pop picomax} if 1 add store gsave ^saj 1 scale /^rft 1 ^saj 1 sub ^rwd mul ^jwd dup 0 eq {pop 0.0001} if div sub ^saj div store ^sst ^rft mul 0 32 ^cst ^rft mul 0 ^msg //awidthshow grestore ^jwd ^rwd add 0 rmoveto} ifelse} bind def} if %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % /.ep0 {} def /.ep1 {} def % blat45 $650 patent %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /wanttousepicojustify false def % this globally turns picojust on or off %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% wanttousepicojustify false 40 array dictstack {/^picoset known or} forall not and { % FILL JUSTIFICATION IMPROVER version 3.0, November 3, 1994. c 1994 by % Don Lancaster & Synergetics (602) 428-4073. [support on GEnie PSRT] % Personal use premitted; All commercial & media rights fully reserved. % Install this where it will redefine all print time uses of % the -awidthshow- operator. Use picojust true or false to control. /picoflag true def % selective availability switch /picofract 0.5 def % percentage of excess space to be internalized /picothresh 0.03 def % percentage/100 increment per font change /picomax 0.15 def % percentage/100 max stretch (limits fat chars) /^picoset true def % job multiple def lockout /picojust {/picoflag exch store} def % use for local turn on or off /awidthshow {1 index 4 index 6 index add add 32 eq not picoflag not or {//awidthshow}{/^msg exch store pop /^cst exch store pop pop /^sst exch store /^cct ^msg length store /^rwd ^msg stringwidth pop store /^sct 0 ^msg {( ) search {pop pop exch 1 add exch}{pop exit} ifelse} loop store /^jwd ^cct ^cst mul ^sct ^sst mul add store /^saj ^jwd dup ^rwd add dup 0 eq {pop 0.0001} if div picothresh div floor picothresh mul picofract 1.33 mul mul dup picomax ge {pop picomax} if 1 add store gsave ^saj 1 scale /^rft 1 ^saj 1 sub ^rwd mul ^jwd dup 0 eq {pop 0.0001} if div sub ^saj div store ^sst ^rft mul 0 32 ^cst ^rft mul 0 ^msg //awidthshow grestore ^jwd ^rwd add 0 rmoveto} ifelse} bind def} if %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /activatemenu { %%%% ONLINE LINKER %%%%% %%%%% Module to insert eight pdf menu options .... % Place after |x but before last showpage % work out an HTML like PDF response /button { makeurlx % make box shaped url gsave beige % settint % 0.13 settint % try slight shift xpos ypos 0.9 sub translate 0.1 dup scale 0 0 mt 28 pu 28 pr 28 pd closepath 0.85 setgray fill 0 0 mt 0 28 pu 4 -4 rlineto 20 pd 20 pr 4 -4 rlineto closepath 0.5 setgray fill 0 28 mt 28 pr 28 pd -4 4 rlineto 20 pu 20 pl closepath 0.65 setgray fill 8 8 mt 12 pu 13 -6 rlineto closepath 0.33 setgray fill grestore xpos ypos mt } def % This code locks pdfmark commands out of a PostScript printer. /pdfmark where {pop}{userdict /pdfmark /cleartomark load put} ifelse % /surl "start url" marks the beginning of a text sequence to be urled. % It also paints the text blue... /surl {mark /blue cvx 0.33 /setgray cvx % change text to blue /currentpoint cvx % remember box start /urly /exch cvx /store cvx /urlx /exch cvx /store cvx ] cvx % complete deferred command printlist exch 3 index exch put % stuff into gonzo printlist exch 1 add exch % increment gonzo list count } def % /eurl "end url" unmarks the end of a text sequence and sets up % the pdfmark needed to define the Acrobat web link. /eurl {mark % start deferred proc exch % position url string /black cvx 0 /setgray cvx % turn blue marker off /makeurl cvx % defer call of url builder ] cvx % complete deferred proc printlist exch 3 index exch % stuff into gonzo printlist put exch 1 add exch % increment gonzo list count } def % /makeurl generates the pdfmark, receiving a {(urlstring) makeurl}. % Note that it is not called until formatted printlist time... /urlover 0.2 def % fraction of hot area over bounds /makeurl { /cururlname exch store % save the url string mark % start pdfmark currentfont /ScaleMatrix get 3 get /fsize exch store % guess height /Rect [ urlx fsize urlover mul sub % set box left x urly fsize urlover mul sub % set box left y currentpoint exch fsize urlover mul add exch fsize add ] /Border [ 0 0 0] % [0 0 0 ] = none; [0 0 2] = debug /Color [ .7 0 0 ] /Action <> /Subtype /Link /ANN % annotation type pdfmark % call pdf operators } def % /makeurlx generates the box specific pdfmark, receiving % a {(urlstring) makeurl}. % Note that it is not called until formatted printlist time... /makeurlx { /cururlnamex exch store % save the url string mark % start pdfmark /Rect [ xpos % set box left x ypos 0.9 sub % set box left y xpos 2.8 add % box right x ypos 0.9 sub 2.8 add % box right y ] /Border [ 0 0 0] % [0 0 0 ] = none; [0 0 2] = debug /Color [ .7 0 0 ] /Action <> /Subtype /Link /ANN % annotation type pdfmark % call pdf operators } def % text link specific data /syncat01 {(http://www.tinaja.com/glib/syncat01.pdf) eurl} def /ismm01 {(http://www.tinaja.com/ismm01.asp) eurl} def /amlink01 {(http://www.tinaja.com/amlink01.asp) eurl} def /tinaja01 {(http://www.tinaja.com/tinaja01.asp) eurl} def /info01 {(http://www.tinaja.com/info01.asp) eurl} def /barg01 {(http://www.tinaja.com/barg01.asp) eurl} def /advt01 {(http://www.tinaja.com/advt01.asp) eurl} def /maildon {(mailto:don@.tinaja.com) eurl} def % button link specific data /syncat01x {(http://www.tinaja.com/glib/syncat01.pdf) button} def /ismm01x {(http://www.tinaja.com/ismm01.asp) button} def /libry01x {(http://www.tinaja.com/libry01.asp) button} def /amlink01x {(http://www.tinaja.com/amlink01.asp) button} def /tinaja01x {(http://www.tinaja.com/tinaja01.asp) button} def /info01x {(http://www.tinaja.com/info01.asp) button} def /barg01x {(http://www.tinaja.com/barg01.asp) button} def /advt01x {(http://www.tinaja.com/advt01.asp) button} def /maildonx {(mailto:don@.tinaja.com) button} def /menu8v {gsave translate save /dosnap exch def /beige {0.10 settint} def 0.12 settint % force beige 0.5 setgray black /ybot -9999 def /ylimit -9999 def font3 font0 0 0 10 setgrid % 50 50 showgrid /cstretch 0.015 def /sstretch 0.015 def /font0 /Revue 1.2 gonzofont /font0 /StoneSans-Bold 1 gonzofont /font1 /StoneSans-Bold 1 gonzofont /font3 /Helvetica-Bold 3 gonzofont /kern 0.1 def 0 0 23 1 add 30 3.2 add 1 roundbox % clip gsave beige 0.33 setgray fill % gsave % 0 27 mt 3 pu 50 pr 3 pd closepath 0.33 setgray fill % grestore % 0.33 setgray stroke white font3 /cstretch 0.1 def 12.5 31.8 (|0PLEASE |j|jCLICK |j|jHERE |j|jTO\274 ) cc /cstretch 0.015 def 0.5 1.2 23 30 0.8 roundbox 0.75 setgray fill % /yinc 3.5 def black font1 3.2 12.1 14.8 add (|/libry01x |1 Go to the |/surl main library |/libry01 ) cl 3.2 8.7 14.8 add (|/ismm01x |1 Start your |/surl tech venture|/ismm01 ) cl 3.2 5.3 14.8 add (|/advt01x |1 Sponsor a display |/surl banner|/advt01 ) cl 3.2 1.9 14.8 add (|/info01x |1 Find |/surl research|/info01 solutions) cl 3.2 12.1 (|/maildonx |1 Send Don Lancaster |/surl email|/maildon ) cl 3.2 8.7 (|/barg01x |1 Pick up surplus |/surl bargains|/barg01 ) cl 3.2 5.3 (|/tinaja01x |1 Find out what a |/surl tinaja|/tinaja01 is) cl 3.2 1.9 (|/amlink01x |1 View recommended |/surl books|/amlink01 ) cl grestore dosnap restore} def } def % as in activate menu %%%% END LNKER %%%%%%%%%%%%%%%%%%%%%%%%%% midnightdoc starttemplate /dropindent 18 def /tabs [20] def /font0 /StoneSans-Bold [40 0 0 40.1 0 -23] gonzofont % temp fat s /font6 /Times-BoldItalic 9.75 gonzofont /font7 /Times-BoldItalic 9.25 gonzofont /font8 /Times-BoldItalic 9.75 gonzofont /font: /Times-Roman 7 gonzofont /font= /Helvetica-Bold 8 gonzofont /font; /Symbol 9.5 gonzofont /nicebar {gsave bestgray 1 setlinecap xpos ypos 5.9 add moveto txtwide 5 sub 0 rlineto [4 0 2.5 .95] superstroke /ypos ypos yinc 2 div sub def grestore} def /emacro {ypos 190 lt {/ypos ypos 200 sub def}if } def /fmacro {/sstretch 0 def} def /Wmacro {/ttheight 12 yinc mul def} def /Xmacro {/ttheight 10 yinc mul def} def /Ymacro {/ttheight 10 yinc mul def} def /tabs [54] def /specialbox {gsave xpos 46 add ypos 3 add 135 0 18 yinc mul add neg stdfigrad roundbox gsave 0.94 setgray fill grestore [2 0 1 1] superstroke grestore grestore} def % /boxit illustrates marked Acrobat button % gonzo box autoposition linker /topstrlist {mark 3 1 roll {/roomleft exch roomleft exch sub def printlist exch 3 index exch put exch 1 add exch} /exec cvx ] cvx def} def /boxit{ gsave line1 currentpoint translate -1 -3 mt 10.5 pu 50.5 pr 10.5 pd closepath line1 stroke grestore} 0 topstrlist /fancybox {gsave currentpoint translate -7 -5 205 16 2 roundbox gsave showboxgrays {0.94}{1} ifelse setgray fill grestore [2 0 1 1] superstroke grestore} 0 topstrlist /orangeon {mark 0.04 /settint cvx 0.45 setgray cvx ] cvx % temp printlist exch 3 index exch put exch 1 add exch} def /aquaon {mark 0.52 /settint cvx 0 /setgray cvx ] cvx printlist exch 3 index exch put exch 1 add exch} def /tabs [26] def /shiftin {/xpos xpos 16 add store /txtwide txtwide 32 sub store}def /shiftout {/xpos xpos 16 sub store /txtwide txtwide 32 add store}def /font9 /Times-Roman [9.75 0 0 -9.77 0 4.5] gonzofont % special effect %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % tracking inset for the isopod energy reporter cut /isopodcut {save /cutsnap exch def /ttheight 13 yinc mul def /ttwidth 160 def /ttrad 3 def aqua (ISOPOD ENERGY REPORTER) ttbox beige %% 1.3 0.4 translate 0.1 dup scale % isopod 100 dict /Prolog exch def Prolog begin -150 -180 translate 0.6 dup scale /bd {bind def} bind def /c {curveto} bd /f {fill} bd /g {setgray} bd /gs {gsave} bd /gr {grestore} bd /l {moveto lineto stroke } bd /m {moveto} bd /r {rlineto} bd /s {stroke} bd /w {setlinewidth} bd /y {0 exch rlineto} bd 1 setlinecap 0.33 g % near strands 1.32 w 256.9 314.5 278.1 320.2 l 256.4 316.4 277.6 322.1 l 255.8 318.3 277.1 324 l 255.3 320.3 276.6 326 l 254.8 322.2 276.1 327.9 l 254.3 324.1 275.5 329.8 l 1.32 w 468.4 467.4 446.5 465.1 l % far strands 468.6 465.4 446.7 463.1 l 468.8 463.4 446.9 461.1 l 469 461.4 447.1 459.1 l 469.2 459.5 447.3 457.2 l 469.4 457.5 447.5 455.2 l 0 setlinecap % far wire 1 g 18 w 387 425 m 405.8 440.7 422.8 455.7 447 460 c % gs s gr % white break gs 0.33 g 16 w s gr % brown edge 0.8 g 13 w s % orange inside 1 setlinecap lime 0.92 g % ball 10 w 406.9 410 m 406.9 432.1 389 450 366.9 450 c 344.8 450 326.9 432.1 326.9 410 c 326.9 387.9 344.8 370 366.9 370 c 389 370 406.9 387.9 406.9 410 c gs f gr % gs 4 w s gr % outline omitted 0.33 g 1.8 w s 0.6 w 327 410 m 330.4 400.6 338.3 394.9 347 390 c 365.1 379.5 392 383.9 405.5 400 c s beige 1 g 18 w 1 setlinecap 347 390 m 326.8 373.1 319.7 348.1 297 335 c % gs s gr % white outline omitted gs 0.33 g 16 w s gr 0.8 g 13 w s 0 setlinecap % rest of front wire 1 g 18 w 297 335 m 290.1 331 284.6 327 277 325 c % gs s gr gs 0.33 g 16 w s gr 0.8 g 13 w s 1 setlinecap lime 0.92 g % notch 1.6 w 394.6 391 387.5 388 l 0.33 g 0.6 w 387 387.5 m 4 y 8 3.9 r -3.97 y s end grestore cutsnap restore /tthh ttheight def /ttheight 13 yinc mul def % temp workaround makeroom /ttheight tthh def } def %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% /shiftin {20 0 translate /txtwide txtwide 40 sub store} def /shiftout {-20 0 translate /txtwide txtwide 40 add store} def black /font6 /StoneSerif-Bold [8 0 1.8 8 0 0] gonzofont /font8 /StoneSans-Bold [7.5 0 0 7.5 0 0] gonzofont /beige {0.82 settint} def /reallybeige {0.12 settint} def startgonzo |a I |b have recently been doing some interviews on personal computer \ history, so I thought it might be a good idea to work up some sort of a personal backgrounder. For the record. \ Perhaps reviewing just who I am and where I came from. Sort of an unauthorized autobiography.|p My general goals \ consistently have been to take some emerging tech development and either show others how it \ works or make it do something useful in the way \ of a fresh product or new opportunity. Hopefully a lot cheaper and simpler than \ before. And, \ wherever possible, leading with a high personal valued added. All the while favoring \ Fuller's |/surl |6Synergetics|1|/fuller , Schumacher's |/surl |6Small is Beautiful|1|/smallbeaut , and of course, always seeking out |/surl |6Elegant Simplicity|1|/elesimp . Somewhere along the way, I've been called one the of the fathers of the \ personal computer and the patron saint of the Walter Mitties of the world. By \ |/surl |6John Dvorak|1|/dvorak , the |/surl |6Boston Computer Museum|1|/bostcomp , and others. Life sorta started out as\274 |c An Amplifier With Nothing to Amplify |d|z Because of an exceptionally supportive grandfather, I did fast become \ a grade school science junky of Pittsburgh's wonderful |/surl |6Buhl Planetarium.|1|/buhl Even getting to be \ a radio "school science expert" who didn't make the finals because I never heard of "anatomy".|p I skipped over the fifth grade, which quickly became way more \ of a curse than a blessing. Since I always seemed to have my own agenda, I was more a high B student. Always somewhat shy of head of class. Years of forced piano and violin lessons \ (I suffered the unspeakably horrible disability of having a convent in my back yard) were wasted on me as I remain utterly unmusical to this day. But knowing where the notes were supposed to be and the underlying theory did end up helping bunches later on \ with some of my electronic music projects.|p Later on, we moved a few miles north into the Wexford and Ingomar area. Somewhere around seventh grade, I had discovered some long ignored and unused \ |2National Schools|1 |4WWII|1 electronics veteran scam kits scunging away in the attic. In one of these was a |435Z5|1 vacuum tube which I used to miraculously fix our ailing radio.|p Naturally, in the process, I \ trashed the adjacent |450L6|1. Which seemed to lead to a lifetime recurring theme of my snatching defeat from the jaws of victory. And of leading the way but missing out on the longer term rewards. These days, \ it is called "you can spot the pioneers by all the arrows in their back" syndrome. I started buying |/tinton1 |6Radio & Television News|1|/tintoff for a quarter at the newsstand and read just about anything I could find on electronics in the school libraries. About that time, the absolutely incredible new |/tinton1 |6Popular Electronics|1|/tintoff magazine appeared. Which had outstanding construction projects that many school students could easily handle. There were two fictional characters named Carl and Jerry in \ each issue. Written by a paraplegic, which is a story unto itself. In many ways, I |/tinton1 |6was|1|/tintoff Carl, albeit a far shorter and more wiseassed clone. I quickly built up a primitive electronics lab, \ frequenting the counter of long gone |/tinton1 |6Cameradio|1|/tintoff , the superb |2Burstein Applebee|1 bargain catalog, and the |2Newark|1 and |2Allied Radio|1 suppliers. Being an underage and undersized me-first loudmouth, ninth grade was a total horror for me. I seemed to spend most of my time getting thrown into trash bins or belittled by gym teachers. But I did manage to enter a proximity relay and touch switch into the Pittsburgh Science fair. It worked, sort of, but was not a winner. I never did really figure out what girls were all about. (please email any hints to |/surl |6don@tinaja.com|1|/maildon ) And I guess I still have shyness problems to this day. Which sort of made me into the prototype archetypical computer nerd. I actually formed a virtual company I called |/tinton1 |6West Penn |/tinton1 Sound|1|/tintoff . By sending |4RCA $2.50|1 for a ream box of tv service letterheads. I did manage to revive and occasionally rent several PA systems and later turned into the world's most clueless school disk jockey. Paying far too much attention to gear and way too little to entertaining the people, to playing what they want, or to the event itself. I was in the first graduating class of |/surl |6North Allegheny|1|/nahs High School. \ Which was into a lily white fifties suburbia head trip. We did have an \ exceptional science program. Some of the astonishing student projects \ included then new gas chromatography, induction heaters, dc amplifiers, and resistive inks. We also were sort of a control group for early Dr. White televised physics lectures from |/surl |6WQED|1|/wqed . In those days, ham radio was a technology leader, doing such things as \ bouncing radar off the moon, pioneering practical |4SSB|1, creating parametric and distributed amps, or helping with the |2International Geophysical Year|1. It was also a great place for answers and parts. I became licensed as |4K3BYG|1 and joined both school and "grownup" ham radio clubs. There were also informal techie meetings in the projection booth of the Mars Theater. Several of my personal projects of this era did include superregenerative |4VHF|1 "acorn tube" receivers, tube based pilot light string color organs, the obligatory Tesla coil in the form of a |2Van De Graff|1 generator using a dogfood pan dome, test equipment, a Theremin, mobile sound systems, walkie talkies, twinkle light neon dance decorations, and various |4WWII|1 comm gear restorations. |c Jobs, Sort of |d|z My first real summer job was in a radio and tv repair shop in a long gone warehouse near where Three Rivers Stadium is today. This was primarily an in-house warranty repair service for \ Pittsburgh's snottiest department store. But we did make house calls. I was mostly a gofer and replaced the techs on their vacations.|p We also installed and serviced organs, and I became super impressed by those folks at |/surl |6Allen Organ|1|/allen . Who had combined impeccable Pennsylvania Dutch craftsmanship with \ an uncompromising seeking out of tech excellence. I really, really wanted to be like them. Further summer "intern" work was at |/surl |6Pannier|1|/pannier , where I helped design billet \ markers, display exhibits, magnetic amplifiers, and electrohydraulics. I was actually \ granted a patent on an ultrasonic position detecting system. Which gave me my first \ clue that, for most individuals, things are very, very wrong with the |4US|1 patent system. More on \ my |/surl |6Case Against Patents|1|/patnt01 web page. |c "We'll Gather by the Twilight's Glow In Front of Old Pardee" |d|z |/surl |6Lafayette College|1|/lafayette had one of the finest undergraduate \ Electrical Engineering programs in the country, and I \ did manage to pick up a |4BSEE|1 with minor honors in |41961|1.|p Partially working \ my way through as a waiter.|p I made Dean's List the first of several times \ by way of a computer roundoff error. I was mostly a \ technonerd but did manage some minor radio station work \ and a stint as a dorm social chairman. Naturally, I flaunted my \ pocket protector and most proudly wore my \ K&E log log duplex decitrig dangling on its belt carrier.|p I studied under the legendary Finley Smith. Who literally bit through \ his pipe stem when, after awarding me the |2Outstanding IRE Student|1, found out I wasn't. One of the most important things I learned was that the best way to create a thick \ lab report was to use thick paper. And that a little bit of fun effort attractively \ arranging text and graphics can give you an incredible edge. Somewhere along my junior year, there was this paper contest with a then princely |4$25|1 prize. Several days before the deadline, I asked how many entries there were. After \ some hemming and hawing, Finley said zero. Figuring these to be fair to middlin' odds, I entered. And, not totally surprisingly, I won. This also was to become a recurring theme with my seeking out obscure |/surl |6Con Tests|1|/contests and finding that you'll often have a big advantage at an \ auction if you can arrange to be the only bidder. The contest paper was a demo of a an outdated digital counting device called a |2Dekatron|1. I used the money to buy a |2Television Engineering Handbook|1 that I \ still refer to this day. Some of \ my other projects were on an |4FM|1 commercial killer, one of the very first solid state \ |2Nixie|1 tube drivers, a color organ based on power transistors, and a tunnel diode oscillator. But the real biggie was winning the homecoming contest (unheard of for a social dorm rather than a frat house) by using a giant |415|1 cell alphanumeric display that spelled out |/surl |6CRUSH LEHIGH|1|/lehigh . Which referred to a minor remedial \ school of no consequence in a ghetto to the west. "In all the world no other scene, so fair, so dear to me." |c Back |Jto|J Work |d After graduation, I returned to the Western Pennsylvania area and began graduate work at \ what then was |/surl |6Carnegie|/carnegie |/surl Tech.|1|/carnegie I remember an outstanding \ problem solving class and microwave analysis work involving diode switching. Also building a \ high gain |4VHF|1 parametric amplifier out of a plain old |41N914|1 silicon diode. My first full time engineering job was at Irwin's |/tinton1 |6Femco|1|/tintoff , a small firm involved in trainphones, \ trolleyphones, and similar industrial carrier current comm. I cloned a |2Heathkit|1 \ style assembly manual that cut their production time on a tone receiver by over two thirds. Other work involved cable testers, printed circuit layouts, and mine safety. My interests in |4FM|1 commercial killers and psychedelic lighting didn't seem to fit \ their product mix all that well, so I also \ continued developing electronic projects on my own. |/surl |6Texas Instruments|1|/ti had just come out with the first relatively low cost |4SCR|1's, so I personally bought three of them \ at |1$6.35|1 each. I then combined them with some |4LC|1 audio detector/filters and a trio \ of unijunction triggers to form one of the first solid state color organs. I queried |/tinton1 |6Electronics World|1|/tintoff if they wanted such a construction \ project, and they snapped back their offer of |4$150|1 for my first professionally \ published story. Which appeared in April of |41963|1. Even forgetting about the incredible ego trip, \ there was something utterly \ magic about getting paid lots of money to do what I thoroughly enjoyed doing anyhow. And thus began \ a long career of writing technical stories and papers. Largely for the popular and newsstand titles. I milked those |4SCR|1's and triacs for all they were worth, creating over a dozen constantly improving color organs \ and similar psychedelic lighting systems. Whose names included |/tinton1 |6Colorgan|1|/tintoff , |/tinton1 |6Musette|1|/tintoff , |/tinton1 |6Psychedelia I|1|/tintoff , and \ the incredibly badly renamed |/tinton1 |6Hi Fi a Go Go|1|/tintoff . Along with a lot \ of dimmers, power controls, and photo timers. One of the latter being in log stops \ rather than seconds. At the same time, I also started doing tech tutorials. A few early \ examples included semiconductor sweeps for large screen |4TV|1, archaeomagnetism and \ paleomagnetism, chirp radar, thermoluminescence, and quite a few more mundane topics. The stories, \ which are approaching |41700|1 published to date, were spread over a few dozen mags. With |/tinton1 |6Popular Electronics|1|/tintoff , |/tinton1 |6Electronics World|1|/tintoff , and |/tinton1 |6Radio Electronics|1,|/tintoff being the early biggies. And later on including such titles as |/tinton1 |6Byte|1|/tintoff , |/tinton1 |6Kilobaud|1|/tintoff , |/tinton1 |6PC Techniques|1,|/tintoff and |/surl |6Circuit Cellar|1,|/ccell |c Aerospace Daze |d My forced college |4ROTC|1 experiences led me to believe there was serious \ doubt whether the |4US|1 military would be able to survive my involvement with them. \ The easiest way to beat the draft at that time was to become an aerospace \ engineer. Which I did. By joining long defunct Goodyear Aerospace a few miles west of Phoenix, Arizona. Work was highly classified, but I think I'm allowed to say it involved measuring \ the lumps in the atmosphere which set the ultimate resolution limits of long range \ side looking radar. While doing foliage penetration tests, film data annotation via \ minicomputer, intelligent spectrum identification, adaptive interference rejection, and the first all-electronic |2Fourier|1 "chirp" correlators. I went on writing tutorials and construction projects. sometimes appearing three \ times in a single issue. I did the first "linear" \ hobby integrated circuit project by making a utility amplifier out of a |4MECL|1 digital logic gate. I continued with my graduate \ studies at |/surl |6Arizona State|/asu |/surl University|1|/asu , picking up my |4MSEE|1 in |41966|1. I started but never completed a second master's degree in anthropology. My |4E.E.|1 thesis was on the first integrated circuit metal locator. Built by biasing |4RTL|1 logic gates into their \ linear amplification region. Thus making great diffamps. Real linear IC's were yet to \ show up at reasonable prices. The beast was called the |4IC-67|1 and ended up on the January \ cover of |/tinton1 |6Popular Electronics|1|/tintoff . Getting Goodyear to pay |4ASU|1 to let me write a hobby construction project was an \ interesting scam. One from which I developed the concepts of |/tinton1 |6reversing \ cash flow|1|/tintoff and |/tinton1 |6letting others pay you for your fun|1|/tintoff . |c Southwest Technical Products |d I strongly feel that the most unsung hero of the personal computer revolution was \ the late |/tinton1 |6Perry Ferrell|1|/tintoff of Popular Electronics. Who ground out the zillions of superb quality construction \ projects that anybody could build and learn from. \ Thus creating |/tinton1 |6the|1|/tintoff environment from which personal computing was to evolve. About the time Perry was putting the finishing touches on my |4IC-67|1 story, Dan Meyer of |/tinton1 |6Southwest Technical |/tinton1 Products|1|/tintoff called, offering to sell my circuit \ boards. I was never actually an owner or employee of |4SWTPC|1. Typically, I generated artwork \ and prototypes and was paid on a flat percent-of-sales royalty basis. I guess around a quarter of their sales were often my products. Some of my more popular designs included a |/tinton1 |6Psyctone|1|/tintoff pseudorandom \ tone generator, the color organs, several generations of digital logic microlabs, and \ various pitch references, dot and bar color tv service generators, logic demos, bounceless \ pushbuttons, my |4WWVB|1 receivers, \ |4NBS|1 superclocks, music modules, electronic dice, and such. But the big cash cow was the |4DCU|1 on the February, |41968|1 |/tinton1 |6Popular Electronics |1|/tintoff cover. Getting something to count to ten and display it was \ a really big deal at the time. My goal was a ten dollar |/tinton1 |6Decimal Counting Unit|1|/tintoff . I made several of these that involved either meters or bouncing \ incandescent light displays combined with low cost |4RTL|1 logic. The |4DCU|1's quickly led to the first low cost \ hobby frequency counters and digital voltmeters. Plus |4PH|1 Meters, pressure gauges, \ and ballistic chronometers. This led to a long series of improved counter and meter projects. Using Nixies, LED's, and \ a few others. We were way ahead of the crowd on low cost keyboards. The usual |/tinton1 |6Apple I|1|/tintoff photo you see has my keyboard in it. |c The TV Typewriter |d|z One of the Goodyear projects was to build up a million dollar, twelve megapixel \ display system. That a hotshot pilot would supposedly thoughtfully scrutinize while in \ the middle of a dogfight. I asked myself the obvious question "Can I trim costs a tad on \ this by cutting a corner here and there and drop the price to |4$99?|1|p The only cheaply available semiconductor memory chips at the time were long shift registers, so I \ took six of these nickel-a-bit beasties and arranged them into a simple frame grabber that was capable of showing |4512|1 upper case \ |4ASCII|1 characters. |/surl |6Signetics|1|/signetics had recently come out with a |42513|1 character generator, so I hung this and a few |4TTL|1 chips on the output, and added a \ rf modulator. The rest is history. My TV Typewriter first appeared in the September \ |41973|1 issue of |/tinton1 |6Radio Electronics|1|/tintoff . It instantly became the \ most popular hobby construction project of all time. And was felt by some to be the \ opening shot fired in the personal computer revolution. Despite the powers that be \ studiously ignoring it or vehemently denying it had any commercial potential whatsoever. I followed up with a |/surl |6TV Typewriter Cookbook|1|/tvt . And \ a series of improved models, ranging from the |/tinton1 |6TVT-2|1|/tintoff up through the \ |/tinton1 |6TVT 6-5/8|1|/tintoff . The larger units quickly upgraded to fewer |4CMOS|1 chips and newly \ available static |4RAM|1. The smaller ones were cards that attached to low priced logic \ trainers and were driven by |4CPU|1 cycle stealing. My |/surl |6Cheap|/cheap |/surl Video Cookbook|1|/cheap and a \ |/surl |6Son of Cheap Video|1|/soncheap followed. I'm often asked what my involvement with |4MITS|1 was. There was an Albuquerque conference or two \ with Ed Roberts and Les Solomon over linking the Altair and the |4TVT|1, but we seemed to be on different pages and \ nothing much further ever came of it. |c The Cookbooks |d|z The urge to publish can be insatiable, so I also did lots of internal Goodyear apnote stuff \ we called |4AEEM's|1 Much of this was on |4RTL|1 digital logic. Seems \ there was this |/tinton1 |6Navy |/tinton1 Preferred Circuits Handbook|1|/tintoff we were using that \ every techie called "the cookbook". So, I stole the concept, and sent \ Sams my |/surl |6RTL Cookbook|1|/rtl . Thus starting a trend where \ everybody and his brother started naming all of their new titles "cookbooks" after mine started selling so well.|p This was followed by the |/surl |6TTL Cookbook|1|/ttl and the later \ |/surl |6CMOS Cookbook.|1|/cmos |4TTL|1 went way up over a million copies, \ appearing worldwide in half a dozen different languages. To date, |4CMOS|1 remains just under a million seller. Shortly after the TV Typewriter, I did, of all things, a |/surl |6TV|/tvt |/surl Typewriter Cookbook|1|/tvt . Later to get followed up by the |/surl |6Cheap Video Cookbook|1|/cheap and |/surl |6Son of Cheap Video|1|/soncheap . Just about then, the very first computer stores started appearing. These consisted of \ a nearly empty storefront with a |/tinton1 |6Cromemco Dazzler|1|/tintoff in the \ window and several poorly printed brochures on the counter. In the middle of the \ floor were four skids full of books. Two skids were |2Adam Osborne|1 introductory computer titles. Plus one \ skid of |/surl |6TTL Cookbooks|1|/ttl and a second of |/surl |6TVT Cookbooks|1|/tvt . To leave the store, a customer had to physically climb over the skids, and their \ wallet usually fell out onto the floor in the process. Those were heady times. Other titles of mine from that era included the |/surl |6Active|/active |/surl Filter Cookbook|1|/active , which was the best seller ever for this topic. Plus |/surl |6Micro Cookbook I & II|1|/micro1 , The |/surl |6Apple Assembly|/assy |/surl Cookbook|1|/assy , the |4ISMM|1, |/surl |6Enhancing your Apple II (I & II)|1|/enhance1 and the |/surl |6AppleWriter Cookbook|1|/applewriter . A partial booklist is found on my |/surl |6Book Access|1|/amlink01 page. I hope \ to e-publish them all someday. |y|c The Incredible Secret Money Machine |d After eleven years, I bailed out of Goodyear, moving to Parker. Bee running a \ museum and me doing my thing full time. Sort of. Where I wrote my |/surl |6Incredible Secret Money|/ismm |/surl Machine|1|/ismm . Which |/surl |6Whole Earth Review|1|/whole \ and scads of loyal fans felt was by far the best small business book anytime ever. \ Looking back, much of the stuff was right on, but there were a few rough edges. I'm supposedly doing an all new rewrite and have an |/surl |6ISMM|1|/ismm01 page on my website. I got involved in the |/tinton1 |6Kansas City Standard|1|/tintoff for cassette data recording. Based on |4UART|1-like tones. But cassettes became obsolete \ before the system was widely used. I was \ also involved in the old MacDonald farm interface, \ which was later to become an |4EIE I/O|1. |/tinton1 |6Byte Magazine|1|/tintoff started up around then, and I appeared in \ nearly all of the early issues. Mostly chapter reprints, but several projects. \ One of which was one of the very first plug-in memory cards. I switched to |/tinton1 |6Kilobaud|1|/tintoff magazine after Byte went through an editorial cataclysm. This was when the |46502|1 arrived. The world's first |4RISC|1 microprocessor, \ although this is still vehemently denied to this day. I used everything from |5OSI|1 to |5KIM-1|1 to |2Apple|1, did a lot of machine and assembly language programming, and wrote a \ bunch of |46502|1 related books and columns. I even made it my license plate. I particularly liked the |4KIM-1|1 and even did a |4$6|1 video system for it. \ Others wrote chess programs and adventures in its |41K|1 memory space! Seems to me there were some |/tinton1 |6Computer Faire|1|/tintoff papers and booths \ and stuff around then as well. Working with John Simonton of |/surl |6PAIA Electronics|1|/paia . Some involving video displays and others audio. Parker was pretty much a technical wasteland. I wanted to get a lot closer to my readers, so we moved to Thatcher. I started teaching \ microcomputers, other electronics, and desktop publishing at |/surl |6Eastern Arizona College|1|/eac under Ward Belliston. I guess I had a pretty good rep as an adult education teacher, using a double \ strategy of "no place to hide" and my "always asking answerable questions". Plus \ continual hands-on game and role playing combined with visiting outside experts. Twelve years later, |4EAC|1 stupidly cancelled their entire electronics program \ because the football team needed the money. Seems the subsidy of $37 per homegame \ spectator was not nearly enough. I ended up buying the entire electronics inventory at an auction and \ sold it as surplus junk for far more than I ever got paid teaching. There's an \ important message in here somewhere, but I'm not exactly sure what it is. Something about popping seed corn. |c The |jColumns |d|z Several multi-part |/tinton1 |6Parts Profiles|1|/tintoff and |/tinton1 |6Electronic Music |/tinton1 Fundamentals|1|/tintoff stories seemed to do fairly well in |4PE|1, so I started exploring monthly columns. To \ date, over |4500|1 have been published, and many appear in ezine format on my |/surl |6Guru's Lair|1|/tinaja website.|p |/surl |6Hardware Hacker|1|/hack01 was the first major series, initially appearing in |/tinton1 |6Modern \ Electronics|1|/tintoff for several years. It was then moved over the Larry Steckler's |/tinton1 |6Radio Electronics|1. These columns would typically try to explore half a dozen technical concepts. \ Some beginning, some advanced, some proven, some off the wall. Something for everyone. I wrote a lot of my own |/surl |6PostScript|1|/post01 routines that gave me exceptional \ control of layouts and tight integration of text and figures. Many of the figures \ actually did what they claimed to, generating real curves directly from underlying math formulas. An obsessive result of my custom PostScript layout is the secret hyphenation algorithm you see \ here. I also found out that the |468030|1 or whatever hidden in a PostScript laser printer \ made a jim dandy "mother's little helper" for the |46502|1 in an Apple IIe. And that \ the potential of PostScript as a general purpose computing language is grossly \ underappreciated. Hacking used to mean "pursuit of technical excellence" or doing \ anything that left the experts shaking their heads in stunned disbelief. The term \ got thoroughly trashed by the media, and I started getting phone calls from wannabe felons and having men in black sitting on my doorstep. So, I changed \ the column name to |/surl |6Tech Musings|1|/muse01 in April of |41995|1. I switched to an \ |/surl |6ezine-only|1|/stezine format around May of |42000|1. With its overwhelming advantages of \ total control, full color, easy revisions, tight feedback, and the ability to do instant resource linking. I did two series of longer term columns for |/tinton1 |6Computer |/tinton1 Shopper|1|/tintoff . One was called \ |/surl |6Ask the Guru|1|/guru01 and was largely on Apple II and IIe programming. The second was \ initially called |/tinton1 |6Laserwriter Secrets|1|/tintoff , later renamed as |/tinton1 |6PostScript |/tinton1 Secrets|1|/tintoff . At the \ time I was both a seeder product tester for |/tinton1 |6Apple|1|/tintoff (IIgs & LaserWriter) and a beta tester for |/surl |6Adobe|1|/adobe . I started a |/surl |6Blatant Opportunist|1|/blat01 column for |/tinton1 |6Midnight |/tinton1 Engineering|1|/tintoff magazine. Mostly about useful help for small scale startups and emerging technical opportunities. This was one of the first columns of mine to go ezine only and (as you are now viewing) continues to this day. I also did a series of |492|1 |/surl |6Resource Bin|1|/resbn01 columns for |/tinton1 |6Nuts |/tinton1 & Volts|1|/tintoff magazine. The focus of the columns was "where to get stuff". The "column" continues to this day, privatized as part of our custom |/surl |6InfoPack|1|/info01 cash-and-carry service. Except for the earliest columns which are being slowly added, most everything can be \ found in ezine format on my |/surl |6Guru's Lair|1|/tinaja website. |c Back to the Future |d|z The web had my name written all over it. Coming along just as most magazine \ author payments were becoming abysmal (dropping an unconscionable |410:1|1 in terms of real dollars since I began), editing was becoming ludicrous (the last known competent editor was locked in a closet at \ Sams in |41978|1 and has not been seen since; the breed is presumed long extinct.) and any interest in high volume electronic hardware kits was clearly waning.|p So, I created my |/surl |6Guru's Lair|1|/tinaja website which presently is receiving over |42000|1 \ |/surl |6page views|1|/stats per day. Yes, it's profitable (forgoing, of course, such frivolities as \ food, clothing, and shelter). |/surl |6Funded|1|/stezine largely by |/surl |6Banner Ads|1|/advt01 , royalty residuals, |/surl |6eBay Sales|1|/ebay , associate fees, |/surl |6Surplus Bargains|1|/barg01 , \ consultant referrals, seminars, and my |/surl |6infoPack|1|/info01 consulting. I'm also doing original research into energy efficiency. \ Especially using some super heavy math I've gotten into to do |/surl |6Magic Sinewaves|1|/magsn01 . While exploring |/surl |6Book-on-Demand|1|/bod01 publishing, |/surl |6PIC|1|/picup01 micros, |/surl |6Flutterwumpers|1|/flut01 , my |/surl |6Hydrogen|/h2gas01 |/surl Energy|1|/h2gas01 resources and ongoing |/surl |6Pseudoscience|1|/pseudo01 bashing. |y|c Other Stuff |d|z Let's see. I literally married the girl next door. But since our daughter only recently got her |4MBA|1, it's way too early to tell how things are going to work out.|p Don't want to rush things. Back around when I was six or so, the "bad boy" of the neighborhood \ torched the garage across the street. I ran over three blocks to turn in the \ alarm to the wrong fire department and then suffered a year's nightmares \ over the incident. Which led to my becoming a volunteer fireman, first for Parker and later Thatcher. I served around ten years as a training officer and one as a captain. I also spent a few summers working forest service \ fire towers. On which the |/surl |6Active Filter Cookbook|1|/active math was worked out. As was my new |/surl |6Tearing Method|1|/enhance1 of program analysis, and many of the unique |/surl |6Cheap video|1|/cheap1 projects. I also did enough wildland firefighting to know which end of a |/surl |6Pulaski|1|/pulaski gets sharpened. I've long had an interest in caving and joined the |4CAG|1 grotto and |4ARA|1 regional \ of the |/surl |6National Speleological|/nss |/surl Society|1|/nss around |41968|1. I have done more than \ my share of ridgewalking and mapping, and explored virgin cave both in |/tinton1 |6Lilburn|1|/tintoff and in "my own" |/tinton1 |6Dum Ditty|1|/tintoff cave. I've been officers in local groups and have put on several spelunking seminars, been a grotto editor for three years publishing the |/tinton1 |6Cave Crawler's Gazette|1|/tintoff And, in a minor role, I helped develop Arizona's |/surl |6Kartchner Caverns|1|/kartchner . What \ I really like about caving is that you can literally go where nobody has gone before. Over the years, I have been very heavily into travel and adventure. Participating in archaeological \ field schools, fuzzy elephant hunts, the |/surl |6Na Pali|1|/napali cliffs (which makes the redwall in the \ Grand Canyon look like a sidewalk curb), or exploring our incredible |/surl |6Mt. Graham Aerial Tramway|1|/gramtram . It is a rare Sunday that this desert rat is not tromping off somewhere. By cave \ ridgewalking, bicycle touring, visiting ghost towns, tracking down remote hot springs, or simply wandering down a forest trail with Bowseretta. Or, above all, |/surl |6Tinaja Questing|1|/tinaja01 . Sources close to an associate of the barber of a usually reliable spokesperson claim I've got this sometime associate by the name of |/tinton1 |6Marcia Swampfelder|1|/tintoff who occasionally ghost writes an April column for me. Her combination Apple II reset protector \ and miniature guillotine was superb. As were her many mass teleportation products. \ Those with a cloning gain of four were favored by importers of specialty herbs and spices to \ set their own currency exchange rates. But one end user complained because he had the \ gain and polarity settings wrong when he tried modeming his now shorter and newly lefthanded girlfriend to Petaluma. Marcia also used a hex inverter to uncast an evil spell. Marcia's best product by far was the |/tinton1 |6Gentry Systems|1|/tintoff |4110|1 volt ac solar panel that used |/tinton1 |6Barfoot Layering|1|/tintoff . It seems the key ingredient was a chemical that got extracted from the \ sex pheromone of the pine sawfly. Used some thirteen orders of magnitude \ above normal. Don't let it bug you. I want to emphatically and categorically deny the ugly rumor that all of Marcia's products \ and researchers are named after Arizona fire lookout towers. Sadly, Marcia is in \ semi-retirement owing to clueless potential litigants. |y|c Closing Thoughts |d So what if you have nothing to amplify? If you want to build an amplifier -- |/tinton1r |6DO IT|j!|1 |/aqua |/black Many years ago, I was at a rock concert. The opening act was a single flute player \ standing solo in front of the closed stage curtains. His job was to warm up the audience for \ the high priced talent that was to follow. He was good.|/beige But as he went along, the musical vibes got stranger and stranger, then totally bizarre. \ |/aqua He was playing |/tinton1 |6chords|1|/tintoff on his flute. Combined with utterly \ unbelievable riffs. Much of the audience got impatient and bored at what seemed like a bunch of gawd-awful squawks. Then I happened to notice a friend beside me who had both been in and taught concert \ band. He was literally on the edge of his seat. He turned to me and \ slowly said |/tinton1 |6"you |/tinton1 \274 can't \274 do \274 that \274 with \274 a \274 flute"|1|/tintoff . Of the thousands and thousands of people in the theater audience, at most only five realized \ they were witnessing a once-in-a-lifetime performance of the absolute mastery of \ a difficult and demanding instrument. |/tinton1r |6Always play for those five.|/black |/aqua |/staytint1 |Z|F|p |2Microcomputer pioneer and guru \ Don Lancaster is the \ author of |535|2 books and countless articles. Don maintains a \ |5US|2 technical helpline you will find at |5(928) 428-4073|2, \ besides offering \ his own |/surl |6books|1|/amlink01 |/aqua |/tinton1 , \ reprints and |/surl |6consulting services|1|/info01 . |/aqua Don also offers surplus bargains \ found on |/surl |6eBay|1|/ebay |/aqua |/tinton1 and \ on his |/surl |6Bargain Pages|1|/barg01 . Don is also the webmaster of |/surl |6www.tinaja.com|1|/tinaja |/tinton1 \ You can also reach Don at Synergetics, Box |5809|2, \ Thatcher, |5AZ 85552|2. Or you can use email via |/surl \ |6don@tinaja.com|1|/maildon |x reallybeige 0.10 settint 0.5 setgray black activatemenu % cannot hit earlier cm2 0 add 0.12 settint 0.5 setgray black % cmb 0 add % 230 add % special % 190 380 % try centered % 322 406 % upper right 322 59 % lower right % 1 0.98 scale % slight adjust menu8v % and show the final page. Don't skip the |x gonzo ender above! Otherwise % you never return to PostScript and never print the last page... showpage