mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-01 22:49:03 +00:00
![Alexandre Julliard](/assets/img/avatar_default.png)
May 1, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte) * [loader/signal.c] Add XUngrabPointer() & XUngrabServer() in wine_fault(). Fri Apr 22 19:30:08 1994 Erik Bos (erik@trashcan.hacktic.nl) * [objects/bitblt.c] color_stretch() rewritten to use ints only. *fast!* BLACKONWHITE & WHITEONBLACK stretchmodes redirected to use color_stretch(). Mon May 2 21:39:43 1994 Erik Bos (erik@trashcan.hacktic.nl) * [controls/menu.c] SetSysMenu() added. * [misc/cursor.c] GetCursor() added. * [misc/main.c] SwapMouseButton() added, (NOP). * [windows/win.c] GetDesktopHwnd() added. * [if1632/*spec] Added not implemented functions defs as comment. * [misc/winsocket.c] Change WSAGetXbyY() functions to non-blocking ones, Added WSAAsyncSelect(). (WSA functions can't be canceled yet). Wed Apr 20 23:58:58 1994 Scott A. Laird (scott@curly) * misc/profile.c: Fixed bug with GetIniFileName returning wrong path when given a simple file name. Fixed GetSetProfile to allow enumerating all key names when KeyName is null. Apr 25, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte) * [objects/bitblt.c] Add protection to BitBlt() & StretchBlt() for width or height = 0. * [windows/nonclient.c] Avoid painting in NC_DoNCPaint() if IsWindowVisible(). Simplify NC_TrackMouseMenuBar() because code moved to MenuFocusLoop(). * [windows/win.c] CreateWindowEx() & DestroyWindow() now call respectively AddWindowToTask() & RemoveWindowFromTask(). New empty stub for function AnyPopup(). * [loader/library.c] Bug Fix : GetModuleFileName() now return full path filename. * [include/menu.h] [controls/menu.c] Add hText handle and remove obsolete MENUITEM struct members. Add a ReleaseCapture() in SetMenu() when menubar changed while captured. Add MenuMouseMove() MenuButtonUp() in function MenuFocusLoop(). * [misc/file.c] GetTempFilename() now create a file. _lcreate() use unix open (name, mode, perm), with perm=O666. * [if1632/relay.c] Remove temporarly builtin SHELL.DLL, Add MMSYSTEM.DLL in builtin list. * New file [misc/mmsystem.c] * New file [include/mmsystem.h] * New file [if1632/mmsystem.spec] Many, many empty stubs ... :-)
496 lines
15 KiB
Plaintext
496 lines
15 KiB
Plaintext
Copyright Robert J. Amstadt, 1993. All code is provided without
|
|
warranty. All code is covered by the license contained in the file
|
|
LICENSE unless explicitly stated in the individual source file.
|
|
|
|
|
|
|
|
1. COMPILATION:
|
|
|
|
You must have one of:
|
|
|
|
Linux version 0.99.13 or above
|
|
NetBSD-current
|
|
FreeBSD-current or FreeBSD 1.1
|
|
|
|
To build Wine, first do a "./Configure" and then a "make". The
|
|
executable "wine" will be built. "wine" will load and run 16-bit
|
|
Windows' executables.
|
|
|
|
|
|
|
|
2. SETUP:
|
|
|
|
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 homedirectory.
|
|
|
|
The formatstyle of this config file is just like a windows .ini file.
|
|
|
|
Here's an explanation of each section:
|
|
|
|
* [drives]
|
|
|
|
format: <driveletter> = <rootdirectory>
|
|
default: none
|
|
|
|
This section is used to specify the root directory of each `dos'drive
|
|
as windows' applications require a dos/mswindows based diskdrive &
|
|
directory scheme.
|
|
|
|
If you mounted you dos-partition as /dos and installed microsoft windows
|
|
in c:\windows than you should specify c=/dos in the drives section.
|
|
|
|
* [wine]
|
|
|
|
format: windows = <directory>
|
|
default: c:\windows
|
|
|
|
Used to specify an different windows directory.
|
|
|
|
format: system = <directory>
|
|
default: c:\windows\system
|
|
|
|
Used to specify an different system directory.
|
|
|
|
format: temp = <directory>
|
|
default: c:\temp
|
|
|
|
Used to specify a directory where windows applications can store temporary
|
|
files.
|
|
|
|
format: path = <directories separated by semi-colons>
|
|
default: c:\windows;c:\windows\system
|
|
|
|
Used to specify the path which will be used to find executables and DLL's.
|
|
|
|
format: systemresources = <filename>
|
|
default: c:\temp
|
|
|
|
Used to specify the name of sysres.dll, a dll which is used by wine itself.
|
|
|
|
* [serialports]
|
|
|
|
format: com[12345678] = <devicename>
|
|
default: none
|
|
|
|
Used to specify the devices which are used as com1 - com8.
|
|
|
|
* [parallelports]
|
|
|
|
format: lpt[12345678] = <devicename>
|
|
default: none
|
|
|
|
Used to specify the devices which are used as lpt1 - lpt8.
|
|
|
|
* [spy]
|
|
|
|
format: file = <filename or CON when logging to stdout>
|
|
default: none
|
|
|
|
used to specify the file which will be used as logfile.
|
|
|
|
format: exclude = <message names separated by semicolons>
|
|
default: none
|
|
|
|
Used to specify which messages will be excluded from the logfile.
|
|
|
|
format: include = <message names separated by semicolons>
|
|
default: none
|
|
|
|
Used to specify which messages will be included in the logfile.
|
|
|
|
|
|
|
|
3. 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, occassionally it will crash.
|
|
|
|
|
|
|
|
4. EXAMPLE CONFIGFILE
|
|
|
|
----------------------------------------------------------------------------
|
|
[drives]
|
|
a=/mnt/fd0
|
|
c=/dos
|
|
d=~/Wine
|
|
|
|
[wine]
|
|
windows=c:\windows
|
|
system=c:\windows\system
|
|
temp=c:\temp
|
|
path=c:\windows;c:\windows\system;c:\winapps\word\;c:\winapps\pctools
|
|
systemresources=./sysres.dll
|
|
|
|
[serialports]
|
|
com1=/dev/cua1
|
|
com2=/dev/cua1
|
|
|
|
[parallelports]
|
|
lpt1=/dev/lp0
|
|
|
|
[spy]
|
|
;File=CON
|
|
;File=spy.log
|
|
Exclude=WM_TIMER;WM_SETCURSOR;WM_MOUSEMOVE;WM_NCHITTEST;WM_NCACTIVATE;WM_GETDLGCODE;
|
|
Include=WM_COMMAND;
|
|
|
|
----------------------------------------------------------------------------
|
|
|
|
|
|
5. BUILD:
|
|
|
|
The documentation for the build program is in the file build-spec.txt
|
|
|
|
|
|
6. FINALE:
|
|
|
|
Good luck,
|
|
|
|
If you successfully add anything, please send me a copy.
|
|
|
|
Bob Amstadt
|
|
bob@amscons.com
|
|
|
|
|
|
7. WHAT'S NEW
|
|
|
|
WHAT'S NEW with Wine-940505: (see ChangeLog for details)
|
|
- faster color_stretch()
|
|
- SetSysMenu(), GetCursor(), GetDesktopWindow()
|
|
- WSAGetXbyY() now non-blocking
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940420: (see ChangeLog for details)
|
|
- new property functions
|
|
- new listbox and combo box functions
|
|
- GrayString() and CallGrayStringProc()
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940412: (see ChangeLog for details)
|
|
- menuing improvements
|
|
- drawing performance improvements
|
|
- beginnings of hooks
|
|
- MDI maximizing and tiling
|
|
- improvements in winsock implementation
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940405: (see ChangeLog for details)
|
|
- Mouse activation of menus working again
|
|
- GetprocAddress()
|
|
- SetDIBitsToDevice()
|
|
- FindWindow()
|
|
- int 10hm 25h and 26h
|
|
- in, inb, out, outb emulation
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940329: (see ChangeLog for details)
|
|
- MDI: child windows can be created, activated and cascaded.
|
|
- -depth option
|
|
- support for dithered brushes
|
|
- GetNearestColor(), RealizeDefaultPalette(),
|
|
GetSystemPaletteEntries(), and SelectPalette()
|
|
- System colors read from WIN.INI
|
|
- Keyboard menu manipulation (mouse is temporarily broken)
|
|
- GetFreeSystemResources()
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940322: (see ChangeLog for details)
|
|
- Speed improvements in bitmaps and mouse messages
|
|
- More MDI support. More to come next week...
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940315: (see ChangeLog for details)
|
|
- Beginnings of MDI support. More to come next week...
|
|
- Stress DLL
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940309: (see ChangeLog for details)
|
|
- New "exclude" and "include" filters for spy feature. See sample
|
|
wine.ini for details.
|
|
- -desktop and -name options (see ChangeLog)
|
|
- GetFreeSpace() and CreateIcon()
|
|
- and many many bug fixes!
|
|
|
|
WHAT'S NEW with Wine-940301: (see ChangeLog for details)
|
|
- NEW Configure script to set compile time options!
|
|
- Support for filesystems with short (less than 14 chars) filenames.
|
|
- Clipboard functions!
|
|
- and more...
|
|
|
|
WHAT'S NEW with Wine-940223: (see ChangeLog for details)
|
|
- FreeBSD support
|
|
- FloodFill()
|
|
- Desktop window support
|
|
- Menu fixes
|
|
- and more...
|
|
|
|
WHAT'S NEW with Wine-940216: (see ChangeLog for details)
|
|
- Many many bug fixes
|
|
- Switched to using Imakefile's instead of Makefile's.
|
|
- Lot's of changes for libwine.a
|
|
|
|
WHAT'S NEW with Wine-940209: (see ChangeLog for details)
|
|
- Many many bug fixes
|
|
- Minor directory structure reorganization
|
|
- New GetModule*() functions.
|
|
- WINSOCK DLL
|
|
- First stab at Wine as a library
|
|
|
|
WHAT'S NEW with Wine-940201: (see ChangeLog for details)
|
|
- Support for huge data structures.
|
|
- FreeBSD support.
|
|
- Many many bug fixes
|
|
|
|
WHAT'S NEW with version 0.8: (see ChangeLog for details)
|
|
- Eliminated Xt-dependent code. Thanks to Alexandre and Martin.
|
|
- EnumWindows() and EnumChildWindows()
|
|
- Activating and deactivating of windows.
|
|
- More work on system menus.
|
|
|
|
WHAT'S NEW with version 0.7: (see ChangeLog for details)
|
|
- Eliminated Xt-dependent code. Thanks to Alexandre and Martin.
|
|
- Other bug fixes.
|
|
- IsWIndowEnabled() and EnableWindow() now implemented.
|
|
- New command line options.
|
|
|
|
WHAT'S NEW with version 0.6: (see ChangeLog for details)
|
|
- Working towards elimination of Xt-dependent code. Thanks to
|
|
Alexandre and Martin.
|
|
- Other bug fixes.
|
|
- I added a rudimentary spy facility which can be turned
|
|
on from the wine.ini file. See the sample wine.ini
|
|
for details
|
|
|
|
WHAT'S NEW with version 0.5: (see ChangeLog for details)
|
|
- Working towards elimination of Xt-dependent code.
|
|
- StretchBlt()
|
|
- GetClassName() & GetClassInfo()
|
|
- Implemented loader relocation types 5 and 6.
|
|
|
|
WHAT'S NEW with version 0.4.14: (see ChangeLog for details)
|
|
- Bug fixes and enhancements
|
|
- Comm functions
|
|
- Text caret functions
|
|
|
|
WHAT'S NEW with version 0.4.13: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- GetCapture()
|
|
- More keyboard handling
|
|
- Polyline() and Polygon()
|
|
|
|
WHAT'S NEW with version 0.4.12: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- New DOS file functions
|
|
- Experimental Imakefiles
|
|
|
|
WHAT'S NEW with version 0.4.11: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- New cursor functions
|
|
- New file system handling
|
|
- Atoms
|
|
|
|
WHAT'S NEW with version 0.4.10: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- More scroll bar functions
|
|
- More icon and cursor handling
|
|
|
|
WHAT'S NEW with version 0.4.9: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- real MessageBox()
|
|
- New resource functions
|
|
- Icon functions
|
|
- Selector manipulation functions
|
|
- Catch()/Throw()
|
|
|
|
WHAT'S NEW with version 0.4.7: (see ChangeLog for details)
|
|
- More dialog box functions
|
|
- More DOS interrupts
|
|
- NetBSD compatibility patches
|
|
|
|
WHAT'S NEW with version 0.4.5: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- focus routines
|
|
- dialog box functions
|
|
- improvements to control windows
|
|
|
|
WHAT'S NEW with version 0.4.4: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- New static control class
|
|
- Preliminary listbox, combobox and scrollbar controls
|
|
- System initialization file is now called "wine.ini", and
|
|
may be located in the user's current directory, the
|
|
user's home directory or any directory specified by
|
|
the WINEPATH environment variable.
|
|
- The loader now searches the directories specified by the
|
|
WINEPATH environment variable for programs and DLLs.
|
|
- Internal debugger now works on 386BSD.
|
|
|
|
WHAT'S NEW with version 0.4.3: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- Resource loading now able to load DLL resources
|
|
- Button control now based on GDI calls
|
|
- Preliminary system color support
|
|
- Miscellaneous window functions
|
|
- Limited debugging facility (sometimes hangs)
|
|
|
|
WHAT'S NEW with version 0.4.2: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- 32-bit callback functions allowed
|
|
- .INI file handling
|
|
- lstr* functions and ANSI<->OEM conversion functions.
|
|
|
|
WHAT'S NEW with version 0.4.1: (see ChangeLog for details)
|
|
- Bug fixes
|
|
- Memory usage changes.
|
|
|
|
WHAT'S NEW with version 0.4.0: (see ChangeLog for details)
|
|
- Wine now compiles and runs under NetBSD. Patches are
|
|
required for NetBSD.
|
|
- Wine stat patches included. Add "-DWINESTAT" to the definition
|
|
of COPTS in the main Makefile to activate.
|
|
- Preliminary keyboard handling.
|
|
- Button control window implemented.
|
|
- many other new functions added.
|
|
|
|
WHAT'S NEW with version 0.3.1: (see ChangeLog for details)
|
|
- LineDDA() completed
|
|
- numerous bug fixes
|
|
- INT 1Ah implemented
|
|
- SOUND DLL implemented
|
|
- More of WIN87EM DLL implemented
|
|
- OpenFile() and friends implemented
|
|
|
|
WHAT'S NEW with version 0.3.0: (see ChangeLog for details)
|
|
- Mouse capture
|
|
- Text justification and underlining
|
|
- Clipping
|
|
- LoadBitmap() completed
|
|
- Code generated by the Borland compiler should now work
|
|
|
|
WHAT'S NEW with version 0.2.8: (see ChangeLog for details)
|
|
- Text functions from Alexandre
|
|
- INT 21h from Eric
|
|
- Menu improvements from David
|
|
- Bug fixes and GetProcAddress() stub from me
|
|
|
|
WHAT'S NEW with version 0.2.7: (see ChangeLog for details)
|
|
- sol.exe gets further. I did some debugging and now solitaire
|
|
stops when it tries to call GetTextExtent(). Any volunteers?
|
|
- Many DC updates from Alexandre.
|
|
- Menu updates to support underlining characters from David Metcalfe.
|
|
|
|
WHAT'S NEW with version 0.2.6: (see ChangeLog for details)
|
|
- More region updates from Alexandre
|
|
|
|
WHAT'S NEW with version 0.2.5: (see ChangeLog for details)
|
|
- Regions implemented by Alexandre
|
|
- More menuing code from me
|
|
|
|
WHAT'S NEW with version 0.2.4: (see ChangeLog for details)
|
|
- Many improvements to GDI from Alexandre
|
|
- Many improvements to menu handling by me.
|
|
|
|
WHAT'S NEW with version 0.2.3: (see ChangeLog for details)
|
|
- Bug fixes with SendMessage() and PostMessage()
|
|
- Preliminary menu support
|
|
|
|
WHAT'S NEW with version 0.2.2: (see ChangeLog for details)
|
|
- Misc bug fixes
|
|
- More bitmap code
|
|
- Timers
|
|
- Memory DC's
|
|
|
|
WHAT'S NEW with version 0.2.1:
|
|
- I have placed things into sub-directories. The organization is
|
|
not finalized. I imagine that the directory structure will
|
|
change as is necessary. Files in the ./misc directory need
|
|
to be split apart and placed in apropriate directories.
|
|
- Tons of code from Alexandre. He has constructed the framework
|
|
for handling GDI objects. He has also provided code for DCEs.
|
|
- Local heap functions have been completed.
|
|
- Bug fixes in global.c and win.c
|
|
- New function GlobalQuickAlloc() combines GlobalAlloc() and
|
|
GlobalLock() into a single function call.
|
|
- New patch kit for Linux 0.99 pl11 kernel. Thanks to Linus
|
|
who has graciously included our patches into the ALPHA patch
|
|
release cycle.
|
|
|
|
WHAT'S NEW with version 0.2.0:
|
|
- Alexandre Julliard has provided a replacement for the Tcl code.
|
|
The new code uses Xlib and Xt directly with no intervening
|
|
interpretted language. This should reduce the learning
|
|
curve for casual hackers.
|
|
- I changed all GLOBAL_ names to Global.
|
|
|
|
WHAT'S NEW with version 0.1.1:
|
|
- I have completed global memory allocation, but I don't like it.
|
|
It is not 100% compatible with Windows. I need some more kernel
|
|
modifications for 100% compatibility.
|
|
- Alexandre Julliard has provided written better emulation for
|
|
the Windows message queue.
|
|
|
|
WHAT'S NEW with version 0.1.0:
|
|
- Latest patches from Alexandre Julliard.
|
|
- minor bug fix in if1632.S
|
|
|
|
WHAT'S NEW with version 0.0.5:
|
|
- Patches from Alexandre Julliard. Some integration with Tcl.
|
|
- Generic interface for callback procedures. This will allow
|
|
callbacks into DLLs.
|
|
- MakeProcInstance() has been implemented but untested.
|
|
|
|
WHAT'S NEW with version 0.0.4:
|
|
- Eric Youngdale modified wine.c and selector.c to allow loading
|
|
of Windows DLLs.
|
|
- Added global memory allocation routines (GlobalAlloc, GlobalFree,
|
|
and GlobalLock)
|
|
- Bitmap resource loading into global memory.
|
|
|
|
WHAT'S NEW with version 0.0.3:
|
|
- Fixed bug with sector sizes.
|
|
- Registers at program startup are now set correctly.
|
|
- Segment fixups for relocatable-segment internal entry points.
|
|
- Fixed bug in DOS PSP structure.
|
|
- Some resource loading is done.
|
|
- Added "return" ordinal type to build program.
|
|
- Added comment capability to build program.
|
|
|
|
WHAT'S NEW with version 0.0.2:
|
|
|
|
- Again thanks to Eric Youngdale for some very useful comments.
|
|
- The Windows startup code created by Micrsoft C 7.0 now runs
|
|
to completion.
|
|
- Added a new patch to the kernel to increase the usable size of
|
|
the ldt to the full 32 entries currently allowed.
|
|
- Imported name relocations are now supported.
|
|
- Source code for my infamous test program is now included.
|
|
- A handful of basic Windows functions are now emulated. See
|
|
"kernel.spec" for examples of how to use the build program.
|
|
|
|
WHAT'S NEW with version 0.0.1:
|
|
|
|
- Eric Youngdale contributed countless improvements in memory
|
|
efficiency, bug fixes, and relocation.
|
|
- The build program has been completed. It now lets you specify
|
|
how the main DLL entry point should interface to your emulation
|
|
library routines. A brief description of how to build these
|
|
specifications is included in the file "build-spec.txt".
|
|
- The code to dispatch builtin DLL calls is complete, but untested.
|