Dec 082017
 
DVIDRV package, Part 1/3.
File DVIDRV1.ZIP from The Programmer’s Corner in
Category EmTeX (TeX/LaTeX) tools
DVIDRV package, Part 1/3.
File Name File Size Zip Size Zip Type
EMTEX 0 0 stored
AIW.DOT 1916 149 deflated
DMP130.DOT 1916 148 deflated
DOC 0 0 stored
ADJUST.DVI 160 111 deflated
ENGLISH 0 0 stored
DVIDRV.DOC 83143 23980 deflated
FONTLIB.DOC 12916 4238 deflated
MAKEDOT.DOC 16248 4671 deflated
PCLTOMSP.DOC 1440 607 deflated
GERMAN 0 0 stored
DVIDRV.DOC 112597 32458 deflated
FONTLIB.DOC 14651 4633 deflated
MAKEDOT.DOC 17854 5091 deflated
PCLTOMSP.DOC 1460 642 deflated
DVIDRV.ERR 5505 1836 deflated
FLI_FX.CMD 1781 439 deflated
FLI_ITO.CMD 1781 433 deflated
FLI_LJ.CMD 1994 470 deflated
FLI_P6H.CMD 2115 499 deflated
FLI_P6L.CMD 1781 435 deflated
FLI_P6M.CMD 1781 436 deflated
FONTLIST 2006 396 deflated
FX.CNF 208 148 deflated
FX100.DOT 1916 155 deflated
FX80.DOT 1916 152 deflated
IBM4201.DOT 1916 194 deflated
IBM4202.DOT 1916 196 deflated
IBM4207L.DOT 1916 210 deflated
IBM4207M.DOT 1916 213 deflated
IBM4208L.DOT 1916 213 deflated
IBM4208M.DOT 1916 216 deflated
ILF_FX.CMD 773 225 deflated
ILF_ITO.CMD 782 226 deflated
ILF_LJ.CMD 843 229 deflated
ILF_P6H.CMD 863 238 deflated
ILF_P6L.CMD 782 227 deflated
ILF_P6M.CMD 782 231 deflated
ITO.CNF 218 150 deflated
ITOH.DOT 1916 144 deflated
LJ.CNF 196 138 deflated
LQH.DOT 1916 147 deflated
LQL.DOT 1916 147 deflated
LQM.DOT 1916 150 deflated
LQWH.DOT 1916 156 deflated
LQWL.DOT 1916 156 deflated
LQWM.DOT 1916 159 deflated
MSPFX.BAT 61 61 stored
MSPFX.CMD 61 61 stored
MSPITO.BAT 62 62 stored
MSPITO.CMD 62 62 stored
MSPLJ.BAT 61 61 stored
MSPLJ.CMD 61 61 stored
MSPP6H.BAT 62 62 stored
MSPP6H.CMD 62 62 stored
MSPP6L.BAT 62 62 stored
MSPP6L.CMD 62 62 stored
MSPP6M.BAT 62 62 stored
MSPP6M.CMD 62 62 stored
NEWFONTS.BAT 10346 1533 deflated
NEWFONTS.CMD 10346 1535 deflated
NEWFONTS.SUB 25 19 deflated
OLDFONTS.BAT 10190 1423 deflated
OLDFONTS.CMD 10190 1423 deflated
OLDFONTS.SUB 141 96 deflated
P6H.CNF 205 139 deflated
P6H.DOT 1916 152 deflated
P6L.CNF 199 137 deflated
P6L.DOT 1916 149 deflated
P6L_P6H.CNF 216 153 deflated
P6L_P6M.CNF 228 162 deflated
P6M.CNF 218 150 deflated
P6M.DOT 1916 152 deflated
P6M_P6H.CNF 233 169 deflated
P7H.DOT 1916 154 deflated
P7L.DOT 1916 151 deflated
P7M.DOT 1916 154 deflated
PRTAIW.BAT 67 67 stored
PRTAIW.CMD 67 67 stored
PRTFX.BAT 73 72 deflated
PRTFX.CMD 73 72 deflated
PRTHPLJ.BAT 63 63 stored
PRTHPLJ.CMD 63 63 stored
PRTITOH.BAT 68 68 stored
PRTITOH.CMD 68 68 stored
PRTLQH.BAT 73 73 stored
PRTLQH.CMD 73 73 stored
PRTLQL.BAT 73 73 stored
PRTLQL.CMD 73 73 stored
PRTLQM.BAT 73 73 stored
PRTLQM.CMD 73 73 stored
PRTP6H.BAT 73 71 deflated
PRTP6H.CMD 73 71 deflated
PRTP6L.BAT 73 72 deflated
PRTP6L.CMD 73 72 deflated
PRTP6M.BAT 73 72 deflated
PRTP6M.CMD 73 72 deflated
REMOVE 0 0 stored
DVIDRV.REM 5300 859 deflated
V.BAT 68 68 stored
V.CMD 68 68 stored
VS.BAT 69 69 stored

Download File DVIDRV1.ZIP Here

Contents of the DVIDRV.DOC file


==============================================================================
DVIDRV 1.4d VERSION: 25.09.1990
==============================================================================

The dvidrv drivers output DVI files to a printer or to the screen. They will
work with the following font file types:

Extension ID
PXL 1001 (32-bit words)
PXL 1002 (8-bit words)
PK 89 (packed)

The font files do not have to have one of these extensions as their format is
determined by their contents. PK font files with an ID of 87 can NOT be used!

In addition font libraries -- a dvidrv feature -- can be used. These contain
several font files saving disk space and processing time. By gathering
font files into libraries the number of files in directories is reduced.
Disadvantages are the size of the resulting libraries and the amount of time
spent in updating fonts. For more information see the fontlib document.

dvidrv includes the following drivers:

dviscr screen previewer (CGA, EGA, VGA, HGC, and other adapters)
dvivik screen previewer (Viking I)
dvimsp create graphic file (MSP or PCX)
dvihplj HP LaserJet+, HP DeskJet and Kyocera F-1010
dvidot dot-matrix printers (configurable)

The following parameter files for dvidot are supplied:

Param. Printers Resolution Environ. /pf*
file (incomplete list) h x v DPI variable default setting
------------------------------------------------------------------------------
fx80 EPSON FX and RX series 240x216 DVIFX \emtex\pixel.fx\$rdpi
fx100 EPSON FX and RX series 240x216 DVIFX \emtex\pixel.fx\$rdpi
lql EPSON LQ series 180x180 DVILQL \emtex\pixel.p6l\$rdpi
lqm EPSON LQ series 360x180 DVILQM \emtex\pixel.p6m\$rdpi
lqh EPSON LQ series 360x360 DVILQH \emtex\pixel.p6h\$rdpi
lqwl EPSON LQ series (wide) 180x180 DVILQL \emtex\pixel.p6l\$rdpi
lqwm EPSON LQ series (wide) 360x180 DVILQM \emtex\pixel.p6m\$rdpi
lqwh EPSON LQ series (wide) 360x360 DVILQM \emtex\pixel.p6h\$rdpi
p6l NEC P6 180x180 DVIP6L \emtex\pixel.p6l\$rdpi
p6m NEC P6 360x180 DVIP6M \emtex\pixel.p6m\$rdpi
p6h NEC P6, Panasonic KX-P1124 360x360 DVIP6H \emtex\pixel.p6h\$rdpi
p7l NEC P7 180x180 DVIP6L \emtex\pixel.p6l\$rdpi
p7m NEC P7 360x180 DVIP6M \emtex\pixel.p6m\$rdpi
p7h NEC P7 360x360 DVIP6H \emtex\pixel.p6h\$rdpi
itoh C.ITOH 8510A 160x144 DVIITOH \emtex\pixel.ito\$rdpi
aiw Apple Imagewriter 160x144 DVIAIW \emtex\pixel.aiw\$rdpi
dmp130 Tandy DMP-130 240x216 DVIDMP \emtex\pixel.fx\$rdpi
ibm4201 IBM Proprinter 4201 240x216 DVI4201 \emtex\pixel.fx\$rdpi
ibm4202 IBM Proprinter 4202 240x216 DVI4202 \emtex\pixel.fx\$rdpi
ibm4207l IBM Proprinter 4207 180x180 DVI4207L \emtex\pixel.p6l\$rdpi
ibm4207m IBM Proprinter 4207 360x180 DVI4207M \emtex\pixel.p6m\$rdpi
ibm4208l IBM Proprinter 4208 180x180 DVI4208L \emtex\pixel.p6l\$rdpi
ibm4208m IBM Proprinter 4208 360x180 DVI4208M \emtex\pixel.p6m\$rdpi

Printers of type Proprinter 4207 and 4208 must be set to AGM (see printer's
manual).

Not all printers of the EPSON LQ series support 360x360 DPI (lqh.dot and
lqwh.dot).

Parameter files for other printers can be easily constructed - see makedot.doc.

If memory in real mode (DOS) is short, dviscrs.exe should be used instead of
dviscr.exe -- dviscrs.exe may only be renamed if it is run under DOS 3.0 or
later. This version runs in real mode, needs less memory is somewhat
slower. Otherwise it behaves exactly like dviscr, for instance, the default
name for the log file is `dviscr.dlg'.


Running dvidrv
==============

dviscr ?
dvivik ?
dvimsp ?
dvihplj ?
dvidot ?
display the more common options, to get a list of all the options,
type ?? instead of ?

dviscr [options] input-file [options]
dvivik [options] input-file [options]
dvimsp [options] input-file [options] output-file [options]
dvihplj [options] input-file [options] output-file [options]
dvidot parameter-file [options] input-file [options] output-file [options]

If arguments are omitted the program will prompt for them (cf. the // option.)
dvidot is an exception: the parameter file name must always be present.
More than one argument may be entered at each prompt, these arguments will be
interpreted as if they had been entered on the command line. A null entry for
the input file will cause the file `texput' to be used.

The dvidot parameter files (the default extension is .dot) are sought in the
directories listed in the PATH environment variable. The name of the file MUST
be given on the command line and must be the first argument.

For dvimsp the default extension for output files is `msp' (/o1 or /o2 used)
or `pcx' (/op used) but the other drivers have no default. The output
filename can be PRN, LPT2, COM2 if required (not for dvimsp, of course).

If the output is sent to a file then the file can be printed with

COPY /B file PRN

The `/b' is important as otherwise the copy will terminate at the first ^Z
byte encountered.

Under OS/2 a hyphen can be put in place of the output file name, output will
then be sent to stdout and can be piped into another program.

Usually, dvimsp creates only one graphic file, containing the first selected
sheet. Multiple graphic files (one for each sheet) can be created with one
dvimsp run by using one or more (consecutice) `?' in the output file name.
The question marks will be replaced by a number (with leading zeros): 1 for
the first sheet, 2 for the second, and so on. If there's one `?', up to
9 graphic files will be created, if there are two `?', up to 99 graphic
files will be created, and so on. Example:
dvimsp @lj.cnf mytext page??
creates the graphic files page01.msp to (at most) page99.msp.

When entering the options in response to a driver prompt the `-' or `/',
which is required on the command line, need not be entered.

An input filename, output filename or option can be replaced by
@response-file. This will cause the lines in the response file to be
read and interpreted at this point after which interpretation of the command
line will continue. The response file line length may not exceed 127
characters. An example:

dvidot fx80 @fx.cnf test prn

First the arguments in fx.cnf will be processed, the file test.dvi will be
printed with the output going to the device PRN. @response-file can be entered
at a program prompt as well as on the command line though, in this case, the
arguments read from the file will not be displayed on the screen.

Arguments can also be passed to the program through environment variables
which are scanned for first.

It is recommended, however, that only options, or response files containing
only options, are put into environment variables; if a file name is entered
then only this file can be processed.

The first environment variable looked for is DVIDRV and the next is one with
the same name as the driver. dvidot uses a further environment variable with
a name set in the parameter file.
For example, to set /pd=c:\mydvi as a default option for dviscr, the operating
system command:

set dviscr=/pd=c:\mydvi

can be given.

Options which are common to all the drivers should appear in the DVIDRV
environment variable. If, for instance, units should all be in mm then the
system command

set dvidrv=/umm

can be entered. This will affect all the drivers.

Before evaluating an argument line be it the command line, a prompted line, an
environment variable or a line from a response file, all elements of the form
`%name%' will be replaced by the contents of the environment variable NAME
(as in batch files). If there is no environment variable with this name, the
token is ignored. If the environment variable NAME also contains a token
%name% then it will not be expanded but copied without change. This
construction is of most use in response files: for example, to set
directories with an environment variable without making changes to the
response file.

A single % starts a comment: all characters to the end of the line will be
ignored.

A `@' at the beginning of a line (column 1) causes the rest of the file to be
ignored - this allows a driver log file to be used as a response file.


Options
=======

`#' stands for a number which will sometimes be followed by a dimension (the
dimension must be in lowercase).

`+' stands for `+' or `-'. + turns the option on, - turns it off. If the
option is not followed by either + or -, it is turned ON.

`*' stands for any other type of argument

All options must be preceded by - or /. Options may be separated by spaces
or another option may follow immediately: in this case the following option
must start with /. There must be no space between an option and its argument:
however, they can be separated by :, = or :=, for example

/t10mm
/t:10mm
/t=10mm
/t:=10mm

are all acceptable forms.

Options which require a file or directory name (for instance, /pf* and /pl*)
can also have :, = or := between the option and its argument.

Note: = may not appear in an environment variable and cannot be given as an
argument to a batch file. Semicolon can also not appear as an argument to a
batch file (in connection with lists of files and directories).


Options for message output
==========================

/? display help and default or actual values (only displays necessary
options)

/?? display help and default or actual values (displays all options,
including those set only once)

/v# verbosity
/v0 only fatal error messages
/v1 /v0 plus page numbers and font substitutions in batch mode
/v2 /v1 plus serious warnings, `Loading ...' and the DVI file
comment
/v3 /v2 plus all warnings and \special's
/v4 /v3 plus statistics and the names of font files
/v5 /v4 plus comments in the font files

the default is /v2

Note that /fl-1 suppresses font comments and warnings of absurdities
in the font files.


Page selection options
======================

These options select the pages to be printed. In the following the difference
between "pages" and "sheets" should be noted: There may be multiple pages
on one sheet (n-up printing, see below), the sheets are numbered sequentially,
the pages are numbered according to the TeX page number assigned to them.

The options are applied in the order they are shown below.

Initially, all pages are to be printed. The first option removes certain
pages from consideration, the second then restricts the remaining pages and so
on.

/b* Select the first sheet to be printed. The DVI file will then be read
from the beginning until a matching page is encountered. Further page
selection will now begin, starting at the sheet containing this page.
An asterisk stands for any page number: at most 10 numbers can be
given which will be compared with \count0 to \count9 -- omitted
numbers will be replaced with *. The default is * which means begin
at the first page in the file.
Example: /b-3.*.4 selection begins with the page having
\count0=-3 and \count2=4

/e* Select the last sheet. After finding a suitable first sheet, the DVI
file search will continue until a page matching this option's
specification is encountered. The sheet containing this page will be
the last one. The sheets encompassing the range of pages selected
by /b* and /e* will remain selected. The default is *: this is an
exception, it means that NO matching for the last page will take place.
Example: /e10.5 the last sheet is the one containing
the page with the page number 10.5

/2* Double sided printing: every other sheet is selected. /2o (odd)
selected sheets 1., 3., ..., /2e (even) selects the sheets 2., 4., ...
The default is /2-, all sheets are selected.
Example: /2o double sided printing, first part
/2e double sided printing, second part

/k# The number of sheets to skip: the first # of the sheets in the chosen
range will be skipped.
The default is 0.
Example: /k1 skip one sheet

/n# The number of sheets to print: at most # sheets will be printed.
Default: no limit.
Example: /n=10 at most 10 sheets will be printed

/z+ Print the sheets in reverse order, starting with the last sheet
selected. The default is /z-, print the first sheet first.

/np# Print # copies of each sheet: each sheet will be printed # times before
going on to the next sheet (default: 1 -- print each sheet once
only). This option is not supported by dviscr, dvivik and dvimsp.

/nf# Print the whole file # times (default: 1 -- print the file once only).
If, with the option setting /np1/nf1 (default), sheets 1 and 2 are
printed then, with the options /np2/nf3, these sheets will be printed
in the following order: 1 1 2 2 1 1 2 2 1 1 2 2
This option is not supported by dviscr, dvivik and dvimsp.


Font options
============

Most of these options are set only once, during installation (in a
response file).

/fb Batch mode. If a font is not found then it is sought first in
magnification 1000, if it is still not found then cmr10 in the
required magnification is sought, if this also fails then cmr10 at
1000 is sought.) It is a fatal error if this search fails and the
program will terminate. This font search method can be altered with
a font substitution file. If a graphic file is not found and batch
mode has been selected then again the program will end. /fb is
switched off by either /fc or /fi.

/fc Change mode. Before a font or graphic file is loaded, the name of the
file can be changed.
/fc is switched off by either /fc or /fi.

/fd# This sets the internal variable max_drift. If the character or line
spacing is uneven, a different value can be tried: the usual values
range from 0 to 3. The default value is not the same for all drivers,
use /?? to find out what it is.

/fi Interactive mode (default). If a font or graphic file cannot be found,
the user is asked for help.
/fi is switched off by either /fb or /fc.

/fl# Font load limit. When the driver first loads the font parameters from
a font file (`Loading font ...') all the characters are loaded
which need no more than # bytes of memory. /fl-1 is a special
case: the font parameters are loaded only when needed; initially,
only the existence of the font file is checked. /fl-1, however, also
stops warnings about absurdities in the font files and should only
be used when you are sure that the fonts are alright.
The default is 300, that is, all characters which need 300 or fewer
bytes of memory are immediately loaded. If later a (larger) character
is required which has not yet been loaded, the font file will have to
be opened again.
If dviscr or dvivik is used with fonts on a fixed disk, it is better
to use /fl0 or /fl-1 as the first page appears on the screen more
quickly (initial font load takes a little time.)
If the driver complains about lack of memory, it may help (but not
necessarily) to use /fl0 or /fl-1; this doesn't reduce the memory
required by the driver but may improve the way the available memory is
used.
Example: /fl=0 no initial character loading
/fl-1 load characters on demand
/fl:1000 initial load of all characters smaller
than 1000 bytes

/fs# Font scaling. These options are used to reduce the size of the font
/fsx# allowing a font generated for a higher resolution device to be used
/fsy# at a lower resolution (disk space!). The reduction is accomplished
by replacing the points in the rectangle of width /fsx# and height
/fsy# by a single point. If the rectangle is a square, /fs# can be
used to set the width and height to the same value. The values may
lie in the range 1 to 8. Fonts reduced by this method appear markedly
worse than fonts generated by Metafont directly. The desired
resolution must be set with the /rf# option.
Example: /r180/fsx2/rfx360 replace the P6L fonts with
reduced P6M fonts


Page layout options
===================

/tr# Output transformation
/tr0 normal output
/tr1 rotate 90 degrees anticlockwise
/tr2 rotate 180 degrees
/tr3 rotate 270 degrees anticlockwise
/tr4 reflect in the \ diagonal
/tr5 reflect vertically
/tr6 reflect in the / diagonal
/tr7 reflect horizontally

In practice only /tr0 and /tr1 are most often used.

The transformations when applied to the pattern

A B
C D
E F
are

0 1 2 3 4 5 6 7

A B B D F F E E C A A C E E F F D B B A
C D A C E D C F D B B D F C D E C A D C
E F B A A B F E

Important: set the page height and width correctly with /h# and /w#
(for coordinate transformations)
Note: the same page dimensions can be used for all transformations,
that is, /h# and /w# need not be changed. The margins set
with /t# and /l# are `above' or (to the) `left' (of) the text
and will be transformed. The same goes for /cx# and /cy#.
However, the borders set by /la# and /ta# are `printer
borders' and will not be transformed.
Note: if /rx# and /ry# differ then different fonts will be needed
when rotating by 90 or 270 degrees or reflecting in a diagonal
-- this applies to the Epson FX-80/100, NEC P6/P7 (360x180dpi)
C.Itoh 8510A and Apple Imagewriter printers.
Note: for key assignments for dviscr/dvivik see and .

Current limitations for the transformations 1 to 7:
-- large characters don't work
-- \special{em:graph} doesn't work

/h# Set the page height. This value is used by dviscr and dvivik to
display the page edges as lines. dvimsp uses this value to set the
size of the graphic file unless /om+ is selected. Printer drivers use
this value to decide how much of the page can be printed; however,
form feed is used to throw a page and so the physical page length must
be set on the printer. `dvidot itoh' and `dvidot aiw' are an
exception, they use the value set by /hf# for page throws.

Example: /h12in set the page height to 12in

/l# Left margin: the printed page will be moved # to the right.
Default: 1in.
Example: /l1cm set the left margin to 1cm

/la# Adjust the left margin. Print adjust.dvi with the options /la0/l0 and
measure the distance from the left margin to the printed square. Take
an inch (25.4mm) off this and use the resulting value with /la#. This
will give the exact margin requested with /l#.
More exactly: with /la=x and /l=y the printed page will be moved to
the right by y-x. The default value depends on the driver.

/t# Top margin. The printed page will be moved down the page by #.
Default: 1in.
Example: /t-.5 everything moved down the page by 1/2
units (assuming /ta0; units are
normally inches, cf /u*).

/ta# Adjust the top margin. Print adjust.dvi and measure the distance from
the top edge of the paper to the square. Take 1 inch (25.4mm) from
this value and use the result with /ta#. This will then give a top
margin of # with /t#.
More exactly: with the options /ta=x /t=y the printed page is moved
y-x down the page. The default value depends on the driver.

/w# Set the page width. dviscr and dvivik use this value in displaying the
edge of the page. dvimsp uses this value to determine the size of the
graphic file unless /om+ is given. The dvidot driver reduces this
value by 1px if the value given is exactly the maximum page width.
'dvidot fx80', for example, reduces this width by 1px if, when
converted, it is exactly 1920px.
Example: /w22cm set the page width to 22cm


Two-up printing and changing margins
====================================

/c? Display all /cx# and /cy# values

/cf# Starting value for displacement index (default: 1). The displacement
index selects the pairs of /cx# and /cy# values which will be used for
the current page. The index is increased by 1 for each page, when the
final value is passed, the index is reset to 1. The final value is
given by /cp# or is taken as the highest index set by /ci# depending
on which is the greater. On the first page positions 1 and #-1 remain
unused. Note: /cf# affects the page selection.

Example: /ci2/cx4in
/cp2/cf2 Two pages will be printed on each
sheet. The first page will be printed
the RIGHT half of the first sheet, the
second on the LEFT half of the second
sheet and the third on the RIGHT half
of the second sheet, and so on.

/ci# This selects the index for the following /cx# and /cy# values. There
is a shift of the whole printed page (determined by /l#, /la#, /t# and
/ta#) and a shift of each individual page which is printed on the same
sheet. Up to 16 pages can be printed on 1 sheet of paper output and
the x and y offsets of a component page are saved in one of the 16
positions selected by # (the standard values are in /cx0 and /cy0).
/ci without an argument increments the current value of the index by 1.
The initial value of the index is 1.
The highest value of # -- or the value set by /cp#, if greater --
determines how many different page positions there are.
Example: /ci2/cx4in the page in position 2 is shifted
4in to the right.

/cp# This sets the number of pages to be printed on a sheet. This value can
be smaller than the number of page positions but must then be a
divisor (otherwise the result will be somewhat unusual). Initial value
is 1. If there are 4 page positions set (with /cp2 and /cf1) then the
pages will be positioned on the sheet in the following manner:
Page Sheet Position
1 1 1
2 1 2
3 2 3
4 2 4
5 3 1
and so on. Here two pages are printed on each sheet with the sheets
alternating between two margin settings -- with a suitable choice of
page position, of course.

/cx# the x and y offsets of the page in the position selected by the
/cy# preceding /ci#.

A complete example:
/ci2 /cx4in
/ci3 /cy4in
/ci4 /cx4in /cy4in
/cp4

Printing 4 pages on a sheet: the positions selected are:
1: /cx0in /cy0in (top left)
2: /cx4in /cy0in (top right)
3: /cx0in /cy5in (bottom left)
4: /cx4in /cy5in (bottom right)

/cx-1cm /ci /cx1cm

The first page will be offset 1cm to the left, the second 1cm
to the right, the third 1cm to the left, and so on (one page
is printed on each sheet).

You are advised to create a response file for each variant which can then be
put into effect by simply including @response-file in the arguments. Thus the,
not exactly simple, calculation of the appropriate offsets need be done only
once.

Example (dviscr @twoup /o8):

% twoup
/ci1 /cx0 /cy0
/ci2 /cx8.5in /cy0
/cp2
/cf1
/w17in


Magnification and resolution
============================

/m# the magnification in the DVI file is replaced by # which can take any
value from 100 to 16000. The values are the same as those used for
\mag, that is, the magnification multiplied by 1000 (/m1000 gives the
normal size) or as h, 0 to 5, they represent \magstephalf, \magstep0
to \magstep5. The values 6 to 9 will be similarly interpreted.
Make sure that fonts in the sizes chosen are available!
Example: /m1200 magnified by 1.2
/m500 reduced to half size
/mh magnification by 1.095
/m1414.213562 magnified by sqrt(2)

/r# set the resolution. /rx# sets the horizontal resolution, /ry# the
/rx# vertical and /r# both at once. The default value depends on the
/ry# driver:
dviscr /r300
dvivik /r300
dvimsp /r300
dvihplj /r300
dvidot set in the parameter file
These values are in dots/inch (dpi).
Make sure that the appropriate fonts are available!
A number of parameters can only be calculated when the resolution is
known: the driver will only convert the values when all the options
have been read. Therefore the /r# option doesn't have be the first one.
See also /rf#.
Example: /r180 the resolution is 180dpi

/rf# Set the font resolution, the argument is in dpi. This option will
/rfx# usually be used together with /fs#. The horizontal and vertical
/rfy# resolution can be set individually with /rfx# and /rfy#. If /rf#
is omitted, the value used for the font will be that set by /r#.

/rg# Set the resolution for the graphic files, the argument is in dpi.
/rgx# This option merely sets the values which will be used for $r and
/rgy# $s in /pg*. The horizontal and vertical resolution can be set
individually with /rgx# and /rgy#. If /rg# is omitted, the value
used will be that set by /r#,


Directory and file name options
===============================

/[email protected]* the default directory for response files. If a response file is
not found it is sought in the list of directories given by /[email protected]*. If
it is still not found, the directories listed in the PATH environment
variable are searched. The default value is \emtex\texinput.
Example: /[email protected]:\emtex\dvidrv\

/pd* the default directory for DVI files. If a DVI file is not found, it
is sought in the list of directories given by /pd*.
The default value is \emtex\texinput.
Example: /pd=d:\dvi\;d:\mytex

/pf* the default directory for font files. Font files are sought in the
list of directories given by /pf*. In the directory list `$s' is
replaced by the (obsolete) PXL size (resolution in dpi multiplied by 5)
and `$r' by the resolution (dpi) -- note that both must be in lowercase.
The default directory depends on the driver:
dviscr \emtex\pixel.lj\$rdpi
dvivik \emtex\pixel.lj\$rdpi
dvimsp \emtex\pixel.lj\$rdpi
dvihplj \emtex\pixel.lj\$rdpi
dvidot set in the parameter file, cf. the table above
If more than one path is given they must be separated by semicolons.
The entry:
/pfc:\fonts\pxl$s;c:fonts\dpi$r
when used to seek the font cmr10<300> will cause the following two
directories to be searched
\fonts\pxl1500
\fonts\dpi300
See also the search rules for fonts.
Example: /pf=c:\fonts\epson\$r

/pg* the default directory for graphic files. A graphic file will first be
sought in the current directory and then, if not found, in the
directories given by /pg*. Here again `$s' will be replace by the
magnification and `$r' by the resolution (they must be in lowercase).
The name used for the search will be that given in the
\special{em:graph xxx}
command. If this is not found and it doesn't have an extension, the
files xxx.msp and xxx.pcx will also be looked for and used if found.
The default setting is \emtex\texinput.
Example: /pg:=c:\win;c:\emtex\doc\gr$r

/pi* printer initialization file. The file given by /pi* will be sent to
the printer immediately after it has been reset.
Example: /pi:unidir.p6

/pl* this gives the names of the fonts libraries to be used. Fonts are
sought first in these libraries and then as single files.
Font libraries can be created with fontlib; the usual extension is
FLI. Directories as well as file names can be entered here, the files
will be searched for in all these directories.
Example: /pl=c:\fonts;hplaser;myfonts

/po* this option sets the name of the output file. If the driver is called
without an output file being given, this name will be used. Default:
no output file. It will be given the default extension (dvimsp uses
MSP or PCX, the others have no default).
Example: /po:lpt1

/ps* the name of the font substitution file. The default is no
substitution file.

/pt* the name of the log file. The default is the name of the driver with
extension DLG (for instance, dviscr.dlg). The default extension is DLG.
All the output that follows the input of the files and options is
written to this file. It also contains the settings of all the options
for the run. The /pt option suppresses the creation of a log file.
A log file can be later used as a response file to set up the same
conditions again.

/pv* The directories for VF files (virtual fonts). VF files will be searched
for only in these directories. The default is no directory, that is,
virtual font files will not be sought. If more than one directory
is listed, the directories must be separated by semicolons.

/pw* Write a fontlib response file. A text file containing the fontlib
commands to insert the fonts used in the run into a font library will
be generated. To generate this response file alone use the option /n0.
Example: /pw=new.cmd
fontlib call: fontlib new /k @new.cmd


Miscellaneous options
=====================

// prompt for options. When // is used the driver will prompt for further
options, this can be useful when the options required exceed the
permitted length of the command line.

/u* this option sets the default dimension unit to be used when none is
given. The default is inch. The following dimension units can be used
(cf. TeXbook p.57)
pt point (1/72.27in)
pc pica (12pt)
in inch (Standard)
bp big point (1/72in)
cm centimetre
mm millimetre
dd didot point (1238/1157pt)
cc cicero (12dd)
sp scaled point (1/65536pt)
px Pixel (resolution independent)
All these units must be entered in lowercase.
The /u* option affects the following options.
Example: /ucm dimensional units are centimetres
/uMm Error! megametres are somewhat impractical


Additional options for dviscr and dvivik
========================================

/- Display white on a black background.

/+ Display black on a white background (default).

/hx# Set the initial position. A new page will be displayed in this
/hy# position and pressing the key will cause the current page to be
displayed in this position. /hx0 /hy0 is the top lefthand corner of
the sheet. /hx1in /hy1in is the default setting.

/o# Display with gray scale. A rectangle of a x b pixels will be displayed
/ox# as one point. /o# sets both a and b, /ox# sets a alone and /oy# sets b
/oy# alone. An EGA (with 16 colour display) or a VGA adapter is required.
If a=b=1 there is no gray scale display. a and b can take values from
1 to 8. Really slow. The implementation is optimized for /ox# values
of 1, 2, 4 and 8. Setting /ox# to 5 or 7 makes the driver almost
unusably slow.
If /sl is set (no scaling) and gray scale is enabled with /o# but the
adapter cannot do gray scales, the /o# values are used for scaling,
that is, /o3 is the same as /o1/s3.
Example: /ox4/oy2

/oa# Adapter setting, the possible values are:
/oa0 automatic selection (default)
/oa1 CGA 640x200
/oa2 EGA 640x350 or 640x200
/oa3 VGA 640x480
/oa4 HGC 720x348, not under OS/2
/oa5 GENOA SuperEGA 800x600, not under OS/2
/oa6 Paradise VGA 800x600, not under OS/2
/oa7 Video Seven VGA 800x600, not under OS/2
/oa8 Tseng Labs EVA 800x600, not under OS/2
/oa9 HP Vectra 640x400, not under OS/2
/oa10 MDS Genius (PRIMUS II) 728x1008, not under OS/2
/oa11 EGA 640x200, 16 colours
/oa12 EGA 640x350, 16 colours
/oa13 EGA 640x350, 16/64 colours
/oa14 VGA 640x480, 16 colours
/oa15 VGA 640x480, 16/64 colours
/oa16 VGA 640x480, 16/262144 colours
/oa17 EGA 640x350, 2 colours
/oa18 VGA 640x480, 2 colours
/oa19 Olivetti M24 640x400, not under OS/2

Further modes peculiar to the adapter may be used with the following
extension of this option:
/oa=m;w;h;ax;bx
m is a number which describes the adapter and display combination:
100 EGA with monochrome display
101 EGA with 16 colour display
102 EGA with 64 colour display
103 VGA with analogue colour display
w is the screen width in pixels (320 to 1024)
h is the screen height in pixels (200 to 1024)
The graphics mode is set by loading registers AX and BX with the
arguments ax and bx before calling Int 10H. ax and bx must be given
in hexadecimal. ';bx' can be omitted if BX is to be set to zero.
The semicolons may be replaced with colons if desired. If (w/8)*h
exceeds 65536 then h will be reduced to 65536/(w*8).
You are responsible for entering the correct values, the manual for
your adapter can sometimes give further help.
Example: the graphics mode selected by /oa13 can be represented as
/oa102:640:350:0010
and mode /oa7 is the same as
/oa103:800:600:6f05:62

/oc# Set the colours to be used (only with EGA or VGA). The possible values
are 0 to 15, the default is /oc2 (green). Colours can be set singly:
/ocp# page border
/ocr# ruler
/ocs# status line

/or+ Ruler enabled (default).

/os+ Status line enabled (default). If the status line is disabled, there
will be a beep at the beginning and end of text or numeric input.

/ou* Select the dimension for the ruler and the status line (default is pt).

/sx# Reduce the size of the output page, this allows more of the page to be
/sy# seen on the screen. The pixels in a rectangle of width /sx# pixels
/s# and height /sy# pixels will be displayed as a single pixel. /s# sets
both x and y to the same value. Possible values range from 1 to 8. If
fonts in suitable resolutions are available then it is better to
change the resolution with /r# as reduced characters are not pretty.
Even better, use gray scaling - see /o#, but only with an EGA or VGA
card and a 16 (or 64) colour display. If gray scaling is not
possible, then scaling can be set with /o#, too.
Example: /s2 halve the resolution (x and y)
/sx4/sy2 reduce the width by 1/4 and halve the
height


Additional options for dvimsp
=============================

/- Display white on black

/+ Display black on white (default)

/o* Set the graphic file format: there are two different MSP file formats -
Windows 1.x (/o1) and Windows 2.x (/o2, the default). PCX files can
also be created (/op).
Example: /op Create a PCX file

/om+ Create the smallest picture possible. The borders are made small
enough for the clip defined by /h# and /w# to go into the file with no
waste space. The picture in any case goes up to the top, left and
bottom margins. The righthand margin, however, can have a few empty
columns (up to 7 or, with /ow+, up to 15). By using /l# and /t#,
non-negative margins will be ignored. By using negative margins, part
of the picture can be selected as objects with negative coordinates
will be not be drawn. The default is /om-: the file will contain a
picture of height set by /h# and width set by /w#.

/ow+ The width of the picture will be rounded up to the next greater
multiple of 16px (the default is /ow-). Some programs which read MSP
files need this. If you're using /op (PCX file), the width will
always be rounded up to the next greater multiple of 16px.


Additional options for dvidot
=============================

/ox+ Use XON/XOFF flow control for COM1 to COM4. Output will be sent
directly to the port. If XON/XOFF protocol is to be used then the
output file must be given as COM1, COM2, COM3 or COM4, /ox+ will be
ignored for any other output file (for example, AUX, LPT1, mytext.prn).
If /ox- is entered or the output is not to COM1 to COM4 then output
will use DOS functions. This option is unnecessary under OS/2 and is
not supported.

When using any parameter file but itoh and aiw:

/s+ Two passes per line of output. If /s+ is selected, every line will be
printed twice, the first time printing dots 1, 3, 5, ... and the
second time printing dots 2, 4, 6, ... The default setting (/s-)
prints around twice as fast but with poorer quality as some printers
(FX-80, for instance) find it difficult to fire a needle on two
consecutive positions.

When one of the parameter files itoh or aiw is used:

/hf# Set the page length. For page throw to work properly the page length
must be set. If the page length is set to 0 (0in, for example, the
default) the length defined by /h# is taken as the page length.

/s+ Slow mode. By selecting /s+ printing will unidirectional (itoh.dot
sets also incremental print mode); the default, /s-, sets
bidirectional printing (itoh.dot set also logic seek mode).


Additional options for dvihplj
==============================

/oc# Delete all temporary fonts after every # pages. This may help
when there is not enough printer memory for holding all required
fonts, but requires more time. Default is 0: don't delete fonts.
Some printers not compatible enough to the LaserJet+ require /oc0.

/od+ HP DeskJet. The output is for an HP DeskJet - this option must be
selected to output correctly to a DeskJet.

/of# Set the initial value for font ID numbers. The default is 0,
acceptable values are 0 to 32736. The fonts downloaded by dvihplj
to the printer will be given numbers from # to #+31. This option
allows the user avoid overwriting fonts which have already been
downloaded which the user does not want deleted. However, dvihplj
will delete all temporary fonts.

/oi+ Initialize the printer. Before any output, the printer will be
initialized (default). This can be turned off with /oi-.

/oj+ Job offset. Some printers can offset sheets sideways in the output
tray. /oj+ will cause the output position to be switched to the
alternate offset so that the results of a sequence of print jobs
can be more easily be separated.

/ok+ Kyocera. The output is for a Kyocera F-1010. If you want to print
on the Kyocera then you must select this option.

/om# Printer memory size. This sets the available memory on the printer
in Kbytes: the default is 394. If this value is set to 0 then there
will be no test for memory overflow. If fonts are permanently
downloaded then this value must be appropriately reduced. This
option will be ignored if /od+ is set.
Example: /om1500 1.5 Mbytes of printer memory available

/ox+ Use XON/XOFF flow control for COM1 to COM4. Output will be sent
directly to the port. If XON/XOFF protocol is to be used then the
output file must be given as COM1, COM2, COM3 or COM4, /ox+ will be
ignored for any other output file (for example, AUX, LPT1, mytext.prn).
If /ox- is entered or the output is not to COM1 to COM4 then output
will use DOS functions. This option is unnecessary under OS/2 and is
not supported.


Specifying font size (resolution)
=================================

If the driver doesn't find a font, you can enter a different font size.
Font sizes are also used in font substitution files. This font size is
specified in dots per inch (dpi). As there may be some decimals, there
is a more convenient method of specifying magnifications: Just append a
colon and the magnification step (0 to 9, or h for 0.5) to the font size.
100:3 is an abbreviation for 172.8 (100 * 1.2 ^ 3), 300:h will be converted
to 328.63353. You can specify only the colon followed by the magnification
step (without an explicit font size). In this case, the font resolution
set with the /rf# option will be magnified. This is especially convenient
in font substition files for specifying a font size independent of the
device (and its resolution).



Font substitution file format
=============================

% Comment
%
% The following substitutions will be made one after the other, the original
% name/size pair will be converted using the first rule, the result then
% converted using the second rule, and so on.

%
font -> font % e.g. am* -> cm*
size -> size % e.g. 305 -> 300
font size -> font size % e.g. cmr12 :0 -> cmr10 :1
%
% Delete characters or replace with a block
%
% Once a font has been made `black' or `white', it can not be changed back.
%
i* -> * /w % Invisible, white
fancy -> fancy /b % Invisible, black

$b % `b' like `batch mode'

% The following lines apply to batch mode, after every substitution the font
% is sought again.

* * -> * :0 % Keep the name, font size:=font resolution (/rf#)
* * -> cmr10 :0 % name:=cmr10, font size:=font resolution (/rf#)


Remarks
1. The following special characters can be used in font names (old -> new):
? (old): any character matches
(new): ? is replaced by the corresponding ? in the old
name
`old' and `new' must have the same number of ?, for
example, font?? -> fnt??

* (old): matches any number of characters
(new): replaced with the characters matched by * in
`old'
* must be the last character in the name.
If `new' ends with * and `old' doesn't, * will be
ignored.

@ (old): matches any character
(new): not allowed

A (constructed) example using all these characters:
font substitution string: [email protected]?dd* -> x?y?z*
font to be found: aaa1bb2cc3dd456
substituted name: x1y3z456


Font search rules
=================

As soon as the font is found, the search algorithm terminates.

Method 0:

1. The font name and size are converted according to the rules in the
first part of the font substitution file - ALL rules are applied one
after the other: then the font is sought under the resulting name by
method 1.

2. If batch mode is active (/fb option) and the font substitution file
has a second part (after `$B'), the name/size resulting from (1)
above is converted using one of the rules and this name used for a
search by method 1. This is done for each rule in turn.

3. If batch mode is active (/fb option) and there is no second part to
the font substitution file, the following rules will be used instead
following the procedure in (2) above:
* * -> * x
* * -> cmr10 *
* * -> cmr10 x
x is the horizontal resolution times 5; in transformations 1, 3, 4
and 6 it is the vertical resolution times 5.

4. If batch mode is active and the font is still not found, the driver
stops with a fatal error message.

5. If the font is not found or change mode (/fc option) is active, the
user is asked for another font name - see below.

Method 1.

1. The font is sought in the directories set by the /pf* option (in the
given sequence) using method 2.
In this search `$s' and `$r' in the directory name are replaced by the
size or resolution of the font. The size is calculated as:

magnification * (resolution/200) * (font size/1000)

rounded to the nearest integer (200 is the default size of the
Stanford fonts) for example,

\mag=1200, scaled 1000, resolution 300: 1200*300/200*1=1800

Method 2.

1. The file is given the extension .VF and is sought in the directories
set by the /pv* option. If found, the font is a 'virtual font'.

2. The file is sought in the font library files (in the order given).

3. The file itself is sought.

4. If the file has an extension (for instance, .PK) then method 2 ends.

5. Otherwise the file name is given the extension .PK and the search is
repeated.

6. If this doesn't succeed, the extension is changed to .PXL and the
search repeated.

In the following EXAMPLES /pfc:\fonts\$rdpi /r300 /m0 and `scaled 1000' are
assumed. The search for .VF files and the search in the font libraries is not
performed.

`cmr10' is sought in the following sequence:

c:\fonts\300dpi\cmr10
c:\fonts\300dpi\cmr10.pk
c:\fonts\300dpi\cmr10.pxl

`cmr10.pk' is sought in the following sequence:

c:\fonts\300dpi\cmr10.pk

The search for `myfonts\cmr10' is done in the following sequence
(the directory is given by the user, see below):

myfonts\cmr10
myfonts\cmr10.pk
myfonts\cmr10.pxl
c:\fonts\300dpi\cmr10
c:\fonts\300dpi\cmr10.pk
c:\fonts\300dpi\cmr10.pxl

`myfonts\cmr10.pxl' is searched for in this sequence:

myfonts\cmr10.pxl
c:\fonts\300dpi\cmr10.pxl

If batch mode is active there are further searches as described above.

If the search fails and batch mode is not active (/fi, default), the user is
asked for help, displaying the font name and a file name of the form

path\font

where xxxx is the font size (dpi).

The user should then enter one of the following items:

font_size choose a new size, (new xxxx) and prompt again. Examples:
300 300 dpi
:2 scaled 1440 (1.44 * /rf#)
204:h 204 dpi magnified 1.2^0.5 (= 233.47081)
See `Specifying font size (resolution)'

[drive:]path\ choose a new directory (file name and size remain unchanged)
and search again with method 0

name choose a new file name (the directory and size remain
unchanged) and search again with method 0

[drive:]path\name choose a new directory and file name (size remains
unchanged) and search again with method 0

[empty line] search again using method 0 with the preceding new values

+ multiply the size by 1.2 and prompt again

- divide the size by 1.2 and prompt again

b replace all the characters in the font by a black block

w make all the characters in the font invisible. A font file is
still needed but the characters therein are not printed. This
is useful in analyzing unusual effects. The prompt will be
repeated.


Keyboard functions for dviscr and dvivik
========================================

Note that it is impossible to go outside the `sheet' defined by /w# and /h#.

+ exit from the program


move the window half the screen width to the left (for smaller
movements, see and )

move the window half the screen width to the right (for smaller
movements, see and )

move the window half the screen height upwards (for smaller
movements, see and )

move the window half the screen height downwards (for smaller
movements, see and )

<4> move the window to the left by the screen width

<6> move the window to the right by the screen width

<8> move the window upwards by the screen height

<2> move the window downwards by the screen height


move the window to the initial position (chosen with /hx# and
/hy# options or )

<7> move the window to the top lefthand corner of the page

move the window to the bottom lefthand corner of the page
(/hx# option or )


<1> move the window to the bottom lefthand corner of the page

+ move the window to the left margin

+ move the window to the right margin

to the previous page
<9>

to the next page
<3>

+ to the first page

+ to the last page

reversed image toggle

refresh the screen image

make the current position the home position (see /hx#, /hy#,
and )

this reduces the window movement caused by the arrow keys; it
has 6 steps

this increases the window movement caused by the arrow keys;
it has 6 steps

go to one of the pages selected for display. Enter a number
from 1 to the number of selected pages - this page will then
be displayed.

return to the previously displayed page - to be used after a
,

, , + or + command. The
driver holds up to the last 20 pages displayed. The page is
displayed so that the point marked by the ruler or the middle
of the page appears in the same position on the screen.

display a page with a given page number, the page number must
be entered. The page with this page number is first sought
starting from the current page going towards the end of the
file, if it isn't found then the search restarts at the
beginning of the file. Page numbers can contain *, for
example, 1.*.5

toggle the ruler display

+ toggle the scale on the ruler

search for text: the search starts at the beginning of the
current page (or the point at which the search last stopped).
Pages are then searched starting at the current page and
moving towards the end of file. If this fails then the search
starts again at the beginning of the file.
The search can be terminated by pressing the Esc key.
If no text is entered, the text from the last search is used
again. The search is case sensitive, hyphens and spaces are
ignored. The text can also include accented characters. If the
text contains an illegal character, for instance, \ can't
appear in it, the driver beeps.
The ruler is placed on the reference point of the first
character of the text.

toggle the effect of the arrow keys - either the window or the
ruler (if present) is moved. After enabling the ruler with
, the arrow keys move the ruler. This function affects the
four arrow keys, +, +,
and . The other keys continue to move the window.
The effect of and is also changed, altering the rate
at which the ruler is moved around independently of the
setting for the window movement.

change the dimension unit: moves forward through the
+ usual list of 10, + moves backward. These dimension
units are used in the status line and the ruler display. See
also /ou#.

<+> change the gray scale display or scaling (zoom). If possible,
<-> a gray scale is used, otherwise scaling. The relation between
the values set by /ox#, /oy# or /sx#, /sy# is preserved. This
means that a scaling of /sx7/sy8 cannot be changed. <+>
increases the size of the picture, <-> reduces it.

+ change the gray scale setting or scaling (zoom).
+ One or two digits in the range 1 to 8 can be entered; these
are taken to be the new factors for the gray scale (+)
or scaling (+). If only one digit is given then it is
taken as both the x and y value (like /o# and /s#). If two
digits are entered then these uae used as the x and y factors
(like /ox# and /oy# or /sx# and /sy#).

dviscr/dvivik can change the transformation dynamically by
following by a digit from 0 to 7 and . This is,
however, not possible if /rx# and /ry# were used to set
different values and you wish to switch between
transformations 0, 2, 5 or 7 and 1, 3, 4 or 6.

this toggles the coordinates used for the arrow keys between
screen coordinates and transformed coordinates (if the display
is rotated (do this on your own risk)). When is pressed
the arrow keys are transformed, pressing it again returns to
the initial state.

For functions <+>, <->, +, +, and the middle of the screen
(or, if the ruler is displayed, the point marked by the ruler) in the same
position on the screen.
Rotations are also made around this point, reflections put this point on the
reflection axis and the size is changed with this point at the centre. If this
causes the window to fall outside the page then the window is moved as
necessary so that it lies wholly within the page (if possible).

Entering numbers:

Numbers are displayed in the status line, if it is enabled. Errors can be
corrected with the backspace key or left arrow key, Esc ends an incorrect
entry, Enter accepts the number.

If there no status line (see /os-) is displayed, numbers are entered blind.
First a beep shows that entry may begin (an initial (optional) sign followed
by digits only), backspace, left arrow, Esc and Enter have the same effect.
An illegal input causes a deeper beep. After pressing Enter, a higher tone is
sounded.


dviscr/dvivik status line
=========================

The status line displays the following information:

1. At the lefthand end the step selected by and is displayed.

2. To the right of this is either `R' (ruler moves), `W' (window moves)
or, if there is no ruler, nothing.

3. A little bit further right if gray scaling is possible, `Gxy' appears
otherwise `Sxy'. These are the values set by /ox#, /oy#, /sx# and /sy#
- and altered by <+>, <->, + and +.

4. The sheet number (the first page selected is sheet 1) appears in the
middle of the line together with the page number. For example,
5: 10.7
shows sheet 5 which is page number 10.7

5. To the right of this the coordinates of the top lefthand corner of the
window are shown (if transformed, this is not necessarily the top
lefthand corner of the screen: for example, in transformation 1 the
coordinates are those of the bottom lefthand corner of the screen).
The position display
x=0pt y=0pt
is the top lefthand corner of the sheet.
If the ruler is graduated then the distance between two (short)
gradations is displayed as well. The gradation is chosen to make this
a readable distance. Every tenth gradation is somewhat longer than the
others.

6. A `*' is displayed at the righthand end of the line while the picture
is being built up or while a text search is in progress.

The status line can be removed by the option /os-.


\special
========

The drivers can understand the following \specials:

\special{em:message xxx}
The text of the message is displayed immediately and appears after the
page number before the closing bracket.)

\special{em:graph xxx}
Insert the graphic file xxx at this place. Only the file name
part of xxx is used, the directory and/or drive is discarded.
The upper left corner of the graphic file gets located at
the reference point of a character that were printed at this place.
You can use MSP (MS Paint under Windows 1.x and 2.x) and PCX
(Paintbrush) files. 4 colour CGA mode PCX files cannot be used.
All non-white pixels of a PCX file are printed (assuming the
standard palette). For efficiency reasons, usage of MSP files
(Windows 2.x) is recommended. The width of the graphic must not
exceed 32760 pixels, the height must not exceed 32766 pixels.
Example (the size of the graphic is 21pt by 23pt):
\begin{center}
\begin{picture}(21,23)
\put(0,23){\special{em:graph dvitrans.2}}
\end{picture}
\end{center}

\special{em:point n}
\special{em:line a[h|v|p],b[h|v|p][,width]}
\special{em:linewidth width}
\special{em:moveto}
\special{em:lineto}
With these commands lines can be drawn at any desired angle.
A point n (1 to 32767) is defined with \special{em:point n} and gets
the coordinates of the `reference point.' \special{em:point n}
commands can be positioned using the LaTeX picture environment. For
plain TeX, see page 389 of the TeXbook.
Two such points can be joined by a line: \special{em:line a,b,width}
joins the points numbered a and b with a line `width' thick -- the
widht can be given in any unit acceptable to the /u* option except px.
The point numbers can have `h', `v' or `p' appended showing how the
end of the line should be cut. `p' causes the line to be cut
perpendicular to its direction, `h' make a horizontal cut and `v' a
vertical cut. `p' is used as default if no cut mode is specified.
Note that a horizontal line cannot have a horizontal cut nor
vertical line a vertical one!

Example: \special{em:line 1,2v,4pt}

Points need not be defined before the lines which refer to them.
Point and line definitions are local to the current page.

If a number of lines with the same width are to be drawn,
\special{em:linewidth width} can be used to set the default width for
all subsequent lines without a `width' argument -- \special{em:line
a,b}. The initial setting of the default width is 0.4pt; any
\special{em:line a,b} appearing before a `linewidth' special will have
this width.
To avoid errors, the required line width should be set before each
line graphic.

There are other commands for line drawing. \special{em:moveto} sets
the current (drawing) point to the coordinates of the reference point
without drawing a line: \special{em:lineto} draws a line between
the current point and the reference point, the reference point then
becomes the current point. A polygon can be drawn with one
\special{en:moveto} and a number of subsequent \special{em:lineto}
commands. The width of the line will be that set by
\special{em:linewidth width}.

The drivers take note of all \specials beginning with `em:'; blanks may appear
between `em:' and the following keyword (`message', `graph', `point', `line'
or `linewidth').

Any \specials which do not start with `em:' are silently ignored.


Warnings (error numbers 1xxx)
=============================

If the verbosity, see /v, is set to a lower number than that given in
brackets, then that warning message will be suppressed.

If the warning message is marked with [F] then the warning is suppressed when the
option /fl-1 is chosen.

If the warning message has a driver name in brackets then it applies only to
that driver.

#1, #2 stand for variable fields in the message.

All warnings have the format
Warning 1xxx: ...

In the following only the number and the message are given.

When you get the error message `[cannot open dvidrv.err]', the
file dvidrv.err (which contains the warning messages) couldn't be found.
You'll find the text of the warning message in this list using the
warning number produced by the driver.


1000: illegal number: #1
The numeric argument #1 of an option is not valid for the option or
an unacceptable size is given in response to a prompt for a font file
name.

1001: illegal number or unit of measure: #1
The argument #1 of an option is an illegal number or the unit is not
acceptable.

1002: parameter too long: #1
The argument #1 of an option is too long.

1003: path name too long
The argument of /[email protected]*, /pf*, /pd* oder /pg* is too long.

1004: missing path name
The argument of /[email protected]*, /pf*, /pd* oder /pg* is missing.

1005: illegal page number
The argument of /b* oder /e* isn't acceptable.

1008: bad option: #1
An option is misspelled or otherwise incorrect.

1009: unknown option: #1
The option #1 does not exist.

1010: invalid unit of measure: #1
The option /u* or /ou* is given with an unacceptable or misspelt unit,
#1.

1017: too many file names: '#1'
There are too many arguments which do not begin with either - or /
and are therefore taken to be file names. Depending on the driver,
only 1 or 2 file names can be given.

1018: input file '#1' not found
The DVI file cannot be found.

1019: cannot create output file '#1'
The output file cannot be opened.

1020: file name too long
The file name argument to /pi*, /pl*, /ps*, /pt* oder /pw* is too
long.

1021: missing file name
A file name must be given (this warning not yet in use).

1022: file '#1' not found
The file name given as an argument to /pi*, /pl* oder /ps* does not
exist.

1023: cannot nest response files
A response file cannot contain calls to other response files.

1024: response file '#1' not found
The @responsefile cannot be found.

1025: invalid #1 argument: #2
The argument #2 of option #1 is not valid.

1100: preamble data doesn't match postamble data: [2]
pre.#1=#2, post.#1=#3
The value #1 in the preamble differs from the value in the postamble.
Has somebody been meddling with this DVI file?
The value given in the preamble will be used.

1200: checksum does not match [2,F]
font file #1: #2
input file #3: #4
The font file #1 does not match the TFM file.

1201: wrong design size [2,F]
font file #1: #2
input file #3: #4
The font file #1 does not match the TFM file.

1202: wrong magnification [2,F]
font file #1: #2
input file #3: #4
The font file #1 does not match the TFM file.

1203: character #1: pixel width off by #2 [3,F]
The width of the character #1 (decimal) differs from the width
calculated from the TFM file by more than 1, namely by #2 (always
a signed number). If #2 is positive then the pixel width is the
larger, if #2 is negative then the TFM width is the larger.
This warning appears usually when the font file does not match the TFM
file used by TeX, in particular, when the font is loaded with the
wrong magnification.

1204: '#1' is not a usable font file [3]
In searching for a font file, the file #1 has been found. This file,
however, does not look like a font file. After issuing the warning,
the next step in the search, described above, is taken.

1205: font #1 [#2] not found
No suitable file for font #1 can be found. For further explanation
see "Font search rules".

1206: batch mode: font #1 replaced by #2 [1]
In Batch mode (cf. /fb) font file #2 has been used for font #1 as a
suitable file cannot be found.

1300: '#1' is not a usable graphics file [3]
When searching for a graphic file, the file #1 has been found.
This file is, however, not a valid graphic file. After this warning
has been issued, the search will continue according to the rules
described above.

1301: graphics file #1 (graph #2; #3 DPI) not found
The graphic file #1 cannot be found -- the command
is \special{em:graph #2}.

1400: undefined point: #1
The point #1 is not defined though it is used in \special{em:line}.

1401: duplicate point number: #1
The point #1 has been declared more than once in a
\special{em:point #1}.

1402: bad line omitted: #1,#2
The line with the endpoints #1 and #2 cannot be drawn.

1403: missing moveto
A \special{em:lineto} has appeared without a preceding
\special{em:moveto}


Fatal errors (2xxx)
===================

All fatal errors have the format
*** Fatal error 2xxx: ...

In the following only the number and ... will be shown.

When you get the error message `[cannot open dvidrv.err]', the
file dvidrv.err (which contains the error messages) couldn't be found.
You'll find the text of the error message in this list using the
error number produced by the driver.


2000: out of memory
There is not enough memory to run. Further information is given
showing how much memory was used by what. In some cases, this
error can be prevented by using /fl-1.

2001: cannot open #1 file '#2'
File #2 not found

2002: cannot create file '#1'

2003: cannot write to file '#1', disk full?
While writing to #1 an error was noted; a possible reason for this
error is that the disk is full.

2004: invalid scale factor
A font or virtual font is bad.

2005: cannot use XON/XOFF flow control
XON/XOFF flow control cannot be used as the port does not exist.

2006: serial interface time-out
When using the XON/XOFF flow control, 60 seconds has elapsed since an
XOFF was received without an XON.

2100: DVI file corrupted (undefined font)
2101: DVI file corrupted (no font selected)
2102: DVI file corrupted (DVI file ended prematurely)
2103: DVI file corrupted (position stack overflow)
2104: DVI file corrupted (position stack underflow)
2105: DVI file corrupted (bad postamble)
2106: DVI file corrupted (postamble not found)
2107: DVI file corrupted (illegal command in postamble)
2108: DVI file corrupted (bad preamble)
2109: DVI file corrupted (unexpected set_char command)
2110: DVI file corrupted (unexpected fnt_num command)
2111: DVI file corrupted (unexpected bop command)
2112: DVI file corrupted (unexpected eop command)
2113: DVI file corrupted (unexpected rule command)
2114: DVI file corrupted (unexpected motion command)
2116: DVI file corrupted (unexpected post_post command)
2117: DVI file corrupted (unexpected pre command)
2118: DVI file corrupted (invalid command)
2119: DVI file corrupted (back pointer does not point to bop)
2120: DVI file corrupted (more pages than claimed in postamble)
Bad DVI file.

2121: character number #1 out of range
An attempt is being made to set a character with a code outside the
acceptable range (0-255).

2131: erroneous \special{#1}: undefined keyword
After `em:' there is a unknown keyword in \special argument #1.

2132: erroneous \special{#1}: bad parameter
The \special declaration #1 an unacceptable parameter (for instance,
\special{em:point 0}).

2200: font #1 not found in batch mode
In batch mode, when a font cannot be found after all the search rules
have been tried, the program terminates with this message.


2201: font file error PK01
2202: font file error PK02
2203: font file error PK03
2204: font file error PK04
Bad PK font file.

2205: font #1 too big (#2 characters)
This font has too many characters.

2206: character number #1 not supported
This version of the driver can only handle character codes from 0 to
255; a character with a code outside this range has been encountered.

2207: font file '#1' ended prematurely
Bad font file: too short!

2208: font file '#1' disappeared
The font file #1 cannot be opened although it was there initially.
Perhaps the diskette has been swapped.

2209: undefined character #1 in font #2
Trying to use a chacacter which is not in the font file.

2210: character too big
A character is too big.

2211: character too big for reduction
A character is too big to reduce(!).

2212: character #1: invalid width
The widht of a character in the font file is quite impossible.

2213: '#1' is not a font library file
The file selected by the option /pl* is not a font library file.

2214: use 'fontlib /2 /b#1 #2' to convert font library
The font library file #2 must be converted to the new font library
format by using fontlib. You should also use the /f\emtex\fontlist
option when running fontlib. The batch file fontconv.bat/cmd can
be used for converting all the font libraries.

2300: graphics file #1 (#2 DPI) not found in batch mode
In batch mode the run is ended with this message when the search rules
have been exhausted while looking for a graphic file.

2301: graphics file '#1' ended prematurely
Bad graphic file: too short!

2302: graphics image too big
The picture is too wide.

2303: graphics image too big for reduction
The picture is too big to reduce (!)

2400: syntax error in font substitution file l.#1
Line #1 in the font substitution file has an error.

2401: missing parameter file name [dvidot]
dvidot expects the name of a parameter file as its first argument.

2402: parameter file '#1' not found [dvidot]
dvidot cannot find the parameter file #1. The first argument on the
command line must be the name of a parameter file.

2403: invalid parameter file (#1) [dvidot]
#1 is a number showing the type of error found.

2410: invalid page dimensions
... in options /w# or /h#.

2501: printer memory overflow [dvihplj]
Calculation shows that the printer's memory is now full.
The text will have to be split into smaller pieces. (/oc1 may help.)

2502: too many fonts per page [dvihplj]
There are more fonts required on this page than the printer can handle
-- split up the text or use /oc1.

2503: too many fonts [dvihplj]
There are more fonts required in the text than the printer can handle
-- split up the text or use /oc1.

2511: page width exceeds #1px
The width of the page set by the /w# option may not exceed
(converted) #1 px.

2513: line too long
While expanding %name%, a line became longer than 256 characters.

2514: cannot write to fontlib response file
While writing to the file given by the /pw* option an error occurred
(disk full?)

2520: graphics mode not supported [dviscr]
There is no graphics adapter card or the card present is not supported
by this driver.

2602: VF file corrupted (premature end of DVI commands)
2604: VF file corrupted (stack underflow)
2608: VF file corrupted (bad preamble)
2611: VF file corrupted (unexpected bop command)
2612: VF file corrupted (unexpected bop command)
2616: VF file corrupted (unexpected post_post command)
2617: VF file corrupted (unexpected pre command)
2618: VF file corrupted (invalid command)
2621: VF file corrupted (unexpected fnt_def command)
2622: VF file corrupted (unexpected post command)
2643: VF file corrupted (invalid command)
Bad VF file.

2603: VF file too complex: stack overflow
A virtual font can use a further virtual font which can, in its turn,
use a further virtual font, (and smaller fleas ...). This error
message is issued when this nesting is excessive or is in an endless
loop.

2640: input stack overflow
A virtual font can use a further virtual font which can, in its turn,
use a further virtual font, and so on ... This error
message is issued when this nesting is excessive or is in an endless
loop.

2641: input stack underflow
Bad VF file.

2644: character number #1 out of range
A character code in a VF file is unacceptable.

2645: virtual font #1 too big (#2 characters)
The virtual font #1 contains too many characters.


Internal errors (3xxx)
======================

All internal errors have the format
*** Internal error 3xxx
or
*** Internal error 3xxx: ...

If an internal error occurs, please tell the author.
Please make copies of all files in use (DVI, MSP, PXL, PK, FLI, VF, SUB, log
files) and make a copy of the error message. Please also make a note of the
arguments used.


Notes
=====

The drivers dvimsp and dvidot (as well as dviscr and dvivik if /o, /o#, /ox#
or /oy# are used) will not print characters which have a pixel row falling
above the top paper edge. As this is quite possible, especially with
characters from cminch, the option /t0 should not be used -- better to use
/t1px which moves everything one pin width lower.

Fonts may only contain characters with codes in the range 0 to 255.

The width of a character may not exceed 32760 points and the height 32766. If
a character needs more than 32000 bytes of memory (say, 504x507 points) the
driver slows down noticeably.

If MS-DOS or PC-DOS issues a printer timeout error in the middle of printing
then you should this command to remove timeout checks:

mode lpt1,,p (DOS 2.x and 3.x)
mode lpt1 retry=r (DOS 4.0 or later)

where lpt1 is to be replaced by the correct printer port designation.

The text of error messages is read from the file dvidrv.err. This file must
be in a directory listed in the PATH environment variable. This file has
been created to save memory, not so that the user can change the messages.


Output with the /v4 option
==========================

dvihplj:
At the end of each page:
a is the memory used for fonts
b is the memory used for this page
c is the number of fonts defined so far
d is the number of fonts used on this page

all:
At the end of the program the memory usage, for example
page buffers 4 40024
This means that 4 page buffers using a total of 40024 bytes were
used. This memory usage table will also be printed (without /v4)
if there is not enough memory.


Return codes (ERRORLEVEL)
=========================

0 No errors
1 Bad argument
2 Bad \special command
100 Not enough memory
101 Not enough memory or disk space
200 Bad DVI file
201 Bad font file or font not found
202 Bad graphic file or graphic file not found
203 Bad VF file
204 Other error
205 Internal error


History
=======


[...not translated...]



Version 1.4b (13.08.90):
------------------------

- Bug fixed: dviscr and dviscrs (1.4a) crashed when used with a
Hercules Graphics Card.


Version 1.4c (20.08.90):
------------------------

- Bug fixed: dvihplj confused characters.


Version 1.4d (25.09.90):
------------------------

*** New font library file format. Old font libraries have to be
converted to the new format by using (for instance)
fontlib /2 /b300 /f\emtex\fontlist lj_1500 lj_0
The batch file fontconv.bat/cmd converts all the font library files.
See README.ENG.

*** The unit of measurement for printing/reading font sizes changed to dpi.
This also affects font substitution files.

*** Default setting for /pf* option changed: pxl$s (e.g., pxl1500)
replaced with $rdpi (e.g., 300dpi). Also changed in all dot files.

- New dvidot parameter files: lqh.dot and lqwh.dot for 360 DPI on
EPSON LQ-550 etc. (not supported by all printers of the EPSON
LQ series).

- dvidot parameter files fx80.dot and fx100.dot changed to support
more printers.

- The dvimsp log file could not be used as response file.

- dvimsp: create multiple graphic files.

- dvimsp can create PCX files. (Therefore, the name of dvimsp
may change soon.)


-------- End of DVIDRV.DOC -------------
==============================================================================
DVIDRV 1.4d VERSION: 25.09.1990
==============================================================================

Die dvidrv-Treiber werden zum Drucken oder zur Bildschirmausgabe von
DVI-Dateien, wie sie z.B. von TeX erzeugt werden, benutzt.
Es knnen folgende Zeichensatzdateien verwendet werden:

Erweiterung ID
PXL 1001 (32-Bit-Wrter)
PXL 1002 (8-Bit-Wrter)
PK 89 (komprimiert)

Die Zeichensatzdateien brauchen nicht eine dieser Erweiterungen zu besitzen,
das Format wird ausschlielich aus den in der Datei vorgefundenen Daten
ermittelt. PK-Dateien mit ID 87 knnen NICHT verwendet werden!

Zustzlich knnen Zeichensatzbibliotheksdateien -- eine dvidrv-Spezialitt --
gelesen werden. Darin sind mehrere Zeichensatzdateien zusammengefat.
Die Verwendung von solchen Bibliotheksdateien spart Plattenplatz und
Verarbeitungszeit. Auerdem wird die Anzahl der Dateien erheblich
reduziert. Nachteil ist die unhandliche Lnge und der Aufwand fr das
Ersetzen von Zeichenstzen. Siehe fontlib-Handbuch.


Es gibt folgende Treiberversionen:

dviscr Screen-Previewer (unter anderem CGA, EGA, VGA, HGC)
dvivik Screen-Previewer (Viking I)
dvimsp Grafikdatei erzeugen (msp oder pcx)
dvihplj HP LaserJet+, HP DeskJet und Kyocera F-1010
dvidot Nadeldrucker (einstellbar)

Fr dvidot sind bisher die folgenden Parameterdateien vorhanden:

Param.- Drucker Auflsung Envir.- /pf*
datei (Aufzhlung unvollst.) h x v DPI variable Voreinstellung
------------------------------------------------------------------------------
fx80 EPSON FX- und RX-Serie 240x216 DVIFX \emtex\pixel.fx\$rdpi
fx100 EPSON FX- und RX-Serie 240x216 DVIFX \emtex\pixel.fx\$rdpi
lql EPSON LQ-Serie 180x180 DVILQL \emtex\pixel.p6l\$rdpi
lqm EPSON LQ-Serie 360x180 DVILQM \emtex\pixel.p6m\$rdpi
lqh EPSON LQ-Serie 360x360 DVILQH \emtex\pixel.p6h\$rdpi
lqwl EPSON LQ-Serie (breit) 180x180 DVILQL \emtex\pixel.p6l\$rdpi
lqwm EPSON LQ-Serie (breit) 360x180 DVILQM \emtex\pixel.p6m\$rdpi
lqwh EPSON LQ-Serie (breit) 360x360 DVILQH \emtex\pixel.p6h\$rdpi
p6l NEC P6 180x180 DVIP6L \emtex\pixel.p6l\$rdpi
p6m NEC P6 360x180 DVIP6M \emtex\pixel.p6m\$rdpi
p6h NEC P6, Panasonic KX-P1124 360x360 DVIP6H \emtex\pixel.p6h\$rdpi
p7l NEC P7 180x180 DVIP6L \emtex\pixel.p6l\$rdpi
p7m NEC P7 360x180 DVIP6M \emtex\pixel.p6m\$rdpi
p7h NEC P7 360x360 DVIP6H \emtex\pixel.p6h\$rdpi
itoh C.ITOH 8510A 160x144 DVIITOH \emtex\pixel.ito\$rdpi
aiw Apple Imagewriter 160x144 DVIAIW \emtex\pixel.aiw\$rdpi
dmp130 Tandy DMP-130 240x216 DVIDMP \emtex\pixel.fx\$rdpi
ibm4201 IBM Proprinter 4201 240x216 DVI4201 \emtex\pixel.fx\$rdpi
ibm4202 IBM Proprinter 4202 240x216 DVI4202 \emtex\pixel.fx\$rdpi
ibm4207l IBM Proprinter 4207 180x180 DVI4207L \emtex\pixel.p6l\$rdpi
ibm4207m IBM Proprinter 4207 360x180 DVI4207M \emtex\pixel.p6m\$rdpi
ibm4208l IBM Proprinter 4208 180x180 DVI4208L \emtex\pixel.p6l\$rdpi
ibm4208m IBM Proprinter 4208 360x180 DVI4208M \emtex\pixel.p6m\$rdpi

Die Proprinter 4207 und 4208 mssen auf AGM eingestellt sein.

Nicht alle EPSON-LQ-Drucker untersttzen 360x360 DPI (lqh.dot und lqwh.dot).

Sie knnen leicht selbst Parameterdateien erstellen, siehe makedot.doc.

Wenn der Speicher im real mode (DOS) knapp ist, sollte dviscrs.exe statt
dviscr.exe verwendet werden (Umbenennung ist nur bei Verwendung von
DOS 3.0 oder spter mglich). Diese Version luft nur im real mode,
bentigt weniger Speicher und ist etwas langsamer. Sonst verhlt sie
sich genau wie dviscr.exe, z.B. ist der Standardwert fr die
Protokolldatei `dviscr.dlg'.


Aufruf
======

dviscr ?
dvivik ?
dvimsp ?
dvihplj ?
dvidot ?
Hilfe anzeigen; nur die Optionen, die im normalen Betrieb
bentigt werden. Um eine Auflistung aller Optionen zu erhalten,
geben Sie zwei Fragezeichen an.

dviscr [Optionen] Eingabedatei [Optionen]
dvivik [Optionen] Eingabedatei [Optionen]
dvimsp [Optionen] Eingabedatei [Optionen] Ausgabedatei [Optionen]
dvihplj [Optionen] Eingabedatei [Optionen] Ausgabedatei [Optionen]
dvidot Param.datei [Optionen] Eingabedatei [Optionen] Ausgabedatei [Optionen]

Werden Argumente weggelassen, so werden diese interaktiv erfragt.
(Siehe auch //-Option). Ausnahme: Die Parameterdatei fr dvidot mu immer
in der Kommandozeile angegeben werden. Bei jeder Frage knnen gleich mehrere
Argumente angegeben werden; diese werden wie in der Kommandozeile
interpretiert. Eine leere Eingabe bei der Frage nach der Eingabedatei
wird durch `texput' ersetzt.

Die dvidot-Parameterdatei (Standarderweiterung ist .dot) wird in den
Verzeichnissen gesucht, die in der PATH-Environment-Variable angegeben sind.
Der Name der Parameterdatei MUSS in der Kommandozeile und als erstes Argument
angegeben werden.

Die Standarderweiterung fr die Ausgabedatei ist bei dvimsp `MSP' oder
`PCX' (je nachdem, ob /o1, /o2 oder /op verwendet wird), alle anderen
Treiber verwenden keine Standarderweiterung fr die Ausgabedatei.
Es kann fr die Ausgabedatei auch PRN, LPT2, COM2, o.. angegeben
werden (unsinnig bei dvimsp).
Wird in eine Datei gedruckt, so sollte diese dann mit
COPY /B datei prn
gedruckt werden (wichtig ist das /B --- sonst wird beim ersten ^Z aufgehrt).

Unter OS/2 kann statt einer Ausgabedatei ein Bindestrich angegeben
werden, die Ausgabe der Druckeranweisungen erfolgt dann auf stdout
und kann ber eine Pipe weiterverarbeitet werden.

dvimsp erzeugt normalerweise nur eine Grafikdatei, die das erste ausgewhlte
Blatt enthlt. Es knnen aber auch mehrere Grafikdateien mit einem Aufruf
erzeugt werden. Hierzu ist im Ausgabedateiname ein `?' oder mehrere
aufeinanderfolgende `?' anzugeben. Die Fragezeichen werden durch eine Zahl
(mit fhrenden Nullen) ersetzt, beim ersten Blatt durch 1, beim zweiten
durch 2, usw. Wenn ein Fragezeichen angegeben ist, werden bis zu 9 Grafik-
dateien erzeugt, bei zwei Fragezeichen bis zu 99, usw. Beispiel:
dvimsp @lj.cnf meintext seite??
erzeugt die Grafikdateien seite01.msp bis maximal seite99.msp.

Wenn nach den Optionen gefragt wird, kann `-' bzw. `/' am Anfang
der ersten Option der Zeile weggelassen werden.

Statt der Ein- oder Ausgabedatei oder einer Option kann auch @Antwortdatei
angegeben werden. Dann werden die in der angegebenen Antwortdatei enthaltenen
Zeilen an dieser Stelle interpretiert, danach wird das auf @Antwortdatei
folgende Argument bearbeitet. Die Zeilenlnge der Antwortdatei ist auf
127 Zeichen beschrnkt. Beispiel:
dvidot fx80 @fx.cnf test prn
Hier werden zunchst die in der Datei fx.cnf enthaltenen Argumente
verarbeitet, dann die Datei test.dvi gedruckt. Die Ausgabe erfolgt
auf die Schnittstelle PRN.
Auch wenn der Treiber nach einem Dateinamen oder nach Optionen fragt,
kann @Antwortdatei angegeben werden; die in der Datei enthaltenen
Argumente werden jedoch auch hier nicht auf den Bildschirm ausgegeben.

Argumente knnen auch in Environment-Variablen gespeichert werden; diese
werden zuerst betrachtet.
Es empfiehlt sich aber, nur Optionen (und Aufrufe von Antwortdateien,
die nur Optionen enthalten) in Environment-Variablen anzugeben; bei
Angabe eines Dateinamens knnte nur diese Datei verarbeitet werden.
Zunchst wird die Environment-Variable DVIDRV betrachtet, dann eine
weitere, deren Name Name gleich dem Namen des jeweiligen Treibers ist.
dvidot verwendet dann noch eine weitere Environment-Variable, deren Name
in der Parameterdatei eingstellt ist.
Um z.B. /pd=c:\mydvi als Voreinstellung fr dviscr zu verwenden, kann
das Betriebssystemkommando
set dviscr=/pd:c:\mydvi
eingegeben werden. Optionen, die von allen Treibern verwendet werden
sollen, knnen in die Environment-Variable DVIDRV gespeichert werden.
Sollen z.B. alle Maangaben in mm erfolgen, kann das Betriebssystemkommando
set dvidrv=/umm
benutzt werden. Dies wirkt sich auf alle Treiber aus.

Vor der Auswertung einer Argumentzeile (das ist eine interaktiv eingegebene
Zeile, die Kommandozeile, der Inhalt einer der oben angefhrten
Environment-Variablen oder eine Zeile einer Antwortdatei) wird jede
Konstruktion der Form `%name%' wie durch den Inhalt der Environment-
Variable `name' ersetzt. Wenn keine Environment-Variable mit dem
angegebenen Namen existiert, wird `%name%' ignoriert.

Falls in der Environment-Variable %name%-Konstruktionen vorkommen,
werden diese nicht expandiert (d.h. unverndert bernommen).

Diese Konstruktion ist vor allem in Antwortdateien ntzlich, z.B. um die
Inhaltsverzeichnisse durch Environment-Variablen (ohne nderung der
Antwortdateien) einstellen zu knnen. Falls in einer Zeile einer
Antwortdatei nur ein % vorkommt, so wird der Rest der Zeile ignoriert.
Dies kann zum Kommentieren der Antwortdatei verwendet werden.

Ein `@' am Anfang einer Zeile (Spalte 1) einer Antwortdatei bewirkt,
da der Rest der Antwortdatei ignoriert wird. Dies ermglicht die
Verwendung einer Protokolldatei als Antwortdatei.


Optionen
========

`#' steht fr eine Zahl, u.U. von einer Lngeneinheit gefolgt
(Lngeneinheiten mssen kleingeschrieben werden);

`+' steht fr + oder -. Mit + wird die Option eingeschaltet,
mit - abgeschaltet. Ohne +/- wird die Option EINgeschaltet.

`*' steht fr ein sonstiges Argument.

Alle Optionen werden mit - oder / eingeleitet. Optionen werden durch
Leerstellen getrennt oder umittelbar von einer weiteren Option gefolgt, die
dann aber mit / beginnen mu.
Zwischen einer Option und deren Argument drfen keine Leerstellen stehen.
Zwischen einer Option und deren #-Argument darf :, = oder := stehen, Beispiel:
/t=10mm
Bei den Optionen, die einen Datei- oder Verzeichnisnamen verlangen (z.B.
/pf* und /pl*) darf das Argument auch durch :, = oder := abgetrennt werden.

Beachte: In einer Environment-Variable kann kein `=' gespeichert werden;
auch kann `=' nicht als Argument an eine Batch-Datei bergeben werden.
Das Zeichen ';' kann ebenfalls nicht als Argument an eine Batch-Datei
bergeben werden (betrifft Listen von Verzeichnissen und Dateien).


Optionen zur Steuerung der Ausgabe von Meldungen
================================================

/? Es wird eine Hilfstafel angezeigt, welche die aktuellen Werte
der am hufigsten benutzten Optionen enthlt.

/?? Es wird eine Hilfstafel angezeigt, welche die aktuellen Werte
aller Optionen enthlt.

/v# Meldungsumfang einstellen (verbosity):
/v0 Nur fatale Fehlermeldungen ausgeben.
/v1 Wie /v0, aber es werden zustzlich Seitennummern
und die vom Batch-Modus bewirkten Zeichensatz-
ersetzungen angezeigt.
/v2 Wie /v1, aber zustzlich `Loading...', ernste
Warnungen und den in der DVI-Datei enthaltenen
Kommentar ausgeben.
/v3 Wie /v2, es werden aber zustzlich alle Warnungen
und \special's ausgegeben.
/v4 Wie /v3, aber zustzlich Statistiken (siehe unten)
und die Dateinamen der Zeichensatzdateien ausgeben.
/v5 Wie /v4, aber zustzlich Kommentare in Zeichensatz-
dateien ausgeben.
Voreinstellung ist /v2. Beachten Sie, da /fl-1 die Ausgabe von
Zeichensatzkommentaren und Warnungen ber Ungereimtheiten in
Zeichensatzdateien unterdrckt.


Optionen zur Blattauswahl
=========================

Mit diesen Optionen werden die zu druckenden Bltter ausgewhlt.
Die hier aufgefhrte Reihenfolge dieser Optionen gibt an, in welcher
Reihenfolge sie angewandt werden: Zunchst sind alle Bltter ausgewhlt.
Die erste hier aufgefhrte Option entfernt u.U. gewisse Bltter aus der
Auswahl. Die zweite hier aufgefhrte Option schrnkt die briggebliebenen
Bltter weiter ein. Und so weiter.

/b* Anfangsseite einstellen. Die DVI-Datei wird vom Anfang her gelesen,
bis eine passende Seite auftritt. Die Blattauswahl beginnt
mit dem Blatt, das diese Anfangsseite enthlt.
Ein Stern steht fr eine beliebige Seitenzahl.
Es knnen maximal 10 Seitennummern (durch . getrennt)
angegeben werden; diese werden mit \count0 bis \count9 verglichen.
Am Ende der Eingabe fehlende Seitenzahlen werden als * angenommen,
Standard ist * (alle Seiten passen, d.h, es wird mit dem ersten Blatt
begonnen).
Beispiel: /b-3.*.4 Sobald eine Seite mit \count0=-3 und
\count2=4 auftritt, beginnt die
Auswahl

/e* Endseite einstellen. Wenn, nachdem die Anfangsseite gefunden wurde,
eine passende Seite auftritt, ist das Blatt, das diese Seite
enthlt, das letzte ausgewhlte Blatt. Es werden also die
Bltter ausgewhlt, die den mit /b* und /e* eingestellten
Seitenbereich enthalten.
Standard ist *; dies ist eine Ausnahme und bedeutet, da kein
Vergleich stattfindet.
Beispiel: /e10.5 Das letzte gedruckte Blatt ist das,
das die Seite 10.5 enthlt

/2* Zweiseitig drucken. Es wird nur jedes zweite Blatt ausgewhlt.
Bei Angabe von /2o (odd) wird das 1., 3., usw. Blatt ausgewhlt,
bei Angabe von /2e (even) wird das 2., 4., usw. Blatt ausgewhlt.
/2- ist die Voreinstellung: es bleiben alle Bltter ausgewhlt.
Beispiel: /2o Doppelseitig drucken, erster Teil
/2e Doppelseitig drucken, zweiter Teil

/k# Anzahl der am Anfang zu ignorierenden Bltter. Die ersten #
der bisher ausgewhlten Bltter werden bersprungen.
Voreinstellung ist 0.
Beispiel: /k1 Ein Blatt wird bersprungen

/n# Maximalzahl der Bltter. Es werden maximal # Bltter gedruckt.
Voreinstellung: keine Begrenzung der Anzahl der Bltter.
Beispiel: /n=10 Es werden hchstens 10 Bltter
gedruckt

/z+ Bltter rckwrts ausgeben. Es wird mit dem letzten Blatt begonnen.
Standard ist /z-: Beim ersten Blatt beginnen.

/np# Jedes Blatt #-mal hintereinander drucken (Voreinstellung: 1).
Diese Option wird von dviscr, dvivik und dvimsp nicht untersttzt.

/nf# Die ganze Datei #-mal drucken (Voreinstellung: 1).
Werden bei Verwendung von /np1/nf1 (Voreinstellung) z.B. die
Bltter 1 und 2 gedruckt, so werden bei /np2/nf3 diese
Bltter in folgender Reihenfolge gedruckt: 1 1 2 2 1 1 2 2 1 1 2 2.
Diese Option wird von dviscr, dvivik und dvimsp nicht untersttzt.


Einstellungen fr Zeichenstze
==============================

Die meisten dieser Optionen werden fr jeden Treiber nur
einmal (und dann in einer Antwortdatei) eingestellt.

/fb Batch-Modus: Wenn ein Zeichensatz nicht gefunden wird, wird
er zunchst mit Vergrerung 1000 gesucht. Dann wird nach
cmr10 gesucht, zuletzt nach cmr10 mit Vergrerung 1000.
War dies nicht erfolgreich, ist dies ein fataler Fehler und der
Programmlauf wird abgebrochen. Dieses Suchschema kann ber eine
Zeichensatzersetzungsdatei verndert werden. /fb kann mit /fc
oder /fi abgeschaltet werden.

/fc Change-Modus: Vor dem Laden jedes Zeichensatzes und vor dem Laden
einer Grafik kann der Dateiname gendert werden. /fc kann mit /fb
oder /fi abgeschaltet werden.

/fd# Hiermit wird die interne Variable max_drift eingestellt.
Falls Ungenauigkeiten bei den Zeichen- oder Zeilenabstnden
auftreten, sollten Sie versuchen, ob ein ein anderer max_drift-Wert
Besserung schafft. blich sind Werte von 0 bis 3. Die Voreinstellung
hngt vom Treiber ab; um den eingestellten Wert zu erfahren, knnen
Sie /?? benutzen.

/fi Interaktiver Modus. Dies ist die Voreinstellung.
Wenn ein Zeichensatz oder eine Grafik nicht gefunden wird,
haben Sie die Mglichkeit, die Gre und den Dateinamen
zu ndern. /fi kann mit /fb oder /fc abgeschaltet werden.

/fl# Font load limit. Wenn der Treiber zu Beginn die Zeichenparameter
aus den Zeichensatzdateien liest ("Loading font ..."), werden
smtliche Zeichen geladen, die nicht mehr als # Bytes Speicherplatz
bentigen. Die Angabe /fl-1 ist ein Spezialfall: Die Zeichen-
parameter werden dann erst bei Bedarf geladen; zu Beginn wird nur
festgestellt, ob alle Zeichensatzdateien vorhanden sind.
/fl-1 verhindert allerdings die Ausgabe von Warnungen ber
Ungereimtheiten in den Zeichensatzdateien, sollte also nur dann
verwendet werden, wenn Sie sicher sind, da alle Zeichensatzdateien
passen. Voreingestellt ist 300. Das heit, da alle Zeichen,
fr die jeweils 300 oder weniger Bytes Speicher bentigt wird,
sofort geladen werden. Wird spter ein (greres) Zeichen bentigt,
das noch nicht geladen wurde, mu die Zeichensatzdatei erneut
geffnet werden. Wenn dviscr oder dvivik mit Zeichensatzdateien
auf der Festplatte benutzt wird, ist es gnstiger, /fl0 oder gar
/fl-1 anzugeben, da man dann schneller das erste Blatt sieht. Falls
der Treiber sich ber Speichermangel beschwert, knnte es helfen
(mu aber nicht), /fl0 oder /fl-1 anzugeben; der Treiber bentigt
dadurch zwar nicht weniger Speicher, aber die Speicheraufteilung
knnte u.U. etwas besser sein.
Beispiele: /fl=0 berhaupt kein Zeichen zu
Beginn laden.
/fl-1 Zeichenstze erst bei Bedarf
laden.
/fl:1000 Zu Beginn alle Zeichen laden,
fr die hchstens 1000 Bytes
bentigt werden.

/fs# Zeichensatzskalierung. Hiermit kann die Gre der Zeichenstze
/fsx# reduziert werden. Auf diese Weise knnen fr eine hhere
/fsy# Auflsung gedachte Zeichenstze verwendet werden (Plattenplatz!).
Es werden jeweils die Grafikpunkte eines Rechtecks der mit /fsx#
angegebenen Breite und der mit /fsy# angegeben Hhe zu einem Punkt
zusammengefat. Mit /fs# werden beide Werte zugleich (auf den
gleichen Wert) gesetzt. Mgliche Werte sind 1 bis 8. Mit /fs#
verkleinerte Zeichenstze sind normalerweise deutlich schlechter
als mit METAFONT fr die gewnschte Gre berechnete Zeichenstze.
Es sollte mit /rf# die Auflsung der zu verwendenden Zeichenstze
eingestellt werden.
Beispiel: /r180/fsx2/rfx360 P6L-Zeichenstze durch
verkleinerte P6M-Zeichenstze
ersetzen.



Optionen zur Einstellung des Blatt-Layouts
===========================================

/tr# Transformation der Ausgabe.
/tr0 Normale Ausgabe.
/tr1 Um 90 Grad gegen den Uhrzeigersinn gedreht.
/tr2 Um 180 Grad gedreht.
/tr3 Um 270 Grad gegen den Uhrzeigersinn gedreht.
/tr4 An \-Diagonale gespiegelt.
/tr5 Vertikal gespiegelt.
/tr6 An /-Diagonale gespiegelt.
/tr7 Horizontal gespiegelt.

In der Praxis wird meistens /tr0 oder /tr1 verwendet.

Die Transformationen wirken sich auf das Muster
A B
C D
E F
wie folgt aus:

0 1 2 3 4 5 6 7
A B B D F F E E C A A C E E F F D B B A
C D A C E D C F D B B D F C D E C A D C
E F B A A B F E

Wichtig: Blattbreite und -hhe mit /h# und /w# richtig einstellen
(fr Koordinatentransformation).
Hinweis: Fr alle Transformationen kann das gleiche Blattformat
verwendet werden, d.h., /h# und /w# brauchen nicht
verndert zu werden. Die mit /t# und /l# eingestellten
Rnder sind `ber' bzw. `links' vom Text (sie werden
transformiert). Das gleiche gilt fr /cx# und /cy#.
Die mit /la# und /ta# eingestellten Rnder beziehen sich
jedoch auf den `Druckerrand' und werden nicht transformiert.
Hinweis: Fr /rx# und /ry# unterschiedlich werden bei Rotation
um 90 oder 270 Grad oder Spiegelung an einer Diagonalen
andere Zeichenstze bentigt (dies betrifft folgende
Drucker: EPSON FX-80/100, NEC P6/P7 (360x180 DPI),
C.ITOH 8510A, Apple Imagewriter)!
Hinweis: Tastenfunktionen fr dviscr/dvivik siehe und .

Derzeitige Einschrnkungen fr Transformationen 1 bis 7:
- Groe Zeichen gehen nicht.
- \special{em:graph} geht nicht.

/h# Blatthhe einstellen. Bei dviscr und dvivik wird dieser Wert
fr die Darstellung des Blattrandes durch Linien benutzt.
Bei dvimsp legt dieser Wert die Gre der erzeugten Grafikdatei
fest, falls nicht /om+ angegeben wurde. Bei den Druckertreibern
gibt dieser Wert an, wieviel vom Blatt bedruckt werden
kann; der Blattvorschub wird aber mit Form Feed erzeugt,
d.h., die Blattlnge ist am Drucker einzustellen. Eine Ausnahme
bilden `dvidot itoh' und `dvidot aiw': Hier wird der mit
/hf# eingestellte Wert fr den Blattvorschub benutzt.

Beispiel: /h12in Hhe auf 12in einstellen

/l# Linker Rand. Der ganze Ausdruck wird um # gegenber dem
linken Blattrand nach rechts verschoben.
Standardwert ist 1in.
Beispiel: /l1cm Linken Rand auf 1cm einstellen

/la# Linken Rand justieren. Man drucke adjust.dvi mit /la0/l0 und
messe den Abstand des Quadrats vom linken Papierrand. Davon ziehe
man ein Zoll (25.4mm) ab und gebe diesen Wert bei /la# an.
Damit wird mit /l# genau der linke Rand # erzeugt.
Genauer: Mit /la=x /l=y wird der Ausdruck um y-x nach rechts
verschoben. Der Standardwert ist treiberspezifisch.

/t# Oberer Rand. Der ganze Ausdruck wird um # gegenber dem
oberen Rand nach unten verschoben.
Standardwert ist 1in.
Beispiel: /t-.5 Alles um 1/2 Einheiten nach oben
verschieben (bei /la0; die Einheit
ist normalerweise `in', siehe /u*)

/ta# Oberen Rand justieren. Man drucke adjust.dvi mit /ta0/t0 und
messe den Abstand des Quadrats zum oberen Papierrand. Davon ziehe
man ein Zoll (25.4mm) ab und gebe diesen Wert bei /ta# an.
Damit wird mit /t# genau der obere Rand # erzeugt.
Genauer: Mit /ta=x /t=y wird der Ausdruck um y-x nach unten
verschoben. Der Standardwert ist treiberspezifisch.

/w# Blattbreite einstellen. Bei dviscr und dvivik wird dieser Wert
zur Darstellung des Blattrandes durch Linien benutzt.
Bei dvimsp legt dieser Wert die Gre der erzeugten Grafikdatei
fest, falls nicht /om+ angegeben wurde. Bei den Nadeldrucker-
treibern wird dieser Wert um 1px verringert, falls
sich gerade die maximale Breite ergibt. Bei `dvidot fx80', z.B.,
wird die Breite um 1px verringert, falls (umgerechnet)
1920px eingestellt wird.
Beispiel: /w22cm Breite auf 22cm einstellen


Mehrere Seiten pro Blatt und wechselnde Rnder
==============================================

/c? Alle eingestellten /cx#- und /cy#-Werte anzeigen.

/cf# Anfangswert fr Verschiebungsindex (Standardwert: 1).
Der Verschiebungsindex gibt an, welche /cx# und /cy# Werte
fr die aktuelle Seite verwendet werden sollen.
Der Verschiebungsindex wird bei jeder Seite um eins erhht.
Wenn der Endwert berschritten wird, wird der Index auf 1
zurckgesetzt. Endwert ist die bei /cp# angegebene Zahl oder
der hchste mit /ci# eingestellte Index, je nachdem, welche
Zahl grer ist. Auf dem ersten Blatt bleiben die Positionen
1 bis #-1 unbedruckt. Hinweis: /cf# wirkt sich auf die Blatt-
auswahl aus!

Beispiel:
/ci2/cx4in
/cp2/cf2 Es werden jeweils zwei Seiten
auf ein Blatt gedruckt. Die
erste Seite wird auf die
RECHTE Hlfte des ersten Blattes
gedruckt, die zweite auf die LINKE
Hlfte des zweiten Blattes, die
dritte auf die RECHTE Hlfte des
zweiten Blattes, ...


/ci# Hiermit wird eingestellt, wohin die nchsten mit /cx# und
/cy# eingegebenen Werte gespeichert werden. Es gibt zum einen
die Blattverschiebung, die die Verschiebung des gesamten
Blattes angibt (wird mit /l#, /la#, /t# und /ta# eingestellt).
Zum anderen gibt es 16 Seitenpositionen. Diese geben an,
um wieviel die entsprechende Seite bezglich des Blattes
verschoben wird (Standardwerte sind /cx0 und /cy0).
Mit /ci# kann durch Angabe einer Zahl von 1 bis 16 bestimmt werden,
welche dieser Seitenpositionen gesetzt werden sollen.
/ci ohne Argument erhht um eins. Anfangswert ist 1.
Der hchste mit /ci# eingestellte Wert -- oder der mit /cp#
eingestellte Wert, falls dieser grer ist -- gibt an, wieviele
verschiedene Seitenpositionen verwendet werden sollen.
Beispiel: /ci2/cx4in Die Seiten in Position 2 werden
um 4in nach rechts verschoben.


/cp# Hiermit wird eingestellt, wieviele Seiten pro Blatt gedruckt
werden. Dieser Wert darf kleiner als die Anzahl der Seitenpositionen
sein, sollte aber ein Vielfaches davon sein (sonst ist das Ergebnis
etwas seltsam). Voreinstellung ist 1. Werden z.B. 4 Seitenpositionen
zusammen mit /cp2 (und /cf1) verwendet, so werden die Seiten wie
folgt auf die Bltter verteilt:
Seite Blatt Position
1 1 1
2 1 2
3 2 3
4 2 4
5 3 1
und so weiter. Hiermit werden zwei Seiten pro Blatt gedruckt,
wobei die Bltter abwechselnd mit zwei verschiedenen Rndern
gedruckt werden (bei geeigneten Seitenpositionen).

/cx# Verschiebung fr die Seiten in der mit /ci# gewhlten Position
/cy# einstellen.

Komplette Beispiele:

/ci2 /cx4in
/ci3 /cy4in
/ci4 /cx4in /cy4in
/cp4

Drucken von 4 Seiten auf ein Blatt. Die Positionen
werden hierdurch wie folgt gesetzt:
1: /cx0in /cy0in (links oben)
2: /cx4in /cy0in (rechts oben)
3: /cx0in /cy5in (links unten)
4: /cx4in /cy5in (rechts unten)

/cx-1cm /ci /cx1cm

Die erste Seite wird um 1cm nach links verschoben,
die zweite um 1cm nach rechts, die dritte um 1cm nach links,
usw. (es wird eine Seite pro Blatt gedruckt).

Es wird empfohlen, fr jede verwendete Variante eine Antwortdatei
anzulegen, diese kann dann bei Bedarf einfach mit @dateiname aufgerufen
werden, ohne da man sich Gedanken ber die doch nicht allzu einfache
Eingabe der Positionen machen mu.

Beispiel (dviscr @twoup /o8):

% twoup
/ci1 /cx0 /cy0
/ci2 /cx8.5in /cy0
/cp2
/cf1
/w17in


Vergrerung und Auflsung
==========================

/m# Die in der DVI-Datei angegebene Vergrerung wird durch # ersetzt
(magnification). # kann Werte von 100 bis 16000 annehmen, die
Angabe erfolgt wie bei \mag oder scaled, also mit 1000
multipliziert (/m1000 die normale Gre); oder es wird fr # h oder
0 bis 5 fr \magstephalf bzw. \magstep0 bis \magstep5 angegeben.
Die Werte 6 bis 9 werden entsprechend interpretiert. Beachten Sie,
da fr die gewhlte Vergrerung Zeichenstze vorhanden sein mssen!
Beispiel: /m:=1200 Vergrerung um Faktor 1.2
/m2 Vergrerung um Faktor 1.44
/m:500 Halbierung der Gre
/mh Vergrerung um Faktor 1.2
/m1414.213562 Vergrerung um Faktor 2

/r# Auflsung einstellen. Mit /rx# wird die horizontale Auflsung, mit
/rx# /ry# die vertikale Auflsung, und mit /r# beide Auflsungen.
/ry# eingestellt. Der Standardwert ist vom Treiber abhngig:
dviscr /r300
dvivik /r300
dvimsp /r300
dvihplj /r300
dvidot in der dot-Datei eingestellt
Diese Angabe erfolgt in Bildpunkte pro Zoll.
Man beachte, da geeignete Zeichenstze zur Verfgung stehen mssen.
Viele Angaben hngen von der Auflsung ab; die Treiber berechnen
jedoch die zugehrigen Pixel-Werte erst nachdem alle Optionen
betrachtet wurden. Daher mu die /r#-Option nicht an den Anfang
gestellt werden! Siehe auch /rf#.
Beispiel: /r180 Die Auflsung sei 180 DPI

/rf# Zeichensatzauflsung einstellen (font resolution). Die Angabe erfolgt
in Bildpunkten pro Zoll (dpi). Diese Option wird meist zusammen mit
/fs# verwendet. Die horizontale und vertikale Auflsung kann mit
/rfx# und /rfy# getrennt eingestellt werden. Ohne Angabe von /rf# wird
der mit /r# eingestellte Wert (Auflsung) fr die Zeichenstze
benutzt.

/rg# Auflsung fr Grafikdateien einstellen (graphics resolution).
Die Angabe erfolgt in Bildpunkten pro Zoll. Mit dieser Option
wird lediglich eingestellt, was fr $r und $s bei /pg* eingesetzt
wird. Die horizontale und vertikale Auflsung kann mit /rgx# und
/rgy# getrennt eingestellt werden. Ohne Angabe von /rg# wird der
mit /r# eingestellte Wert verwendet.


Optionen zum Einstellen von Verzeichnissen und Dateinamen
=========================================================

/[email protected]* Standardverzeichnis fr Antwortdateien. Wird eine Antwortdatei nicht
gefunden, wird sie in den mit /[email protected]* definierten Verzeichnissen gesucht.
Wird sie auch dort nicht gefunden, wird sie in den durch die
Environment-Variable `PATH' definierten Verzeichnissen gesucht.
Der Standardwert ist \emtex\texinput.
Beispiel: /[email protected]:\emtex\dvidrv\

/pd* Standardverzeichnis fr DVI-Dateien. Wird die DVI-Datei nicht gefunden,
wird sie in den mit /pd* definierten Verzeichnissen gesucht.
Der Standardwert ist \emtex\texinput.
Beispiel: /pd=d:\dvi\;d:\mytex

/pf* Standardverzeichnisse fr Zeichensatzdateien. Zeichensatzdateien
werden in den mit /pf* definierten Verzeichnissen gesucht. `$s' steht
fr die PXL-Gre (Auflsung in dpi multipliziert mit 5), `$r' steht
fr die Auflsung (dpi). Kleinschreibung beachten! Die Voreinstellung
ist vom Treiber abhngig:
dviscr \emtex\pixel.lj\$rdpi
dvivik \emtex\pixel.lj\$rdpi
dvimsp \emtex\pixel.lj\$rdpi
dvihplj \emtex\pixel.lj\$rdpi
dvidot in der dot-Datei eingestellt, siehe obige Tabelle
Wenn mehrere Verzeichnisse angegeben werden, so sind diese durch
Strichpunkte zu trennen. Die Angabe
/pfc:\fonts\pxl$s;c:\fonts\dpi$r
ergibt z.B. fr den Zeichensatz cmr10<300> folgende Verzeichnisse:
c:\fonts\pxl1500
c:\fonts\dpi300
Siehe auch Zeichensatzsuchfolge!
Beispiel: /pf=c:\fonts\epson\$r

/pg* Standardverzeichnisse fr Grafikdateien. Zunchst werden Grafik-
dateien im Arbeitsverzeichnis gesucht, dann, wenn nicht gefunden,
in den mit /pg* definierten Verzeichnissen. `$s' steht
fr die PXL-Gre, `$r' steht fr die Auflsung (dpi). Kleinschreibung
beachten! Es wird jeweils zuerst nach einer Datei mit dem bei
\special{em:graph xxx}
angegebenen Namen gesucht. Falls dieser keine Erweiterung enthlt,
wird auch nach xxx.msp und dann nach xxx.pcx gesucht.
Standardwert ist \emtex\texinput.
Beispiel: /pg:=c:\win;c:\emtex\doc\gr$r

/pi* Druckerinitialisierungsdatei. Die mit /pi* angegebene Datei wird
unmittelbar nach der Initialisierung des Druckers an denselben
geschickt. Beispiel: /pi:unidir.p6

/pl* Hiermit werden die Name von Zeichensatzbibliotheksdateien eingestellt.
Zeichenstze werden zuerst in diesen Dateien gesucht, dann als
Einzeldatei.
Zeichensatzbibliotheksdateien knnen mit dem Programm fontlib erstellt
werden. Die Standarderweiterung ist FLI. Es knnen sowohl Verzeichnisse
als auch Dateinamen angegeben werden, die Dateien werden in allen
angegebenen Verzeichnissen gesucht.

Beispiel: /pl=c:\fonts;hplaser;myfonts

/po* Hiermit wird der Name der Ausgabedatei voreingestellt. Wird
beim Aufruf des Treibers keine Ausgabedatei angegeben, so
wird die hier eingestellte benutzt. Voreinstellung:
Keine Standardausgabedatei. Es wird die Standarderweiterung
fr die Ausgabedatei verwendet (bei dvimsp: MSP oder PCX;
sonst keine).
Beispiel: /po:lpt1

/ps* Name der Zeichensatzersetzungsdatei einstellen. Standard:
Keine Zeichensatzersetzungsdatei.

/pt* Protokolldateiname einstellen. Standardeinstellung ist der
Treibername mit dlg-Erweiterung (z.B. dviscr.dlg). Bei
dvidot ist der Name der Protokolldatei in der dot-Datei
einstellbar. Standarderweiterung ist dlg.
In diese Datei werden alle Ausgaben die nach Beendigung der
Eingabe der Dateinamen und Optionen erfolgen geschrieben.
Auerdem werden die Einstellungen smtlicher Optionen
in dieser Datei vermerkt. Durch Eingabe von /pt wird die
Erzeugung dieser Datei unterdrckt.
Die Protokolldatei kann als Antwortdatei benutzt werden
um die Einstellung der Optionen wiederverwenden zu knnen.

/pv* Verzeichnisse fr vf-Dateien (Virtual Fonts).
vf-Dateien werden nur in den mit dieser Option
eingestellten Verzeichnissen gesucht.
Die Voreinstellung ist leer, d.h., es wird nicht nach vf-Dateien
gesucht. Wenn mehrere Verzeichnisse angegeben werden, so sind
diese durch Strichpunkte zu trennen.

/pw* fontlib-Antwortdatei schreiben. Es wird eine Textdatei mit
dem angegebenen Namen erzeugt, die die fontlib-Kommandos
enthlt, die eine Zeichensatzbibliotheksdatei um die von
der Eingabedatei benutzten Zeichenstze erweitern.
Soll nur diese Antwortdatei erzeugt werden, kann /n0 angegeben
werden.
Beispiel: pw=new.cmd
fontlib-Aufruf: fontlib new /k @new.cmd


Sonstige Optionen
=================

// Nach Optionen fragen. Falls // verwendet wird, fragt der Treiber
nach weiteren Optionen (ntzlich fr den Fall, da die Lnge
der Kommandozeile nicht ausreicht).

/u* Lngeneinheit (unit of measure). Hiermit wird die Standard-
lngeneinheit eingestellt. Voreingestellt ist /uin (Zoll).
Es gibt folgende Lngeneinheiten (siehe auch The TeXbook S. 57):
pt point (1/72.27in)
pc pica (12pt)
in inch (Voreinstellung)
bp big point (1/72in)
cm centimeter
mm millimeter
dd didot point (1238/1157pt)
cc cicero (12dd)
sp scaled point (1/65536pt)
px Pixel (Bildpunkte, unabhngig von Auflsung)
Alle diese Lngeneinheiten mssen kleingeschrieben werden!
Die /u*-Option betrifft die dahinter angegebenen Optionen.
Beispiel: /ucm Zentimeter verwenden
/uMm Fehler! (Mega-Meter wren etwas
unhandlich.)


Zustzliche Optionen von dviscr und dvivik
==========================================


/- Bildschirmdarstellung wei auf schwarz.

/+ Bildschirmdarstellung schwarz auf wei (Standard).

/hx# Anfangsposition einstellen. Beim Zeigen eines neuen Blattes oder
/hy# bei Bettigung der -Taste wird auf diese Stelle auf dem Batt
positioniert. /hx0 /hy0 ist die linke obere Ecke des Blattes. Standard
ist /hx1in /hy1in.
Beispiel: /hx0 /hy0 Anfangsposition in Ecke

/o# Darstellung mit Graustufen. Es werden a x b Bildpunkte zusammengefat.
/ox# Mit /o# werden a und b zugleich eingestellt, mit /ox# wird a definiert,
/oy# mit /oy# wird b definiert. EGA (mit 16-Farben-Monitor) oder VGA
erforderlich. Wenn a=b=1 ist, erfolgt keine Graustufendarstellung.
a und b knnen Werte von 1 bis 8 annehmen. Nur dviscr. Recht langsam.
Die Implementation ist fr die /ox#-Werte 1, 2, 3, 4 und 8 optimiert.
Die /ox#-Werte 5, 6 und 7 machen den Treiber fast unbrauchbar langsam.
Wenn /s1 eingestellt ist (keine Skalierung) und mit /o# der
Graustufenmodus eingeschaltet wird und kein Graustufenmodus
mglich ist (da z.B. vom Grafikadapter nicht untersttzt),
werden die mit /o# eingestellten Werte fr die Skalierung
verwendet (d.h. /o3 heit dann /o1/s3).
Beispiel: /ox4/oy2

/oa# Grafikkarte einstellen. Mgliche Werte sind:
/oa0 Automatische Auswahl (Standard)
/oa1 CGA 640x200
/oa2 EGA 640x350 oder 640x200
/oa3 VGA 640x480
/oa4 HGC 720x348, nicht unter OS/2
/oa5 GENOA SuperEGA 800x600, nicht unter OS/2
/oa6 Paradise VGA 800x600, nicht unter OS/2
/oa7 Video Seven VGA 800x600, nicht unter OS/2
/oa8 Tseng Labs EVA 800x600, nicht unter OS/2
/oa9 HP Vectra 640x400, nicht unter OS/2
/oa10 MDS Genius (PRIMUS II) 728x1008, nicht unter OS/2
/oa11 EGA 640x200, 16 Farben
/oa12 EGA 640x350, 16 Farben
/oa13 EGA 640x350, 16/64 Farben
/oa14 VGA 640x480, 16 Farben
/oa15 VGA 640x480, 16/64 Farben
/oa16 VGA 640x480, 16/262144 Farben
/oa17 EGA 640x350, 2 Farben
/oa18 VGA 640x480, 2 Farben
/oa19 Olivetti M24 640x400, nicht unter OS/2

Weitere Spezialmodi knnen wie folgt benutzt werden:
/oa=m;w;h;ax;bx
m ist eine Zahl, die die Grafikkarte und den Monitor festlegt:
100 EGA mit Monochrome-Monitor
101 EGA mit 16-Farben-Monitor
102 EGA mit 64-Farben-Monitor
103 VGA mit Analog-Farbmonitor
w ist die Bildschirmbreite in Pixel (320 bis 1024),
h ist die Bildschirmhhe in Pixel (200 bis 1024).
Zum Umschalten in den Grafikmodus werden die Register AX
und BX mit den Werten ax bzw. bx geladen. Dann wird INT 10H
aufgerufen. Die Werte ax und bx sind hexadezimal anzugeben.
Die Angabe ;bx kann weggelassen werden, es wird dann BX mit 0
geladen. Statt Strichpunkten knnen auch Doppelpunkte verwendet
werden. Wenn (w/8)*h 65536 berschreitet, wird h auf 65536/(w/8)
herabgesetzt.
Sie sind fr die richtige Einstellung selbst verantwortlich,
die Anleitung zur Grafikkarte hilft manchmal weiter.
Beispiele: Der Modus /oa13 kann wie folgt eingestellt werden:
/oa102:640:350:0010
Der Modus /oa7 kann auch so eingestellt werden:
/oa103:800:600:6f05:62

/oc# Farben einstellen (nur EGA und VGA), mgliche Werte sind
0 bis 15, Standardeinstellung ist /oc2 (grn). Die Farben
knnen auch einzeln eingestellt werden:
/ocp# Blattumrandung (page)
/ocr# Lineal (ruler)
/ocs# Statuszeile

/or+ Lineal einschalten. Standard.

/os+ Statuszeile einschalten. Voreinstellung: eingeschaltet.
Wenn die Statuszeile ausgeschaltet ist, wird am Anfang und am Ende
der Eingabe einer Zahl oder eines Texts (siehe Tastenfunktionen)
ein Piepston erzeugt.

/ou* Maeinheit fr Lineal und Statuszeile einstellen.
Standardeinstellung ist pt.

/s# Skalierung. Hiermit kann die Gre der ganzen Ausgabe reduziert
/sx# werden. Damit bekommt man mehr auf einen Bildschirm. Es werden jeweils
/sy# die Pixel eines Rechtecks der mit /sx# angegebenen Breite und
der mit /sy# angegeben Hhe zu einem Pixel zusammengefat.
Mit /s# werden beide Werte zugleich gesetzt. Mgliche Werte sind
1 bis 8. Wenn jedoch geeignete Zeichenstze zur Verfgung stehen,
ist die nderung der Auflsung mit /r# vorzuziehen, da die
Verkleinerung der Zeichenstze nicht schn ist.
Noch besser ist es, die Graustufendarstellung zu benutzen
(siehe /o#; nur dviscr in Verbindung mit VGA oder EGA mit
16-Farbenmonitor). Wenn Graustufendarstellung nicht mglich
ist, kann die Skalierung mit /o# eingestellt werden.
Beispiel: /s2 Auflsung halbieren (x und y)
/sx4/sy2 Breite auf 1/4 reduzieren,
Hhe halbieren.


Zustzliche Optionen von dvimsp
===============================


/- Grafikausgabe wei auf schwarz.

/+ Grafikausgabe schwarz auf wei (Standardeinstellung).

/o* Grafikdateiformat einstellen. Es gibt zwei verschiedene
MSP-Dateiformate: Windows 1.x (/o1) und Windows 2.x (/o2, dies
ist die Voreinstellung). Auerdem knnen mit /op PCX-Dateien erzeugt
werden.
Beispiel: /op PCX-Datei erzeugen

/om+ Grafik mit minimaler Gre erzeugen. Die Rnder werden so klein
gemacht, da der mit /h# und /w# eingestellte Ausschnitt gerade
vollstndig in die Datei geschrieben wird. Das Bild ist auf
jeden falls bndig mit dem linken, oberen und unteren Rand.
Am rechten Rand treten im allgemeinen ein paar (bis zu 7 bzw.
(bei Verwendung von /ow+) bis zu 15) leere Spalten auf.
Mit /l# und t# eingestellte nicht-negative Rnder werden ignoriert.
Mit negativen Rndern kann der Ausschnitt gewhlt werden, da
Objekte mit negativen Koordinaten weggelassen werden.
Voreingestellt ist /om-: Die Datei erhlt die mit /h# und /w#
angegebene Gre.

/ow+ Die Breite der Grafik wird auf das nchsthhere ganzzahlig
Vielfache von 16px gerundet (Standard ist /ow-: 8px).
Manche Programme, die MSP-Dateien lesen, bentigen dies. Bei
Verwendung von /op (PCX-Datei erzeugen) wird die Breite immer
auf das nchsthhere ganzzahlig Vielfache von 16px gerundete.


Zustzliche Optionen von dvidot
===============================

/ox+ XON/XOFF-Protokoll fr COM1 bis COM4 benutzen. Die Ausgabe
erfolgt direkt ber die Schnittstelle. Wenn XON/XOFF-Protokoll
verwendet werden soll, mu als Ausgabedatei COM1, COM2, COM3
oder COM4 angegeben werden, bei allen anderen Angaben (z.B.
LPT1, AUX, mytext.prn) wird /ox+ ignoriert. Wenn /ox- angegeben
ist oder die Ausgabe nicht auf COM1 bis COM4 erfolgt, wird
ber DOS-Funktionen ausgegeben. Diese Option ist unter OS/2
berflssig und wird nicht untersttzt.


Bei Verwendung aller Parameterdateien auer itoh und aiw:

/s+ Zwei Durchlufe pro Druckzeile. Wenn /s+ angegeben wird, wird jede
Druckzeile zweimal gedruckt, beim ersten Mal der 1., 3., 5., usw.
Punkt, beim zweiten Mal der 2., 4., 6., usw. Punkt.
Mit /s- (Voreinstellung) erfolgt der Ausdruck etwa doppelt so schnell,
jedoch bei manchen Druckern nicht so schn, da diese Drucker
(z.B. FX-80, nicht aber P6) Schwierigkeiten haben, eine Nadel
zweimal direkt nacheinander abzufeuern.


Bei Verwendung der Parameterdateien itoh und aiw:

/hf# Blattlnge einstellen. Fr korrekten Blattvorschub ist hiermit
die Lnge eines Blattes einzustellen. Falls die Lnge 0, z.B. 0in,
eingestellt wird (Voreinstellung), wird der mit /h# definierte
Wert als Blattlnge verwendet.

/s+ Slow-Mode. Mit /s+ wird unidirektional (bei Parameterdatei itoh
zustzlich: im incremental print mode) gedruckt, mit /s- (Standard)
wird bidirektional (bei itoh zustzlich: im logic seek mode)
gedruckt.


Zustzliche Optionen von dvihplj
================================

/oc# Nach jeweils # Seiten werden alle von dvihplj definierten Zeichen
im Drucker gelscht. Dies kann helfen, wenn zuwenig Druckerspeicher
vorhanden ist, verlangsamt aber die Ausgabe. Voreingestellt ist 0,
dies bedeutet, da keine Zeichen gelscht werden. Bei manchen nicht
gengend HP LaserJet-kompatiblen Druckern kann /oc1 helfen.

/od+ HP DeskJet. Die Ausgabe wird fr den HP DeskJet
aufbereitet. Wenn Sie auf einem HP DeskJet drucken
wollen, mssen Sie /od+ angeben.

/of# Anfangswert fr Font-ID-Nummern. Voreinstellung ist 0, zulssige
Werte sind 0 bis 32736. Den von dvihplj an den Drucker geschickten
Zeichenstzen werden Nummern von # bis #+31 gegeben. Mit dieser
Option knnen Sie die Zeichensatznummern so einstellen, da es
nicht zu berschneidungen mit Zeichenstzen gibt, die bereits in
den Drucker geladen wurden und nicht gelscht werden sollen
(dvihplj lscht allerdings alle temporren Zeichenstze).

/oi+ Drucker zurcksetzen. Vor dem Beginn des Ausdrucks wird
der Drucker zurckgesetzt (Voreinstellung). Kann mit
/oi- abgeschaltet werden.

/oj+ Job-Offset. Manche Drucker knnen die bedruckten Bltter
seitlich verschieben. /oj+ bewirkt, da am Anfang der
Druckerausgabe die Ausgabeposition umgeschaltet wird,
so da die Ergebnisse aufeinanderfolgender Druckauftrge
leichter voneinander getrennt werden knnen.

/ok+ Kyocera. Die Ausgabe wird fr den Kyocera F-1010 aufbereitet.
Wenn Sie auf einem Kyocera F-1010 drucken wollen, mssen
Sie /ok+ angeben.

/om# Druckerspeichergre. Hiermit wird die Speichergre des Druckers
in KByte eingestellt. Standard ist 394. Wird 0 angegeben, wird
nicht auf Speicherberlauf getestet. Wurden zuvor Zeichenstze
permanent in den Drucker geladen, ist der Wert entsprechend zu
verringern. Diese Option wird bei Angabe von /od+ ignoriert.
Beispiel: /om1500 1.5MByte Druckerspeicher
verfgbar

/ox+ XON/XOFF-Protokoll fr COM1 bis COM4 benutzen. Die Ausgabe
erfolgt direkt ber die Schnittstelle. Wenn XON/XOFF-Protokoll
verwendet werden soll, mu als Ausgabedatei COM1, COM2, COM3
oder COM4 angegeben werden, bei allen anderen Angaben (z.B.
LPT1, AUX, mytext.prn) wird /ox+ ignoriert. Wenn /ox- angegeben
ist oder die Ausgabe nicht auf COM1 bis COM4 erfolgt, wird
ber DOS-Funktionen ausgegeben.



Zeichensatzgre (Auflsung) eingeben
=====================================

Wenn der Treiber einen Zeichensatz nicht gefunden hat, kann eine neue
Zeichensatzgre eingeben werden. Auch in Zeichensatzersetzungsdateien
kann eine Zeichensatzgre angegeben werden. Diese Zeichensatzgre
wird in Bildpunkten pro Zoll (dpi) angegeben. Da hierbei einige Nachkomma-
stellen erforderlich sein knnen, gibt es eine einfache Mglichkeit,
Vergrerungen einer Zeichensatzgre anzugeben. Hierzu ist die Vergrerungs-
stufe (0 bis 9 oder h fr 0.5) durch einen Doppelpunkt getrennt hinter die
Gre zu schreiben. 100:3 ist eine Abkrzung fr 172.8 (100 * 1.2 ^ 3),
300:h steht fr 328.63353. Es kann auch nur der Doppelpunkt -- gefolgt von
der Vergrerungsstufe -- verwendet werden. In diesem Falle wird die
Vergrerungsstufe auf die mit /rf# eingestellte Zeichensatzgre angewandt.
Dies ist besonders in Zeichensatzersetzungsdateien ntzlich, da auf diese
Weise die Gre gerteunabhngig angegeben werden kann.


Aufbau der Zeichensatzersetzungsdatei (ZE-Datei)
================================================

% Kommentar
%
% Die folgenden Ersetzungen werden nacheinander angewandt, das
% ursprngliche Name/Gre-Paar wird mit der ersten Regel umgewandelt,
% dieses Result dann mit der zweiten Regel, usw.
%
font -> font % z.B. am* -> cm*
size -> size % z.B. 305 -> 300
font size -> font size % z.B. cmr12 :0 -> cmr10 :1
%
% Zeichen weglassen oder durch Rechtecke ersetzen
%
% Wurde ein Zeichensatz einmal `black' oder `white' gemacht, so kann
% er nicht mehr in den Normalzustand zurckgebracht werden.
%
i* -> * /w % Invisible, white
fancy -> fancy /b % Invisible, black

$b % `b' wie Batch-Modus

% Die folgenden Zeilen beziehen sich auf
% den Batch-Modus (nach jeder Ersetzung wird
% der Zeichensatz gesucht).

* * -> * :0 % Name lassen, Gre:=Zeichensatzauflsung (/rf#)
* * -> cmr10 :0 % Name:=cmr10, Gre:=Zeichensatzauflsung (/rf#)


ANMERKUNGEN:
1. In Zeichensatznamen knnen die folgenden Spezialzeichen
verwendet werden (alt -> neu):
? alt: An dieser Stelle pat ein beliebiges Zeichen.
neu: Das Fragezeichen wird durch das Zeichen ersetzt,
auf das das entsprechende Fragezeichen in `alt'
gepat hat.
`alt' und `neu' mssen gleichviele Fragezeichen
enthalten, z.B. font?? -> fnt??.
* alt: Ab hier beliebige Zeichen.
neu: Ab hier die Zeichen einsetzen, die auf das
`*' in `alt' gepat haben.
`*' mu das letzte Zeichen des Namens sein.
Falls nur `neu' mit einem `*' endet, so wird
dieses ignoriert.
@ alt: An dieser Stelle pat ein beliebiges Zeichen.
neu: Nicht erlaubt.
Ein (konstruiertes) Beispiel, das alle diese Zeichen enthlt:
Zeichensatzersetzungsdatei: [email protected]?dd* -> x?y?z*
Zu suchender Zeichensatz: aaa1bb2cc3dd456
===> Neuer Name: x1y3z456


Zeichensatzsuchfolge
====================

Jedes der folgenden Verfahren bricht ab, sobald die Datei gefunden wurde.

Verfahren 0 zur Suche von Zeichenstzen:

1. Der Zeichensatzname und die Gre werden entsprechend dem ersten Teil
der Zeichensatzersetzungsdatei umgewandelt (ALLE Regeln werden
nacheinander angewandt). Dann wird der Zeichensatz nach Verfahren 1
gesucht.

2. Wenn Batch-Modus aktiv ist (/fb Option) und die Zeichensatzersetzungs-
datei einen zweiten Teil enthlt (nach `$B'), wird jeweils das
nach Punkt 1 erhaltene Name/Gre-Paar mit einer Regel umgewandelt und
dann mit Verfahren 1 gesucht. Dies geschieht fr jede einzelne Regel.
3. Wenn Batch-Modus aktiv ist (/fb Option) und die Zeichensatzersetzungs-
datei keinen zweiten Teil enthlt, werden folgende Regeln wie im Punkt 2
beschrieben angewandt:
* * -> * x
* * -> cmr10 *
* * -> cmr10 x
Hierbei ist x die der Vergrerung 1000 entsprechende Gre (also
horzontale Auflsung * 5; bei den Transformationen 1, 3, 4 und 6:
vertikale Auflsung * 5).

3. Falls Batch-Modus aktiv ist und der Zeichensatz noch nicht gefunden
wurde, wird der Treiber mit Fehlermeldung abgebrochen.

4. Wenn nicht gefunden oder Change-Modus aktiv (/fc Option)
wird der Benutzer aufgefordert, den Dateinamen einzugeben,
siehe unten.


Verfahren 1 zur Suche von Zeichenstzen:

1. Der Zeichensatz wird in den mit /pf* eingestellten Verzeichnissen
(in der angegebenen Reihenfolge) mit Verfahren 2 gesucht.
Dabei werden `$s' und `$r' in Verzeichnisnamen durch die Gre
bzw. Auflsung des Zeichensatzes ersetzt. Die Gre ergibt sich aus
Vergrerung * (Auflsung/200) * (Zeichensatzgre/1000),
gerundet auf die nchstliegende ganze Zahl (200 ist die
Standardgre der Standford-Zeichenstze; z.B. \mag=1200, scaled 1000,
Auflsung 300: 1200*300/200*1=1800).


Verfahren 2 zur Suche von Zeichenstzen:

1. Die Datei wird mit Erweiterung .VF in den mit /pv* eingestellten
Verzeichnissen gesucht. Wenn gefunden, ist der Zeichensatz ein
`Virtual Font'.

2. Die Datei wird in den Zeichensatzbibliotheksdateien (in der
angegebenen Reihenfolge) gesucht.

3. Die Datei wird gesucht.

4. Falls die Datei eine Erweiterung (z.B. .PK) hat, ist Verfahren 2 beendet.

5. Sonst wird .PK angehngt und erneut gesucht.

6. Dann wird .PXL angehngt und erneut gesucht.



Fr die folgenden BEISPIELE wird /pfc:\fonts\$rdpi /r300 /m0 und
auerdem `scaled 1000' angenommen. Die Suche nach .VF-Dateien und
die Suche in der Zeichensatzbibliotheksdatei ist nicht aufgefhrt.

`cmr10' wird in folgender Reihenfolge gesucht:

c:\fonts\300dpi\cmr10
c:\fonts\300dpi\cmr10.pk
c:\fonts\300dpi\cmr10.pxl

`cmr10.pk' wird in folgender Reihenfolge gesucht:

c:\fonts\300dpi\cmr10.pk

`myfonts\cmr10' wird in folgender Reihenfolge gesucht (Verzeichnis durch
Benutzer eingegeben, siehe unten):

myfonts\cmr10
myfonts\cmr10.pk
myfonts\cmr10.pxl
c:\fonts\300dpi\cmr10
c:\fonts\300dpi\cmr10.pk
c:\fonts\300dpi\cmr10.pxl

`myfonts\cmr10.pxl' wird in folgender Reihenfolge gesucht:

myfonts\cmr10.pxl
c:\fonts\300dpi\cmr10.pxl


Wenn Batch-Modus aktiv ist, erfolgen weitere Versuche, wie oben beschrieben.


War die Suche nicht erfolgreich und ist Batch-Modus nicht aktiv (/fi, Standard),
wird der Benutzer um Mithilfe gebeten.
Dabei wird der Zeichensatzname und ein Dateiname der Form
path\font
angezeigt (xxxx ist die Gre in dpi).


Dann hat eine der folgenden Eingaben zu erfolgen:

Zeichensatzgre
Gre neu whlen (ergibt xxxx) und erneut fragen.
Mgliche Eingaben sind z.B.:
300 300 dpi
:2 scaled 1440 (1.44 * /rf#)
204:h 204 dpi mit Vergrerung 1.2^0.5 (= 233.47081)
Siehe auch `Zeichensatzgre (Auflsung) eingeben'.

[drive:]path\
Neues Inhaltsverzeichnis whlen (Dateiname und Gre bleiben)
und mit Verfahren 0 erneut suchen

name

Neuen Dateiamen whlen (Inhaltsverzeichnis und Gre bleiben)
und mit Verfahren 0 erneut suchen

[drive:]path\name
Kompletten Dateinamen whlen (Gre bleibt)
und mit Verfahren 0 erneut suchen

(leere Zeile)
Nur im Change-Modus: Vorgabe verwenden und mit Verfahren 0 suchen

+
Gre mit 1.2 multiplizieren und erneut fragen

-
Gre durch 1.2 dividieren und erneut fragen

b
Alle Zeichen des Zeichensatzes werden durch Rechtecke ersetzt
(`black').

w
Der Zeichensatz wird unsichtbar gemacht (`white'), d.h. es wird
noch immer eine Zeichensatzdatei bentigt, aber die darin enthaltenen
Zeichen werden nicht ausgegeben. Dies ist ntzlich zur Analyse
seltsamer Effekte. Es wird erneut gefragt.


Tastenfunktionen bei dviscr und dvivik
======================================

(man beachte da der Ausschnitt nie das mit /w# und /h# definierte Blatt
verlassen kann):

+,
dviscr wird verlassen


Ausschnitt um halbe (oder weniger, siehe und ) Bildschirmbreite
nach links bewegen


Ausschnitt um halbe (oder weniger, siehe und ) Bildschirmbreite
nach rechts bewegen


Ausschnitt um halbe (oder weniger, siehe und ) Bildschirmhhe
nach oben bewegen


Ausschnitt um halbe (oder weniger, siehe und ) Bildschirmhhe
nach unten bewegen

<4>
Ausschnitt um ganze Bildschirmbreite nach links bewegen

<6>
Ausschnitt um ganze Bildschirmbreite nach rechts bewegen

<8>
Ausschnitt um ganze Bildschirmhhe nach oben bewegen

<2> oder
Ausschnitt um ganze Bildschirmhhe nach unten bewegen


Ausschnitt in Anfangsposition (/hx#, /hy# Optionen, )

<7>
Ausschnitt in linke obere Ecke


Ausschnitt in linke untere Ecke, X-Position wie bei Home
(/hx# Option, )

<1>
Ausschnitt in linke untere Ecke

+
Ausschnitt an linken Blattrand

+
Ausschnitt an rechten Blattrand

, <9>
Ein Blatt zurckgehen

, <3>
Ein Blatt weitergehen

+
Auf erstes Blatt gehen

+
Auf letztes Blatt gehen


Negativdarstellung an/aus


Bildschirminhalt nochmals neu aufbauen.


Die momentane Position wird als neue Anfangsposition (siehe /hx#, /hy#,
und ) verwendet.


Durch Eingabe von wird der Wert, um den der Ausschnitt beim Drcken
einer Pfeiltaste bewegt wird, verringert, es kann also feiner
positioniert werden. Es gibt 6 Stufen.


Durch Eingabe von wird der Wert, um den der Ausschnitt beim Drcken
einer Pfeiltaste bewegt wird, vergrert, es kann also schneller
positioniert werden. Es gibt 6 Stufen.


Anwahl eines relativen Blattes. Es ist eine Zahl von 1 bis zur
Anzahl der ausgewhlten Bltter einzugeben. Dieses Blatt wird
angezeigt.


Rckkehr nach ,

, , + oder +
zum vorher angezeigten Blatt. Die Treiber merken sich bis zu
20 Bltter. Es wird so positioniert, da der auf dem gespeicherten
Blatt durch das Lineal markierte Punkt oder der Bildmittelpunkt nun
wieder an der Linealposition oder in der Bildmitte erscheint.


Anwahl eines Blattes ber Seitennummer. Es ist eine Seitennummer
einzugeben. Es wird das Blatt angezeigt, das die entsprechende Seite
enthlt. Es wird ab dem angezeigten Blatt bis zum Ende gesucht.
Falls nicht gefunden, wird vom ersten Blatt bis zum angezeigten
gesucht. Die Seitennummer kann auch `*' enthalten, Beispiel: 1.*.5


Lineal ein- oder ausschalten.

+
Skalenstriche des Lineals ein- oder ausschalten.


Text suchen. Es wird ab dem Blattanfang (oder der vorigen
Fundstelle) gesucht. Die Bltter bis zum Ende der Datei und
dann vom Anfang bis zum aktuellen Blatt werden durchsucht.
Die Suche kann mit abgebrochen werden.
Ohne Eingabe eines Textes wird der letzte Suchtext benutzt.
Klein- und Grobuchstaben werden unterschieden, Bindestriche
und Leerzeichen werden ignoriert. Es kann auch nach Zeichen
mit Accents gesucht werden. Falls der Suchtext nicht zulssig
ist (z.B. kann nicht nach \ gesucht werden), ertnt ein
Warnton.
Das Lineal wird auf den Referenzpunkt des ersten
gefundenen Zeichens gesetzt.


Pfeiltasten umschalten: Entweder wird das Lineal (falls vorhanden)
bewegt oder der Ausschnitt. Nach dem Einschalten des Lineals
mit wird das Lineal bewegt. Diese Funktion wirkt sich
auf , , ,
, , , + und
+ aus. Mit den brigen Tasten kann
der Ausschnitt immer noch bewegt werden. Auch die Funktion von
und wird umgeschaltet: Wenn das Lineal bewegt wird,
kann mit und die Schrittweite eingestellt werden
(unabhngig von der Einstellung fr den Ausschnitt).

, +
Maeinheit verstellen. Es gibt die blichen 10 Maeinheiten.
Mit wird die Maeinheit weiter-, mit + zurckgeschaltet.
Die Maeinheit wird fr die Anzeige der Position in der Statuszeile
und fr die Skalenstriche des Lineals verwendet. Siehe auch /ou*.

<+> und <->
Graustufendarstellung bzw. Skalierung ndern (Zoom).
Falls mglich, wird Graustufendarstellung benutzt,
sonst Skalierung. Das Verhltnis zwischen den mit
/ox# und /oy# bzw. /sx# und /sy# eingestellten Werten
wird beibehalten. Dies hat zur Folge, da z.B. bei
/sx7/sy8 die Skalierung nicht verndert werden kann.
Mit <+> wird das Bild vergrert, mit <-> verkleinert.

+ und +
Graustufendarstellung bzw. Skalierung ndern (Zoom).
Sie knnen ein oder zwei Ziffern im Bereich 1 bis 8 eingeben;
diese werden als neue Faktoren fr Graustufendarstellung (Alt+G)
bzw. Skalierung (Alt+S) verwendet. Wenn nur eine Ziffer eingegeben
wird, gibt diese die x- und y-Werte an (wie /o# und /s#). Wenn
zwei Ziffern eingegeben werden, so werden diese als x- und
y-Faktoren verwendet (wie /ox#, /oy# bzw. /sx#, /sy#).


Bei dviscr/dvivik kann die Transformation auch nachtrglich mit
gefolgt von 0 bis 7 und gendert werden. Dies ist
z.Z. nicht mglich, falls bei /rx# und /ry# verschiedene Werte
angegeben wurden und von Transformation 0, 2, 5 oder 7 auf
Transformation 1, 3, 4 oder 6 oder umgekehrt umgeschaltet werden
soll.


Mit kann umgeschaltet werden, ob sich die Pfeiltasten (und
andere) sich auf Bildschirmkoordinaten oder transformierte
Koordinaten beziehen (z.B. falls der Monitor gedreht wurde).
Zunchst sind Bildschirmkoordinaten eingestellt. Nach Drcken
von werden die Pfeiltasten transformiert. Nochmaliges
Drcken von stellt den Ausgangszustand wieder her.


Bei , <->, <+>, + und + wird versucht, den Mittelpunkt
des Bildschirmes (oder -- falls das Lineal eingeschaltet ist -- den Punkt,
den das Lineal markiert) beizubehalten (Fixpunkt). Bei den Drehungen wird
also um diesen Punkt gedreht, bei den Spiegelungen liegt dieser Punkt auf
der Spiegelungsachse, bei Grennderung ist dieser Punkt das Streckungs-
zentrum. Falls der Ausschnitt dadurch auerhalb des Blattes bewegt wird,
wird er noch entsprechend verschoben, so da der ganze Ausschnitt innerhalb
des Blattes liegt (falls mglich).


Eingabe von Zahlen:

Wenn eine Statuszeile angezeigt wird, werden Zahlen dort eingegeben. Es
kann mit oder korrigiert werden, mit
wird die Eingabe abgebrochen, mit beendet.

Wenn keine Statuszeile (siehe /os-) angezeigt wird, erfolgt die Eingabe von
Zahlen blind. Zunchst hrt man einen Piepston. Dann kann die Zahl eingegeben
werden (nur Ziffern und Vorzeichen). Mit oder
kann das vorige Zeichen gelscht werden; mit wird die Eingabe
abgebrochen, mit beendet. Bei fehlerhafter Eingabe ertnt ein tiefer
Ton. Wenn gedrckt wird, ertnt ein hoher Piepston.



Statuszeile von dviscr und dvivik
=================================

Die Statuszeile enthlt die folgenden Daten:

1. Ganz links wird die mit und eingestellte Stufe (1 bis 6)
angezeigt.

2. Rechts daneben steht entweder nichts (d.h. Lineal ausgeschaltet),
ein `R' (Lineal wird bewegt) oder ein `W' (Ausschnitt wird bewegt).

3. Wiederum ein Stckchen weiter rechts wird `Gxy' (falls Graustufen-
darstellung mglich) sowie `Sxy' angezeigt. Dies sind die
mit /ox#, /oy#, /sx# und /sy# eingestellten (und mit <+>, <->,
+ und + vernderten) Werte.

4. In der Mitte wird die relative Blattnummer (im Beispiel: 5) und die
Seitennummer (im Beispiel: 10.7) angezeigt:
5: 10.7
Dies heit, da das fnfte Ausgabeblatt angezeigt wird. Die erste
Seite des Blattes hat die Seitennummer (\count0 bis \count9) 10.7.

5. Rechts wird die Position der `linken oberen' Ecke des Ausschnitts
(dies mu nicht die linke obere Ecke des Bildschirms sein; z.B.
bei Transformation 1 ist dies die linke untere Ecke des Bild-
schirms) oder die Position des Lineals angezeigt (Einheit mit
und /ou* einstellbar). Die Position
x=0pt y=0pt
ist die `linke obere' Ecke des Blattes.
Falls das Lineal mit Skalenstrichen versehen ist, wird auch noch
der Abstand zwischen zwei (kurzen) Skalenstrichen
(des horizontalen Lineals) angezeigt.
Der Abstand zwischen den Skalenstrichen wird so gewhlt,
da er nicht zu klein und nicht zu gro ist. Jeder zehnte
Skalenstrich ist etwas lnger als die brigen.

6. Ganz rechts wird ein `*' angezeigt, solange das Bild aufgebaut
oder nach einem Text gesucht wird (damit man bei einem leeren
Blatt nicht lange auf den Text warten mu).


Mit /os- kann die Statuszeile abgeschaltet werden.


\special
========

Es werden folgende \special-Anweisungen verstanden:

\special{em:message xxx}
Der Text xxx wird sofort ausgegeben (und landet damit nach der
Seitennummer zwischen den eckigen Klammern).

\special{em:graph xxx}
Die Grafikdatei xxx wird an dieser Stelle eingefgt.
Ein in xxx eventuell angegebenes Verzeichnis (und Laufwerk) wird
ignoriert. Die linke obere Ecke kommt an der Position zu liegen,
an der der Referenzpunkt (meistens liegt dieser auf der Grundlinie
des Zeichens, an der linken Kante) eines Zeichens zu liegen kme,
wrde statt der Grafik ein Zeichen gesetzt. Es knnen MSP-Dateien
(MS-Paint unter Windows 1.x und 2.x) und PCX-Dateien (Paintbrush)
verwendet werden. PCX-Dateien, die im 4-Farben-CGA-Modus erstellt
wurden, knnen nicht verarbeitet werden. Bei PCX-Dateien werden
diejenigen Punkte gedruckt, die nicht wei sind (es wird die
Standardpalette vorausgesetzt). Aus Effizienzgrnden wird die
Verwendung von MSP-Dateien (Windows 2.0) empfohlen. Die Breite der
Grafik darf 32760, die Hhe 32766 Grafikpunkte nicht berschreiten.
Hier ein Beispiel (die Grafik ist 21pt breit und 23pt hoch):
\begin{center}
\begin{picture}(21,23)
\put(0,23){\special{em:graph dvitrans.2}}
\end{picture}
\end{center}

\special{em:point n}
\special{em:line a[h|v|p],b[h|v|p][,width]}
\special{em:linewidth width}
\special{em:moveto}
\special{em:lineto}
Hiermit knnen Linien in beliebigen Winkeln gedruckt werden.
Mit \special{em:point n} wird der Punkt n (1 bis 32767) definiert.
Er bekommt die Koordinaten des Referenzpunktes.
Die Positionierung der einzelnen \special{em:point n}-Anweisungen kann
in LaTeX mit dem picture environment geschehen. Fr plain TeX
sei auf The TeXbook, Seite 389, verwiesen.
Jeweils zwei solcher Punkte knnen mit einer Linie verbunden
werden: \special{em:line a,b,width} verbindet die beiden Punkte mit
den Nummern a und b. Die Linienbreite betrgt `width', es knnen
alle bei /u* beschriebenen Maeinheiten auer `px' verwendet werden.
Bei der Angabe der Nummern der Endpunkte kann jeweils `h', `v'
oder `p' an die Nummer angehngt werden; hiermit wird festgelegt,
wie die Linie am jeweiligen Ende abzuschneiden ist: Mit `p' wird
senkrecht zur Linienrichtung abgeschnitten, mit `h' horizontal
und mit `v' vertikal. Ohne Angabe wird `p' verwendet.
Vorsicht: Waagrechte Linien knnen nicht horizontal,
senkrechte nicht vertikal abgeschnitten werden!
Beispiel: \special{em:line 1,2v,4pt}
Die Definition der Punkte braucht nicht vor der Definition der
Linie zu erfolgen. Die Punkte und Linien beziehen sich nur auf
eine Seite.
Falls viele Linien der gleichen Breite gezeichnet werden sollen,
empfiehlt sich die Verwendung von \special{em:linewidth width}.
Hiermit wird die Linienbreite fr \special{em:line a,b}
(ohne `,width') festgelegt (Standardlinienbreite). Bevor die
Standardlinienbreite festgelegt wird, ist diese auf 0.4pt gesetzt.
Dieses Kommando mu VOR dem ersten \special{em:line a,b} kommen;
sonst wird 0.4pt benutzt. Deshalb sollte die Standardlinienbreite
vor jeder Liniengrafik festgelegt werden.
Es gibt eine weitere Mglichkeit zum Linienzeichnen: Mit
\special{em:moveto} wird die aktuelle Zeichenposition auf
die Koordinaten des Referenzpunktes gesetzt (ohne zu zeichnen),
mit \special{em:lineto} wird eine Linie zwischen der aktuellen
Zeichenposition und dem Referenzpunkt gezeichnet und der
`reference point' als neue Zeichenposition verwendet. Mit einem
\special{em:moveto} und mehreren \special{em:lineto} kann
ein Linienzug gezeichnet werden. Es wird die mit
\special{em:linewidth width} eingestellte Linienbreite benutzt.

Die Treiber beachten alle \special-Anweisungen, die mit `em:' beginnen.
Zwischen `em:' und dem nachfolgenden Schlsselwort (`message' oder `graph'
oder `point' oder `line' oder `linewidth') knnen Leerzeichen stehen.

Alle \special-Anweisungen, die nicht mit `em:' beginnen, werden ohne
Kommentar ignoriert.


Warnungen (Nummern 1xxx)
========================

Wenn die Geschwtzigkeit, siehe /v, kleiner als die in eckigen
Klammern stehende Zahl ist, unterbleibt die Ausgabe der Warnung.
Wenn in eckigen Klammern ein F angegeben ist, unterbleibt die Ausgabe der
Warnung, wenn /fl-1 angegeben wurde.
Wenn in eckigen Klammern ein Treibername angegeben ist, so gibt es diese
Meldung nur bei diesem Treiber.
#1, #2 usw. stehen fr variable Felder.

Alle Warnungen haben das Format
Warning 1xxx: ...

Im folgenden wird nur die Nummer und ... abgedruckt.

Wenn als Text einer Warnung `[cannot open dvidrv.err]'
ausgegeben wird, konnte die Datei dvidrv.err, welche
die Warnungstexte enthlt, nicht gefunden werden. Sie sollten dann die
Bedeutung der Warnung anhand der Nummer hier nachschlagen.

1000: illegal number: #1
Das Zahlenargument #1 einer Option ist keine zulssige Zahl.
Oder es wurde bei der Frage nach einer Zeichensatzdatei eine
unzulssige Zahl angegeben.

1001: illegal number or unit of measure: #1
Das Argument #1 einer Option ist keine zulssige Zahl oder die
Einheit ist nicht zulssig.

1002: parameter too long: #1
Das Argument #1 einer Option ist zu lang.

1003: path name too long
Das Argument von /[email protected]*, /pd*, /pf*, /pg* oder /pv* ist zu lang.

1004: missing path name
Das Argument von /[email protected]*, /pd*, /pf* oder /pg* fehlt.

1005: illegal page number
Eine Seitenangabe bei /b* oder /e* ist fehlerhaft.

1008: bad option: #1
Eine Option wurde fehlerhaft angegeben.

1009: unknown option: #1
Die Option #1 gibt's nicht.

1010: invalid unit of measure: #1
Bei /u* oder /ou* wurde keine korrekte Maeinheit angegeben,
nmlich #1.

1017: too many file names: '#1'
Es wurden zu viele Dateinamen, d.h. Argumente, die nicht mit
- oder / beginnen, angegeben. Je nach Treiber knnen 1 oder 2
Dateinamen angegeben werden.

1018: input file '#1' not found
Die DVI-Datei wurde nicht gefunden.

1019: cannot create output file '#1'
Die Ausgabe-Datei kann nicht angelegt werden.

1020: file name too long
Der bei /pi*, /pl*, /ps*, /pt* oder /pw* angegebene Dateiname
ist zu lang.

1022: file '#1' not found
Die bei /pi*, /pl* oder /ps* angegebene Datei existiert nicht.

1023: cannot nest response files
Eine Antwortdatei darf nicht @Antwortdatei enthalten.

1024: response file '#1' not found
Die @Antwortdatei wurde nicht gefunden.

1025: invalid #1 argument: #2
Das Argument der Option #1 ist nicht zulssig.

1100: preamble data doesn't match postamble data: [2]
pre.#1=#2, post.#1=#3
Die Angabe #1 der Preamble stimmt nicht mit der in der Postamble
berein. Hat da jemand in der DVI-Datei herumgepfuscht?
Die Angaben in der Preamble haben Vorrang.

1200: checksum does not match [2,F]
font file #1: #2
input file #3: #4
Die Zeichensatzdatei #1 pat nicht zu der von TeX verwendeten
TFM-Datei.

1201: wrong design size [2,F]
font file #1: #2
input file #3: #4
Die Zeichensatzdatei #1 pat nicht zu der von TeX verwendeten
TFM-Datei.

1202: wrong magnification [2,F]
font file #1: #2
input file #3: #4
Die Zeichensatzdatei #1 pat nicht zu der von TeX verwendeten
TFM-Datei.

1203: character #1: pixel width off by #2 [3,F]
Die Zeichenbreite des Zeichens #1 (dezimal) unterscheidet sich von
der aus der TFM-Breite berechneten Breite um mehr als 1, nmlich
um #2 (immer mit Vorzeichen angegeben). Ist #2 positiv, ist die
Pixel-Breite grer, ist #2 negativ, ist die TFM-Breite grer.
Diese Warnung tritt vor allem dann auf, wenn der Zeichensatz nicht
zur vom TeX verwendeten TFM-Datei pat, insbesondere wenn der
Zeichensatz in der falschen Gre geladen wurde.

1204: '#1' is not a usable font file [3]
Beim Suchen nach einer Zeichensatzdatei wurde die Datei #1 gefunden.
Die Datei #1 wurde aber nicht als gltige Zeichensatzdatei erkannt.
Nach Ausgabe der Warnung wird nach den beschriebenen Verfahren
weitergesucht.

1205: font #1 [#2] not found
Es wurde fr den Zeichensatz #1 keine passende Datei gefunden.
Nhere Erklrung siehe `Zeichensatzsuchfolge'.

1206: batch mode: font #1 replaced by #2 [1]
Im Batch-Modus (siehe /fb) wurde fr den Zeichensatz #1 die Zeichen-
satzdatei #2 verwendet, da die passende Datei nicht gefunden wurde.

1300: '#1' is not a usable graphics file [3]
Beim Suchen nach einer Grafikdatei wurde die Datei #1 gefunden.
Die Datei #1 wurde aber nicht als gltige Grafikdatei erkannt.
Nach Ausgabe der Warnung wird nach den beschriebenen Verfahren
weitergesucht.

1301: graphics file #1 (graph #2; #3 DPI) not found
Die Grafikdatei #1 wurde nicht gefunden
(\special{em:graph #2}).

1400: undefined point: #1
Der Punkt #1 ist nicht definiert, wurde aber bei \special{em:line}
verwendet.

1401: duplicate point number: #1
Der Punkt #1 wurde mit \special{em:point #1} mehr als einmal
definiert.

1402: bad line omitted: #1,#2
Die Linie mit den Endpunkten #1 und #2 kann nicht gezeichnet
werden (z.B. horizontale Linie, die horizontal abgeschnitten
werden soll).

1403: missing moveto
Es wurde \special{em:lineto} ohne vorangehendes \special{em:moveto}
benutzt.


Fatale Fehler (2xxx)
====================

Alle fatalen Fehler haben das Format
*** Fatal error 2xxx: ...

Im folgenden wird nur die Nummer und ... abgedruckt.

Wenn als Text bei einer Fehlermeldung `[cannot open dvidrv.err]'
ausgegeben wird, konnte die Datei dvidrv.err, welche
die Fehlertexte enthlt, nicht gefunden werden. Sie sollten dann die
Bedeutung der Fehlermeldung anhand der Nummer hier nachschlagen.

2000: out of memory
Es ist zuwenig Speicher vorhanden. Es wird eine Statistik
ausgegeben, die angibt, wieviel Speicher fr was verwendet wurde.
Manchmal kann dieser Fehler durch Angabe von /fl-1 umgangen
werden.

2001: cannot open #1 file '#2'
Die Datei #2 wurde nicht gefunden.

2002: cannot create file '#1'
Die Datei #1 kann nicht angelegt werden.

2003: cannot write to file '#1', disk full?
Beim Schreiben einer Datei trat ein Fehler auf.
Mglicherweise ist die Platte voll.

2004: invalid scale factor
Eine Zeichensatzdatei oder eine VF-Datei ist fehlerhaft.

2005: cannot use XON/XOFF flow control
Das XON/XOFF-Protokoll kann nicht verwendet werden, da
z.B. die Schnittstelle nicht vorhanden ist.

2006: serial interface time-out
Bei Verwendung des XON/XOFF-Protokolls wurde nach einem
XOFF nicht innerhalb von 60 Sekunden ein XON empfangen.

2100: DVI file corrupted (undefined font)
2101: DVI file corrupted (no font selected)
2102: DVI file corrupted (DVI file ended prematurely)
2103: DVI file corrupted (position stack overflow)
2104: DVI file corrupted (position stack underflow)
2105: DVI file corrupted (bad postamble)
2106: DVI file corrupted (postamble not found)
2107: DVI file corrupted (illegal command in postamble)
2108: DVI file corrupted (bad preamble)
2109: DVI file corrupted (unexpected set_char command)
2110: DVI file corrupted (unexpected fnt_num command)
2111: DVI file corrupted (unexpected bop command)
2112: DVI file corrupted (unexpected eop command)
2113: DVI file corrupted (unexpected rule command)
2114: DVI file corrupted (unexpected motion command)
2116: DVI file corrupted (unexpected post_post command)
2117: DVI file corrupted (unexpected pre command)
2118: DVI file corrupted (invalid command)
2119: DVI file corrupted (back pointer does not point to bop)
2120: DVI file corrupted (more pages than claimed in postamble)
Fehlerhafte DVI-Datei.

2121: character number #1 out of range
Es wurde versucht, ein Zeichen mit einem Code zu setzen,
der auerhalb des zulssigen Bereichs liegt.

2131: erroneous \special{#1}: undefined keyword
Nach `em:' folgt im \special-Argument #1 kein bekanntes Schlsselwort.

2132: erroneous \special{#1}: bad parameter
Die \special-Anweisung #1 enthlt einen nicht zulssigen
Parameter (z.B. \special{em:point 0}).

2200: font #1 not found in batch mode
Wenn im Batch-Modus ein Zeichensatz nicht mit den beschriebenen
Verfahren gefunden wird, wird der Programmlauf mit dieser
Fehlermeldung abgebrochen.

2201: font file error PK01
2202: font file error PK02
2203: font file error PK03
2204: font file error PK04
Fehlerhafte PK-Zeichensatzdatei.

2205: font #1 too big (#2 characters)
Der Zeichensatz #1 enthlt zu viele Zeichen.

2206: character number %ld out of range
Diese Version des Treibers kann nur Zeichencodes von 0 bis 255
(bei PXL-Dateien: bis 127) verarbeiten; es wurde ein Zeichen mit
einem nichtzulssigen Code in einer Zeichensatzdatei angetroffen.

2207: font file '#1' ended prematurely
Fehlerhafte Zeichensatzdatei: Zu kurz.

2208: font file '#1' disappeared
Die Zeichensatzdatei #1 kann nicht geffnet werden, obwohl sie
zu Beginn geffnet werden konnte. Mglicherweise wurde die
Diskette ausgetauscht.

2209: undefined character #1 in font #2
Es wurde versucht, ein nicht in der Zeichensatzdatei enthaltenes
Zeichen zu setzen.

2210: character too big
Ein Zeichen ist zu gro.

2211: character too big for reduction

Ein Zeichen ist zu gro um verkleinert zu werden.

2213: '#1' is not a font library file
Die bei /pl* angegebene Datei ist keine korrekte Zeichensatz-
bibliotheksdatei.

2214: use 'fontlib /2 /b#1 #2' to convert font library
Die Zeichensatzbibliotheksdatei #2 ist eine alte und kann nur nach
Konvertierung mit fontlib verwendet werden. Sie sollten bei der
Konvertierung auerdem /f\emtex\fontlist angeben. Mit der Batch-
Datei fontconv.bat/cmd knnen alle Zeichensatzbibliotheksdateien
konvertiert werden.

2300: graphics file #1 (#2 DPI) not found in batch mode
Wenn im Batch-Modus eine Grafikdatei nicht mit den beschriebenen
Verfahren gefunden wird, wird der Programmlauf mit dieser
Fehlermeldung abgebrochen.

2301: graphics file '#1' ended prematurely
Fehlerhafte Grafik-Datei: Zu kurz.

2302: graphics image too big
Die Grafik ist zu breit.

2303: graphics image too big for reduction
Die Grafik ist zu breit um verkleinert zu werden (!)

2400: syntax error in font substitution file l.#1
Die Zeile #1 der Zeichensatzersetzungsdatei ist fehlerhaft.

2401: missing parameter file name [dvidot]
dvidot verlangt als erstes Kommandozeilenargument den Namen
der Parameterdatei.

2402: parameter file '#1' not found [dvidot]
dvidot konnte die Parameterdatei #1 nicht finden. Das erste
Kommandozeilenargument mu der Name der Parameterdatei sein.

2403: invalid parameter file (#1) [dvidot]
dvidot erkennt die Parameterdatei nicht als gltig an.
#1 ist eine Zahl die die Art des Fehlers angibt.

2410: invalid page dimensions
Unzulssige Blattbreite oder Blatthhe eingestellt (/w#, /h#).

2501: printer memory overflow [dvihplj]
Nachrechnen ergab, da der Speicher des Druckers nun voll ist.
Der Text ist in kleinere Teile zu zerlegen.

2502: too many fonts per page [dvihplj]
Es werden mehr Zeichenstze pro Blatt bentigt, als vom Drucker
untersttzt wird. Text aufteilen oder /oc1 verwenden.

2503: too many fonts [dvihplj]
Es werden mehr Zeichenstze bentigt, als vom Drucker untersttzt
wird. Text aufteilen oder /oc1 verwenden.

2511: page width exceeds #1px
Der bei der /w# Option angegebene Wert darf nicht grer als
(umgerechnet) #1 px sein.

2513: line too long
Bei der Auswertung einer %name%-Konstruktion in einer
Argumentzeile wurde diese lnger als 256 Zeichen.

2514: cannot write to fontlib response file
Beim Schreiben in die mit /pw* angegebene Datei trat ein
Fehler auf (z.B. Platte voll).

2520: graphics mode not supported [dviscr]

Es ist keine Grafikadapterkarte vorhanden oder die vorhandene
wird vom Treiber nicht untersttzt.

2602: VF file corrupted (premature end of DVI commands)
2604: VF file corrupted (stack underflow)
2608: VF file corrupted (bad preamble)
2611: VF file corrupted (unexpected bop command)
2612: VF file corrupted (unexpected bop command)
2616: VF file corrupted (unexpected post_post command)
2617: VF file corrupted (unexpected pre command)
2618: VF file corrupted (invalid command)
2621: VF file corrupted (unexpected fnt_def command)
2622: VF file corrupted (unexpected post command)
2643: VF file corrupted (invalid command)
Fehlerhafte VF-Datei.

2603: VF file too complex: stack overflow
Ein Virtual Font kann einen weiteren Virtual Font benutzen,
welcher wiederum einen Virtual Font benutzen kann, usw.
Dieser Fehler tritt auf, wenn diese Schachtelung zu weit geht
oder wenn eine Endlosschleife vorhanden ist.

2640: input stack overflow
Ein Virtual Font kann einen weiteren Virtual Font benutzen,
welcher wiederum einen Virtual Font benutzen kann, usw.
Dieser Fehler tritt auf, wenn diese Schachtelung zu weit geht
oder wenn eine Endlosschleife vorhanden ist.

2641: input stack underflow
Fehlerhafte VF-Datei.

2644: character number #1 out of range
Ein Zeichencode in einer VF-Datei ist unzulssig.

2645: virtual font #1 too big (#2 characters)
Der Virtual Font #1 enthlt zuviele Zeichen.


Interne Fehler (3xxx)
=====================

Alle internen Fehler haben das Format
*** Internal error 3xxx
oder
*** Internal error 3xxx: ...

Bei Auftreten eines solchen Fehlers Autor verstndigen!
Alle beteiligten Dateien (DVI, MSP, PCX, PK, PXL, FLI, VF, SUB,
Protokolldatei) aufbewahren! Fehlernummer aufschreiben!
Argumente aufschreiben!


Hinweise
========

Bei den Treibern dvimsp und dvidot (sowie dviscr und dvivik wenn
/o, /o#, /ox# oder /oy# verwendet wird) werden Zeichen nicht gedruckt,
deren oberste Pixel-Reihe oberhalb des oberen Papierrandes liegt.
Da dies durchaus vorkommen kann (insbesondere bei groen Zeichen wie z.B.
in cminch), sollte nie /t0 angegeben werden. Besser ist /t1px, dies
verschiebt alles um eine Nadelbreite nach unten.

In den Zeichenstzen drfen nur Zeichen mit Codes von 0 bis 255
vorkommen.

Die Breite eines Zeichens darf 32760 Punkte nicht berschreiten, die
Hhe darf 32766 nicht berschreiten. Wenn mehr als 32000 Bytes Speicher
fr ein Zeichen bentigt werden (etwa 504x507 Punkte) verringert sich
jedoch die Geschwindigkeit der Treiber deutlich.

Wenn MS-DOS oder PC-DOS beim Drucken behauptet, der Drucker wre nicht
bereit, sollte dieses Kommando vorher benutzt werden:

mode lpt1,,p (DOS 2.x oder 3.x)
mode lpt1 retry=r (DOS 4.0 oder spter)

wobei natrlich fr lpt1 die richtige Druckerschnittstelle einzutragen
ist. Dies bewirkt, da auf den Drucker `ewig' gewartet wird.

Texte fr Fehlermeldungen und Warnungen werden aus der Datei
dvidrv.err gelesen. Diese Datei mu in einem Verzeichnis
stehen, das im Suchpfad fr Programme (PATH) aufgefhrt ist.
Diese Datei wurde eingefhrt, um Speicherplatz zu sparen, nicht
um das ndern der Meldungen durch den Benutzer zu ermglichen.


Ausgabe bei /v4
===============

dvihplj:
Am Ende jedes Blattes:
a=Speicherbedarf fr Zeichenstze
b=Speicherbedarf fr dieses Blatt
c=Anzahl der bisher definierten Zeichenstze
d=Anzahl der auf diesem Blatt verwendeten Zeichenstze
Alle:
Am Ende des Programms wird die Speicherverteilung angezeigt, z.B.
Page buffers 4 40024
Dies bedeutet, da durch 4 Blattpuffer zusammen 40024 Bytes belegt
wurden. Die gleiche Ausgabe erscheint auch dann, wenn /v4 nicht
verwendet wurde und der Speicherplatz nicht ausreicht.



Return Codes (ERRORLEVEL)
=========================

0 Alles in Ordnung
1 Fehlerhaftes Argument
2 Fehlerhafte \special{}-Anweisung
100 Zuwenig Speicher
101 Zuwenig Speicher oder Plattenplatz
200 Fehlerhafte DVI-Datei
201 Fehlerhafte Zeichensatzdatei oder Zeichensatzdatei nicht gefunden
202 Fehlerhafte Grafikdatei oder Grafikdatei nicht gefunden
203 Fehlerhafte VF-Datei
204 Sonstiger Fehler
254 Interner Fehler


Erwnschte Erweiterungen
========================

- Optionen in \special{}. [Ziemlich unmglich]

- Batch-Modus sucht nchstgelegene Gre. [Vielleicht]

- \special{em:include(filename)}
zum Einfgen der ersten Seite einer DVI-Datei. [Unwahrscheinlich]
Geht aber (fr hinreichend kleine Seiten) ber Virtual Fonts.

- Seiten sortieren (nach Nummer, wahlweise Vorzeichen ignorieren).
[Gelegentlich]

- Treiber fr folgende Gerte:
Brother und andere Typenraddrucker. [Abgelehnt]

- PostScript-Treiber. [Zur Zeit kein Drucker zur Hand, aber geplant]

- Farbe fr P6 u.a. Farbdrucker. [Fr Nadeldrucker sehr schwierig]

- Scrolling (dvivik). [Vielleicht]

- Alignment von Zeichen bei /s# und /o#. [Wird immer wieder verschoben]

- Warnung falls Objekte auerhalb des Blattes liegen. [Nicht einfach]

- Interaktiver Modus, Abbruch, Halt nach jedem Blatt. [Geplant]

- Mehrere Seiten pro Blatt: explizit in Datei angegeben,
welche Seite auf welches Blatt (und wo (z.B. Index))
soll. [Vermutlich demnchst]

- line: true dimensions (fr Linienbreite). [Wahrscheinlich nie]

- \special{em:moveto} und \special{em:lineto}: Knick- und Endpunkte
anstndig behandeln. [Ziemlich viel Arbeit]

- P6: unidirektional. [geht z.Z. mit /pi*]

- dvihplj: \special{em:print(filename)}. [Pat nicht in Filosofie]

- `Fangbereich' fr Zeichensatzgren verbessern (fr fli-Dateien schon
implementiert).

- DOS: Falls ntig Cache auf Platte auslagern
(bei /tr0 abschaltbar). [Verschoben]

- Auch nicht ganzzahlige Werte bei /s# und /o#. [Arbeit]

- Anstndiges Men (z.B. mit /i) [Viel Aufwand]

- Verbindung von emTeX und dvidrv ber Pipe (nur OS/2 bzw. DOS mit
Netzwerk) [Geplant]

- dviscr/dvivik: Spter in Grafikmodus umschalten. [Geplant]

- dviascii: fr Rechtschreibung. [Falls ich zuwenig zu tun habe]

- dviscr/dvivik: Statuszeile bei transformieren. [Aufwand]

- Transformation auch von Grafiken und groen Zeichen [schwierig,
aber geplant]

- Option fr Wiederholung bei `richtiger' zweiseitiger Ausgabe:
1 2 1 2 3 4 3 4 ...
Am Ende (speziell bei /nf#) Leerseite einfgen, falls erforderlich.
[Vielleicht, z.B. /2p]

- Virtual Memory unter DOS [aufwendig]

- Graustufen auf Monochrome-Bildschirm mit EGA (Verwendung von
16 Farben). [Vielleicht]

- Bei /pf# und /pg#: horizontale und vertikale Auflsung getrennt
(z.B. $s, $r, $S, $R). Damit: /pf=\fonts\$rx$R.p6m. [Vielleicht]

- Bei der Eingabe eines Verzeichnisses fr einen Zeichensatz oder
eine Grafikdatei sollte $r und $s verwendet werden knnen.

- Maussteuerung fr dviscr.

- dvipm: Previewer fr Presentation Manager.


Bekannte Fehler
===============

Unter DR-Dos 5.0 kann nicht direkt auf eine Schnittstelle (z.B. PRN)
ausgegeben werden.


Entstehungsgeschichte
=====================

Die mit `***' markierten Punkte UNBEDINGT BEACHTEN!


Version 1.3a:
-------------

- Mehrere Fehler in der Bearbeitung der Zeichensatzersetzungsdatei
entfernt.

- Erweiterung der Syntax der Zeichensatzersetzungsdatei (@).

- Antwortdatei: Neu: Dateiende bei `@' am Anfang einer Zeile.

- Protokolldatei als Antwortdatei verwendbar.

- dviscr/dvivik: Es wurde `/pi' in die Protokolldatei geschrieben.

- Warnung 1017 gibt nun das fehlerhafte Argument aus.

- Eine Zeile in einer Antwortdatei, die nur einen Kommentar enthlt,
erzeugte eine Warnung.

- dviscr/dvivik: `*' ganz rechts in der Statuszeile, solange das
Bild aufgebaut wird.

*** Eingaben bei Zeichensatzsuche: `i' durch `w' ersetzt.

- Zeichensatzersetzungsdatei vollstndig implementiert.

- Eingaben bei Zeichensatzsuche: `b'.

*** Batch-Modus: Suchfolge gendert, siehe oben.

- dviscr/dvivik: <+> und <-> funktionieren nun auch ohne Verwendung
des Graustufenmodus; es wird dann die Skalierung
(siehe /s#) gendert. Es mssen die gleichen Werte
bei /sx# und /sy# eingestellt sein.

*** \special{em:moveto} und \special{em:lineto} wurden durch
\special{em:point} und \special{em:line} ersetzt.

*** dviscr/dvivik: Sortierte Ausgabe (/o) gibt es nicht mehr (oder
vielmehr: nur noch ber Geheimoption), /o0
ist auch entfallen.

- /h# und /w# gibt es nun bei allen Treibern.

- Transformation der Ausgabe (/tr#, ).

*** dviscr/dvivik: Tastenfunktion auf umgelegt
(Home-Position festlegen).

- \special{em:line} (bzw. frher: moveto, lineto} erzeugte
eine seltsame Linie, falls bei /sx# und /sy# unterschiedliche
Werte eingestellt sind (auch bei /rx# und /ry# unterschiedlich).

*** Bei \special{em:line} mu bei der Linienbreite eine Maeinheit
angegeben werden. Diese darf NICHT `px' sein.

- dviscr/dvivik: Falls eine Grafikdatei nicht gefunden wurde oder
zugleich /fc und \special{em:graph} benutzt wurde,
wurde nicht mehr zurck in den Grafikmodus geschaltet.

- dviscr/dvivik: <->, <+> und : Bildschirmmittelpunkt oder
Linealposition ist Fixpunkt (falls mglich).

- dviscr/dvivik: Bildschirmmittelpunkt/Lineal bei .

- \special{em:linewidth width}.

- dvimsp: Statt einer komplett schwarzen Grafikzeile wurde eine
weie Zeile geschrieben (nur bei /o2).

- dvimsp: Am Dateiende fehlten manchmal ein paar Zeilen (nur bei /o1).

- /m6 bis /m9

- dviscr/dvivik: Bei und gibt es eine (feinere) Stufe mehr.


Version 1.3b:
-------------

*** Fr die Zeichensatzsuche wird fr die Transformationen 0, 2, 5 und 7
die mit /rx# eingestellte Auflsung, fr die Transformationen
1, 3, 4 und 6 die mit /ry# eingestellte Auflsung verwendet.

- Es kann nun auch /n0 angegeben werden (ntzlich fr /pw*).

- dviscr/dvivik: <+> und <-> funktionieren nun auch (manchmal) dann,
wenn bei /ox# und /oy# bzw. /sx# und /sy# verschiedene Werte
eingestellt wurden. Dabei wird das Verhltnis beibehalten.

- /np# Jedes Blatt #-mal drucken
/nf# Die ganze Datei #-mal drucken

*** Die Seitenauswahl wurde in eine Blattauswahl umgebaut, wobei
noch ein paar andere nderungen vorgenommen wurden. Falls
nur eine Seite pro Blatt und einseitig gedruckt wird, bleibt
alles beim alten (Ausnahme: /k# wirkt sich nicht mehr auf /e*
aus). Die nderungen:
/b# und /e# whlen nicht mehr Seiten sondern Bltter aus.
Beispiel: Es werden zwei Seiten pro Blatt geruckt,
die Seitennummern sind 1, 2, 3, 4, 5 und 6, Optionen /b2 /e3.
Bisher gedruckte Bltter: leer/2, 3/leer
Jetzt gedruckte Bltter: 1/2, 3/4

/2* heit, da jedes zweite BLATT zu bergehen ist:
frher jetzt
/2+/k0 /2O
/2+/k1 /2E

/k# gibt an, wieviele BLTTER zu bergehen sind (bei
Verwendung von /2o oder /2e: NACH Entfernung jedes zweiten Blattes).
Damit kann nun auch bei mehreren Seiten pro Blatt
doppelseitig gedruckt werden. Auerdem wirkt sich /k# nicht
mehr auf /e* aus.

/n# gibt an, wieviele BLTTER maximal zu drucken sind
(bei /2o oder /2e: nach Entfernung der `ungeraden' Bltter).
Mit /k# und /n# kann nun der Druck einer lngeren Datei
einfacher zerteilt werden, z.B. /n20, dann /n20/k20,
dann /n20/k40 usw.

Die Bedeutung von /z+ wurde gendert: /z+ hat nun keinen
Einflu auf die Seitenauswahl mehr und bewirkt nur noch,
da die Bltter in umgekehrter Reihenfolge ausgegeben werden.
Bei /z- und /z+ werden also genau die gleichen Bltter gedruckt,
nur in anderer Reihenfolge.

- bersprungene Seitenzahlen werden nicht mehr angezeigt.

- Statt der Ausgabe von Seitenzahlen in eckigen Klammern werden
nun alle Seitenzahlen des gerade bearbeiteten Blattes in
eckigen Klammern angezeigt.

- Zu lange Argumente fhren nicht mehr zum Absturz.

- Neue Option: // Nach Optionen fragen.

- Anzeige wieviele Seiten gelesen wurden und wieviele Bltter
gedruckt werden.

- dviitoh: /hf# Blattlnge fr Blattvorschub.

- dvihplj: In die Protokolldatei wurde fr /om# der falsche
Wert geschrieben.


Version 1.3c:
-------------

- Antwortdateien werden auch im durch `PATH' spezifizierten
Pfad gesucht.

- Mehrere Zeichensatzbibliotheksdateien.

- Zeichensatznamen werden nun z.B. als `\fonts\cmr10<1500>'
statt als `\fonts\pxl1500\cmr10' ausgegeben.

- Bei /[email protected]* und /pd* knnen mehrere Verzeichnisse angegeben werden
(war schon lnger vorhanden, der Eintrag in dieser nderungsliste
hat aber gefehlt).

- Bei manchen Optionen wurde der Dateiname nicht auf 8+3 Zeichen
gekrzt (OS/2!).

- dviscr/dvivik: Wenn keine Seiten ausgewhlt waren (z.B. /n0)
wurde Fehlermeldung 2114 ausgegeben.

- /rf# Auflsung fr Zeichenstze.

- Es gab keine Fehlermeldung, falls das Argument von /r# zu klein
oder zu gro war.


Version 1.3d:
-------------

- Neue Fehlermeldung: 2520

- dviscr: Neue Modi bei /oa#: 11 bis 18 (fr Flle in denen die
automatische Erkennung versagt).

- dviscr: /oa10 (MDS Genius, PRIMUS II) funktioniert nun.

*** Neue Zeichensatzsuchfolge, Bedeutung von /pf* gendert.
Frher: /pf=path
Jetzt: /pf=path;path\pxl$s

- Neu: dviscrs.exe, eine Version von dviscr, die weniger
Speicher bentigt, aber langsamer ist und nur im
real mode (DOS) luft (s=small & slow).

- Bei /pg* knnen nun mehrere Verzeichnisse angegeben werden.

- Bei Benutzereingaben zur Zeichensatzsuche kommt man nach
vielen `-' und danach gleich vielen `+' wieder bei der
Originalgre an.

- dviscr: Das Bild wurde zweimal aufgebaut, falls vor der
Anzeige des ersten Bildes <+> oder <-> verwendet wurde. Korrigiert.


Version 1.3e:
-------------

- dviscr/dvivik: Bei Verwendung von /s# mit # ungleich 1 (Skalierung)
wurde die falsche Auflsung (/r#) in die Protokolldatei geschrieben.

- `Loading page pointers... # input page(s), # output page(s)'
erscheint nun auch in der Protokolldatei.

- Seit Version 1.3d wurden Zeichenstze (in Einzeldateien)
flschlicherweise nur im Arbeitsverzeichnis gesucht, nachdem der
Benutzer nach einer Eingabe (Zeichensatzname/Gre/Verzeichnis)
gefragt wurde. Korrigiert. Die Korrektur fhrte auch gleich dazu,
da nun auch der Verzeichnisname ausgegeben wird (z.B.
`\fonts\pxl$s\cmr10<1500>'.


Version 1.3f:
-------------

- Fehler beseitigt: Wenn die Anzahl der Seitenpositionen (/ci#) und
die Anzahl der Seiten pro Blatt (/cp#) nicht bereinstimmten
und beide Werte von 1 verschieden waren, funktionierte /cf#
mit # ungleich 1 nicht.

- dviscr/dvivik: Fehler beseitigt: Wenn der Suchtext bei als
ungltig erkannt wurde, konnte trotzdem mit (ohne Suchtext)
nach dem Anfang desselben gesucht werden.


Version 1.3g (06.11.89):
------------------------

- dvip6l, dvip6m, dvip6h und dvifx setzen den Drucker nun auch am
Ende zurck.

*** Es wird keine Standarderweiterung fr die Ausgabedatei mehr verwendet;
Ausnahme: dvimsp verwendet weiterhin msp.

- dviscr: Wenn /s1 eingestellt ist (Voreinstellung) und Graustufen-
modus (/o#) gewhlt wird und Graustufenmodus nicht mglich
ist (da z.B. vom Grafikadapter nicht untersttzt), wird
der mit /o# eingestellte Wert als Skalierung (siehe /s#)
verwendet. Damit kann nun allgemein z.B. /s3 verwendet
werden, unabhngig vom Grafikadapter.

- dvihplj: Der Drucker wird am Anfang vollstndig zurckgesetzt
(mit Esc E). Kann mit /oi- abgeschaltet werden.

- Bei /pf* mssen $r und $s nun in Kleinschreibung angegeben werden.

- Nun ist $r und $s auch bei /pg* erlaubt.

- dviscr: Maximalzahl der Skalenstriche des Lineals vergrert
(fr /oa10).

- dviscrs: Kann nun umbenannt werden, falls DOS 3.0 oder spter
verwendet wird.


Version 1.3h (12.02.90):
------------------------

- dviscr: Fehler beseitigt: Es wurde ein leeres Bild angezeigt,
wenn gleich zu Beginn (vor dem Umschalten in den
Grafikmodus) die Bildgre durch eine Zoom-Taste
(<-> oder <+>) gendert wurde.

- Fehler beseitigt: Beim Druck von mehreren Seiten pro Blatt
funktionierte \special{em:line} nicht.

- dviscr: Nun schwarzer Rand bei Graustufenmodus (schwarz auf wei)
mit VGA.

- Neu: dviaiw (fr Apple Imagewriter).

- dvimsp: Fehler beim Schreiben von MSP-Dateien (/o2) behoben.

*** Extension fr Protokolldateien nun DLG statt LOG.

- Problem mit Gertenamen unter OS/2 1.2 beseitigt.

- Fehler beseitigt: In PK-Dateien konnten keine sehr groen Zeichen
mit sehr vielen aufeinanderfolgenden entweder vollkommen schwarzen
oder vollkommen weien Zeilen verwendet werden.

- Bei zu gro eingestellter Blatthhe wird nun Fehler 2410 statt
eines internen Fehlers ausgegeben.

- /m# nun bis 16000.

*** Voreinstellung fr /pf* gendert: statt pixel.hp nun pixel.lj.


Version 1.3i (26.02.90):
------------------------

- Smtliche Druckertreiber der Version 1.3h konnten unter DOS
nicht mehr direkt auf ein Gert ausgeben.


Version 1.4a (08.08.90):
------------------------

Fehlerkorrekturen (alle Treiber)

- Insbesondere bei dvihplj hat der Umbruch der Meldungen auf dem
Bildschirm nicht richtig funktioniert, falls eine Protokolldatei
geschrieben wurde.

- Es konnte ein Dateiname zuviel angegeben werden: Die Screen-
Previewer beschwerten sich erst ab drei Dateinamen mit Warnung
1017, die anderen Treiber beschwerten sich erst ab vier Dateinamen.

- Fehler beseitigt: Akzentzeichen wurden u.U. um ein Pixel daneben
gesetzt.

- Fehler beseitigt: Wenn die bei /b* angegebene Seite nicht existierte,
wurde /b* einfach ignoriert. Nun werden in diesem Falle alle
Seiten aussortiert, d.h. nicht gedruckt.

- Fehler beseitigt (Suche von Grafikdateien).

- Fehler beim Lesen von PCX-Dateien beseitigt.


Neue Optionen (alle Treiber)

- /pv* Suchpfad fr vf-Dateien (Virtual Fonts).

- /fs# zum Verkleinern von Zeichenstzen.

- /rfx# und /rfy# zum getrennten Einstellen der horizontalen und
vertikalen Zeichensatzauflsung.

- /rg#, /rgx# und /rgy# zum Einstellen der Auflsung fr Grafikdateien.



Sonstiges (alle Treiber)

- Unter OS/2 kann nun die vorige Eingabe editiert werden
(z.B. wenn nach einem Zeichensatz gefragt wird).

*** Die Texte fr Fehlermeldungen und Warnungen werden aus der Datei
dvidrv.err gelesen. Diese Datei mu in einem Verzeichnis
stehen, das im Suchpfad fr Programme (PATH) aufgefhrt ist.

- Unter OS/2 werden nun alle Texte werden auf stderr ausgegeben,
unter DOS weiterhin auf stdout.

- Unter OS/2 kann fr die Ausgabedatei - angegeben werden (stdout).

- Zwei neue Return Codes (ERRORLEVEL): 203 und 204.

- In einer Argumentzeile wird nun `%%' als Anfang eines Kommentars
interpretiert. Alle Zeichen nach zwei unmittelbar aufeinander-
folgenden Prozentzeichen werden ignoriert.

- Zeichensatzdateien (pxl, pk) werden nicht mehr im Arbeitsverzeichnis
sondern nur noch in den mit /pf* definierten Verzeichnissen gesucht.
Wenn Zeichensatzdateien auch im Arbeitsverzeichnis gesucht werden
sollen, so ist bei /pf* das Verzeichnis `.' mitanzugeben.

- Statt der Gre (DPI*5) wird nun die Auflsung (DPI) ausgegeben.
wenn eine Grafikdatei nicht gefunden wurde (Fehlermeldung 2300
und Warnung 1301).

- Neu: \special{em:moveto} und \special{em:lineto}.

- Frher wurde ein Verzeichnisname bei \special{em:graph} halb
ignoriert, jetzt wird er ganz ignoriert.


dvidot

*** dvifx, dvip6l, dvip6m, dvip6h, dviitoh und dviaiw nun offiziell
durch dvidot ersetzt.

*** Fr EPSON-Drucker der LQ-Serie sind nun die Parameterdateien
lql, lqm, lqwl und lqwm statt p6l, p6m, p7l und p7m zu verwenden.
Neue Parameterdateien: lql, lqm, lqwl, lqwm.
Genderte Parameterdateien: p6l, p6m, p6h, p7l, p7m und p7h: Der
Drucker wird nicht mit ESC '@ sondern mit FS '@ zurckgesetzt.

- /ox+: XON/XOFF-Protokoll fr COM1 bis COM4.

- Parameterdatei fr Tandy DMP-130.

- dvidot hat die Einstellung fr FORM_FEED ignoriert und immer FF
fr den Seitenvorschub verwendet.

- Parameterdateien fr IBM-Proprinter (4201, 4202, 4207, 4208).
Die Parameterdateien fr 4201 und 4202 sind fast unbrauchbar.

- makedot: z.B. LH*3+1.


dvihplj

- Mit dvihplj kann nun nher am rechten oder unteren Papierrand
gedruckt werden. Auerhalb des Blattes liegende Zeichen werden
weggelassen. Deshalb ist mit /h# und /w# die Blattgre
richtig einzustellen. Wenn die Blattgre zu klein eingestellt wird,
werden Zeichen am Rand vom Treiber weggelassen, wenn die Blattgre
zu gro eingestellt wird, werden am Rand liegende Zeichen vom Drucker
weggelassen. In der linken oberen Ecke gibt es aber immer noch
Probleme (aber nur mit Zeichen, die abgeschnitten werden mssen).

- Neue Optionen: /oj+ (Job Offset) und /od+ (DeskJet).

- Grafiken bentigen nun etwas weniger Speicher im Drucker.

- /ox+: XON/XOFF-Protokoll fr COM1 bis COM4.


- /of#: Zeichensatznummern einstellen.

- dvihplj: /oc#.


dvimsp

- dvimsp: Fehler beseigt, der bewirkte, da bei Verwendung von /om-
(dies ist die Voreinstellung) Zeichen, die teilweise links des
linken Randes der Grafik lagen (also abgeschnitten wurden),
um acht Pixel zu weit rechts ausgegeben wurden.


dviscr/dvivik

- dviscr/dvivik: + Skalenstriche des Lineals an/aus.

- /oa15 bis /oa18 wurden bei /?? nicht richtig angezeigt.

- Sie knnen nun direkt angeben, welcher (vom BIOS untersttzte)
Grafikmodus benutzt werden soll. Damit knnen weitere
(hherauflsende) Spezialmodi verwendet werden. Siehe /oa#.

- Fehler getilgt: Wenn durch Bettigung von <-> oder <+> bei
Verwendung der Graustufendarstellung die Skalierung verndert
wurde, hat dviscr zuviel Speicher verbraucht. Dies trat z.B. dann
auf, wenn <-> bei Anzeige von G88 in der Statuszeile gedrckt wurde.

- Ein Fehler im BIOS einer bestimmten VGA-Karte wird nun umgangen.

- Speicherverwaltung im Graustufenmodus verbessert.

- /oa19 fr Olivetti M24 (640x400).

- Nach Bettigung der -Taste (Invertieren) hatte der
Blattrand manchmal die falsche Farbe.

- Direktes Verndern der Skalierung mit Alt+G und Alt+S.

- dviscr arbeitet nun auch dann, wenn filec.com geladen ist.



Version 1.4b (13.08.90):
------------------------

- Fehler beseitigt: Absturz von dviscrs/dviscrs bei Verwendung
einer Hercules-Grafikkarte.

Version 1.4c (20.08.90):
------------------------

- Fehler beseitigt: dvihplj verwechselte Zeichen, falls Speicher
knapp war.


Version 1.4d (25.09.90):
------------------------

*** Neues Format der Zeichensatzbibliotheksdateien. Alte Dateien mssen
z.B. mit dem Kommando
fontlib /2 /b300 /f\emtex\fontlist lj_1500 lj_0
umgewandelt werden. Dies kann durch die Batch-Datei fontconv.bat/cmd
geschehen. Siehe auch README.GER.

*** Die Zeichensatzgre wird nun in dpi angezeigt und eingegeben.
Betrifft auch ZE-Dateien.

*** Voreinstellung fr /pf* gendert: $rdpi (z.B. 300dpi) statt pxl$s
(z.B. pxl1500). Dies wurde auch in allen dot-Dateien gendert.

- Neue dvidot-Parameterdateien: lqh.dot und lqwh.dot fr 360 DPI auf
EPSON LQ-550 u.a. (aber nicht auf allen EPSON LQ-Druckern).

- dvidot-Parameterdateien fx80.dot und fx100.dot gendert, so da
dadurch mehr Drucker untersttzt werden.

- dvimsp: Die Protokolldatei konnte nicht als Antwortdatei
verwendet werden.

- dvimsp: Es knnen nun mehrere Grafikdateien mit einem Aufruf
erzeugt werden.

- dvimsp: Es knnen nun PCX-Dateien erzeugt werden. (Vermutlich
wird dvimsp deshalb demnchst umbenannt werden.)


-------- Ende von DVIDRV.DOC -------------



 December 8, 2017  Add comments

Leave a Reply