Go to file
Alexandre Julliard 02e90087ff Release 980104
Sat Jan  3 17:15:56 1998  Alexandre Julliard  <julliard@lrc.epfl.ch>

	* [debugger/db_disasm.c]
	Added cpuid and cmpxchg instructions.

	* [if1632/builtin.c] [relay32/builtin32.c]
	Fixed broken -dll option with Win32 DLLs.

	* [include/heap.h]
	Added SYSTEM_LOCK/SYSTEM_UNLOCK macros.

	* [configure.in] [misc/lstr.c]
	Added check for wctype.h.
	Commented out --enable-ipc option (IPC code has been broken for a
	long time anyway).

	* [scheduler/critsection.c] [scheduler/event.c]
	  [scheduler/mutex.c] [scheduler/semaphore.c]
	Implemented Win32 synchronization objects.

	* [scheduler/synchro.c]
	Implemented WaitForMultipleObjects and related functions.

	* [scheduler/thread.c]
	If possible, use clone() in CreateThread().

	* [scheduler/thread.c] [scheduler/process.c]
	Made thread and process waitable objects.
	Thread and process id values are now different from the pointers
	they represent.

	* [win32/k32obj.c]
	Moved to scheduler directory.
	Added function table for waiting operations on objects.

	* [files/file.c] [memory/virtual.c]
	Added new K32OBJ function table.

Sun Jan  1 16:48:23 1997  Andreas Mohr <100.30936@germany.net>

	* [files/file.c]
	Fixed my patch for GetTempFileName16() as needed.
	It was ...Name32A() that didn't work properly, not ...Name16().

	* [graphics/x11drv/brush.c]
	Fixed a BadMatch error.

	* [msdos/int21.c]
	Fixed INT21_FindNextFCB() to get correct volume labels e.g.
	in "file open" dialog.

	* [multimedia/joystick.c] [relay32/winmm.spec]
	Stub JoyGetPosEx().

	* [scheduler/process.c] [relay32/kernel32.spec]
	Implemented RegisterServiceProcess().

Wed Dec 31 11:14:43 1997  Lawson Whitney  <lawson_whitney@juno.com>

	* [if1632/kernel.spec] [if1632/relay.c]
	Define CallProcEx32w - Thanks to Marcus Meissner for his excellent
	CallProc32W.

	* [loader/module.c]
	Take a shot at defining FreeLibrary32W.

Sun Dec 28 12:44:04 1997  Kai Morich <kai.morich@rhein-neckar.netsurf.de>

	* [controls/menu.c]
	Menu modification from WM_INITMENUPOPUP message fixed.
	Menu items now can have different wID and hSubMenu (Win95 behavior).

	* [misc/cpu.c]
	Improved IsProcessorFeaturePresent.

Sun Dec 28 03:21:08 1997  Ove Kaaven <ovek@main.arcticnet.no>

	* [include/winsock.h] [misc/winsock.c]
	Fixed WS_SOL_SOCKET for setsockopt(), and made select() return
	empty fd_sets if timeout.

	* [objects/palette.c]
	AnimatePalette() bailed out if entire palette is animated. Fixed.

	* [objects/dib.c]
	Added some code to SetDIBitsToDevice() and its helpers to fix
	some offseting problems.

	* [objects/cursoricon.c]
	Made CreateCursor32() convert the instance handle properly. Made
	DestroyCursor() return correct success status.

Wed Dec 24 17:56:34 1997  Dimitrie O. Paun  <dimi@cs.toronto.edu>

	* [windows/syscolor.c]
	Added definition of GetSysColorPen16/32. This function does not
	exist in the Win32 API but is a very close (and natural) relative
	to GetSysColorBrush function. Moreover, it is *very* much used 
	within Wine since there are a lot of places where we need to draw
	lines with the standard colors.

	* [controls/button.c] [controls/combo.c] [controls/icontitle.c]
	  [controls/menu.c] [controls/progress.c] [controls/scroll.c]
	  [controls/updown.c] [graphics/painting.c] [misc/tweak.c]
	  [windows/defwnd.c] [windows/graphics.c] [windows/nonclient.c]
	Replaced references to sysColorObjects with the appropriate
	call to GetSysColorBrush32/GetSysColorPen32. There is no need to
	expose the implementation of these functions, even within Wine.
	This makes the code easier to understand, debug, maintain.

	* [controls/uitools.c]
	Modified most of the functions in this file to use the now
	standard pens (i.e. GetSysColorPen32). These functions made
	*heavy* use of standard pens so I expect a lot less
	CreatePen/DeleteObject calls can do only good...:)
	Plus some minor modifications (*no* functional changes though).

	* [controls/updown.c]
	Used the new DrawFrameControl32 function to paint the control.
	I also deleted UDDOWN_DrawArrow since it was no longer required.

Tue Dec 23 00:03:33 1997  Steinar Hamre  <steinarh@stud.fim.ntnu.no>

	* [configure.in]
	Added check for -lw.

	* [include/wintypes.h] [tools/build.c]
	Changes to make the assembly understandable for even sun as.
	".ascii" -> ".string", "call %foo" -> "call *%foo",
	"pushw/popw %[cdes]s" written out to ".byte 0x66\npushl/popl %[cdes]s".

	* [memory/ldt.c]
	#ifdef added so <sys/seg.h> will not be included on Solaris.

Mon Dec 22 18:55:19 1997  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>

	* [configure.in]
	Added XF86DGA check.

	* [multimedia/dsound.c][relay32/dsound.spec][include/dsound.h]
	Started DirectSound. Only stubs for now.

	* [graphics/ddraw.c][include/ddraw.h][relay32/ddraw.spec]
	Started to implement DirectDraw. Mostly stubs, some
	testcases work. Requires the XF86DGA extension to XFree86.
	(check demo/blizdemo.exe from the Diablo CD-ROM).

	* [files/drive.c]
	Return correct "CDFS" fsname so Diablo is a bit happier.

Sun Dec 21 21:45:48 1997  Kevin Cozens <kcozens@interlog.com>

	* [misc/registry.c]
	Fixed bugs in the routines which read the Windows '95 registry
	files. Added extra information regarding the format of the Windows
	'95 registry files.
1998-01-04 17:49:09 +00:00
controls Release 980104 1998-01-04 17:49:09 +00:00
debugger Release 980104 1998-01-04 17:49:09 +00:00
documentation Release 980104 1998-01-04 17:49:09 +00:00
files Release 980104 1998-01-04 17:49:09 +00:00
graphics Release 980104 1998-01-04 17:49:09 +00:00
if1632 Release 980104 1998-01-04 17:49:09 +00:00
include Release 980104 1998-01-04 17:49:09 +00:00
ipc Release 971116 1997-11-16 17:38:29 +00:00
library Release 971130 1997-11-30 17:45:40 +00:00
libtest Release 980104 1998-01-04 17:49:09 +00:00
loader Release 980104 1998-01-04 17:49:09 +00:00
memory Release 980104 1998-01-04 17:49:09 +00:00
misc Release 980104 1998-01-04 17:49:09 +00:00
miscemu Release 971221 1997-12-21 19:17:50 +00:00
msdos Release 980104 1998-01-04 17:49:09 +00:00
multimedia Release 980104 1998-01-04 17:49:09 +00:00
objects Release 980104 1998-01-04 17:49:09 +00:00
ole Release 980104 1998-01-04 17:49:09 +00:00
programs Release 980104 1998-01-04 17:49:09 +00:00
rc Release 980104 1998-01-04 17:49:09 +00:00
relay32 Release 980104 1998-01-04 17:49:09 +00:00
resources Release 971221 1997-12-21 19:17:50 +00:00
scheduler Release 980104 1998-01-04 17:49:09 +00:00
tools Release 980104 1998-01-04 17:49:09 +00:00
win32 Release 980104 1998-01-04 17:49:09 +00:00
windows Release 980104 1998-01-04 17:49:09 +00:00
ANNOUNCE Release 980104 1998-01-04 17:49:09 +00:00
AUTHORS Release 971221 1997-12-21 19:17:50 +00:00
BUGS Release 971221 1997-12-21 19:17:50 +00:00
ChangeLog Release 980104 1998-01-04 17:49:09 +00:00
DEVELOPERS-HINTS Release 970629 1997-06-29 18:08:02 +00:00
LICENSE Release 970720 1997-07-20 16:23:21 +00:00
Make.rules.in Release 980104 1998-01-04 17:49:09 +00:00
Makefile.in Release 980104 1998-01-04 17:49:09 +00:00
README Release 971116 1997-11-16 17:38:29 +00:00
RELEASE-NOTES Release 970720 1997-07-20 16:23:21 +00:00
WARRANTY Release 970720 1997-07-20 16:23:21 +00:00
configure Release 980104 1998-01-04 17:49:09 +00:00
configure.in Release 980104 1998-01-04 17:49:09 +00:00
wine.ini Release 970824 1997-08-24 16:00:30 +00:00

README

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
	OpenBSD/i386 2.1 or later

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".
This will build the library "libwine.a" and the program "wine".

The program "wine" will load and run Windows executables.
The library "libwine.a" can be used to compile and link Windows source
code under Unix.  If you have an ELF compiler, you can use
"./configure --enable-dll" to build a shared library instead.

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.

UPDATE: Windows 95 components are known to cause more crashes compared
        to the equivalent Windows 3.1 libraries.


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. Also, you may want to browse old messages on www.dejanews.com 
to check whether your problem is already fixed. 

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