Some notes on installing dvips 5.5 on MS-DOS and OS/2
by Russell Lang  <rjl@monu1.cc.monash.edu.au>  17th February 1994

These notes are not by Tomas Rokicki.  
Tomas Rokicki does not use MS-DOS ( smart person :-) and so will be 
unable to answer questions about MS-DOS problems.

=========
ZIP files
=========
If you have ZIP files, one should contain the sources of dvips
(same as labrea.stanford.edu:pub/dvips55?.tar.Z) and the other
should contain dvips ready to run with the following compiled 
versions of dvips:
   dvips.exe          MS-DOS 8086
   dvipswin.exe       MS-Windows 3.1
   dvips32.exe        OS/2 32 bit or MS-DOS with EMX DOS extender
The following may or may not be in the ZIP file.
   dvips16.exe        OS/2 16 bit and MS-DOS (MSC6).

To install this in the emTeX directories on drive C:, use 
        unzip dvips55? c:\

=======
General
=======
If you want to use a different directory arrangement, modify the
paths in c:\emtex\ps\config.ps.  If you want to store config.ps or 
psfonts.map in a different place, either recompile dvips or use the 
environment variable TEXCONFIG.

The LaTeX and TeX input files supplied with dvips (e.g. epsf.sty, epsf.tex)
are now put in c:\emtex\texinput\dvips and not in their old location
c:\emtex\texinput.  This means that you need emTeX beta 11 and you will 
need to enable emTeX's subdirectory searching with
set TEXINPUT=c:\emtex\texinput!

The MSDOS and OS/2 versions of dvips differ from the Unix version
described in dvips.tex in the following ways:
- path separators are ';' not ':'
- directory separators are '\' not '/'
- The user's initialization file is "dvips.ini" not ".dvipsrc".
- Printer configuration files are called <printer-name>.cfg,
  not config.<printer-name>.
- Pipes to printers are not supported by MS-DOS.  Output must go to a file.
  OS/2 supports pipes.
- MakeTeXPk is a batch or command file.
  Since MS-DOS has insufficient memory to run both dvips and metafont 
  at the same time, this batch or command file will typically write out 
  a set of commands for running metafont later.  
  The maketexp.bat supplied writes out an mfjob file for em\TeX.
  OS/2 has more memory so the maketexp.cmd supplied writes out an 
  mfjob file for emTeX and calls mfjob.
  The emTeX betatest mfjob 1.1l package is required.
- To automatically make fonts under MS-DOS, use emTeX's dvidrv as follows:
    dvidrv dvips file.dvi
  dvidrv is part of the emTeX betatest dvidrv 1.4s package.
  dvidrv sets an option -pj=mfjobfile for dvips, where mfjobfile
  is the name of a temporary mfjob file.
  If there are missing fonts, dvips will write this mfjob file
  and then ask:
    Exit to make missing fonts now (y/n)?
  If you answer yes, dvips exits with errorlevel 8 which tells 
  dvidrv to call mfjob to make the fonts, and then to call dvips again.
  For this to work, dvidrv, dvips, mfjob and mf must be located in
  the PATH, and the environment variables for mfjob and mf set
  correctly.  A font mode must be set with the 'M' option in config.ps.
  If the -pj option is set, dvips will not call MakeTeXPk.bat
- limited emTeX specials.  The following ones are supported:
  \special{em:message xxx}
  \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}
  \special{em:graph xxx[,width[,height]]}
  The line cut parameters [h|v|p] of the \special{em:line ...} command 
  are ignored.  Lines are ended with a rounded cap.
  A maximum of 1613 different point numbers are permitted on each page.
  The \special{em:graph xxx} should work with PCX, MSP1, MSP2 and
  BMP files.  Compressed BMP files have not been tested.
  The graph file may be scaled by giving an optional width and 
  height (expressed in the same way as TeX dimensions).
  An example: \special{em:graph scrdump.pcx,100mm,75mm}

The program dvips can use emTeX font libraries created with the 
fontlib /2 option.  PXL fonts within font libraries will be ignored.

If you run out of memory running dvips, try using the `-Z0 -a' or
just the `-a' command line options.  If that fails, use the 32 bit
version.

=====
Files
=====
This set of MSDOS and OS/2 files for dvips contains:
README.pc     This file.
makefile.tc   Makefile for Borland C++ (MS-DOS).
makefile.emx  Makefile for nmake/ndmake and emx/gcc (OS/2 and MS-DOS).
makefile.msc  Makefile for dmake and MSC6 (OS/2).
makefile.wat  Makefile for Watcom C (untested)
makefile.wt2  Makefile for Watcom C (untested)
config.ps     config.ps modified for MSDOS and OS/2
maketexp.bat  Batch file to make tex pk files.
maketexp.cmd  OS/2 batch file to make tex pk files.
winmain.c     WinMain() routine for Windows dvips.
dvipswin.rc   Windows Resource file containing radical eye icon.
dvipswin.def  Windows defaults file.
afm2tfm.def   OS/2 16 bit defaults file.
dvips16.def   OS/2 16 bit defaults file.
squeeze.def   OS/2 16 bit defaults file.

=========
Compiling
=========
If you have the Unix tar file, the steps involved in making 
dvips on a PC are:
-  On Unix, in the dvips directory, give the following commands:
      make texc.lpro
      nroff -man dvips.1 > pc/dvips.doc
      nroff -man afm2tfm.1 > pc/afm2tfm.doc
-  Copy dvips/* and dvips/pc/* directories to the PC.
-  copy PStfms/*.tfm to C:\EMTEX\TFM on the PC 
   (then optionally delete pst*.tfm, rpst*.tfm, pop*.tfm rpop*.tfm,
    pad*.tfm rpad*.tfm)
-  copy PSvfs/*.vf to C:\TEXFONTS\VF on the PC
   (then optionally delete pst*.vf, pop*.vf, pad*.vf)
-  edit dvipsmac.tex and replace the line
      \generictrue
   with
      %\generictrue

For Borland C++:
-  edit paths and directories in pc/makefile.tc and pc/config.ps.
-  'make -fpc/makefile.tc'
   Borland C++ gives a large number of 'possible incorrect assignment'
   warnings.  
-  if that works, try 'make -fpc/makefile.tc install'.
-  change to another directory (to avoid using the Unix config.ps)
   and then try to run dvips!

For emx/gcc:
-  edit paths and directories in pc/makefile.emx and pc/config.ps.
-  If using HPFS, type 'nmake -fpc\makefile.emx fixup'
-  If using ndmake under msdos, PKPATH will need to be changed to
   using single % not %%.
-  'nmake -f pc\makefile.emx'
-  if that works, try 'nmake -f pc\makefile.emx install'.
-  change to another directory (to avoid using the Unix config.ps)
   and then try to run dvips32!
-  dvips32.exe will run under OS/2 and MSDOS.
-  See the EMX documentation for the EMX DOS extender.
