Release 940301
[wine/dcerpc.git] / README
blobc7ff6b43c8228a77e494fdc11f790e16196b61e6
1 Copyright  Robert J. Amstadt, 1993.  All code is provided without
2 warranty.  All code is covered by the license contained in the file
3 LICENSE unless explicitly stated in the individual source file.
5 INSTALLATION:
7 You must have one of:
9         Linux version 0.99.13 or above
10         NetBSD-current
11         FreeBSD-current or FreeBSD 1.1
13 To build Wine, first do a "./Configure" and then a "make".  The
14 executable "wine" will be built.  "wine" will load and run Windows'
15 executables.  You must have a file "wine.ini" in the current directory,
16 your home directory, or in the path specified by the environment 
17 variable WINEPATH. Multiple directories in WINEPATH should be seperated
18 by semi-colons and NOT by colons!
20 You must specify the entire path to the executable, or a filename only
21 (using the path= statement in wine.ini as the search path)
23 For example: to run Windows' solitaire:
25         export WINEPATH=/etc;/usr/windows
27         wine sol                   (using the path= statement in wine.ini
28         wine sol.exe                as the search path)
30         wine c:\\windows\\sol.exe  (using a dosfilename)
32         wine /usr/windows/sol.exe  (using a unixfilename)
34 Have a nice game of solitaire, but be careful.  Emulation isn't perfect.
35 So, occassionally it will crash.
37 WHAT'S NEW with Wine-940301: (see ChangeLog for details)
38         - NEW Configure script to set compile time options!
39         - Support for filesystems with short (less than 14 chars) filenames.
40         - Clipboard functions!
41         - and more...
43 WHAT'S NEW with Wine-940223: (see ChangeLog for details)
44         - FreeBSD support
45         - FloodFill()
46         - Desktop window support
47         - Menu fixes
48         - and more...
50 WHAT'S NEW with Wine-940216: (see ChangeLog for details)
51         - Many many bug fixes
52         - Switched to using Imakefile's instead of Makefile's.
53         - Lot's of changes for libwine.a
55 WHAT'S NEW with Wine-940209: (see ChangeLog for details)
56         - Many many bug fixes
57         - Minor directory structure reorganization
58         - New GetModule*() functions.
59         - WINSOCK DLL
60         - First stab at Wine as a library
62 WHAT'S NEW with Wine-940201: (see ChangeLog for details)
63         - Support for huge data structures.
64         - FreeBSD support.
65         - Many many bug fixes
67 WHAT'S NEW with version 0.8: (see ChangeLog for details)
68         - Eliminated Xt-dependent code.  Thanks to Alexandre and Martin.
69         - EnumWindows() and EnumChildWindows()
70         - Activating and deactivating of windows.
71         - More work on system menus.
73 WHAT'S NEW with version 0.7: (see ChangeLog for details)
74         - Eliminated Xt-dependent code.  Thanks to Alexandre and Martin.
75         - Other bug fixes.
76         - IsWIndowEnabled() and EnableWindow() now implemented.
77         - New command line options.
79 WHAT'S NEW with version 0.6: (see ChangeLog for details)
80         - Working towards elimination of Xt-dependent code.  Thanks to
81           Alexandre and Martin.
82         - Other bug fixes.
83         - I added a rudimentary spy facility which can be turned
84           on from the wine.ini file.  See the sample wine.ini
85           for details
87 WHAT'S NEW with version 0.5: (see ChangeLog for details)
88         - Working towards elimination of Xt-dependent code.
89         - StretchBlt()
90         - GetClassName() & GetClassInfo()
91         - Implemented loader relocation types 5 and 6.
93 WHAT'S NEW with version 0.4.14: (see ChangeLog for details)
94         - Bug fixes and enhancements
95         - Comm functions
96         - Text caret functions
98 WHAT'S NEW with version 0.4.13: (see ChangeLog for details)
99         - Bug fixes
100         - GetCapture()
101         - More keyboard handling
102         - Polyline() and Polygon()
104 WHAT'S NEW with version 0.4.12: (see ChangeLog for details)
105         - Bug fixes
106         - New DOS file functions
107         - Experimental Imakefiles
109 WHAT'S NEW with version 0.4.11: (see ChangeLog for details)
110         - Bug fixes
111         - New cursor functions
112         - New file system handling
113         - Atoms
115 WHAT'S NEW with version 0.4.10: (see ChangeLog for details)
116         - Bug fixes
117         - More scroll bar functions
118         - More icon and cursor handling
120 WHAT'S NEW with version 0.4.9: (see ChangeLog for details)
121         - Bug fixes
122         - real MessageBox()
123         - New resource functions
124         - Icon functions
125         - Selector manipulation functions
126         - Catch()/Throw()
128 WHAT'S NEW with version 0.4.7: (see ChangeLog for details)
129         - More dialog box functions
130         - More DOS interrupts
131         - NetBSD compatibility patches
133 WHAT'S NEW with version 0.4.5: (see ChangeLog for details)
134         - Bug fixes
135         - focus routines
136         - dialog box functions
137         - improvements to control windows
139 WHAT'S NEW with version 0.4.4: (see ChangeLog for details)
140         - Bug fixes
141         - New static control class
142         - Preliminary listbox, combobox and scrollbar controls
143         - System initialization file is now called "wine.ini", and
144           may be located in the user's current directory, the
145           user's home directory or any directory specified by
146           the WINEPATH environment variable.
147         - The loader now searches the directories specified by the
148           WINEPATH environment variable for programs and DLLs.
149         - Internal debugger now works on 386BSD.
151 WHAT'S NEW with version 0.4.3: (see ChangeLog for details)
152         - Bug fixes
153         - Resource loading now able to load DLL resources
154         - Button control now based on GDI calls
155         - Preliminary system color support
156         - Miscellaneous window functions
157         - Limited debugging facility (sometimes hangs)
159 WHAT'S NEW with version 0.4.2: (see ChangeLog for details)
160         - Bug fixes
161         - 32-bit callback functions allowed
162         - .INI file handling
163         - lstr* functions and ANSI<->OEM conversion functions.
165 WHAT'S NEW with version 0.4.1: (see ChangeLog for details)
166         - Bug fixes
167         - Memory usage changes.
169 WHAT'S NEW with version 0.4.0: (see ChangeLog for details)
170         - Wine now compiles and runs under NetBSD.  Patches are
171           required for NetBSD.
172         - Wine stat patches included.  Add "-DWINESTAT" to the definition
173           of COPTS in the main Makefile to activate.
174         - Preliminary keyboard handling.
175         - Button control window implemented.
176         - many other new functions added.
178 WHAT'S NEW with version 0.3.1: (see ChangeLog for details)
179         - LineDDA() completed
180         - numerous bug fixes
181         - INT 1Ah implemented
182         - SOUND DLL implemented
183         - More of WIN87EM DLL implemented
184         - OpenFile() and friends implemented
186 WHAT'S NEW with version 0.3.0: (see ChangeLog for details)
187         - Mouse capture
188         - Text justification and underlining
189         - Clipping
190         - LoadBitmap() completed
191         - Code generated by the Borland compiler should now work
193 WHAT'S NEW with version 0.2.8: (see ChangeLog for details)
194         - Text functions from Alexandre
195         - INT 21h from Eric
196         - Menu improvements from David
197         - Bug fixes and GetProcAddress() stub from me
199 WHAT'S NEW with version 0.2.7: (see ChangeLog for details)
200     - sol.exe gets further.  I did some debugging and now solitaire
201       stops when it tries to call GetTextExtent().  Any volunteers?
202     - Many DC updates from Alexandre.
203     - Menu updates to support underlining characters from David Metcalfe.
205 WHAT'S NEW with version 0.2.6: (see ChangeLog for details)
206     - More region updates from Alexandre
208 WHAT'S NEW with version 0.2.5: (see ChangeLog for details)
209     - Regions implemented by Alexandre
210     - More menuing code from me
212 WHAT'S NEW with version 0.2.4: (see ChangeLog for details)
213     - Many improvements to GDI from Alexandre
214     - Many improvements to menu handling by me.
216 WHAT'S NEW with version 0.2.3: (see ChangeLog for details)
217     - Bug fixes with SendMessage() and PostMessage()
218     - Preliminary menu support
220 WHAT'S NEW with version 0.2.2: (see ChangeLog for details)
221     - Misc bug fixes
222     - More bitmap code
223     - Timers
224     - Memory DC's
226 WHAT'S NEW with version 0.2.1:
227     - I have placed things into sub-directories.  The organization is
228       not finalized.  I imagine that the directory structure will
229       change as is necessary.  Files in the ./misc directory need
230       to be split apart and placed in apropriate directories.
231     - Tons of code from Alexandre.  He has constructed the framework
232       for handling GDI objects.  He has also provided code for DCEs.
233     - Local heap functions have been completed.
234     - Bug fixes in global.c and win.c
235     - New function GlobalQuickAlloc() combines GlobalAlloc() and
236       GlobalLock() into a single function call.
237     - New patch kit for Linux 0.99 pl11 kernel.  Thanks to Linus
238       who has graciously included our patches into the ALPHA patch
239       release cycle.
241 WHAT'S NEW with version 0.2.0:
242     - Alexandre Julliard has provided a replacement for the Tcl code.
243       The new code uses Xlib and Xt directly with no intervening
244       interpretted language.  This should reduce the learning
245       curve for casual hackers.
246     - I changed all GLOBAL_ names to Global.
248 WHAT'S NEW with version 0.1.1:
249     - I have completed global memory allocation, but I don't like it.
250       It is not 100% compatible with Windows.  I need some more kernel
251       modifications for 100% compatibility.
252     - Alexandre Julliard has provided written better emulation for
253       the Windows message queue.
255 WHAT'S NEW with version 0.1.0:
256     - Latest patches from Alexandre Julliard.
257     - minor bug fix in if1632.S
259 WHAT'S NEW with version 0.0.5:
260     - Patches from Alexandre Julliard.  Some integration with Tcl.
261     - Generic interface for callback procedures.  This will allow
262       callbacks into DLLs.
263     - MakeProcInstance() has been implemented but untested.
265 WHAT'S NEW with version 0.0.4:
266     - Eric Youngdale modified wine.c and selector.c to allow loading
267       of Windows DLLs.
268     - Added global memory allocation routines (GlobalAlloc, GlobalFree,
269       and GlobalLock)
270     - Bitmap resource loading into global memory.
272 WHAT'S NEW with version 0.0.3:
273     - Fixed bug with sector sizes.
274     - Registers at program startup are now set correctly.
275     - Segment fixups for relocatable-segment internal entry points.
276     - Fixed bug in DOS PSP structure.
277     - Some resource loading is done.
278     - Added "return" ordinal type to build program.
279     - Added comment capability to build program.
281 WHAT'S NEW with version 0.0.2:
283     - Again thanks to Eric Youngdale for some very useful comments.
284     - The Windows startup code created by Micrsoft C 7.0 now runs 
285       to completion.
286     - Added a new patch to the kernel to increase the usable size of
287       the ldt to the full 32 entries currently allowed.
288     - Imported name relocations are now supported.
289     - Source code for my infamous test program is now included.
290     - A handful of basic Windows functions are now emulated.  See
291       "kernel.spec" for examples of how to use the build program.
293 WHAT'S NEW with version 0.0.1:
295     - Eric Youngdale contributed countless improvements in memory
296       efficiency, bug fixes, and relocation.
297     - The build program has been completed.  It now lets you specify
298       how the main DLL entry point should interface to your emulation
299       library routines.  A brief description of how to build these
300       specifications is included in the file "build-spec.txt".
301     - The code to dispatch builtin DLL calls is complete, but untested.
303 TODO:
305     - Segment fixup code completion.
306     - Trap and handle DOS and DPMI calls.
307     - GlobalAlloc of code segments.
308     - Rewrite global memory support including kernel mods to allow
309       application to mess with page map.
310     - Handle self-loading applications.
311     - Resource loading
312     - Lots and lots of API fiunctions.
314 BUILD:
316     The documentation for the build program is in the file build-spec.txt
318 FINALE:
320 Good luck,
322         If you successfully add anything, please send me a copy.
324 Bob Amstadt
325 bob@amscons.com