Find a file
Alexandre Julliard c6c09442c4 Release 970112
Sat Jan 11 18:17:59 1997  Alexandre Julliard  <julliard@lrc.epfl.ch>

	* [controls/menu.c]
	Updated to new Win32 types.

	* [controls/listbox.c]
	Fixed Winfile extended selection bug.

	* [files/directory.c]
	Changed DIR_SearchPath to return both long and short file names.

	* [files/dos_fs.c]
	Implemented VFAT ioctl to retrieve the original short filenames
	from a VFAT filesystem (Linux only for now).
	Replaced DOSFS_GetUnixFileName()/DOSFS_GetDosTrueName() by
	DOS_GetFullName().
	Properly implemented GetShortPathName() and GetFullPathName().
	Made all functions re-entrant.

	* [files/file.c] [misc/main.c]
	Replaced -allowreadonly option by -failreadonly. The default is
	now to report success when opening a read-only file for writing.

	* [objects/metafile.c]
	Fixed bug in DIB bitmaps pointer calculation.

	* [scheduler/process.c]
	Implemented environment strings and Get/SetStdHandle with process
 	environment block.

	* [tools/build.c]
	Rewrote BuildContext32() to avoid instructions that may not be
	supported by all assemblers.
	
Fri Jan 10 17:11:09 1997  David Faure  <david.faure@ifhamy.insa-lyon.fr>

	* [windows/event.c]
	Created table keyc2vkey, which associate a vkey(+extended bit) to
	any keycode. Changed EVENT_event_to_vkey to use this table to
	return the correct vkey. Changed EVENT_ToAscii to get the keycode
	from this table too.  Assigned OEM specific vkeys arbitrarily.

Fri Jan 10 09:26:17 1997  John Harvey <john@division.co.uk>

	* [misc/winsock.c] [misc/winsoc_async.c]
        Fixed svr4 header files.
        Changed bzero() to memset().

	* [tools/fnt2bdf.c]
        Removed bcopy() and used memcpy() instead.

	* [debugger/msc.c]
        Include string.h instead of strings.h

	* [debugger/stabs.c]
        Include string.h instead of strings.h.
        Define __ELF__ for svr4 systems.

	* [loader/signal.c]
        Use wait() instead of wait4() which doesnt exist on Unixware.

	* [memory/global.c]
        Use sysconf() instead of getpagesize() for svr4 systems.

Thu Jan  9 21:07:20 1997  Robert Pouliot <krynos@clic.net>

	* [Make.rules.in] [Makefile.in] [make_os2.sh] [rc/Makefile.in]
	  [tools/Makefile.in] [documentation/wine_os2.txt]
	Patches for OS/2 support. Note that it doesn't compile yet.

Tue Jan  7 20:03:53 1997  Eric Youngdale <eric@sub2304.jic.com>

	* [debugger/*]
	Many more debugger improvements (see debugger/README for details).

Tue Jan  7 15:12:21 1997  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>

	* [windows/graphics.c] [objects/text.c] [graphics/x11drv/*]
	  [graphics/metafiledrv/*]
	Moved some device dependent code into the resp. subdirs.

	* [include/gdi.h] [include/metafiledrv.h] [include/x11drv.h]
	Prototypes added,
	DC_FUNCTIONS: GetPixel added, some unnecessary functions removed.

	* [objects/region.c]
	CreatePolyPolygonRgn32 added.

	* [files/dos_fs.c]
	QueryDosDevice added.

	* [misc/lstr.c]
	FormatMessage: broken heap management fixed.

	* [scheduler/process.c] [scheduler/thread.c]
	Get/SetThreadPriority/PriorityClass added.

Mon Jan  6 21:55:30 1997  Philippe De Muyter  <phdm@info.ucl.ac.be>

	* [misc/keyboard.c]
	ToAscii : Use EVENT_ToAscii instead.

	* [windows/event.c]
	keypad_key : Do not convert XK_Mode_switch to VK_MENU; recognize
	keypad cursor keys.
	EVENT_event_to_vkey : New function, to transform a X keycode
	into a MSwin vkey + extended bit.
	EVENT_ToAscii : New function, to transform a vkey + extended bit
	(+ key state table) into ascii char(s), using XLookupString, and
	recognizing dead chars.
	EVENT_key : Transform AltGr into Ctrl+Alt sequence; call
	EVENT_event_to_vkey for keycode to vkey conversion; fixed
	previous, context and extended bits.

	* [windows/keyboard.c]
	Include stddebug.h, to get -debugmsg messages.
	GetKeyState : Handle VK_MBUTTON case.
	GetKeyboardState, SetKeyboardState : Debugging messages added.

	* [windows/message.c]
	TranslateMessage : Handle dead chars.

Mon Jan  6 20:10:11 1997  Dominik Strasser  <bm424953@muenchen.org>

	* [if1632/crtdll.spec] [misc/crtdll.c]
	C++ functions new/delete/set_new_handler implemented.

Mon Jan  6 15:48:15 1997 Frans van Dorsselaer <dorssel@rulhmpc49.LeidenUniv.nl>

	* [controls/edit.c] [include/windows.h]
	Moved the edit control to 32 bits.
	Included new (win95) message definitions in windows.h
	Implemented EM_SCROLLCARET, EM_SETMARGINS, EM_GETMARGINS,
	EM_GETLIMITTEXT, EM_POSFROMCHAR, EM_CHARFROMPOS.
	Broke EM_SETWORDBREAKPROC (internal wordwrap still works).
	Fixed some bugs, introduced a couple of others.
	Text buffer is now initially in 32-bit heap.

	* [controls/EDIT.TODO] [controls/combo.c] [controls/widgets.c]
	  [if1632/wprocs.spec] [library/miscstubs.c] [windows/defdlg.c]
	  [misc/commdlg.c]
	Updated to work with 32-bit edit control.

Sat Jan  4 22:07:27 1997  O.Flebbe  <O.Flebbe@science-computing.uni-tuebingen.de>

	* [loader/pe_image.c]
	Use mmap rather then malloc. Better workaround for clean
	segments.
1997-01-12 18:32:19 +00:00
controls Release 970112 1997-01-12 18:32:19 +00:00
debugger Release 970112 1997-01-12 18:32:19 +00:00
documentation Release 970112 1997-01-12 18:32:19 +00:00
files Release 970112 1997-01-12 18:32:19 +00:00
graphics Release 970112 1997-01-12 18:32:19 +00:00
if1632 Release 970112 1997-01-12 18:32:19 +00:00
include Release 970112 1997-01-12 18:32:19 +00:00
ipc Release 961013 1996-10-13 17:45:47 +00:00
library Release 970112 1997-01-12 18:32:19 +00:00
libtest Release 961023 1996-10-23 16:59:13 +00:00
loader Release 970112 1997-01-12 18:32:19 +00:00
memory Release 970112 1997-01-12 18:32:19 +00:00
misc Release 970112 1997-01-12 18:32:19 +00:00
miscemu Release 970101 1997-01-01 17:29:55 +00:00
msdos Release 970112 1997-01-12 18:32:19 +00:00
multimedia Release 970112 1997-01-12 18:32:19 +00:00
objects Release 970112 1997-01-12 18:32:19 +00:00
programs Release 970101 1997-01-01 17:29:55 +00:00
rc Release 970112 1997-01-12 18:32:19 +00:00
resources Release 970101 1997-01-01 17:29:55 +00:00
scheduler Release 970112 1997-01-12 18:32:19 +00:00
tools Release 970112 1997-01-12 18:32:19 +00:00
win32 Release 970112 1997-01-12 18:32:19 +00:00
windows Release 970112 1997-01-12 18:32:19 +00:00
ANNOUNCE Release 970112 1997-01-12 18:32:19 +00:00
BUGS Release 961222 1996-12-22 18:27:48 +00:00
ChangeLog Release 970112 1997-01-12 18:32:19 +00:00
configure Release 970112 1997-01-12 18:32:19 +00:00
configure.in Release 970112 1997-01-12 18:32:19 +00:00
DEVELOPERS-HINTS Release 960818 1996-08-18 16:21:52 +00:00
LICENSE Release 941017 1994-10-17 18:12:41 +00:00
Make.rules.in Release 970112 1997-01-12 18:32:19 +00:00
Makefile.in Release 970101 1997-01-01 17:29:55 +00:00
README Release 960516 1996-05-16 18:21:06 +00:00
RELEASE-NOTES Release 960309 1996-03-09 16:12:43 +00:00
WARRANTY Release 0.5 1994-01-04 20:14:34 +00:00
wine.ini Release 960818 1996-08-18 16:21:52 +00:00
wine.man Release 970112 1997-01-12 18:32:19 +00:00

1. INTRODUCTION

Wine is a program that allows running MS-Windows programs under X11.
It consists of a program loader, that loads and executes an
MS-Windows binary, and of an emulation library that translates Windows
API calls to their Unix/X11 equivalent.

Wine is free software. See the file LICENSE for the details.
Basically, you can do anything with it, except claim that you wrote it.


2. COMPILATION

You must have one of:

	Linux version 0.99.13 or above
	NetBSD-current
	FreeBSD-current or FreeBSD 1.1

You also need to have libXpm installed on your system. The sources for
it are probably available on the ftp site where you got Wine. They can
also be found on ftp.x.org and all its mirror sites.

To build Wine, first do a "./configure" and then a "make depend; make".
The executable "wine" will be built.  "wine" will load and run 16-bit
Windows executables.

To build Winelib, do a "./configure --with-library", and then a "make
depend; make". The library "winelib.a" will be built, allowing to
compile Windows source code under Unix. If you have an ELF compiler,
you can use "./configure --with-dll" instead to build a shared library.

To upgrade to a new release by using a patch file, first cd to the
top-level directory of the release (the one containing this README
file). Then do a "make clean", and patch the release with:

    gunzip -c patch-file | patch -p1

where "patch-file" is the name of the patch file (something like
Wine-yymmdd.diff.gz). You can then re-run "./configure", and then
run "make depend; make".


3. SETUP

Once Wine has been built correctly, you can do "make install"; this
will install the wine executable and the man page.

Wine requires you to have a file /usr/local/etc/wine.conf (you can
supply a different name when configuring wine) or a file called .winerc
in your home directory.

The format of this file is explained in the man page. The file
wine.ini contains a config file example.


4. RUNNING PROGRAMS

When invoking Wine, you must specify the entire path to the executable,
or a filename only.

For example: to run Windows' solitaire:

	wine sol		   (using the searchpath to locate the file)
	wine sol.exe

	wine c:\\windows\\sol.exe  (using a dosfilename)

	wine /usr/windows/sol.exe  (using a unixfilename)

Note: the path of the file will also be added to the path when
      a full name is supplied on the commandline.

Have a nice game of solitaire, but be careful.  Emulation isn't perfect.
So, occasionally it may crash.


5. GETTING MORE INFORMATION

The best place to get help or to report bugs is the Usenet newsgroup
comp.emulators.ms-windows.wine. The Wine FAQ is posted there every
month.

If you add something, or fix a bug, please send a patch ('diff -u'
format preferred) to julliard@lrc.epfl.ch for inclusion in the next
release.

--
Alexandre Julliard
julliard@lrc.epfl.ch