diff options
author | Joachim Schrod <jschrod@acm.org> | 2007-07-03 18:08:24 +0000 |
---|---|---|
committer | Joachim Schrod <jschrod@acm.org> | 2007-07-03 18:08:24 +0000 |
commit | 39d27398f02282c9111c5f679afb15e3d6798762 (patch) | |
tree | aee8ba08b1c8379f096b34d7dbadb0d3f7cf0367 /Build/source | |
parent | 95373b09c88da7661e3af62adaf5c6884eaf7dbb (diff) |
Output reset sequence as specified in the HP PCL/PJL reference manuals.
git-svn-id: svn://tug.org/texlive/trunk@4541 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source')
-rw-r--r-- | Build/source/texk/dviljk/ChangeLog | 3 | ||||
-rw-r--r-- | Build/source/texk/dviljk/dvi2xx.c | 24 |
2 files changed, 21 insertions, 6 deletions
diff --git a/Build/source/texk/dviljk/ChangeLog b/Build/source/texk/dviljk/ChangeLog index 78d467af42d..ad362e9d98c 100644 --- a/Build/source/texk/dviljk/ChangeLog +++ b/Build/source/texk/dviljk/ChangeLog @@ -5,6 +5,9 @@ (main): Enforce the kpathsea program name to be "dvilj", we don't want different search paths for the dviljk variations. + Output reset sequence as specified in the HP PCL/PJL reference + manuals. + (DoSpecial): Search for include files with kpathsea, both via DVILJINPUTS and TEXINPUTS. Add special hpfile-verbatim, to include PCL files verbatim, diff --git a/Build/source/texk/dviljk/dvi2xx.c b/Build/source/texk/dviljk/dvi2xx.c index d44400909fe..233a08c4ce5 100644 --- a/Build/source/texk/dviljk/dvi2xx.c +++ b/Build/source/texk/dviljk/dvi2xx.c @@ -275,17 +275,29 @@ char *argv[]; #endif #ifdef LJ - if (ResetPrinter) - EMIT1("\033E"); # ifdef LJ4 - EMIT2("\033%%-12345X@PJL SET RESOLUTION=%d\012",RESOLUTION); - EMIT1("@PJL SET PAGEPROTECT=OFF\012"); - EMIT1("@PJL ENTER LANGUAGE=PCL\012"); - if (econoMode && LJ6) + /* According to the PCL (p. 4-2) and PJL (p. 4-3) reference manuals, it is + critical that the UEL escape sequence (\e%-12345X) comes before the + reset sequence (\eE). According to PJL Reference Manual (p. 4-3) the + correct order is (1) UEL, (2) PJL commands, (3) Reset and PCL job, (4) + Reset, (5) UEL. */ + if (ResetPrinter) { + EMIT1("\033%%-12345X"); /* UEL: Universal Exit Language */ + EMIT2("@PJL SET RESOLUTION=%d\012",RESOLUTION); + EMIT1("@PJL SET PAGEPROTECT=OFF\012"); + if (econoMode && LJ6) EMIT1("@PJL SET ECONOMODE=ON\012"); + /* The PJL ENTER LANGUAGE command must be the last PJL command before + PCL output starts. */ + EMIT1("@PJL ENTER LANGUAGE=PCL\012"); + EMIT1("\033E"); + } EMIT3("\033&u%dD\033*t%dR",RESOLUTION,RESOLUTION); if (econoMode && !LJ6) EMIT1("\033*v1T"); +# else + if (ResetPrinter) + EMIT1("\033E"); # endif # ifdef LJ2P if (DuplexMode) |