
Running vile on a PC, under DOS
-------------------------------

The most successful versions of vile have been built using the Watcom C/386
compiler suite, with the command "wmake -f makefile.wat".  Although the
Watcom compiler costs money (not a sin in and of itself :-), it is very
stable and reliable (for me).  It creates 32 bit extended apps, complete
with virtual memory support.  This gives vile the ability to edit very
large files under DOS.

You'll need to have both vile.exe and dos4gw.exe in your path to run vile.

I (pgf) do not always have a PC I can do compiles on, so vile hasn't
been built or tested under Watcom very regularly.  Even when I do have a
PC, it's non-standard -- my choices are one with a a CGA screen, or a
laptop with an LCD display, so some display bugs can go undetected by
me.  Tom Dickey does do builds under Turbo-C.  They apparently work
fine, but you need to ifdef out a lot of features (try "#define SMALLER
1" in estruct.h) to make the editor small enough -- it does no swapping
to disk, so any memory taken by the executable isn't available for
editable text.

(Other versions of vile for the PC have been built using the DJGPP compiler
(and those needed the go32.exe extender to run).  I would continue to use
the DJGPP compiler, because it is free software, and because the paging
behavior is better than with Watcom/DOS4gw, but vile would't run under
windows when i build that version.)

Let me know about bugs/oddities when you use vile on a PC -- i probably don't
use it as much as you do.

(it's quite possible that the DOS makefiles are a little out of date --
refer to the UNIX makefile (makefile.in) for correct current list of source
and object files.)

Oh -- there are three possible screen drivers in the source distribution
that should work, with varying degrees of success:
	ibmpc.c (need #define IBMPC in estruct.h or makefile): goes
		straight to the video controller and the screen, should
		support most popular video modes on CGA/EGA/VGA cards. 
		this is the one i usually build with, and the one that has
		the most complete support for color, modes, and
		documentation.  oh yeah -- the mouse is supported, but
		unfortunately not currently under the dos-extended
		compilers (Watcom or DJGPP), which are of course the most
		interesting, since they let you edit huge files.

	ansi.c (need #define ANSI in estruct.h or makefile):  uses ANSI.SYS.
		this may be more portable than ibmpc.c, since it relies on
		the ansi driver for its cursor/scrolling/color services. 
		if you can change the resolution of your screen (to 43 or
		50 line mode) with your ansi driver, just use the
		"screen-rows" and/or "screen-columns" vile commands to make
		its idea of the size match your physical screen, and
		you'll be all set.  (i've only tested it with a free/public
		replacement program called NNANSI.  i got my copy from a
		simtel mirror.  i can probably find you a copy if you need
		it.)

	borland.c (need #define BORLAND in estruct.h or makefile): this
		uses the "conio" routines that come with Turbo C or Borland
		C++.  This stuff is reported to work under OS/2.  Again,
		the trouble with this under DOS is that the Borland
		compilers don't produce a dos-extender 32 bit app, so
		you're _severely_ limited as to filesize.

paul fox, pgf@foxharp.boston.ma.us (home)

--------------------------------------------------------

OS/2 information:
-----------------

Charles Moschel (ccm@cais.com) ported vile 4.3 to OS/2 in March '93.  I've
incorporated his changes, though not verbatim.

The current port of vile to OS/2 uses the Borland console i/o routines,
in borland.c.  You'll need to be sure OS2 and BORLAND get defined somehow.
The ansi.c driver may work too, but you may have to turn on some OS2 support
in there, since right now it only knows about MSDOS.

The Watcom OS/2 compiler should work as well, but would need some work
to get the display working.  The ANSI display would be a good choice
for Watcom.

borland.c	contains Borland-specific display stuff.

You'll have to modify makefile.tbc slightly to build on OS/2.

Other information:

+ filterregion is not available.

+ The mouse is not supported

+ 25, 43, 50, or 60 line displays are supported, either full screen or
  in an OS/2 window under Presentation Manager.  vile is NOT a PM
  program.

+ Correct #defines should be made automatically if you use Borland or
  Watcom compilers, as both define __OS2__.  __OS2__ is used only as a
  check, and if it is found then OS2 is defined.  If you use something
  else, you'll have to define this youself.  In any case, OS2 is the
  correct define, for the program and display code.  DO NOT define
  MSDOS, IBMPC, TURBO etc.

------------------------
$Header: /usr2/foxharp/src/pgf/vile/RCS/README.PC,v 1.7 1994/11/29 21:03:42 pgf Exp $
------------------------
