1#!/bin/rc 2if (! ~ $DEBUG '') flag x + 3REVFLAG='' 4if (~ $LPCLASS *reverse*) { 5 switch ($REVERSE) { 6 case ''; 7 REVFLAG=1 8 case 1; 9 REVFLAG='' 10 } 11} 12if (! ~ $REVFLAG '') 13 postreverse 14 15if (~ $NOHEAD '') { 16 DATE=`{date} 17 face='FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 18FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 19FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 20FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 21FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 22FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 23FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 24FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 25FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 26FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 27FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 28FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 29FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 30FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 31FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 32FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 33FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 34FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF' 35 facedom=`{awk '{ if(match("'$LPMACHID'", $1)) {print $2; exit}}' /lib/face/.machinelist} 36 if (~ $#facedom 0) facedom=$LPMACHID 37 38 facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x8/.dict} 39 facedepth=8 40 41 if (~ $#facefile 0) { 42 facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x4/.dict} 43 facedepth=4 44 } 45 if (~ $#facefile 0) { 46 facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x2/.dict} 47 facedepth=2 48 } 49 50 if (~ $#facefile 0) { 51 facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x1/.dict} 52 facedepth=1 53 } 54 55 if (~ $#facefile 0) {facefile=u/unknown.1; facedepth=1} 56 facefile=/lib/face/48x48x$facedepth/$facefile 57 58 if (! ~ $#facefile 0 1) 59 facefile=$facefile(1) 60 61 if (~ $#facefile 0 || ! test -f $facefile ) {facefile=/lib/face/48x48x2/u/unknown.1; facedepth=2} 62 if (test -r $facefile ) { 63 switch($facedepth){ 64 case 1 2 65 face=`{cat $facefile | 66 sed -e 's/0x//g' -e 's/, *//g' | 67 tr 0123456789abcdef fedcba9876543210 }; 68 case 4 8 69 face=`{iconv -u -c k4 $facefile | 70 dd -bs 60 -skip 1 >[2]/dev/null | 71 xd -b | sed 's/^[^ ]+ //;s/ //g' } 72 facedepth=8 73 } 74 } 75} 76 77# We have to make sure the face information is set before rc sees the HERE file 78# so the cat has to be in a separate if statement. This is an rc bug. 79if (~ $NOHEAD '') cat <<EOF 80%!PS-Adobe-2.0 div 112 page header - research!pg 81/banner { 82 /saveobj save def 83 erasepage initgraphics 84 /#copies 1 def 85 /inch {72 mul} bind def 86 /pageborder { 87 25 747 moveto 88 590 747 lineto 89 590 25 lineto 90 25 25 lineto 91 closepath 92 2 setlinewidth 93 0 setgray 94 stroke 95 } def 96 97 /topborder { 98 25 773 moveto 99 590 773 lineto 100 590 747 lineto 101 25 747 lineto 102 closepath 103 2 setlinewidth 104 0 setgray 105 stroke 106 } def 107 108 /toptext { 109 120 756 moveto 110 /Courier-Bold findfont 14 scalefont setfont 111 ($LPUSERID $DATE) show 112 } def 113 114 /prface { 115 gsave 116 translate rotate scale 117 setgray 118 48 48 $facedepth [48 0 0 -48 0 48] {<$face>} image 119 grestore 120 } def 121EOF 122if (~ $NOHEAD '') switch ($LPCLASS) { 123case *hp4simx*; 124 echo ' 125%% set the default papertray to be the lower tray for HP4siMX printers 126 statusdict begin defaultpapertray end 1 ne { 127 statusdict begin 128 1 setdefaultpapertray 129 end 130 } if' 131} 132if (~ $NOHEAD '') cat <<EOF 133 statusdict /setduplexmode known {statusdict begin false setduplexmode end} if 134 statusdict begin /manualfeed false def end 135 pageborder 136 topborder 137 toptext 138 0 14 14 0 94 752 prface 139 .3 180 180 -90 3.0 inch 10.2 inch prface 140 showpage 141 saveobj 142 restore 143} bind def 144banner 145EOF 146 147if (~ $REVFLAG '') cat 148exit '' 149