297 lines
10 KiB
Plaintext
297 lines
10 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.
|
|
|
|
INSTALLATION:
|
|
|
|
Linux:
|
|
|
|
Uncompress and untar this archive into the directory of your
|
|
choice. This release requires a Linux version 0.99 pl13 kernel
|
|
or above.
|
|
|
|
NetBSD:
|
|
|
|
If you use BSD make rather than GNU make, you must apply the patches
|
|
in the file "bsdmake.patch". This release requires NetBSD-current.
|
|
|
|
All:
|
|
|
|
To build Wine, first do a "make depend" and then a "make". The
|
|
executable "wine" will be built. "wine" will load and run Windows'
|
|
executables. You must have a file "wine.ini" in the current directory,
|
|
your homedirectory, or in the path specified by the environment
|
|
variable WINEPATH. Multiple directories in WINEPATH should be seperated
|
|
by semi-colons and NOT by colons!
|
|
|
|
You must specify the entire path to the executable, or a filename only
|
|
(using the path= statement in wine.ini as the search path)
|
|
|
|
For example: to run Windows' solitaire:
|
|
|
|
export WINEPATH=/etc;/usr/windows
|
|
|
|
wine sol (using the path= statement in wine.ini
|
|
wine sol.exe as the search path)
|
|
|
|
wine c:\\windows\\sol.exe (using a dosfilename)
|
|
|
|
wine /usr/windows/sol.exe (using a unixfilename)
|
|
|
|
Have a nice game of solitaire, but be careful. Emulation isn't perfect.
|
|
So, occassionally it will crash.
|
|
|
|
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.
|
|
|
|
TODO:
|
|
|
|
- Segment fixup code completion.
|
|
- Trap and handle DOS and DPMI calls.
|
|
- GlobalAlloc of code segments.
|
|
- Rewrite global memory support including kernel mods to allow
|
|
application to mess with page map.
|
|
- Handle self-loading applications.
|
|
- Resource loading
|
|
- Lots and lots of API fiunctions.
|
|
|
|
BUILD:
|
|
|
|
The documentation for the build program is in the file build-spec.txt
|
|
|
|
FINALE:
|
|
|
|
Good luck,
|
|
|
|
If you successfully add anything, please send me a copy.
|
|
|
|
Bob Amstadt
|
|
bob@amscons.com
|