#!/bin/rc
if (! ~ $DEBUG '') flag x +
REVFLAG=''
if (~ $LPCLASS *reverse*) {
       switch ($REVERSE) {
       case '';
               REVFLAG=1
       case 1;
               REVFLAG=''
       }
}
if (! ~ $REVFLAG '')
       /sys/lib/postscript/bin/$cputype/postreverse

if (~ $NOHEAD '') {
       DATE=`{date}
       face='00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000
00000000000000000000000000000000'
       facedom=`{awk '/^'$LPMACHID'    /{print $2}' /lib/face/.machinelist}
       if (~ $#facedom 0) facedom=astro
       facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x2/.dict}
       facedepth=2
       if (~ $#facefile 0) {
               facefile=`{awk '/^'$facedom'\/'$LPUSERID' /{print $2}' /lib/face/48x48x1/.dict}
               facedepth=1
       }
       if (~ $#facefile 0) facefile=u/unknown.1
       facefile=/lib/face/48x48x$facedepth/$facefile
       if (~ $#facefile 0 || ! test -f $facefile ) facefile = /lib/face/48x48x2/u/unknown.1
       if (test -r $facefile ) face=`{cat $facefile | \
               sed -e 's/0x//g' -e 's/, *//g' | \
               tr 0123456789abcdef fedcba9876543210 };
}

# We have to make sure the face information is set before rc sees the HERE file
# so the cat has to be in a separate if statement.  This is an rc bug.
if (~ $NOHEAD '') cat <<EOF
%!PS-Adobe-2.0  div 112 page header - research!pg
/banner {
       /saveobj save def
       erasepage initgraphics
       /#copies 1 def
       /inch {72 mul} bind def
       /pageborder {
               25 747 moveto
               590 747 lineto
               590 25 lineto
               25 25 lineto
               closepath
               2 setlinewidth
               0 setgray
               stroke
       } def

       /topborder {
               25 773 moveto
               590 773 lineto
               590 747 lineto
               25 747 lineto
               closepath
               2 setlinewidth
               0 setgray
               stroke
       } def

       /toptext {
               120 756 moveto
               /Courier-Bold findfont 14 scalefont setfont
               ($LPUSERID $DATE) show
       } def

       /prface {
               gsave
               translate rotate scale
               setgray
               48 48 $facedepth [48 0 0 -48 0 48] {<$face>} image
               grestore
       } def

       statusdict /setduplexmode known {statusdict begin false setduplexmode end} if
       statusdict begin /manualfeed false def end
       pageborder
       topborder
       toptext
       0 14 14 0 94 752 prface
       .3 180 180 -90 3.0 inch 10.2 inch prface
       showpage
       saveobj
       restore
} bind def
banner
EOF

if (~ $REVFLAG '') cat
exit ''