diff -d -N -c xdvi-20/font_open.c ./font_open.c
*** xdvi-20/font_open.c	Tue Apr 18 22:30:28 1995
--- ./font_open.c	Wed Feb 12 00:49:58 1997
***************
*** 39,44 ****
--- 39,50 ----
   *	If you think you have to change DEFAULT_TAIL, then you haven't read the
   *	documentation closely enough.
   */
+ 
+ #ifdef __EMX__
+ #define PATH_SEP ';'
+ #define DEFAULT_TAIL "/%ddpi/%f.%p"
+ #define DEFAULT_VF_TAIL "/%f.vf"
+ #else /* other */
  #ifndef	VMS
  #define	PATH_SEP	':'
  #define	DEFAULT_TAIL	"/%f.%d%p"
***************
*** 48,53 ****
--- 54,60 ----
  #define	DEFAULT_TAIL	":%f.%d%p"
  #define	DEFAULT_VF_TAIL	":%f.vf"
  #endif	/* VMS */
+ #endif
  
  static	_Xconst char	*font_path;
  static	_Xconst char	*default_font_path	= DEFAULT_FONT_PATH;
***************
*** 108,114 ****
  #endif
  
  /* Declare the routine to get the current working directory.  */
- 
  #ifdef	HAVE_GETWD
  extern	char	*getwd ();
  #define	GETCWD(b, len)	((b) ? getwd (b) : getwd (xmalloc (len, "getwd")))
--- 115,120 ----
***************
*** 227,232 ****
--- 233,239 ----
  	_Xconst char	*index;
  	char		*name;
  {
+ 	
  	struct subdir_entry		*new_entry;
  	static	struct subdir_entry	**subdir_tail = &subdir_head;
  
***************
*** 265,271 ****
--- 272,283 ----
  	       concatenations (and make the pathnames the kernel looks up
  	       shorter).  */
  	    Strcpy(temp + len, next_subdir->name);
+ 
+ #ifndef __EMX__
  	    if (chdir (temp) != 0) continue;
+ #else
+ 	    if (_chdir2 (temp) != 0) continue;
+ #endif
  
  	    dir = opendir (".");
  	    if (dir == NULL) continue;
***************
*** 282,290 ****
--- 294,308 ----
  	    (void) closedir (dir);
  
  
+ 
  	    /* Change back to the current directory, in case the path
  	       contains relative directory names.  */
+ 
+ #ifndef __EMX__
  	    if (chdir (cwd) != 0) {
+ #else
+ 	    if (_chdir2 (cwd) != 0) {
+ #endif
  		perror (cwd);
  #if	PS
  		ps_destroy();
***************
*** 359,364 ****
--- 377,383 ----
  	if ((font_path = getenv("XDVIFONTS")) == NULL
  #ifndef	XDVIFONTS_ONLY
  		&& (font_path = getenv("PKFONTS")) == NULL
+ 		&& (font_path = getenv("DVIDRVFONTS")) == NULL
  		&& (font_path = getenv("TEXPKS")) == NULL
  		&& (font_path = getenv("TEXFONTS")) == NULL
  #endif
***************
*** 384,390 ****
--- 403,415 ----
  	   is not necessarily the same directory the user expects to be
  	   in.  So, we must always call getcwd(3) or getwd(3), even though
  	   they are slow and prone to hang in networked installations.  */
+ 
+ #ifndef __EMX__
  	cwd = GETCWD ((char *) NULL, FILENAMESIZE + 2);
+ #else
+ 	cwd = _getcwd2 ((char *) NULL, FILENAMESIZE + 2);
+ #endif
+ 
  	if (cwd == NULL) {
  	    perror ("getcwd");
  #if	PS
***************
*** 451,456 ****
--- 476,486 ----
  	Boolean	p_used = False;
  	FILE	*f;
  
+ #ifdef __EMX__
+ 	char *double_slash;
+ 	int i;
+ #endif
+ 
  #ifdef	SEARCH_SUBDIRECTORIES
  	if (next_subdir != NULL && next_subdir->index == p) {
  	    int len = index(p, '*') - p;
***************
*** 500,509 ****
  		}
  		n += strlen(n);
  	    }
! 	    else *n++ = c;
  	}
  	if (!p_used && !first_try) return NULL;
  	*n = '\0';
  	if (debug & DBG_OPEN) Printf("Trying font file %s\n", nm);
  	f = xfopen(nm, OPEN_MODE);
  	if (f != NULL) {
--- 530,551 ----
  		}
  		n += strlen(n);
  	    }
! 		else *n++ =c;
  	}
  	if (!p_used && !first_try) return NULL;
  	*n = '\0';
+ 
+ #ifdef __EMX__
+ /* I inserted this here, because for some reason, xdvi searched in pathes like 	*/
+ /* f:\texfonts\\210dpi, here this is changed to f:\texfonts\210dpi							*/
+ 	double_slash = strstr ( nm, "//" );
+ 	if ( double_slash != NULL ) {
+ 		for ( i = 1; i < ( strlen(double_slash) -1 ); i++ ) {
+ 		double_slash[i] = double_slash[i+1];
+ 		}
+ 	}
+ #endif
+ 
  	if (debug & DBG_OPEN) Printf("Trying font file %s\n", nm);
  	f = xfopen(nm, OPEN_MODE);
  	if (f != NULL) {
***************
*** 725,730 ****
--- 767,773 ----
  			    Sprintf(q, "magstep\\(%d%s\\)", magstepval / 2,
  				magstepval % 2 ? ".5" :"");
  			break;
+ //#endif
  		    case 'o':
  			Strcpy(q, resource.mfmode != NULL ? resource.mfmode
  			    : "default");
Common subdirectories: xdvi-20/gsftopk and ./gsftopk
Common subdirectories: xdvi-20/gsftopk-1.11 and ./gsftopk-1.11
Binary files xdvi-20/gsftopk-1.9-1.10.diff.gz and ./gsftopk-1.9-1.10.diff.gz differ
diff -d -N -c xdvi-20/Imakefile ./Imakefile
*** xdvi-20/Imakefile	Wed Apr 26 02:32:18 1995
--- ./Imakefile	Wed Jan 29 19:19:44 1997
***************
*** 4,10 ****
  
  XCOMM The following seven lines are the crucial ones.
  OSDEFS=-DMSBITFIRST
! OPTIONDEFS=-DUSE_PK -DBUTTONS -DGREY
  DEFAULT_FONT_PATH=/usr/local/tex/fonts
  DEFAULT_VF_PATH=/usr/local/tex/fonts/vf
  DEFAULT_FONT_SIZES=$(SIZES300)
--- 4,10 ----
  
  XCOMM The following seven lines are the crucial ones.
  OSDEFS=-DMSBITFIRST
! OPTIONDEFS=-DUSE_PK -DBUTTONS -DGREY -DMAKEPK -DSEARCH_SUBDIRECTORIES -DPS_GS -DA4
  DEFAULT_FONT_PATH=/usr/local/tex/fonts
  DEFAULT_VF_PATH=/usr/local/tex/fonts/vf
  DEFAULT_FONT_SIZES=$(SIZES300)
***************
*** 43,49 ****
  SIZES400=400:438:480:576:691:829:995
  SIZES600=600:657:720:864:1037:1244:1493
  
! default: xdvi
  
  config:
  	./mkconfig imake $(DEFS)
--- 43,49 ----
  SIZES400=400:438:480:576:691:829:995
  SIZES600=600:657:720:864:1037:1244:1493
  
! default: xdvi.exe
  
  config:
  	./mkconfig imake $(DEFS)
***************
*** 51,62 ****
  Makefile.cfg: Imakefile mkconfig
  	./mkconfig imake $(DEFS)
  
! include Makefile.cfg
  
! SRCS=xdvi.c events.c dvi_init.c dvi_draw.c special.c font_open.c vf.c util.c \
!   $(VARSRCS)
! OBJS=xdvi.o events.o dvi_init.o dvi_draw.o special.o font_open.o vf.o util.o \
!   $(VAROBJS)
  
  ComplexProgramTarget(xdvi)
  
--- 51,63 ----
  Makefile.cfg: Imakefile mkconfig
  	./mkconfig imake $(DEFS)
  
! LOCAL_LIBRARIES=$(LOCAL_LIBRARIES_TOOL)
! DEPLIBS=$(DEPLIBS_TOOL)
! LINTLIBS=$(LINTLIBS_TOOL)
  
! SRCS=xdvi.c events.c dvi_init.c dvi_draw.c special.c font_open.c vf.c util.c pk.c psgs.c psheader.c
! 
! OBJS=xdvi.o events.o dvi_init.o dvi_draw.o special.o font_open.o vf.o util.o pk.o psgs.o psheader.c
  
  ComplexProgramTarget(xdvi)
  
***************
*** 68,74 ****
  
  xdvi.man: xdvi_man.sed mksedscript
  	chmod u+x mksedscript
! 	./mksedscript "$(DEFAULT_FONT_PATH)" $(DEFAULT_FONT_SIZES) \
  		"$(DEFAULT_VF_PATH)" "$(DEFAULT_FIG_PATH)" \
  		"$(DEFAULT_HEADER_PATH)" $(DEFS) > sedscript
  	sed -f sedscript < xdvi_man.sed > xdvi.man
--- 69,75 ----
  
  xdvi.man: xdvi_man.sed mksedscript
  	chmod u+x mksedscript
! 	sh ./mksedscript "$(DEFAULT_FONT_PATH)" $(DEFAULT_FONT_SIZES) \
  		"$(DEFAULT_VF_PATH)" "$(DEFAULT_FIG_PATH)" \
  		"$(DEFAULT_HEADER_PATH)" $(DEFS) > sedscript
  	sed -f sedscript < xdvi_man.sed > xdvi.man
diff -d -N -c xdvi-20/installos2.cmd ./installos2.cmd
*** xdvi-20/installos2.cmd	Thu Jan  1 00:00:00 1970
--- ./installos2.cmd	Sun Feb  9 13:25:02 1997
***************
*** 0 ****
--- 1,12 ----
+ call mkdirhier %x11root%/xfree86/bin
+ cp xdvi.exe %x11root%/xfree86/bin
+ cp gsftopk-1.11/gsftopk.exe %x11root%/xfree86/bin
+ cp Maketexpk.cmd %x11root%/xfree86/bin
+ call mkdirhier %x11root%/xfree86/man/man1
+ cp xdvi.man %x11root%/xfree86/man/man1
+ cp gsftopk-1.11/gsftopk.1 %x11root%/xfree86/man/man1
+ call mkdirhier %emtexdir%/data/dvips
+ cp gsftopk-1.11/render.ps %emtexdir%/data/dvips
+ call mkdirhier %x11root%/doc
+ cp readme.os2 %x11root%/doc/xdvi.os2
+ cp FAQ %x11root%/doc/xdvi.FAQ
diff -d -N -c xdvi-20/MAKE_VMS.COM ./MAKE_VMS.COM
*** xdvi-20/MAKE_VMS.COM	Tue Apr 18 21:58:34 1995
--- ./MAKE_VMS.COM	Thu Jan  1 00:00:00 1970
***************
*** 1,141 ****
- $! MAKE_VMS.COM
- $! A DCL `Make' procedure for compiling and linking XDVI.
- $!
- $ ON ERROR THEN GOTO EXIT
- $ ON CONTROL_Y THEN GOTO EXIT
- $ OLD_VERIFY = f$verify (0)
- $!
- $ MAY_USE_DECC = 1
- $!
- $ IF F$GETSYI("HW_MODEL") .GE. 1024
- $ THEN
- $   ARCH_NAME="Alpha"
- $   ARCH_PREF="AXP_"
- $   HAVE_DECC_VAX = 0
- $   USE_DECC_VAX = 0
- $   CC="CC/stand=VAX/ansi/obj=.''ARCH_PREF'obj"
- $   WRITE SYS$OUTPUT "Compiling on Alpha AXP using DECC"
- $ ELSE
- $   ARCH_NAME="VAX"
- $   ARCH_PREF="VAX_"
- $   IF F$TRNLNM("DECC$LIBRARY_INCLUDE") .NES. ""
- $   THEN
- $!    DECC for VAX available (and maybe VAXC, too!)
- $     HAVE_DECC_VAX = 1
- $     IF HAVE_DECC_VAX .AND. MAY_USE_DECC
- $     THEN
- $!      We use DECC: 
- $       USE_DECC_VAX = 1
- $       CC="CC/DECC/stand=VAX/obj=.''ARCH_PREF'obj"
- $     ELSE
- $!      We use VAXC: 
- $       USE_DECC_VAX = 0
- $       CC="CC/VAXC/obj=.''ARCH_PREF'obj"
- $     ENDIF
- $   ELSE
- $!    only VAXC available
- $     HAVE_DECC_VAX = 0
- $     USE_DECC_VAX = 0
- $     CC="CC/obj=.''ARCH_PREF'obj"
- $   ENDIF
- $   IF USE_DECC_VAX
- $   THEN
- $     WRITE SYS$OUTPUT "Compiling on VAX using DECC"
- $   ELSE
- $     WRITE SYS$OUTPUT "Compiling on VAX using VAXC"
- $   ENDIF
- $ ENDIF
- $ LDFLAGS = ""
- $ DEFINE X11 DECW$INCLUDE
- $ IF USE_DECC_VAX .AND. (F$TRNLNM("DECC$LIBRARY_INCLUDE") .NES. "")
- $  THEN
- $    DEFINE SYS DECC$LIBRARY_INCLUDE
- $  ELSE
- $    DEFINE SYS SYS$LIBRARY
- $  ENDIF
- $ IF ARCH_NAME .EQS. "Alpha"
- $  THEN
- $    DEFINE DPS SYS$LIBRARY
- $  ELSE
- $    DEFINE DPS DECW$INCLUDE
- $  ENDIF
- $!
- $ ps_dps = ""
- $ ps_gs = ""
- $ IF f$edit(p1,"UPCASE") .eqs. "DPS" THEN ps_dps = "PSDPS"
- $ IF f$edit(p1,"UPCASE") .eqs. "GS" THEN ps_gs = "PSGS"
- $!
- $ ps_options = ""
- $ ps_head = ""
- $ varobjs = ""
- $ IF ps_dps .EQS. "PSDPS"
- $  THEN
- $    ps_head = "PSHEADER"
- $    ps_options = ps_options + ", PS_DPS"
- $    varobjs = varobjs + "PSDPS.''ARCH_PREF'OBJ, "
- $  ENDIF
- $ IF ps_gs .EQS. "PSGS"
- $  THEN
- $    ps_head = "PSHEADER"
- $    ps_options = ps_options + ", PS_GS"
- $    varobjs = varobjs + "PSGS.''ARCH_PREF'OBJ, "
- $  ENDIF
- $!
- $ OPEN/WRITE optfile VMS_XDVI.'ARCH_PREF'OPT
- $ IF ps_dps .EQS. "PSDPS"
- $ THEN
- $   WRITE optfile "sys$share:xdps$dpsclientshr/share"
- $   WRITE optfile "sys$share:xdps$dpsbindingsshr/share"
- $   WRITE optfile "sys$share:xdps$dpslibshr/share"
- $ ENDIF
- $ WRITE optfile "sys$share:decw$xlibshr/share"
- $ IF (ARCH_NAME .EQS. "VAX") .AND. (.NOT. USE_DECC_VAX)
- $ THEN
- $   WRITE optfile "sys$share:vaxcrtl/share"
- $   option_file = "VMS_XDVI.''ARCH_PREF'OPT"	! for linking SQUEEZE
- $ ELSE
- $   option_file = "nl:"				! for linking SQUEEZE
- $ ENDIF
- $ CLOSE optfile
- $!
- $ DEFS = "VMS, NOTOOL, USE_PK, USE_GF, TEXXET, GREY, MAKEPK'ps_options'"
- $ CC /DEFINE = ('DEFS') DVI_INIT.C
- $ CC /DEFINE = ('DEFS') DVI_DRAW.C
- $ CC /DEFINE = ('DEFS') GF.C
- $ CC /DEFINE = ('DEFS') PK.C
- $ CC /DEFINE = ('DEFS') VF.C
- $ CC /DEFINE = ('DEFS') UTIL.C
- $ CC /DEFINE = ('DEFS', "DEFAULT_FONT_PATH=""TEX_FONTS""", -
-      "DEFAULT_VF_PATH=""TEX_VFDIR""", -
-      "DEFAULT_FONT_SIZES=""300/329/360/432/518/622/746""") FONT_OPEN.C
- $ CC /DEFINE = ('DEFS') SPECIAL.C
- $ CC /DEFINE = ('DEFS') EVENTS.C
- $ IF ps_dps .NES. ""
- $  THEN
- $    CC /DEFINE = ('DEFS') PSDPS.C
- $  ENDIF
- $ IF ps_gs .NES. ""
- $  THEN
- $    CC /DEFINE = ('DEFS') PSGS.C
- $  ENDIF
- $ IF ps_head .NES. ""
- $  THEN
- $    CC /DEFINE = ('DEFS') SQUEEZE.C
- $    LINK /EXE=.'ARCH_PREF'EXE SQUEEZE.'ARCH_PREF'OBJ, 'option_file' /OPTION
- $    SQUEEZE := $SYS$DISK:[]SQUEEZE.'ARCH_PREF'EXE
- $    SQUEEZE PSHEADER.TXT PSHEADER.C
- $    CC /DEFINE = ('DEFS') PSHEADER.C
- $    varobjs = varobjs + "PSHEADER.''ARCH_PREF'OBJ,"
- $  ENDIF
- $ CC /DEFINE = ('DEFS') XDVI.C
- $!
- $ LINK 'LDFLAGS'/EXE=.'ARCH_PREF'EXE XDVI.'ARCH_PREF'OBJ, -
-      DVI_INIT.'ARCH_PREF'OBJ, DVI_DRAW.'ARCH_PREF'OBJ, -
-      GF.'ARCH_PREF'OBJ, PK.'ARCH_PREF'OBJ, VF.'ARCH_PREF'OBJ, -
-      UTIL.'ARCH_PREF'OBJ, FONT_OPEN.'ARCH_PREF'OBJ, SPECIAL.'ARCH_PREF'OBJ, -
-      EVENTS.'ARCH_PREF'OBJ, 'varobjs' VMS_XDVI.'ARCH_PREF'OPT/OPTION
- $ DELETE/NOLOG VMS_XDVI.'ARCH_PREF'OPT;*
- $!
- $EXIT:
- $ dummy=f$verify ('old_verify')
- $ EXIT
--- 0 ----
diff -d -N -c xdvi-20/Makefile.cfg ./Makefile.cfg
*** xdvi-20/Makefile.cfg	Thu Jan  1 00:00:00 1970
--- ./Makefile.cfg	Fri Jan 24 01:45:28 1997
***************
*** 0 ****
--- 1,8 ----
+ VARSRCS= pk.c
+ VAROBJS= pk.o
+ VARLIBS=
+ VARDEPLIBS=
+ VARLINT=
+ LOCAL_LIBRARIES=$(LOCAL_LIBRARIES_TOOL)
+ DEPLIBS=$(DEPLIBS_TOOL)
+ LINTLIBS=$(LINTLIBS_TOOL)
diff -d -N -c xdvi-20/MakeTeXPK ./MakeTeXPK
*** xdvi-20/MakeTeXPK	Wed May 25 09:02:32 1994
--- ./MakeTeXPK	Fri Jan 24 13:32:04 1997
***************
*** 18,26 ****
  #
  #   Of course, it needs to be set up for your site.
  #
! TEXDIR=/usr/lib/tex
! LOCALDIR=/LocalLibrary/Fonts/TeXFonts
! DESTDIR=$LOCALDIR/pk
  #
  # TEMPDIR needs to be unique for each process because of the possibility
  # of simultaneous processes running this script.
--- 18,26 ----
  #
  #   Of course, it needs to be set up for your site.
  #
! TEXDIR=/emtex
! LOCALDIR=/texfonts
! DESTDIR=$LOCALDIR/pixel.lj
  #
  # TEMPDIR needs to be unique for each process because of the possibility
  # of simultaneous processes running this script.
***************
*** 49,55 ****
  then
     if test $BDPI = 300
     then
!       MODE=imagen
     elif test $BDPI = 200
     then
        MODE=FAX
--- 49,55 ----
  then
     if test $BDPI = 300
     then
!       MODE='laserjet['$BDPI' '$BDPI']'
     elif test $BDPI = 200
     then
        MODE=FAX
***************
*** 83,90 ****
  
  #  Something like the following is useful at some sites.
  # DESTDIR=/usr/local/lib/tex/fonts/pk.$MODE
! GFNAME=$NAME.$DPI'gf'
! PKNAME=$NAME.$DPI'pk'
  
  # Clean up on normal or abnormal exit
  trap "cd /; /bin/rm -rf $TEMPDIR $DESTDIR/pktmp.$$" 0 1 2 15
--- 83,90 ----
  
  #  Something like the following is useful at some sites.
  # DESTDIR=/usr/local/lib/tex/fonts/pk.$MODE
! GFNAME=$DPI'DPI/'$NAME.'gf'
! PKNAME=$DPI'DPI/'$NAME.'pk'
  
  # Clean up on normal or abnormal exit
  trap "cd /; /bin/rm -rf $TEMPDIR $DESTDIR/pktmp.$$" 0 1 2 15
***************
*** 138,145 ****
  fi
  
  unset DISPLAY
! echo "mf \"\\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME\" < /dev/null"
! mf "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" < /dev/null
  if test ! -r $GFNAME
  then
     echo "Metafont failed for some reason on $GFNAME"
--- 138,145 ----
  fi
  
  unset DISPLAY
! echo "mf386 \"\\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME\" < /dev/null"
! mf386 "\mode:=$MODE; mag:=$MAG; scrollmode; input $NAME" < /dev/null
  if test ! -r $GFNAME
  then
     echo "Metafont failed for some reason on $GFNAME"
diff -d -N -c xdvi-20/MakeTeXPK.cmd ./MakeTeXPK.cmd
*** xdvi-20/MakeTeXPK.cmd	Thu Jan  1 00:00:00 1970
--- ./MakeTeXPK.cmd	Wed Feb 12 01:27:10 1997
***************
*** 0 ****
--- 1,66 ----
+ /* Rexx */
+ /* MakeTexPK */
+ 
+ /* checks, if the requested font is in psfonts.map */
+ /* and calls gsftopk.exe			   */									   */
+ /* if not,					   */															 */
+ /* creates a mfjob file and runs mfjob             */
+ 
+ /* Change this */
+ /* Default mode is the mode to use with mfjob, if you don't know it, let dvipm create
+ a mfjob file and have a look into */
+ defaultmfmode="laserjet"
+ 
+ /* fontsubdir is the subdirectory of %dvidrvfonts% where mfjobs stores the fonts */
+ font_subdir="pixel.lj"
+ 
+ /* mapfile is the path to your psfont.map file */
+ mapfile='f:\emtex\data\dvips\psfonts.map'
+ 
+ /* End of required changes, hopefully */
+ 
+ 
+ 
+ 
+ '@echo off'
+ address cmd
+ tmpfile="xdvi.mfj"
+ env="OS2ENVIRONMENT"
+ 
+ 
+ parse arg name  newres basres dummy mfmode
+ if mfmode="" then mfmode=defaultmfmode
+ 
+ 'if not exist %DVIDRVFONTS% mkdir %DVIDRVFONTS%'
+ 'if not exist %DVIDRVFONTS%\'font_subdir' mkdir %DVIDRVFONTS%\'font_subdir
+ 
+ mag=(newres/basres)
+ 
+ do forever
+ 	if lines(mapfile)=0 then leave
+ 	line=linein(mapfile)
+ 	if word(line,1)=name then do
+ 		'gsftopk 'name newres
+     'if not exist %DVIDRVFONTS%\'font_subdir'\'newres'dpi mkdir %DVIDRVFONTS%\'font_subdir'\'newres'dpi'
+     'cp 'name'.'newres'pk %DVIDRVFONTS%\'font_subdir'\'newres'dpi\'name'.pk'
+  		'rm 'name'.'newres'pk'
+  		exit
+ 	end
+ end
+ 
+ 
+ 
+ rc=lineout(tmpfile,"input [dvidrv];")
+ rc=lineout(tmpfile,"{")
+ rc=lineout(tmpfile,"driver=xdvi;")
+ rc=lineout(tmpfile,"mode="||mfmode||"["||basres||" "||basres"];")
+ rc=lineout(tmpfile,"output=pk[$DVIDRVFONTS:"||font_subdir||"\@Rrdpi\@f{.pk,.pxl}];")
+ rc=lineout(tmpfile,"{font="||name||"; mag="||mag||";}")
+ rc=lineout(tmpfile,"}")
+ rc=stream(tmpfile,"C","CLOSE")
+ 
+ 'mfjob /3 'tmpfile
+ 'if exist 'tmpfile 'del 'tmpfile
+ 
+ exit
+ 
diff -d -N -c xdvi-20/readme.os2 ./readme.os2
*** xdvi-20/readme.os2	Thu Jan  1 00:00:00 1970
--- ./readme.os2	Wed Feb 12 01:26:56 1997
***************
*** 0 ****
--- 1,61 ----
+ This is my enhanced xdvi port to xfree86-os2.
+ 
+ You need:
+ -- EMX 0.9c or later
+ -- Emtex correctly installed with mf386
+ -- XFree86 - os2 3.2 (or later ?)
+ 
+ New Features:
+ -- Xdvi now understands drive-letters and semicolons as path-seperators
+ -- Xdvi is now compiled with the SEARCH-SUBDIRECTORIES flag
+ -- Xdvi will now call ghostscript to display postscript-pictures (see note below)
+ -- MakeTeXPk.cmd will now look into your psfonts.map file and call
+    gsftopk to display postscript fonts
+ -- Xdvi will now use virtual fonts
+ 
+ Setup:
+ 
+ You have to set up some environment variables, first XDVIFONTS. Example:
+ set XDVIFONTS=f:/texfonts/*/%ddpi/%f.%p;c:/my/special/fonts/%ddpi/%f.%p
+ where,
+ - the asterisk means, that all subdirectories in f:/texfonts should be searched,
+ - %ddpi/ means, that fonts with a size of 300 dpi are in subdirectories called 
+   300dpi,
+ - and %f.%p means, that font-files have names like ptmr8r.pk in these directories.
+ 
+ Second XDVIVFS. Example:
+ set XDVIVFS=f:/texfonts/vf;f:/texfonts/vf/adobe
+ Note: There is no possibility to search subdirectories here, so you have to list
+ all directories, where you have virtual fonts.
+ 
+ I think, this is the standard emtex-setup, if yours is different refer to
+ the manpage and change this to your needs.
+ 
+ To enable automatic font-generation you can use the rexx-script MakeTeXPK.cmd (provided 
+ here for your comfort), which will first have a look into your psfonts.map file
+ (you have this, if you have dvips installed) and will then call gsftopk, if it finds
+ the requested font in this file. If not, it will create a mfjob-file (xdvi.mfj) and then 
+ will call mfjob. 
+ This script will be called automatically by xdvi and has to reside somewhere in your path.
+ 
+ The are some changes required to meet your setup in this script. So have a look into, I hope
+ everything is explained there well enough.
+ 
+ If you would like to let Xdvi display postscript pictures in your documents, you need a
+ ghostscript version, which knows the X11 Device. This is standard in UNIX-Environments, but
+ not under OS/2. I have compiled a version, which can do this and will publish the executables
+ on my web-page. You will still need the standard ghostscript-files to let this work.
+ 
+ Suggestions, especially for a better MakeTeXPk-Script are welcome.
+ 
+ Thanks to Shigeru Miyata (miyata@kusm-kyoto-u.ac.jp) for some usefull hints.
+ 
+ The standard restrictions (no guarantee for anything) apply.
+ 
+ Have Fun,
+ 
+ Peter Ganten
+ University of Bremen
+ Department of Psychology
+ j09g@zfn.uni-bremen.de
+ 
diff -d -N -c xdvi-20/special.c ./special.c
*** xdvi-20/special.c	Tue May  9 22:05:52 1995
--- ./special.c	Wed Jan 29 18:26:52 1997
***************
*** 668,678 ****
--- 668,682 ----
   *	to the standard TeX Directory Structure (TDS).
   */
  
+ // #ifdef __EMX__
+ // #define	PATH_SEP	';'
+ // #else
  #ifndef	VMS
  #define	PATH_SEP	':'
  #else	/* VMS */
  #define	PATH_SEP	'/'
  #endif	/* VMS */
+ // #endif
  
  static	FILE *
  pathfopen(filename, buffer, pathlist1, pathlist2)
diff -d -N -c xdvi-20/util.c ./util.c
*** xdvi-20/util.c	Tue Apr 18 22:29:38 1995
--- ./util.c	Fri Jan 24 01:50:42 1997
***************
*** 131,136 ****
--- 131,137 ----
   *	argument is lower case.
   */
  
+ #ifndef __EMX__
  int
  memicmp(s1, s2, n)
  	_Xconst char	*s1;
***************
*** 146,152 ****
  	}
  	return 0;
  }
! 
  
  /*
   *	Close the pixel file for the least recently used font.
--- 147,153 ----
  	}
  	return 0;
  }
! #endif
  
  /*
   *	Close the pixel file for the least recently used font.
Common subdirectories: xdvi-20/xdvi-20 and ./xdvi-20
diff -d -N -c xdvi-20/xdvi.h ./xdvi.h
*** xdvi-20/xdvi.h	Fri Apr 14 00:42:58 1995
--- ./xdvi.h	Fri Jan 24 01:49:06 1997
***************
*** 700,706 ****
--- 700,708 ----
  #endif
  extern	char	*xmalloc ARGS((unsigned, _Xconst char *));
  extern	void	alloc_bitmap ARGS((struct bitmap *));
+ #ifndef __EMX__
  extern	int	memicmp ARGS((_Xconst char *, _Xconst char *, size_t));
+ #endif
  extern	FILE	*xfopen ARGS((_Xconst char *, OPEN_MODE_ARGS));
  #ifdef	PS_GS
  extern	int	xpipe ARGS((int *));
