diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /dviware/psprint/unix/ps40_header.ps |
Initial commit
Diffstat (limited to 'dviware/psprint/unix/ps40_header.ps')
-rw-r--r-- | dviware/psprint/unix/ps40_header.ps | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/dviware/psprint/unix/ps40_header.ps b/dviware/psprint/unix/ps40_header.ps new file mode 100644 index 0000000000..524d07137b --- /dev/null +++ b/dviware/psprint/unix/ps40_header.ps @@ -0,0 +1,67 @@ +% For the PrintServer 40 we don't need to produce a banner page. +% We still redefine the error handler though: + +/@errpage 64 dict def +@errpage begin +/prnt + {dup type/stringtype ne{=string cvs}if dup length 6 mul/tx exch def/ty 10 def + currentpoint/toy exch def/tox exch def 1 setgray newpath + tox toy 2 sub moveto 0 ty rlineto tx 0 rlineto 0 ty neg rlineto + closepath fill tox toy moveto 0 setgray show}bind def +/nl{currentpoint exch pop lmargin exch moveto 0 -10 rmoveto}def +/=={/cp 0 def typeprint nl}def +/typeprint{dup type dup currentdict exch known + {exec}{unknowntype}ifelse}readonly def +/lmargin 72 def/rmargin 72 def +/tprint{dup length cp add rmargin gt{nl/cp 0 def}if + dup length cp add/cp exch def prnt}readonly def +/cvsprint{=string cvs tprint( )tprint}readonly def +/unknowntype{exch pop cvlit(??)tprint cvsprint}readonly def +/integertype{cvsprint}readonly def +/realtype{cvsprint}readonly def +/booleantype{cvsprint}readonly def +/operatortype{(//)tprint cvsprint}readonly def +/marktype{pop(-mark- )tprint}readonly def +/dicttype{pop(-dictionary- )tprint}readonly def +/nulltype{pop(-null- )tprint}readonly def +/filetype{pop(-filestream- )tprint}readonly def +/savetype{pop(-savelevel- )tprint}readonly def +/fonttype{pop(-fontid- )tprint}readonly def +/nametype{dup xcheck not{(/)tprint}if cvsprint}readonly def +/stringtype + {dup rcheck{(\()tprint tprint(\))tprint}{pop(-string- )tprint}ifelse + }readonly def +/arraytype + {dup rcheck{dup xcheck + {({)tprint{typeprint}forall(})tprint} + {([)tprint{typeprint}forall(])tprint}ifelse}{pop(-array- )tprint}ifelse + }readonly def +/packedarraytype + {dup rcheck{dup xcheck + {({)tprint{typeprint}forall(})tprint} + {([)tprint{typeprint}forall(])tprint}ifelse}{pop(-packedarray- )tprint}ifelse + }readonly def +/courier /Courier findfont 10 scalefont def +/@oldhandleerror errordict /handleerror get def +end + +errordict /handleerror +{ systemdict begin $error begin @errpage begin + newerror + { /newerror false store + vmstatus pop pop 0 ne { grestoreall } if + initgraphics courier setfont + lmargin 792 moveto + (POSTSCRIPT ERROR: ) prnt errorname prnt nl + (OFFENDING COMMAND: ) prnt /command load prnt nl + $error /ostack known + { (OPERAND STACK:) prnt nl + $error /ostack get aload length {==} repeat + } if + /#copies 1 store + systemdict /showpage get exec + /newerror true store + /@oldhandleerror load end end end exec } + { end end end } + ifelse +} dup 0 systemdict put dup 4 @errpage put bind readonly put |