Skip to content
Snippets Groups Projects
README 9.58 KiB
Newer Older
  • Learn to ignore specific revisions
  • Alexandre Julliard's avatar
    Alexandre Julliard committed
    Copyright  Robert J. Amstadt, 1993.  All code is provided without
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    warranty.  All code is covered by the license contained in the file
    LICENSE unless explicitly stated in the individual source file.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    INSTALLATION:
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    Linux:
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        Uncompress and untar this archive into the directory of your
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    choice.  This release requires a Linux version 0.99 pl13 kernel
    or above.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    NetBSD:
    
        If you use BSD make rather than GNU make, you must apply the patches
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    in the file "bsdmake.patch".  This release requires NetBSD-current.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    All:
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    To build Wine, first do a "make depend" and then a "make".  The
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    executable "wine" will be built.  "wine" will load and run Windows'
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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!
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    You must specify the entire path to the executable, or a filename only
    (using the path= statement in wine.ini as the search path)
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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)
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    Have a nice game of solitaire, but be careful.  Emulation isn't perfect.
    So, occassionally it will crash.
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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()
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    WHAT'S NEW with version 0.1.0:
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        - Latest patches from Alexandre Julliard.
        - minor bug fix in if1632.S
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    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.
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    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.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        - GlobalAlloc of code segments.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        - Rewrite global memory support including kernel mods to allow
          application to mess with page map.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        - Handle self-loading applications.
        - Resource loading
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
        - Lots and lots of API fiunctions.
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    
    
    Alexandre Julliard's avatar
    Alexandre Julliard committed
    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