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.
11 Linux version 0.99.13 or above
13 FreeBSD-current or FreeBSD 1.1
15 To build Wine, first do a "./Configure" and then a "make". The
16 executable "wine" will be built. "wine" will load and run 16-bit
23 Wine requires you to have a file /usr/local/etc/wine.conf (you can
24 supply a different name when configuring wine) or a file called .winerc
25 in your homedirectory.
27 The formatstyle of this config file is just like a windows .ini file.
29 Here's an explanation of each section:
33 format: <driveletter> = <rootdirectory>
36 This section is used to specify the root directory of each `dos'drive
37 as windows' applications require a dos/mswindows based diskdrive &
40 If you mounted you dos-partition as /dos and installed microsoft windows
41 in c:\windows than you should specify c=/dos in the drives section.
45 format: windows = <directory>
48 Used to specify an different windows directory.
50 format: system = <directory>
51 default: c:\windows\system
53 Used to specify an different system directory.
55 format: temp = <directory>
58 Used to specify a directory where windows applications can store temporary
61 format: path = <directories separated by semi-colons>
62 default: c:\windows;c:\windows\system
64 Used to specify the path which will be used to find executables and DLL's.
66 format: systemresources = <filename>
69 Used to specify the name of sysres.dll, a dll which is used by wine itself.
73 format: com[12345678] = <devicename>
76 Used to specify the devices which are used as com1 - com8.
80 format: lpt[12345678] = <devicename>
83 Used to specify the devices which are used as lpt1 - lpt8.
87 format: file = <filename or CON when logging to stdout>
90 used to specify the file which will be used as logfile.
92 format: exclude = <message names separated by semicolons>
95 Used to specify which messages will be excluded from the logfile.
97 format: include = <message names separated by semicolons>
100 Used to specify which messages will be included in the logfile.
106 When invoking wine, you must specify the entire path to the executable,
109 For example: to run Windows' solitaire:
111 wine sol (using the searchpath to locate the file)
114 wine c:\\windows\\sol.exe (using a dosfilename)
116 wine /usr/windows/sol.exe (using a unixfilename)
118 Have a nice game of solitaire, but be careful. Emulation isn't perfect.
119 So, occassionally it will crash.
123 4. EXAMPLE CONFIGFILE
125 ----------------------------------------------------------------------------
133 system=c:\windows\system
135 path=c:\windows;c:\windows\system;c:\winapps\word\;c:\winapps\pctools
136 systemresources=./sysres.dll
148 Exclude=WM_TIMER;WM_SETCURSOR;WM_MOUSEMOVE;WM_NCHITTEST;WM_NCACTIVATE;WM_GETDLGCODE;
151 ----------------------------------------------------------------------------
156 The documentation for the build program is in the file build-spec.txt
163 If you successfully add anything, please send me a copy.
171 WHAT'S NEW with Wine-940405: (see ChangeLog for details)
172 - Mouse activation of menus working again
174 - SetDIBitsToDevice()
176 - int 10hm 25h and 26h
177 - in, inb, out, outb emulation
178 - and many many bug fixes!
180 WHAT'S NEW with Wine-940329: (see ChangeLog for details)
181 - MDI: child windows can be created, activated and cascaded.
183 - support for dithered brushes
184 - GetNearestColor(), RealizeDefaultPalette(),
185 GetSystemPaletteEntries(), and SelectPalette()
186 - System colors read from WIN.INI
187 - Keyboard menu manipulation (mouse is temporarily broken)
188 - GetFreeSystemResources()
189 - and many many bug fixes!
191 WHAT'S NEW with Wine-940322: (see ChangeLog for details)
192 - Speed improvements in bitmaps and mouse messages
193 - More MDI support. More to come next week...
194 - and many many bug fixes!
196 WHAT'S NEW with Wine-940315: (see ChangeLog for details)
197 - Beginnings of MDI support. More to come next week...
199 - and many many bug fixes!
201 WHAT'S NEW with Wine-940309: (see ChangeLog for details)
202 - New "exclude" and "include" filters for spy feature. See sample
203 wine.ini for details.
204 - -desktop and -name options (see ChangeLog)
205 - GetFreeSpace() and CreateIcon()
206 - and many many bug fixes!
208 WHAT'S NEW with Wine-940301: (see ChangeLog for details)
209 - NEW Configure script to set compile time options!
210 - Support for filesystems with short (less than 14 chars) filenames.
211 - Clipboard functions!
214 WHAT'S NEW with Wine-940223: (see ChangeLog for details)
217 - Desktop window support
221 WHAT'S NEW with Wine-940216: (see ChangeLog for details)
222 - Many many bug fixes
223 - Switched to using Imakefile's instead of Makefile's.
224 - Lot's of changes for libwine.a
226 WHAT'S NEW with Wine-940209: (see ChangeLog for details)
227 - Many many bug fixes
228 - Minor directory structure reorganization
229 - New GetModule*() functions.
231 - First stab at Wine as a library
233 WHAT'S NEW with Wine-940201: (see ChangeLog for details)
234 - Support for huge data structures.
236 - Many many bug fixes
238 WHAT'S NEW with version 0.8: (see ChangeLog for details)
239 - Eliminated Xt-dependent code. Thanks to Alexandre and Martin.
240 - EnumWindows() and EnumChildWindows()
241 - Activating and deactivating of windows.
242 - More work on system menus.
244 WHAT'S NEW with version 0.7: (see ChangeLog for details)
245 - Eliminated Xt-dependent code. Thanks to Alexandre and Martin.
247 - IsWIndowEnabled() and EnableWindow() now implemented.
248 - New command line options.
250 WHAT'S NEW with version 0.6: (see ChangeLog for details)
251 - Working towards elimination of Xt-dependent code. Thanks to
252 Alexandre and Martin.
254 - I added a rudimentary spy facility which can be turned
255 on from the wine.ini file. See the sample wine.ini
258 WHAT'S NEW with version 0.5: (see ChangeLog for details)
259 - Working towards elimination of Xt-dependent code.
261 - GetClassName() & GetClassInfo()
262 - Implemented loader relocation types 5 and 6.
264 WHAT'S NEW with version 0.4.14: (see ChangeLog for details)
265 - Bug fixes and enhancements
267 - Text caret functions
269 WHAT'S NEW with version 0.4.13: (see ChangeLog for details)
272 - More keyboard handling
273 - Polyline() and Polygon()
275 WHAT'S NEW with version 0.4.12: (see ChangeLog for details)
277 - New DOS file functions
278 - Experimental Imakefiles
280 WHAT'S NEW with version 0.4.11: (see ChangeLog for details)
282 - New cursor functions
283 - New file system handling
286 WHAT'S NEW with version 0.4.10: (see ChangeLog for details)
288 - More scroll bar functions
289 - More icon and cursor handling
291 WHAT'S NEW with version 0.4.9: (see ChangeLog for details)
294 - New resource functions
296 - Selector manipulation functions
299 WHAT'S NEW with version 0.4.7: (see ChangeLog for details)
300 - More dialog box functions
301 - More DOS interrupts
302 - NetBSD compatibility patches
304 WHAT'S NEW with version 0.4.5: (see ChangeLog for details)
307 - dialog box functions
308 - improvements to control windows
310 WHAT'S NEW with version 0.4.4: (see ChangeLog for details)
312 - New static control class
313 - Preliminary listbox, combobox and scrollbar controls
314 - System initialization file is now called "wine.ini", and
315 may be located in the user's current directory, the
316 user's home directory or any directory specified by
317 the WINEPATH environment variable.
318 - The loader now searches the directories specified by the
319 WINEPATH environment variable for programs and DLLs.
320 - Internal debugger now works on 386BSD.
322 WHAT'S NEW with version 0.4.3: (see ChangeLog for details)
324 - Resource loading now able to load DLL resources
325 - Button control now based on GDI calls
326 - Preliminary system color support
327 - Miscellaneous window functions
328 - Limited debugging facility (sometimes hangs)
330 WHAT'S NEW with version 0.4.2: (see ChangeLog for details)
332 - 32-bit callback functions allowed
334 - lstr* functions and ANSI<->OEM conversion functions.
336 WHAT'S NEW with version 0.4.1: (see ChangeLog for details)
338 - Memory usage changes.
340 WHAT'S NEW with version 0.4.0: (see ChangeLog for details)
341 - Wine now compiles and runs under NetBSD. Patches are
343 - Wine stat patches included. Add "-DWINESTAT" to the definition
344 of COPTS in the main Makefile to activate.
345 - Preliminary keyboard handling.
346 - Button control window implemented.
347 - many other new functions added.
349 WHAT'S NEW with version 0.3.1: (see ChangeLog for details)
350 - LineDDA() completed
352 - INT 1Ah implemented
353 - SOUND DLL implemented
354 - More of WIN87EM DLL implemented
355 - OpenFile() and friends implemented
357 WHAT'S NEW with version 0.3.0: (see ChangeLog for details)
359 - Text justification and underlining
361 - LoadBitmap() completed
362 - Code generated by the Borland compiler should now work
364 WHAT'S NEW with version 0.2.8: (see ChangeLog for details)
365 - Text functions from Alexandre
367 - Menu improvements from David
368 - Bug fixes and GetProcAddress() stub from me
370 WHAT'S NEW with version 0.2.7: (see ChangeLog for details)
371 - sol.exe gets further. I did some debugging and now solitaire
372 stops when it tries to call GetTextExtent(). Any volunteers?
373 - Many DC updates from Alexandre.
374 - Menu updates to support underlining characters from David Metcalfe.
376 WHAT'S NEW with version 0.2.6: (see ChangeLog for details)
377 - More region updates from Alexandre
379 WHAT'S NEW with version 0.2.5: (see ChangeLog for details)
380 - Regions implemented by Alexandre
381 - More menuing code from me
383 WHAT'S NEW with version 0.2.4: (see ChangeLog for details)
384 - Many improvements to GDI from Alexandre
385 - Many improvements to menu handling by me.
387 WHAT'S NEW with version 0.2.3: (see ChangeLog for details)
388 - Bug fixes with SendMessage() and PostMessage()
389 - Preliminary menu support
391 WHAT'S NEW with version 0.2.2: (see ChangeLog for details)
397 WHAT'S NEW with version 0.2.1:
398 - I have placed things into sub-directories. The organization is
399 not finalized. I imagine that the directory structure will
400 change as is necessary. Files in the ./misc directory need
401 to be split apart and placed in apropriate directories.
402 - Tons of code from Alexandre. He has constructed the framework
403 for handling GDI objects. He has also provided code for DCEs.
404 - Local heap functions have been completed.
405 - Bug fixes in global.c and win.c
406 - New function GlobalQuickAlloc() combines GlobalAlloc() and
407 GlobalLock() into a single function call.
408 - New patch kit for Linux 0.99 pl11 kernel. Thanks to Linus
409 who has graciously included our patches into the ALPHA patch
412 WHAT'S NEW with version 0.2.0:
413 - Alexandre Julliard has provided a replacement for the Tcl code.
414 The new code uses Xlib and Xt directly with no intervening
415 interpretted language. This should reduce the learning
416 curve for casual hackers.
417 - I changed all GLOBAL_ names to Global.
419 WHAT'S NEW with version 0.1.1:
420 - I have completed global memory allocation, but I don't like it.
421 It is not 100% compatible with Windows. I need some more kernel
422 modifications for 100% compatibility.
423 - Alexandre Julliard has provided written better emulation for
424 the Windows message queue.
426 WHAT'S NEW with version 0.1.0:
427 - Latest patches from Alexandre Julliard.
428 - minor bug fix in if1632.S
430 WHAT'S NEW with version 0.0.5:
431 - Patches from Alexandre Julliard. Some integration with Tcl.
432 - Generic interface for callback procedures. This will allow
434 - MakeProcInstance() has been implemented but untested.
436 WHAT'S NEW with version 0.0.4:
437 - Eric Youngdale modified wine.c and selector.c to allow loading
439 - Added global memory allocation routines (GlobalAlloc, GlobalFree,
441 - Bitmap resource loading into global memory.
443 WHAT'S NEW with version 0.0.3:
444 - Fixed bug with sector sizes.
445 - Registers at program startup are now set correctly.
446 - Segment fixups for relocatable-segment internal entry points.
447 - Fixed bug in DOS PSP structure.
448 - Some resource loading is done.
449 - Added "return" ordinal type to build program.
450 - Added comment capability to build program.
452 WHAT'S NEW with version 0.0.2:
454 - Again thanks to Eric Youngdale for some very useful comments.
455 - The Windows startup code created by Micrsoft C 7.0 now runs
457 - Added a new patch to the kernel to increase the usable size of
458 the ldt to the full 32 entries currently allowed.
459 - Imported name relocations are now supported.
460 - Source code for my infamous test program is now included.
461 - A handful of basic Windows functions are now emulated. See
462 "kernel.spec" for examples of how to use the build program.
464 WHAT'S NEW with version 0.0.1:
466 - Eric Youngdale contributed countless improvements in memory
467 efficiency, bug fixes, and relocation.
468 - The build program has been completed. It now lets you specify
469 how the main DLL entry point should interface to your emulation
470 library routines. A brief description of how to build these
471 specifications is included in the file "build-spec.txt".
472 - The code to dispatch builtin DLL calls is complete, but untested.