! README_FIRST !

HYSTORY OF DEVELOPMENT

The origin for all of the  DVI-driver versions for the supportet printers is the
driver for HP's Laserjet+, developed during may and june 1986.  This printer has
some restrictions like
   1. Only 32 fonts could be maximal downloaded.
   2. Only 16 different fonts could be used on a single page.
   3. Only characters with height and width <= 128 pixels could 
      be downloaded within a font.
Characters with  heights  and/or  widths > 128 pixels are drawn in graphic mode,
just as for an ordinary picture, painted by the laser printer. The same solution
was chosen for documents with more than  32  different fonts, or pages with more
than 16 different fonts. To increase the efficiency for this solution, the usage
of the different fonts is weighted, with the result of downloading the most hea-
vily fonts first,  leaving  unloaded fonts  for drawing in graphic mode only for
the most rarely used fonts. The source code for this driver was originally named
as  `dvilj.c',  accomplished by the support tool  `crereslj.c'  to download some
fonts permanently.

When the  Kyocera F1010 printer  came on the market,  it was promised to have an
HP-Laserjet+ emulation mode.  Unfortunately the  HP-emulation  was only partial,
escpecially the downloading commands were  not  fully implemented.  On the other
hand, those Kyocera printer didn't had the  32 or 16  fonts restriction,  resp.,
but still a restriction for characters height as less than 133 pixel. The result
was a seperate driver version  `dviky.c' and `cresesky.c'  for the Kyocera F1010
printer, which uses Kyocera's PRESCRIBE commands, instead of the not implemented
HP-Escape sequences.

At the time of these DVI-driver developement, all font files were available only
as pixel coded files, marked by the extension `.pxl'. Since 1986 slowly the font
files became more and more available in packed form, marked by the extension .pk
with the coding scheme, developed by Thomas Rockicki. The packed font files made
it necessaray to add further driver versions with unpacking routines for the new
coded files.  For a while both formats have been supported by corresponding DVI-
drivers,  named as  `pxl_dvixx.c' and `pk_dvixx.c'  as well as  `pxl_creresxx.c'
`pk_creresxx.c' (with xx = lj or ky). 

In between, the pixel coded font files are fully obsolete and substituted by the
packed coded form. Therefore the `pxl_dvi' and `pxl_creres' Files has been dele-
ted from this package  and  the drivers for the packed form have been renamed to
the shorter form  `dvixx.c'  and  `creresxx.c', resp.  Furthermore printers from
some other vendors came on the market,  with a  fully HP-emulation,  but without
some or all of the  HP's  restrictions.  And also the newer  Kyocera printers as
F1000, F1200, F2200, F3000  don't have the 133 pixel heigth restriction.  HP has
now the models  LaserjetII,  LaserjetIID  and  LaserjetIIP on the market. All of
them don't have the  128x128  pixel cell restriction anymore.  The first of this
serie, the LaserjetII, has still the 32 and 16 fonts restriction, while the both
other are only restricted by their memory.  In addition,  the whole serie differ
from the original Laserjet+ by a longer font-descriptor (64 bytes instead of 26)

The following `dvixx.c' drivers and `creresxx.c' tools are now on this distribu-
tion package 

   xx = lj     HP Laserjet+ and printers with an Laserjet+ emulation mode. 
   xx = hp     HP-Laserjet serie II printers.
   xx = ky     Kyocera printers (except F2000 = postscript printer).
   xx = mp     a driver for the MicroPlex DIN A3 printer

Most of them know some compiler directives,  to activate  or  deactivate certain
features or restrictions between different models within the serie.  Details are
documentated in README_CC. Check your printer's technical manual abuot such fea-
tures and restrictions.

Usage and features, common to all of drivers and tools,  are basically described
in the README file of this package. Take the mentioned program names `dvilj' and
`creresl' in README, as well as for the printer's name `HP-Laserjet+, just as an
example,  and replace them by the appropriate names for your printer.   Also the
data file `reslj.fnt' stands for  `resxx.fnt',  with xx for one of the character
group above.

README_KY and README_IID describe some additional options for Kyocera's F2200 or
HP's Laserjet IID printer. As far as the corresponding driver is used for  other
printers, this additional options are meaningless or specialized, e. g. -m=6 for
the  Laserjet IID printer  feeds paper from the envelope tray to print an letter
envelope. Using this option for the IIP printer instead, switches to manual fee-
ding, and the printer waits for the user's action.

README_CC describes some compiler directives and recommands some customizing. In
addition, the various files into which the programmes are splitted, are declared
as well as for some other program details.

                                                     Helmut Kopka, April 5, 1990
