*******************************************************************************
  File:     @(#)$Id: NEWS,v 1.14 1999-10-16 22:04:09+02 Martin Rel $
  Contents: User-visible changes between versions of hpdj
  Author:   Martin Lottermoser, Metzgerfeldweg 9, 85737 Ismaning, Germany

*******************************************************************************
*									      *
*	Copyright (C) 1997, 1998, 1999 by Martin Lottermoser		      *
*	All rights reserved						      *
*									      *
*******************************************************************************


Version 2.6 (released 1999-10-16)
=================================
The main purpose of this version is to update the address of hpdj's FTP site
and my e-mail address which have changed. Other changes are:

* Documentation
  - I have removed the description of HPDJ_INPUTATTRIBUTES from README.hpdj.
    The symbol can still be defined during compilation if you need it, but
    because I had misunderstood the purpose of the 'InputAttributes' page
    device parameter hpdj's resulting behaviour is not in agreement with the
    PostScript language definition.
  - README.hpdj now describes a fix for ghostscript's BG/UCR bug which was
    previously mentioned only on hpdj's WWW home page.
  - I've made numerous small changes in the manual page and README.hpdj.

* Compilation
  - The make file parts needed for hpdj are no longer diffs but simply text
    segments which can be inserted with an ordinary text editor.

There are almost no changes in the source code.



Version 2.5 (released 1998-11-22)
=================================
This is mainly a release to adapt hpdj to gs 5.50. There are no changes in
functionality.

Unless there arise reasons for quickly issuing a new package, this will be the
last release where the driver is called "hpdj". The new name will probably be
"pcl3" and numbering will start with version 3.0.

* Changes in behaviour
  - hpdj will now complain if you specify the option 'BitsPerPixel' unless the
    value given happens to be the same as the one chosen by hpdj.

* Compilation
  - hpdj should now adapt automatically to the ghostscript version used, i.e.,
    you no longer have to set version-specific defines for older gs releases.
  - One user encountered and located a bug in Microsoft VC++ 5.0 which
    prevented reading margin files. This release works around the bug.

* Documentation
  - Numerous small changes.



Version 2.4 (released 1998-04-27)
=================================
Starting with this version, hpdj is released under the terms of the GNU Library
General Public License (LGPL) instead of the GNU GPL.

* Extensions
  - This version supports the Color Resolution Enhancement technology (C-REt)
    feature of some HP series-800 DeskJets, at least as far as I've been able
    to discover how this works without any documentation from HP. See the
    description of the new options 'BlackLevels' and 'CMYLevels' in the manual
    page.
  - There is a new option, "PagecountFile", which can be used to keep track of
    the number of pages printed. It is intended for spooler backends.
  - As an example of an input filter for a BSD spooler (lpr), I've added a file
    'if-hpdj' to the distribution. Read the comments in the file to find out
    what it can do.
  - I've extended the list of PCL media size codes known to hpdj by some codes
    of interest to people with series-1100 DeskJets.

* Modifications
  - The DJ 850C/855C/unspec margin information has been modified:
    - The margins for the JIS B5 format were demonstrably wrong for the DJ 850C
      and have been changed.
    - I've removed the entry for US A2 envelopes because contrary to what I
      believed previously this size is not supported.

* Documentation
  - The FILES section in the manual page has been restructured and extended as
    a CONFIGURATION section. In particular, for those not familiar with
    PostScript, I've added much more on configuration with PostScript commands.

* Compilation
  - I have added a missing "#include <errno.h>" directive to hpdjprn.c.
  - I have added an include directive for Aladdin's header "std.h" where
    appropriate in order to avoid some name clashes with non-standard system
    types like 'uint' on some operating systems (e.g., FreeBSD).




Version 2.3 (released 1997-12-16)
=================================
This is a release to fix a bug preventing linking when HPDJ_MARGIN_FILE was
defined during compilation.



Version 2.2 (released 1997-12-08)
=================================
Most of the changes in this version are either in the documentation or internal.
So far, only one bug has been reported for hpdj 2.1 and it is concerned with
compilation and not with the generated PCL code (see below).

* Changes in behaviour

  - Printing with a series-500 DeskJet on envelope sizes now assumes manual
    feed unless overridden by the new 'ManualFeed' option.

  - I have finally managed to see how to support automatic rotation for pages
    in landscape orientation without help from 'setpagedevice'. The rule is
    now: put media into the input tray short edge first and let hpdj worry
    about the rest.

    In particular, it is now possible to use setpagedevice to declare landscape
    orientation in default user space and thus obtain a file which can be
    viewed on the screen in its proper orientation and which will, without
    modifications, print correctly if processed by hpdj.

  - hpdj can now also install its own 'InputAttributes' dictionary in its page
    device dictionary. (And if you don't know what that can be used for you
    should skip this paragraph.) There will be one entry for each page size
    supported by the printer model chosen. This has the disadvantage that
    unsupported page sizes no longer produce readable messages like

      ? Device hpdj: This document requests a page size of 210 x 297 pt.
	This exceeds the custom page size limits for the DeskJet 850C.

    from hpdj but instead slightly cryptic messages like

      Error: /configurationerror in --setpagedevice--
      Additional information: [/PageSize [210 297]]

    from the setpagedevice operator (some ghostscript versions, e.g. gs 4.03,
    even omit the second of these lines). The advantage is that setpagedevice
    can now perform the usual media size matching.

    This feature is not active by default because it generates the wrong
    initial CTM if the printer model supports custom page sizes and the media
    size requested could be matched as a custom page size. This is due to a bug
    in make_adjustment_matrix() (file zmedia2.c) which is present in at least
    gs 3.53, gs 4.03 and gs 5.10. The hpdj distribution contains a patch file
    for zmedia2.c based on gs 5.10 which fixes this problem.

    Compile hpdj with -DHPDJ_INPUTATTRIBUTES to activate this feature.


* Command line options:

  - New options (see the manual page for descriptions):
    - DryTime
    - ManualFeed

  - Changes in option interfaces (no change in functionality):
    - ColourMode and ColorMode accept "monochrome" as a synonym for "mono".
    - MediaType now recognizes the string "photo paper".
    - PrintQuality accepts "best" as a synonym for "presentation".


* Manual page:
  - I have made the nroff/troff syntax more acceptable to man commands of
    limited intelligence and faulty man macros. In particular, man is now more
    likely to discover that preprocessing by tbl is needed, and nroff should
    no longer get confused what the "previous" font is after CW has been used.
    (The Linux system on which I developed hpdj 2.1 did not have these faults,
    but since then I have switched distributions...)
  - The man page now contains a reference to hpdj's FTP site.
  - The list of printers known to work with hpdj has been extended.
  - I have rewritten most of the "LIMITATIONS" section.

* Additional files in the distribution:
  - This file :-).
  - A copy of the hpdj home page, hpdj.html, giving a short introduction to
    ghostscript and hpdj, together with instructions on where to get them.
  - Patch files for devs.mak in Aladdin ghostscript 3.53 and 5.10.
  - Patch file for zmedia2.c (bug in make_adjustment_matrix()) based on Aladdin
    ghostscript 5.10.
  - Margin test files in landscape orientation for ISO A4 and US Letter.

* Compilation:
  - In two places, I had used dynamic initializers for structs. This is not
    required to be supported by ISO/ANSI C and gave error messages from at
    least one compiler. This bug has been fixed.
  - A user reported problems with the interpretation of return values of
    fprintf() on his non-ISO/ANSI-C-conforming system. This lead to hpdj
    erroneously assuming that an error had occurred. The code has been changed
    to circumvent this problem.
  - Based on user feedback, I have rewritten parts of README.hpdj.
  - There is a new printer model, "none", intended only as a compile-time value
    for HPDJ_DEFAULT_MODEL. Using this model leads to an error message telling
    the user that s/he should explicitly specify -sModel. I have introduced this
    value for the benefit of persons distributing binary versions of ghostscript
    and wishing to force their users to deliberately choose the printer model.
    This is the default value for HPDJ_DEFAULT_MODEL now.
  - The source code for the driver is now distributed over 7 files instead of
    3 as before.



Version 2.1 (released 1997-06-08)
=================================
This was the first widely-released version of hpdj.
