This version of xdvi is modified from Paul Vojta's in that it uses the
same code for path searching as TeX, the GNU font utilities, and my
modified dvips.  If you find it useful, you might want to send mail to
Paul suggesting that he merge my changes into the main release.

These changes are based on patchlevel 11, i.e., virtual font support is
not present.  I haven't updated this because I personally don't need vf
support in xdvi; I just generated PostScript font bitmaps in the
``dvips'' encoding in the first place (with gsrenderfont in the GNU font
utilities).

I also changed the configuration process to use a GNU-style `configure'
script to guess system-dependent information, instead of requiring the
installer to do this in the Makefile.

Bugs should probably be reported to me, rather than Paul, so he is not
bothered with bugs that aren't in his program.

karl@cs.umb.edu
Member of the League for Programming Freedom -- write lpf@uunet.uu.net.


INSTALLATION

1. `configure'.  This tries to figure out system dependencies.

2. If necessary, edit the default paths or other definitions in `Makefile'.
   Set XCFLAGS=-DA4 if you want A4 paper by default.
   The `memlayout' variable should be set according to what the ^P key
   reports for `bitord' and `Unit' in xdvi:
     bitord = 1  =>  -DMSBITFIRST.
     Unit = 32   =>  -DBMLONG
     Unit = 16   =>  -DBMSHORT
   
   I am unconvinced that all this makes any substantial difference in
   performance, however.

3. `make'.

4. `make install'.

5. `make distclean' (or `mostlyclean', or `clean', or `realclean').

If you wish to preview documents using PostScript fonts, you may find
ftp.cs.umb.edu:pub/tex/psfonts.tar useful.

Note for Sun OpenWindows users:

From: pln@egret0.Stanford.EDU (Patrick L. Nolan)
Subject: Re: xdvi and OW3
Date: 23 Feb 93 22:20:44 GMT

Erwin Embsen (erwin@nioz.nl) wrote:
: 
: I downloaded xdvik-023 and tried to compile it under Sun OpenWindows
: Version 3.0. Everything went ok until the linking/loading phase. The
: loader comes up with the following error message:
: 
:         ld: Undefined symbol
:            _get_wmShellWidgetClass
:            _get_applicationShellWidgetClass
: 
: All libraries mentioned in the Makefile exist. Then what is the problem?
: Is there some way to get xdvi compiled under OW3 or do I have to compile
: and link xdvi using X11R5 (I hope not)?
: 
This is in the FAQ list for comp.sys.sun.admin.  Quote:

47)  When I try to compile MITs X11R4 applications under Openwindows 3.0,
     I get the following "undefined" symbols(_get_wmShellWidgetClass, and
     _get_applicationShellWidgetClass). What is the Problem?

     There are problems with the Xmu shared library as shipped from Sun.

     There are two "fixes". One is to get the Openwindows patches
     that apply to this problem and the other is to "statically" link
     the Xmu library into the executable.

     The patches you will need are as follows:

     Patch i.d.      Bug i.d.'s      O/S     Description
     ---------- -------------------------------------------------------
     100512-02       1086793 1086912         4.1.x OpenWindows 3.0 libXt
                     1074766                 Jumbo patch 

     100573-03       1087332                 4.1.x OpenWindows 3.0 undefined
                                             symbols when using shared
                                             libXmu.
 
        To "statically" link your executable with libXmu modify the
        compile line as follows:
 
                  -Bstatic -lXmu -lBdynamic
--
*   Patrick L. Nolan            (415)723-0133                 *
*   W. W. Hansen Experimental Physics Laboratory (HEPL)       * 
*   Stanford University                                       *
*   Bitnet: PLN@SLACVM    Internet: pln@egret0.stanford.edu   *

Note for HP-VUE users (other people have reported that they did not have
this problem, so your mileage may vary):

From: Ted Spence <ted@maths.gla.ac.uk>
Subject: xdvi
Date: Thu, 7 Jan 93 11:29:02 GMT

The header files Shell.h and StringDefs.h that I obtained [from the MIT
X distribution]
contained references to XtShellStrings and XtStrings.
I removed all references to them and this allowed me to get an
executable xdvi which seems to work under HP-VUE (well almost).
I seem to be able to scroll the pages in only one direction
but this is certainly better that having no xdvi at all!

Note for SCO users:

Date: Wed, 24 Mar 1993 20:59:49 -0600 (CST)
From: LIEDER@SKYLER.MAVD.HONEYWELL.COM

I also had to down load libXaw from SCO "sosco.sco.com:/TLS/tls005.tar.Z"
since they don't include the Athena tools in thier "standard" libraries.

Notes of historical nature follow.  Most recent changes are listed at the end
of the file.

================================================================

This directory contains a version of xdvi capable of reading GF, PXL
and PK font files. This version of xdvi is based on the source that
"came with" X v10r3. Xdvi was modified by Paal Kvamme at the Norwegian
Institute of Technology, based on the modifications I had made to
dviimp (a dvi to ImPress converter). This code was again more or less
directly translated from the web source of PKtoPX.

If you discover (and fix) any bugs in this code, please notify me, so
I can make the corresponding changes myself.

---------
H}vard Eidnes	(TeXish: H\aa vard Eidnes)
Division of Computer Science
Norwegian Institute of Technology

E-Mail: h_eidnes%vax.runit.unit.uninett@nta-vax.arpa
================================================================
Also has path search added by Mark Eichin, looks in TEXFONTS
================================================================

================================================================
Additional notes:
	X11 version now works on the IBM PC/RT as well as VAX.
			[eichin:19880313.1330EST]
================================================================
*MORE* fixes (for athena release locker) [eichin:19880722.2058EST]
Fixes:
	narrow vertical and horizontal lines no longer disappear.
	bogus underlining (which usually occured on even sample sizes
of odd sized characters) no longer occurs.
	-S number (or typing number followed by S) will adjust the
sampling fraction; 0 is special cased to mean if anything in the
sampled zone is set, set the sample, else clear it. Interesting to
experiment with, though not useful for reading (the default value of 3
is just right.)
	-display and -geometry arguments work (so do old style forms,
though they were broken before)
	fixed one of the PK debugging messages to print the correct
font name instead of printing the pointer as text.
	included Ken Raeburn <raeburn>'s changes to support multiple
screens.
================================================================
More changes:

    1.  Incorporated the bitmap under a viewport widget using the toolkit
	(X11 only);
    2.  Added an icon and icon geometry arguments (X11 only);
    3.  Supported window resizing;
    4.  Added a 'c' option to move whatever is currently under the cursor to
	the center of the window;
    5.  Added an 'R' option to reread the .dvi file, and added logic to make
	'R' happen automatically whenever any part of the window is exposed
	and the dvi file changes (so that you can iconify xdvi, run tex,
	deiconify xdvi, and voila!);
    6.  Added a 'magnifying glass':  when you push a button, a window pops
	up, showing the region of the page, unshrunk;
    7.  Added support for gf fonts;
    8.  Upgraded font searching (at our site we use /usr/custom/tex82/gf
	for gf fonts, /usr/custom/tex82/pk for pk fonts, etc.);
    9.  Made numerous internal changes (removed all the lint I could,
	made unshrunk bitmaps permanently resident, which speeds up size
	changing, made table.h necessary only for pxl.h, split up the source
	file into xdvi.c, dvi.c, gf.c, pxl.c, and pk.c, made shrinking occur
	relative to the character's hot point, etc.)
   10.  The program reads SIGIO signals and processes incoming events
	immediately, so that it can stop displaying things that would be
	erased anyway.  If these interrupts are not coming through, then
	it also checks for incoming events every several dozen characters
	displayed.
   11.  Further split up dvi.c into dvi_init.c and dvi_draw.c; added
	compilation options for various internal bitmap representations.
	Fixed it so gcc won't give warnings, and so it works with R3 toolkit.
--  Patchlevel 2:  --
   12.  Added MAXCHARS compilation option.  Eliminated the nonsense with
	generating table.h.
--  Patchlevel 3:  --
   13.  Added -altfont command line option and SYSV compilation option.
================================================================================

4/1989  Modified for System V boxes. -DSYSV compiler option.

Donald Richardson, donr@crystal.mie.clarkson.edu

================================================================================
--  Patchlevel 4:  --
   14.  Removed MAXCHARS compilation option.  It's automatic now.  Made X10
	scrolling smoother.  Implemented the moving magnifying glass.
--  Patchlevel 5:  --
   15.  Implemented compilation without the toolkit, as well as scrollbars
	and tpic support in X10.  Also this version should work with color
	VAXstations, although overstrike characters will come out incorrectly.
   16.  Fixed a bug in gf reading routines:  specials at the beginning of
	a character def. were not being processed.  Thanks to
	kevin@amath.washington.edu for a bug report and fix.
   17.  Added 'k' keystroke.
--  Patchlevel 6:  --
   18.  Added buttons on the right side of the window.
   19.  Added -pagewidth and -pageheight command line options and A4
	compilation option.
   20.  Added a yet more robust font finding algorithm.
--  Patchlevel 7:  --
   21.  Replaced -pagewidth and -pageheight options with -paper.
--  Patchlevel 8:  --
   22.  Added compatibility for X11R4 and VMS.  Fixed up alignment of rules.
--  Patchlevel 9:  --
   23.	Removed obsolete '#' and '=' options from the X11 version:  they
	interfere with emacs.
--  Patchlevel 10: --
   24.	Implemented arrow keys, expert mode, searching for the font's actual
	size first, the -[xy]offset and -sw options, and numerous bug fixes.
--  Patchlevel 11: --
   25.	Implemented recursive searching for font files in subdirectories.
   26.	Changed +sw to -hushspecials and implemented -hush.
   27.	Modified mksedscript so that the man page comes out neater.
   28.  Added a -keep option and resource to match the `k' keystroke.
Paul Vojta, vojta@math.berkeley.edu

-- Version 0.1: --
   29. Rewrite font routines to use the same path searching mechanisms
       that TeX etc. do (now).
   30. Don't keep font files open.
   31. Rewrite documentation, Makefile, etc.
   32. Removed PXL file support.
   (see ChangeLog for further changes)

Karl Berry, karl@cs.umb.edu
