Release 960302
[wine/hacks.git] / ChangeLog
blob3ab435b6b85ccd43a9befc0f9c6241dc63b17663
1 ----------------------------------------------------------------------
2 Sat Mar  2 18:19:06 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
4         * [controls/scroll.c]
5         Fixed SCROLL_THUMB painting fixes from Alex Korobka to store the
6         current tracking window.
8         * [files/file.c]
9         Fixed two file descriptor leaks in FILE_OpenFile().
11         * [if1632/relay32.c] [loader/module.c] [loader/pe_image.c]
12           [tools/build.c]
13         Replaced LOADEDFILEINFO structure by OFSTRUCT.
15         * [memory/atom.c]
16         Reload the pointer to the atom table in ATOM_GetTable() and
17         ATOM_AddAtom() in case the LOCAL_Alloc() calls caused the table to
18         move in linear memory.
20 Fri Mar  1 11:57:13 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
22         * [include/callback.h]
23         Added support for CallWordBreakProc().
25         * [controls/edit.c]
26         New caret handling (really efficient / fast).
27         Implemented EM_SETWORDBREAKPROC and EM_GETWORDBREAKPROC.
28         Fixed EM_SETFONT so it now also creates a proper new caret.
30 Wed Feb 28 22:03:34 1996  Daniel Schepler  <daniel@frobnitz.wustl.edu>
32         * [controls/desktop.c] [misc/main.c] [windows/event.c] [windows/win.c]
33         Added WM_DELETE protocol to top-level windows.
35         * [controls/scroll.c]
36         Fixed a problem which caused slow scrolling to continue uncontrollably.
38         * [misc/exec.c]
39         Implemented ExitWindows().
41         * [windows/win.c]
42         Set top-level owned windows to be transient.
44 Wed Feb 28 19:13:22 1996  Ulrich Schmid  <uschmid@mail.hh.provi.de>
46         * [programs/progman/*]
47         Added a program manager.
49 Wed Feb 28 18:38:01 1996  Duncan C Thomson <duncan@spd.eee.strath.ac.uk>
51         * [resources/sysres_Eo.c]
52         Added support for Esperanto [Eo] language.
54 Wed Feb 28 00:23:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
56         * [if1632/user32.spec]
57         Added EndDialog, GetDlgItem, GetDlgItemInt, SetDlgItemInt,
59         * [win32/init.c]
60         Added task.h to includes. GetModuleHandleA() - return hInstance
61         if called with NULL parameter. Freecell needs this. NOTE this
62         may indicate a problem with differentiation between hModule and
63         hInstance within Wine.
65         * [win32/resource.c]
66         FindResource32() and LoadResource32() - Removed #if 0's around
67         conversion from hInstance to hModule. See remarks above.
69         * [win32/string32.c]
70         WIN32_UniLen() - removed stray semicolon.
72 Tue Feb 27 21:05:18 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
73         
74         * [windows/caret.c]
75         Set blink rate with call to GetProfileInt().
77         * [rc/winerc.c]
78         In new_style(), made initial flag settings WS_CHILD | WS_VISIBLE
79         instead of 0.  This seems to correspond to Borland's defaults, and
80         the flags can be unset by using the (rather obtuse) "| NOT WS_CHILD"
81         or "| NOT WS_VISIBLE" technique in the *.rc file.
83         * [win32/time.c]
84         In GetLocalTime() and GetSystemTime(), used tv_sec field of result
85         returned by gettimeofday() instead of making second call to
86         time().  This eliminates clock jitter if the seconds change
87         between the two calls (rare, but possible).
89         * [include/wintypes.h]
90         Added "#define _far" and "#define _pascal".
92         * [windows/win.c]
93         Added function GetDesktopHwnd().
95         * [include/xmalloc.h]
96         Removed the '#ifdef HAVE_STDLIB_H' structure, since it seemed to
97         have been removed from 'configure', and was causing redefinition
98         warnings.
100 Tue Feb 27 19:31:11 1996  Albrecht Kleine <kleine@ak.sax.de>
102         * [windows/winpos.c] 
103         Added RDW_ALLCHILDREN flag in SetWindowPos (handling SWP_FRAMECHANGED)
104         to force a repaint when setting menu bars with different rows.
106 Sun Feb 25 21:15:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
108         * [windows/syscolors.c] [controls/scroll.c]
109         Fixed DrawFocusRect pen and SCROLL_THUMB painting.
111 ----------------------------------------------------------------------
112 Sat Feb 24 16:17:05 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
114         * [files/profile.c]
115         Added \r when writing profile files, for DOS compatibility.
117         * [memory/global.c]
118         Fixed bug in GlobalReAlloc() that caused a discarded block not to
119         be reallocated if its size was not changed.
121         * [memory/selector.c]
122         Avoid setting a valid LDT entry with base and limit set to 0, as
123         this causes the kernel to clear the entry. This fixes a crash when
124         exiting Windows program manager.
126         * [objects/metafile.c]
127         Removed call to creat() instead of _lcreat() for WINELIB.
129 Fri Feb 23 00:35:54 1996  Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
131         * [if1632/gdi32.spec]
132         GetTextExtentPointA now has win32 specific implementation.
134         * [include/struct32.h]
135         Define new structure tagSIZE32 and typedef SIZE32 to it.
136         Define prototype for function PARAM32_SIZE16to32
138         * [win32/param32.c]
139         New functions PARAM32_SIZE16to32 and WIN32_GetTextExtentPointA
141         * [win32/memory.c]
142         Added missing file pointer parameter to fprintf.
144 Thu Feb 22 01:14:21 1996  Eric Warnke <ew2193@csc.albany.edu>
146         * [windows/nonclient.c]
147         Added more familiar icon activity, ie single click brings up
148         system menu.
150 Wed Feb 21 13:07:04 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
152         * [controls/menu.c]
153         Added calls to HideCaret() and ShowCaret() from within
154         TrackPopupMenu(), MENU_TrackMouseMenuBar() and
155         MENU_TrackKbdMenuBar().  Are there any more places where this
156         should be done?
158         * [controls/static.c]
159         Fixed a FIXME in STATIC_SetIcon(), which now returns a handle to
160         the previous icon.  Added a new FIXME at the point where
161         WM_SETTEXT is handled for a SS_ICON static control.
163         * [misc/commdlg.c]
164         Implemented FindText() and ReplaceText()
165         Still missing : Templates and Hooks handling / error checking
167         * [resources/sysres_En.c]
168         Redesigned FIND_TEXT and REPLACE_TEXT dialogs, so they now work.
169         Languages other than En should update these too, though, as well
170         as redimension the controls because some of the text doesn't fit.
171         Created file resources/TODO to explain this.
173         * [windows/caret.c]
174         Re-written.  It now uses the correct R2_XORPEN.  It resets the
175         blink timer on SetCaretPos().  It does its own hide/show scheme
176         when SetCaretPos() is called (should be faster).
178 Mon Feb 19 21:50:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
180         * [controls/listbox.c]
181         Miscellaneous changes for better LBS_EXTENDEDSEL support.
182         Removed several superfluous redrawals of item list.
184         * [controls/scroll.c]
185         WM_GETDLGCODE return value.
187         * [windows/win.c]
188         FlashWindow function.
190         * [windows/painting.c] [windows/scroll.c]
191         Added HideCaret/ShowCaret calls.
193         * [objects/font.c]
194         Added GetCharABCWidths stub.
196         * [include/windows.h]
197         "#define"s needed for changes mentioned above.
199 Mon Feb 19 20:12:03 1996  Hans de Graaff  <Hans.deGraaff@twi72.twi.tudelft.nl>
201         * [include/winsock.h]
202         Change order of includes to get in_addr struct defined in time.
203         (Note: Linux 1.3.66, libc 5.2.18)
205         * [misc/main.c] [include/options.h] [miscemu/int2f.c]
206         Changed the -enhanced option into a -mode option, which can be
207         either 'standard' or 'enhanced'. 'enhanced' is the default.
209 ----------------------------------------------------------------------
210 Sun Feb 18 16:35:54 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
212         * [controls/desktop.c]
213         Look for the wallpaper file in the Windows directory.
215         * [controls/menu.c]
216         Fixed swapped parameters in SetMenuItemBitmaps().
217         Create a separator in MENU_SetItemData() when the string is NULL.
219         * [file/dosfs.c]
220         DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
222         * [files/file.c]
223         Added a DOS_FILE structure to store per-file information (not
224         really used yet).
225         Fixed _lread and _hread to check the size of the buffer before
226         calling Unix read() to avoid EFAULT error.
228         * [misc/exec.c]
229         Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
231         * [miscemu/instr.c]
232         Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
233         programs that poll the BIOS counter, provided they reload the
234         selector on every read.
236         * [miscemu/int21.c]
237         Re-implemented FindFirst/FindNext for FCB calls.
239         * [windows/message.c] [windows/winpos.c]
240         Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
242         * [windows/nonclient.c] [windows/win.c] [include/windows.h]
243         Added a per-window WIN_MANAGED flag; only windows that have a
244         dialog frame or a sizing border are managed.
246 Sat Feb 17 18:25:00 1996  Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
248         * [if1632/Makefile.in]
249         Added -g flag to compilation of .c files generated from *32.spec.
251         * [if1632/gdi32.spec]
252         Numerous additional functions implemented.
254         * if1632/user32.spec]
255         wsprintfA maps to vsprintf not wsprintf
256         Numerous additional functions implemented.
258         * [include/gdi.h] [objects/gdiobj.c]
259         New #define MAGIC_DONTCARE added. This is used in
260         GDI_GetObjPtr to enable getting a pointer to a GDI object of
261         unknow type.
263         * [win32/gdi32.c]
264         New file.
266         * [win32/param32.c]
267         WIN32_MoveToEx() - handle NULL pointer argument.
269         * [win32/user32.c]
270         USER32_InvalidateRect - handle passing of a NULL pointer.
271         USER32_SetTimer - New function.
273         * [files/directory.c]
274         Fixed DIR_Init() (off by one in allocation of space for
275         environment variables).
277         * [files/drive.c]
278         Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
279         on FreeBSD).
281 Fri Feb 16 10:26:56 1996  Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
283         * [controls/menu.c]
284         Memory leak plugged.
286         * [controls/edit.c]
287         Erase space with function ExtTextOut(). This eliminates the use of
288         xmalloc().  Memory leak in EDIT_WriteText plugged.
290         * [debugger/db_disasm.c]
291         Operand for scas now is di.
293         * [files/profile.c]
294         PROFILE_GetSection was copying too much data.
295         PROFILE_GetSection now returns the correct value. It was returning
296         the number of unused instead of used bytes.
298         * [objects/dc.c]
299         Corrected two typos in comments.
301         * [objects/font.c]
302         FONT_MatchFont didn't return if it couldn't find any font.
304         * [objects/oembitmap.c]
305         Free object only if it has been allocated.
307         * [windows/scroll.c]
308         Memory leak in ScrollDC plugged.
310 Tue Feb 13 11:17:00 1996 William Magro  <wmagro@tc.cornell.edu>
312         * [controls/edit.c]
313         Implemented ES_NOHIDESEL style, shift+click selection,
314         shift+{arrow,home,end,pgup,pgdn} selection.  Optimized
315         (de)selection drawing.  Changed selection drawing to use correct
316         system colors instead of inverting.  Fixed deleting or backspacing
317         across a '\r\n' end of line pair.  Selection now anchors
318         correctly. Fixed text leaking and extra garbage problem bug
319         uncovered by change in class style in wine960131.
321         * [controls/widgets.c]
322         Class flags now match those of Windows.
324 Mon Feb 12 21:28:19 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
326         * [controls/widgets.c]
327         WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
329         * [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
330         comctl32.spec ole32.spec winspool.spec: new files.
331         RELAY32_Init: call initialization of new DLLs.
332         RELAY32_GetEntryPoint: expects WIN32_builtin* now.
333         RELAY32_MakeFakeModule: new function.
335         * [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
336         Added Win95 functions. Ordinals now differ from both NT and Win95
337         HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
338         CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
339         DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
340         new relays.
342         * [if1632/shell32.spec]
343         shell32.spec: renumbered all functions to take into account ordinals.
344         These seem to be identical between NT and Win95.
346         * [include/dialog.h][windows/dialog.c]
347         xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
349         * [include/handle32.h]
350         New handle types VRANGE, HEAP, HEAPITEM.
352         * [include/pe_image.h][loader/pe_image.c]
353         struct w_files: new field builtin.
354         PE_FindExportedFunction: support ordinals.
355         PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
356         fixup_imports: support ordinals.
357         PE_LoadImage: prefer directories over segments.
359         * [include/resource.h][win32/resource.c]
360         FindResource32: changed parameter from LPCTSTR to LPCWSTR
361                 check LANG_NEUTRAL if LANG_ENGLISH fails.
362         LoadAcceleratorsW,SizeofResource32,AccessResource32: 
363                 disabled because it's broken.
364         Casted to and from LPWSTR at various places.
366         * [include/string32.h][win32/string32.c]
367         Changed prototypes to take const arguments where appropriate.
369         * [include/struct32.h]
370         New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
372         * [tools/build.c]
373         BuildSpec32Files: generate Base value into code, generate call to
374         RELAY32_MakeFakeModule.
375         
376         * [win32/heap.c]
377         This is still not finished and needs rework.
378         HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
379         HeapCreate: implemented on top of VirtualAlloc, which does not work yet
380         HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
382         * [win32/memory.c]
383         Support for VRANGE_OBJECT. This is not yet called from any place,
384         and needs more platform specific support
385         MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
386         MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
388         * [win32/user32.c]
389         WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
390         names, as in dialogs.
391         Implemented dialog functions (see user32.spec).
393         * [windows/caret.c]
394         CARET_Initialize: call RELAY32_GetBuiltinDLL.
396 Mon Feb 12 18:52:40 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
398         * [controls/edit.c]
399         Removed commented out #ifdefs for WINELIB.
401         * [tools/makehtml.pl]
402         Put in error checking when trying to open a file.
404         * [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
405         Added two new targets: hello4 and new.
407         * [include/windows.h]
408         Added definition of DEVMODE structure, although it's not yet used.
409         Modified various API functions from CreateDC() to Escape(), in
410         order to make them more compliant with the strict API definitions.
412         * [include/wintypes.h]
413         Added 'typedef char TCHAR'.  It probably should be defined as
414         'short', but then we would have to support such characters.  Also did
415         'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
416         Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
417         MFENUMPROC, and HGDIOBJ.
419 Mon Feb  5 16:42:07 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
421         * [misc/commdlg.c]
422         Patched a bug that occurred in the internal COMMDLG module for the
423         FileOpen(), FileSave() and FileSaveAs() functions.  The file-type
424         combobox is now handled correctly.
426 Fri Feb  2 22:52:58 1996  Roman Dolejsi  <roman@sorry.vse.cz>
428         * [resources/sysres_Cz.rc]
429         Added support for Czech [Cz] language.
431 Thu Feb  1 00:35:04 1996  Philippe De Muyter  <phdm@info.ucl.ac.be>
433         * [objects/font.c]
434         FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
435         for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
436         is -1, assume 0.
437         CreateFontIndirect : if font parameter is NULL, issue an error message.
438         CreateFont : null-terminate lfFaceName.
439         ParseFontParms : debug code turned off : too verbose.
440         InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
442         * [objects/color.c]
443         ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
445 --------------------------------------------------------------------
446 Wed Jan 31 10:58:00 1996  Alexandre Julliard  <julliard@sunsite.unc.edu>
448         * [configure.in]
449         Added --with-dll option to build libwine.so.
451         * [controls/listbox.c]
452         Fixed ListBoxDirectory(), DlgDirSelect() and
453         DlgDirList(). Hopefully their behavior is correct now.
455         * [controls/menu.c]
456         Use SEGPTRs in ChangeMenu(), InsertMenu(), AppendMenu() and
457         ModifyMenu() for the item data, to avoid corrupting the pointer
458         for owner-drawn items.
460         * [controls/static.c]
461         Attempt to load OEM icons for SS_ICON controls. Probably not
462         entirely correct.
463         Don't clip the text output.
465         * [files/directory.c]
466         Add temp dir and Windows dir to environment.
468         * [files/dos_fs.c]
469         Fixed a few path handling bugs in DOSFS_GetUnixFileName().
470         Cache last used directory in DOSFS_FindNext() to avoid quadratic
471         search time.
473         * [files/drive.c]
474         New format for drives configuration in wine.conf; allows
475         specifying the type, label and serial number of a drive.
477         * [files/file.c]
478         New function FILE_OpenUnixFile to make sure we don't open a
479         directory instead of a file.
480         Fixed DOSFS_GetUnixFileName() check_last flag in FILE_MakeDir().
482         * [files/profile.c]
483         Rewrote profile handling. Should be closer to Windows behavior now.
484         New function PROFILE_GetWineIniString() to get a string from wine.conf.
485         Support environment variables in wine.conf.
487         * [loader/task.c]
488         Fixed the order of deletion in TASK_DeleteTask() to avoid memory
489         corruption.
491         * [memory/global.c]
492         Create a discarded block on GlobalAlloc() if the size is 0; thanks
493         to John Harvey for noticing this.
495         * [memory/local.c]
496         LOCAL_GetHeap: make sure the pointer is valid before checking
497         magic number.
499         * [misc/main.c]
500         Moved profile and registry saving to ExitWindows(), so we don't
501         try to save them in case of a crash.
503         * [miscemu/int21.c]
504         INT21_GetFreeDiskSpace: try to compute the cluster size from the
505         filesystem size instead of hard-coding it to 64.
506         Fixed functions 0x3f and 0x40 to use _hread and _hwrite to allow
507         reading or writing 65535 bytes (thanks to Bruce Milner for this one).
509         * [windows/message.c]
510         Fixed bug in linked-list handling in MSG_DeleteQueue().
511         Simplified SetMessageQueue().
513         * [wine.ini] [wine.man]
514         Updated for new drives configuration format.
516 Tue Jan 30 11:24:46 1996  William Magro  <wmagro@tc.cornell.edu>
518         * [controls/edit.c]
519         Implemented ES_PASSWORD style, EM_SETPASSWORDCHAR and
520         EM_GETPASSWORDCHAR messages.
522         * [controls/widgets.c]
523         Adjusted class creation flags to better match values Windows uses.
525         * [include/windows.h]
526         Fixed ES_NOHIDESEL typo.
528         * [loader/ne_image.c]
529         Added detection for zero offset in RADDR fixups. Quicken
530         was in an infinite loop here.
532 Mon Jan 29 20:12:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
534         * [files/dos_fs.c]
535         Bugfix: range error in month value (0..11 set to 1..12).
537         * [windows/caret.c]
538         Changed ROP2-mode to R2_NOTXORPEN in CARET_Callback for pulsed
539         appearance of the caret.
541         * [windows/mdi.c] [include/mdi.h]
542         Changed MDITile(): added a new parameter WORD wParam for
543         WM_MDITILE second tiling method (MDITILE_HORIZONTAL in wParam) as
544         used in Win3.1
546 Sun Jan 28 14:20:00 1996  Cameron Heide  <heide@ee.ualberta.ca>
548         * [miscemu/int2f.c]
549         Added a small bit of MSCDEX emulation.
551         * [windows/alias.c]
552         ALIAS_RegisterAlias was returning the hash value when it should
553         have been returning the record number.
554         
555 Sat Jan 27 10:53:51 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
557         * [include/shell.h] [include/wintypes.h]
558         Moved definition of HKEY and LPHKEY types to include/wintypes.h.
559         Declared FONTENUMPROC in wintypes.h.
561         * [include/windows.h]
562         Added definition of KERNINGPAIR and LPKERNINGPAIR types.  Added
563         declarations for CopyCursor(), CopyIcon(), EnumFontFamilies(),
564         ExtractIcon(), FatalAppExit(), FindExecutable(), GetClipCursor(),
565         GetKerningPairs(), GetQueueStatus(), GetRasterizerCaps(),
566         IsGDIObject(), IsMenu(), IsTask(), RegCloseKey(), RegCreateKey(),
567         RegDeleteKey(), RegEnumKey(), RegOpenKey(), RegQueryValue(),
568         RegSetValue(), ResetDC(), ShellExecute(), SystemParametersInfo(),
569         and wsprintf().
571         * [tools/makehtml.pl] [documentation/apiw.index]
572         New files that scan windows.h, commdlg.h, and toolhelp.h and output
573         an HTML sorted list with optional links to www.willows.com and a
574         tally of unimplemented APIW functions.
576         * [objects/cursoricon.c]
577         Added Win32 versions of CopyIcon() and CopyCursor() for use in
578         libwine.
580         * [win32/resource.c] [win32/winprocs.c]
581         Added '#include "libres.h"' and explicit declarations of windows
582         procs in order to avoid warnings.
584         * [windows/utility.c]
585         Added Win32 version of MulDiv() for libwine.
587         * [*/*] [include/windows.h]
588         Changed several function declarations to comply more strictly to
589         the windows API (without, hopefully, altering their functionality).
591         * [controls/menu.c]
592         Made the return value of CheckMenuItem be the previous state of
593         the menu item if it was found, otherwise -1 as specified in the
594         SDK. This conflicts with the APIW specification, which says it
595         should return TRUE if successful, otherwise FALSE.
597         * [include/windows.h]
598         Added obsolete WM_SIZE message wParam names for compatibility.
599         Added WinHelp() command constants, even though they are not yet
600         supported.
602         * [rc/winerc.c]
603         Tidied up transform_binary_file().  In argument checking, flattened
604         any invalid characters specified with the prefix argument.
606         * [library/libres.c]
607         Made FindResource() case-insensitive when parameter 'name' is a string.
609 Sat Jan 27 02:30 1996  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de
611         * [files/drive.c]
612         If root "/" is given in wine.conf, use it as last resort.
614         * [files/file.c]
615         Report ER_AccessDenied it disk ist not writable
616         More Debug Output
618         * [miscemu/int21.c]
619         Squeezed some bugs in ExtendedOpenCreateFile
620         
621         * [windows/winpos.c]
622         Some windows may not be moved or resized. We are missing some
623         structures to be exact, but the approach should help in some cases
624         and make things worse in much fewer.
626 Fri Jan 26 10:24:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
628         * [loader/pe_image.c]
629         fixup_imports: Find builtins for Borland style entries, too
631 Fri Jan 26 10:24:00 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
633         * [controls/menu.c]
634         LoadMenu: branch to Win32 for PE modules
636         * [if1632/gdi.spec][if1632/kernel32.spec][if1632/user32.spec]
637         DeleteObject, GetPixel, SetPixel,WritePrivateProfileStringA,
638         WriteProfileStringA, EmptyClipboard, EnableMenuItem, EnableScrollBar,
639         EnableWindow, InvalidateRect, SetWindowTextA, WinHelpA: new relays
640         DrawTextA, MoveToEx, GetClientRect, InvalidateRect, LoadBitmapA/W,
641         LoadAcceleratorsA/W, LoadMenu[Indirect]A/W, LoadStringA/W: changed
642         to convert parameters or naming convention
644         * [include/kernel32.h][include/wintypes.h]
645         moved WCHAR, defined LPWSTR
647         * [include/string32.h][win32/string32.c][include/struct32.h]
648         New files
650         * [loader/module.h]
651         LoadModule: exit after returning from PE_LoadModule
653         * [loader/pe_image.c]
654         my_wcstombs: isascii does not work on Linux for Unicode
655         PE_LoadImage: Handle directories
657         * [misc/user32.c]
658         USER32_RECT32to16, USER32_RECT16to32: new functions
659         implemented new user32 relays
661         * [misc/newfns.c]
662         WIN32_WinHelpA: new function
664         * [win32/param32.c]
665         New file
667         * [win32/resource.c]
668         GetResDirEntry: added support for named entries
669         WIN32_LoadAcceleratorsW: invoke *32 resource functions
670         WIN32_LoadBitmapA: convert name to unicode if appropriate
671         WIN32_ParseMenu: new function
672         implemented new resource functions from user32.spec
674 Wed Jan 24 18:09:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
676         * [objects/cursoricon.c]
677         GetIconId() and LoadIconHandler() functions.
679         * [windows/mdi.c]
680         Better maximization support, TranslateMDISysAccel() function, 
681         misc improvements.
683         * [windows/defwnd.c]
684         Fix for WM_WINDOWPOSCHANGED message handler.
686         * [windows/winpos.c]
687         Rewrote WindowFromPoint() function.
689 Sun Jan 21 1996 17:05:09  Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
691         * [include/toolhelp.h] [misc/toolhelp.c]
692         Added Notify(Un)Register, but no callbacks yet.
694 Fri Jan 19 01:43:37 1996 Victor Schneider <root@tailor.roman.org>
696         * [Makefile.in]
697         Added target for libwine.so.1.0.
699         * [library/winmain.c]
700         For WINELIBDLL, _WinMain just returns hInstance instead of calling
701         WinMain().
703         * [misc/main.c]
704         For WINELIBDLL, renamed main() to _wine_main() for calling from the
705         stub main function.
707         * [library/winestub.c] (new file)
708         Provides a stub main() function for using libwine.so.
710 Tue Jan 16 11:04:34 1996  Anand Kumria <akumria@ozemail.com.au>
712         * [winsocket.c]
713         Fix EPERM problem.
715         * [global.c]
716         Attempt to do some sanity checking in MemManInfo().
718         * [Changelog]
719         Fix changelog oversight for previous entry.
721 ---------------------------------------------------------------------
722 Sun Jan 14 13:45:22 1996  Alexandre Julliard  <julliard@sunsite.unc.edu>
724         * [configure.in]
725         Added check for gcc strength-reduce bug.
727         * [controls/listbox.c]
728         Changed ListBoxDirectory() to use the new DOS file functions.
730         * [controls/menu.c]
731         Fixed parameters for DeleteMenu() call in ChangeMenu().
733         * [debugger/stack.c]
734         Also display current frame in back-trace.
736         * [files/directory.c] [files/dos_fs.c] [files/drive.c] [files/file.c]
737         Complete rewrite of the DOS file handling.
738         Implemented per-task file handles.
739         Removed default Z: drive; needs to be put explicitely in wine.ini
740         if desired.
742         * [loader/module.c]
743         Fixed file descriptor leak in LoadModule().
745         * [loader/task.c]
746         Initialise PDB file handle table in TASK_CreateTask().
747         Close file handles on task termination.
748         Implemented SetErrorMode().
750         * [misc/network.c]
751         Fixed WNetGetConnection() to use GetDriveType().
753         * [misc/xmalloc.c]
754         Added function xstrdup().
756         * [miscemu/int21.c]
757         Many changes for new DOS file functions.
759         * [miscemu/interrupts.c]
760         Moved DOS_GetEquipment() function into INT_Int11Handler().
762         * [windows/win.c]
763         Bug fix: create system menu before sending WM_NCCREATE.
765         * [*/*.c]
766         Replaced strcasecmp and strncasecmp by lstrcmpi and lstrncmpi for
767         better portability.
769 Sat Jan 13 16:13:02 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
771         * [include/wintypes.h]
772         Added 'typedef HGLOBAL GOBALHANDLE;'.  This is not precisely in line
773         with the true windows 'typedef HANDLE GLOBALHANDLE;', but I believe
774         it should suffice.
776         * [include/winsock.h]
777         Added '#include <arpa/inet.h>' for various declarations.  '#ifdef'-ed
778         out some old style internet address #define's.
780         * [loader/task.c]
781         Made MakeProcInstance() return first parameter #ifdef WINELIB32.
782         Made FreeProcInstance() do nothing #ifdef WINELIB32.
783         '#ifdef'-ed out TASK_AllocThunk(), as it was unused in WINELIB32.
785         * [library/miscstubs.c]
786         Made GetWndProcEntry16() return ACTIVATEAPP_callback() when called
787         with name="ActivateAppProc".  This hardly seems correct, but it's my
788         best guess as to how the emulator responds.
790 Sat Jan  6 17:57:45 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
792         * [if1632/kernel32.spec][win32/process.c]
793         WIN32_GetProcAddress, LoadLibraryA: new functions
795         * [if1632/relay32.c]
796         RELAY32_GetEntryPoint: Removed code to load PE DLLs
798         * [include/pe_image.h][include/pe_exe.h]
799         struct pe_data: new fields base_addr,load_addr,vma_size,pe_reloc
800         struct PE_Reloc_Block: new structure
802         * [loader/module.c]
803         MODULE_RegisterModule: new function
805         * [loader/pe_image.c]
806         PE_FindExportedFunction,PE_GetProcAddress: new functions
807         fixup_imports: expect struct w_files* now, fill dlls_to_init,
808                        load PE DLLs
809         do_relocations: new functions
810         calc_vma_size: renamed from dump_table
811         PE_LoadImage: use malloc to allocate memory for image
812         PE_InitDLL: expect HMODULE
813         PE_InitializeDLLs: new function
815         * [loader/task.c]
816         NE_InitializeDLLs: branch to PE_InitializeDLLs for PE modules
817         GetExePtr: Accept PE modules
819         * [misc/commdlg.c]
820         FILEDLG_WMCommand: unpack WIN32 WM_COMMAND appropriately for WineLib
822 Thu Jan  4 11:36:21 1996  Manfred Weichel <Manfred.Weichel@mch.sni.de>
824         * [misc/port.c]
825         New file with usleep() function for SVR4.
827         * [configure.in]
828         Check for usleep() function.
830 Tue Jan 02 14:00:00 1996  Anand Kumria <akumria@ozemail.com.au>
832         * [if1632/toolhelp.spec] [include/toolhelp.h]
833           [misc/user.c] [windows/message.c]
834         Implement TOOLHELP.80 TimerCount. Fix GetTickCount.
836         * [winsocket.c]
837         Fixed ENOENT error.
839         * [miscemu/dpmi.c]
840         Implement DPMI Get Page Size (AX=0604, INT 31)
842         * [memory/global.c]
843         Implement TOOLHELP.72 GetMemManInfo.
845 Mon Jan  2 10:33:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
847         * [if1632/callback.c]
848         CallWindowProc() - When calling RELAY32_CallWindowProc, check
849         whether lParam should be a SEGPTR, and if so convert it to one.
851         * [if1632/gdi.spec] [if1632/kernel32.spec] [if1632/user32.spec]
852         Numerous functions added, mostly calls to original (win16)
853         functions.  Note that some (many) of these are probably not
854         strictly correct, but with these additions freecell will at least
855         display its main window though it is garbled.
857         * [if1632/winprocs.spec]
858         Completely rewritten - all WndProcs now have win32 versions to
859         help with the lparam SEGPTR fix in callback.c
861         * [include/kernel32.h]
862         LPTCSTR defined.
864         * [include/peexe.h]
865         Definition of PE_Export_Directory amended.
867         * [include/resource32.h]
868         New file.
870         * [include/stackframe.h]
871         Definition of MAKE_SEGPTR macro #ifdef'd out and replaced with
872         prototype for replacement function in memory/selector.c which
873         can operate on any given memory address. This is currently
874         required for win32 support. It is a dreadful cludge, and will
875         certainly slow down other programs. If you are not interested
876         in win32 development you may wish to reverse this patch.
878         * [include/windows.h]
879         Definition of SW_SHOWDEFAULT added.
881         * [loader/pe_image.c]
882         Extensive rewrites of xmmap() fixup_imports().
883         PE_LoadImage() - initialisation of bss added, extraction of
884         module name fixed, initialisation of DLL added.
885         PE_InitDLL() - now does something.
886         PE_Win32CallToStart() - initialisation of TEB pointed to by
887         fs added.
888         PE_InitTEB() created to perform TEB initialisation.
890         * [memory/selector.c] 
891         New function MAKE_SEGPTR() - see include/stackframe.h above.
893         * [misc/user32.c]
894         USER32_RegisterClassA(), CreateWindowExA() memory allocation
895         method changed. This is probably now unnecessary with the
896         new MAKE_SEGPTR handling code.
897         USER32_DefWndProcA() removed to win32/winprocs.c
898         USER32_TranslateMessage added.
900         * [tools/build.c]
901         handling of win32 spec files changed to support gcc2.6.X
902         this requires optimisations to be disabled.
904         * [win32/resource.c] [win32/newfns.c] [win32/heap.c] [win32/winprocs.c]
905         New files.
907         * [win32/Makefile.in]
908         New files heap.c, newfns.c, resource.c and winprocs.c added to build.
910         * [win32/file.c]
911         New function W32_SetHandleCount.
913         * [win32/init.c]
914         WIN32_GetModuleHandle() - now returns handle of running process
915         if called with NULL.
916         GetStartupInfoA() - set cbReserved2 to 0.
918         * [win32/memory.c]
919         VirtualAlloc() - set mmap() file parameter to -1 instead of 0 to make
920         it work with FreeBSD. Also check for return value. Removed extra
921         return.
923         * [windows/winpos.c]
924         ShowWindow() - SW_SHOWDEFAULT handling kludged in.
926 ----------------------------------------------------------------------
927 Sat Dec 23 18:15:59 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
929         * [configure.in] [Makefile.in] [tools/install-sh]
930         New 'install' target installs Wine binary, library and man page.
931         Library is now more logically named libwine.a.
932         Split toolkit/ directory into library (for library code) and
933         libtest (for test programs).
935         * [controls/edit.c]
936         Quick hack to partially support EM_PASSWORD style (avoids
937         displaying your passwords on the screen when testing programs...)
939         * [configure.in] [controls/menu.c] [include/resource.h]
940           [misc/commdlg.c] [misc/ole2nls.c] [misc/shell.c] [windows/msgbox.c]
941         Language is now a run-time option (wine -language xx).
943         * [debugger/dbg.y]
944         Dump some more debugging info on crash.
946         * [misc/profile.c]
947         Only consider ';' as a comment if it's the first non-blank
948         character on the line.
950         * [miscemu/dpmi.c]
951         More debugging info for real-mode callback.
953         * [objects/gdiobj.c]
954         Rewrote EnumObjects() to do the Right Thing.
956         * [resources/sysres*]
957         New directory containing system resources.
959 Fri Dec 22 11:24:39 GMT 1995  John Harvey <john@division.co.uk>
961         * [win32/file.c] [win32/memory.c]
962         Unixware doesn't have MAP_ANON ifdefed out for now.
964         * [misc/dos_fs.c]
965         DOS_GetDosFileName didn't truncate paths starting ./ properly.
967         * [tools/build.c]
968         Produces assembly code that works with the unixware assembler.
970 Wed Dec 20 22:22:29 +0100 1995  Morten Welinder <terra@diku.dk>
972         * [miscemu/instr.c]
973         INSTR_GetOperandAddr: 16-bit addresses should be masked to 16 bits.
975         * [misc/dos_fs.c]
976         DOS_readdir should always return directories, even if they don't
977         match the file name mask.
979 Tue Dec 19 18:00:00 1995  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de>
980         
981         * [misc/exec.c]
982         Give arguments to winhelp.
984         * [miscemu/int21.c]
985         Implemented Interrupt 21 AX=6C00 EXTENDED OPEN/CREATE.
986         Created function ExtendedOpenCreateFile.
987         Give for some Windows95 interrupts the return value 'not
988         implemented'.
990 Sun Dec 17 16:51:56 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
992         * [include/kernel32.h] [include/windows.h]
993         Moved the typedefs for SYSTEMTIME and LPSYSTEMTIME from
994         include/kernel32.h to include/windows.h and declared the new Win32
995         API functions Sleep(), GetLocalTime(), and GetSystemTime().
996         Redefined INFINITE as 0xFFFFFFFF if WINELIB32.
998         * [rc/rc (new file)]
999         Created the shell script 'rc', which should simplify resource
1000         compilation.
1002         * [win32/environment.c]
1003         Kludged around an undefined reference to wine_files.  This change
1004         should be fixed some time.
1006         * [win32/time.c] [if1632/kernel32.spec]
1007         Added the functions GetSystemTime(), and Sleep().
1009         * [miscemu/int21.c]
1010         Renamed static function GetSystemTime to INT21_GetSystemTime to
1011         avoid conflicts with the API function of the same name.
1013         * [include/wintypes.h]
1014         Added the SPFMT definition for printf statements.
1016         * [misc/shell.c] [include/shell.h]
1017         Changed ERROR_* defines to SHELL_ERROR_*, as they were conflicting
1018         with the ones in include/winerror.h.  They should probably use the
1019         versions in winerror.h, but I'm not certain, and that can be done
1020         later.
1022         * [windows/mdi.c]
1023         Translated WM_MDIACTIVATE(?,(LOhwnd,HIhwnd)) messages to
1024         WM_MDIACTIVATE(HIhwnd,LOhwnd) for WINELIB32.  The ? parameter
1025         (boolean) was discarded with this translation.  Translated handler
1026         of WM_MDISETMENU(ref,(loHMENU,hiHMENU)) to handle
1027         WM_MDISETMENU(loHMENU, hiHMENU) messages in WINELIB32 (ref assumed
1028         false, call DrawMenuBar() if desired).
1030         * [*/*]
1031         General explicit casts and more rigid typing to remove warnings.
1033         * [include/winpos.h] [windows/winpos.c]
1034         Changed return type of WINPOS_ChangeActiveWindow to BOOL.
1036         * [include/commdlg.h] [misc/commdlg.c]
1037         Added prototypes for ChooseColor(), CommDlgExtendedError(),
1038         FindText() GetFileTitle(), GetOpenFileName(), GetSaveFileName(),
1039         PrintDlg, and ReplaceText().
1040         Renamed the CommDlgExtendError() function to CommDlgExtendedError().
1041         Made GetFileTitle return a short, as per the API definition.
1043         * [Makefile.in]
1044         Added line to clean and distclean that removes temporaries from
1045         the include directory.
1047 Sat Dec 16 19:39:14 MET 1995  Steffen Moeller <smoe0024@rz.uni-hildesheim.de>
1049         * [controls/edit.c]
1050         Almost rewrote EDIT_GetLineMsg.
1052 Sat Dec 16 13:51:48 MST 1995  Andrew Taylor <andrew@riscan.com>
1054         * [windows/mdi.c]
1055         Fixed MDITile() bug that occurs when 0 windows are present or all
1056         windows are minimized.
1058 Wed Dec 12 23:30:00 1995  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de>
1060         * [misc/profile.c]
1061         Try harder to find files, especially in the working directory.
1062         Look in $HOME/.wine too and create it there if it isn't found.
1064 ----------------------------------------------------------------------
1065 Mon Dec 11 19:08:55 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
1067         * [misc/lstr.c]
1068         Replaced wine_strncpy() by a 32-bit version of lstrcpyn(), since
1069         they do the same job.
1071         * [tools/build.c]
1072         Fixed __attribute__((stdcall)) to make it compile with gcc
1073         versions under 2.7. Doesn't mean it will run OK though...
1075 Sat Dec 09 13:22:58 1995  Cameron Heide  <heide@ee.ualberta.ca>
1077         * [include/kernel32.h] [include/winerror.h]
1078         Added file attribute definitions and more error codes.
1080         * [win32/error.c]
1081         Added some rudimentary errno-to-Win32 error conversion
1082         code.
1084         * [win32/file.c]
1085         Added to GetFileInformationByHandle, filled in some known
1086         error codes, and switched to dprintf_win32.
1088         * [win32/time.c]
1089         Added GetLocalTime.
1091 Fri Dec  8 14:37:39 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
1093         * [controls/combo.c]
1094         Converted functions of the type LONG _(HWND,WORD,LONG) to the type
1095         LRESULT _(HWND,WPARAM,LPARAM) where needed.
1097         * [include/libres.h]
1098         Restructured libres prototypes to closer match the windows API.
1100         * [include/windows.h]
1101         Changed several API prototypes' parameter types from 'short' to INT,
1102         which is #defined as short in the emulator, but is a normal int in
1103         WINELIB32.  Also changed SEGPTR from DWORD to void* when WINELIB32.
1104         (This creates a lot of warnings at library-compile time, but less
1105         warnings at app-compile time.  I'll remove the warnings soon.)
1107         * [loader/resource.c]
1108         Fixed parameter mismatch in call to LIBRES_FindResource().  Changed
1109         various implementations of the LIBRES_* API functions.
1111         * [loader/signal.c]
1112         Deleted local 'i' from win_fault(), since it was unused.
1114         * [objects/bitblt.c]
1115         Mirrored changes to include/windows.h mentioned above.
1117         * [toolkit/hello3.c]
1118         Changed LoadMenuIndirect() call to LoadMenu() to test the new
1119         resource registration technique.
1121         * [toolkit/libres.c]
1122         Removed definition of 'struct resource' and fixed bugs in the resource
1123         implementation.  Implemented LIBRES_FindResource.
1125         * [windows/graphics.c]
1126         Mirrored changes to include/windows.h mentioned above.
1128 Thu Dec  7 23:15:56 1995     Martin von Loewis <loewis@informatik.hu-berlin.de>
1130         * [controls/edit.c]
1131         LOCAL_HeapExists: Changed parameter to HANDLE. For WineLib, return true
1133         * [controls/listbox.c]
1134         CreateListBoxStruct: Initialize HeapSel to 0 for WineLib
1136         * [include/listbox.h]
1137         change HeapSel from WORD to HANDLE
1139         * [include/resource.h][rc/winerc.c]
1140         struct ResourceTable: removed
1141         struct resource: moved to header file
1142         autoregister resources if supported by compiler
1144         * [memory/local.h]
1145         LOCAL_GetHeap: expect HANDLE rather than WORD
1146         
1147         * [toolkit/Makefile.in]
1148         Add ALLCFLAGS to make hello3
1150         * [toolkit/heap.c]
1151         LocalFree, HEAP_Free: handle 0 parameter gracefully
1153 Wed Dec 06 15:34:23 1995  Greg Cooper <cooper@ima-inc.com>
1155         * [misc/winsocket.c]
1156         Fixed the msgsnd and msgrcv errors that winsock programs get.
1158 Wed Dec 06 12:47:23 MET 1995 Sven Verdoolaege <skimo@dns.ufsia.ac.be>
1159         
1160         * [if1632/kernel.spec]
1161         Fixed _hread and _hwrite return type
1163         * [if1632/relay32.c] [loader/pe_image.c]
1164         Hacked loading of PE-dll's in
1166         * [win32/advapi.c]
1167         Added stubs for RegCreateKeyEx, RegSetValueEx, RegQueryValueEx
1169         * [win32/file.c]
1170         Added stubs for OpenFileMapping, CreateFileMapping, MapViewOfFileEx
1172         * [win32/process.c]
1173         Added stubs for CreateMutexA, ReleaseMutex, CreateEventA,
1174         WaitForSingleObject, DuplicateHandle, GetCurrentProcess
1175         
1176 Mon Dec 04 13:06:37 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
1178         * [include/wine.h] [misc/lstr.c]
1179         Define wine_strncpy(). This function does not pad the buffer with 
1180         zeroes like GNU strncpy(), which might break some Windows programs
1181         that pass bogus size arguments.
1183         * [loader/module.c]: GetModuleFileName(),
1184         [misc/commdlg.c]: GetFileTitle(),
1185         [misc/keyboard.c], [misc/lstr.c]: lstrcpyn(),
1186         [misc/ole2nls.c], [misc/profile.c], [multimedia/mcistring.c],
1187         [multimedia/mmsystem.c], [objects/font.c]:
1188         Use wine_strncpy() where strings are returned to Windows programs.
1189         
1190         * [objects/metafile.c]
1191         PlayMetafile(): Clear the handle table before using it.
1193         * [misc/shell.c] [misc/main.c]
1194         Rename SHELL_RegCheckForRoot() to SHELL_Init() and call it from main().
1195         
1196         * [misc/profile.c]
1197         load(): Need to handle comments.
1198         
1199         * [toolkit/libres.c]
1200         Make it compile.
1201         
1202         * [windows/nonclient.c]
1203         Use MAKE_SEGPTR macro in two places where a user heap block used
1204         to be allocated instead.
1206 Sat Dec 02 16:43:43 1995 Ramon Garcia <ramon@ie3.clubs.etsit.upm.es>
1208         * [windows/winpos.c]
1209         In function SetWindowPos: do not redraw the parent of
1210         a window if the specified window is placed on the top.
1211         This avoids that ShowWindow(hwnd,1) hides hwnd instead
1212         of showing it.
1214 Sat Dec 02 11:00:00 1995 Alex Korobka <alex@phm30.pharm.sunysb.edu>
1216         * [windows/scroll.c]
1217         Now it can scroll children along with the client region of parent 
1218         window. Tried to optimize update region calculation. 
1220         * [windows/mdi.c]
1221         ScrollChildren function, more other features added. Basically
1222         a rewrite.
1224         * [windows/winpos.c] [windows/focus.c]
1225         Reimplemented window activation and focus handling.
1227         * [windows/nonclient.c]
1228         Added new flag WIN_NCACTIVATED.
1230         * [windows/message.c] [loader/task.c]
1231         Small changes (to maintain linked list of message queues).
1233 Wed Nov 29 15:51:48 1995  Daniel Schepler  <daniel@shep13.wustl.edu>
1235         * [include/options.h] [misc/main.c] [windows/defwnd.c]
1236           [windows/event.c] [windows/nonclient.c] [windows/win.c] [Wine.man]
1237         Implemented a -managed option to replace the standard Windows
1238         frame of top-level windows with the window manager's decorations.
1239         If a top-level window makes its own frame, this will still show
1240         up, inside the window manager decorations (I believe ctl3dv2.dll
1241         would do this, although I can't test this).
1243 ----------------------------------------------------------------------
1244 Tue Nov 21 18:49:10 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
1246         * [configure.in] [Makefile] [misc/dos_fs.c]
1247         Got rid of autoconf.h file.
1249         * [debugger/dbg.y]
1250         More logical behavior upon syntax errors.
1252         * [include/hook.h] [windows/hook.c]
1253         Changed hook structure and rewrote most of the hook functions for
1254         better compatibility, based on investigations by Alex Korobka.
1256         * [include/message.h] [windows/message.c]
1257         Added hooks to message queue structure and made the structure
1258         layout Windows-compatible.
1259         Added support for WH_MOUSE, WH_KEYBOARD, WH_HARDWARE and
1260         WH_JOURNALRECORD hooks.
1262         * [misc/main.c]
1263         Added command-line option for changing the language at run-time
1264         (not implemented yet), based on a suggestion from Michael Patra.
1266         * [objects/cursoricon.c]
1267         Fixed silly SEGPTR bug in DumpIcon().
1269 Mon Nov 20 22:22:22 1995  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1271         * [controls/listbox.c] [controls/combo.c] [include/listbox.h]
1272         Partial implementaion of LBS_EXTENDEDSEL style,
1273         yet more updates for drag & drop support. Now works.
1275         * [windows/defwnd.c]
1276         More message handlers.
1278         * [windows/win.c]
1279         DragObject, DragDetect, AnyPopup functions. 
1281         * [controls/listbox.c]
1282         More kludgy fixes (WM_...TOITEM, etc.).
1284         * [objects/cursoricon.c] [objects/oembitmap.c]
1285         IconToCursor skeleton, patch for OBM_LoadCursorIcon to handle new
1286         cursor.
1288         * [include/bitmaps/ocr*]
1289         New OEM cursors.
1291 Mon Nov 20 11:05:20 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
1293         * [toolkit/heap.c]
1294         Swapped flags and size arguments to LocalRealloc as per changes in
1295         memory/local.c by William Magro in previous release.
1297         * [include/wintypes.h]
1298         Reinstated the #define's for 'min' and 'max', since they're part of
1299         the Windows API.  I really don't think it's a wise idea, so I put
1300         a '#ifndef DONT_DEFINE_min_AND_max' around them.  I think the actual
1301         WINE code should never use these (it should use 'MIN' and 'MAX'
1302         instead).
1304         * [loader/*]
1305         Put '#ifndef WINELIB' around many things that WINElib should not need.
1307         * [controls/edit.c]
1308         Took out many '#if defined(WINELIB)' sections with the associated
1309         comment 'temporary fix, until Local memory is correctly implemented in
1310         WINELIB', since the effective translations are now in 
1311         toolkit/miscstubs.c.
1312         Took out the #ifndef's I put in EDIT_ClearText.  Whoever modified this
1313         file fixed (or at least postponed) the bug I had encountered.
1315         * [loader/task.c]
1316         Put an #ifdef in TASK_CreateTask() that hardwires the current drive to
1317         C:  This will probably cause a lot of trouble if this change is
1318         forgotten in the future, but it will let things like the OpenFileName
1319         dialog work for now.
1321         * [toolkit/libres.c] [toolkit/Makefile.in] [toolkit/Makefile]
1322           [include/libres.h]
1323         Made new libres.c file, which will contain functions for supporting
1324         accessing resources by name in WINElib.  'winerc' will need to be
1325         changed.
1327         * [toolkit/heap.c]
1328         Refined memory routines to allow for differences between LocalAlloc
1329         and GlobalAlloc and between LocalSize and GlobalSize.
1331         * [windows/message.c] [include/windows.h]
1332         Defined the GetCurrentTime routine in windows/message.c, and removed
1333         the #define in windows.h.
1335 Mon Nov 20 00:36:42 MET 1995 Sven Verdoolaege <skimo@dns.ufsia.ac.be>
1337         * [*/*]
1338         Added new debugging type DEBUG_WIN32 and DEBUG_ENV.
1340         * [loader/module.c]
1341         Added undocumented GetExpWinVer.
1343         * [tools/build.c]
1344         Previous code didn't pop possibly changed %esi, %edi and %edx
1345         from the stack.
1346         
1347         * [win32/advapi.c]
1348         Added GetUserNameA.
1350         * [win32/code_page.c]
1351         Added stub for MultiByteToWideChar.
1353         * [win32/console.c]
1354         Added SetConsoleCtrlHandler stub.
1356         * [win32/file.c]
1357         Added ReadFile CreateFileA GetFileInformationByHandle stubs.
1358         Added CloseHandle.
1360         * [win32/memory.c]
1361         Changed VirtualAlloc and VirtualFree.
1363         * [win32/process.c]
1364         Added ExitProcess.
1366 Sun Nov 19 17:54:42 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
1368         * [include/windows.h]
1369         Fixed a few broken structure definitions.
1371         * [loader/resource.c]
1372         FindResource(): Need to check for '#xxx' strings here.
1374         * [miscemu/int21.c]
1375         FindNext(): Return MS-DOS filenames uppercase.
1377         * [objects/cursoricon.c]
1378         CreateIcon(), CreateCursor(): Added missing element to CURSORICONINFO
1379         initializers.
1380         
1381         * [misc/file.c]
1382         _lopen(): Files opened in OF_WRITE mode are truncated.
1383         OpenFile(): Ignore OF_READ/OF_WRITE/OF_READWRITE when files are
1384         created; use read/write mode.
1385         
1386         * [misc/profile.c]
1387         load(): Rewritten.
1388         
1389         * [misc/commdlg.c]
1390         Fixed bad call to strncpy() that smashed the stack.
1392         * [controls/combo.c] [windows/winpos.c] [memory/selector.c]
1393         Operator precedence fixes. People who use gcc 2.7.1 don't need a
1394         debugger :-)
1395         
1396         * [if1632/gdi.spec] [objects/palette.c]
1397         Add ResizePalette() and AnimatePalette() stubs. They don't do anything,
1398         but sometimes that's good enough.
1400 Fri Nov 17 09:10:35 GMT 1995  John Harvey <john@division.co.uk>
1402         * [include/wine.h] [include/registers.h] [include/winsock.h]
1403         Added definitions for Unixware.
1405         * [loader/signal.c] [misc/comm.c] [misc/winsocket.c]
1406         Misc. fixes for Unixware.
1408         * [loader/task.c]
1409         Made assignemts to context in InitTask for registers use the macros
1410         from registers.h to make them more portable. (Needed for Unixware)
1412         * [tools/build.c]
1413         Fixed register acces routines to work on Unixware. Bit grubby but
1414         it seems to work.
1416         * [controls/edit.c]
1417         EDIT_WM_NCCreate allocates local heap if hasn't been previously
1418         allocated.
1419         
1420         * [miscemu/int21.c]
1421         mkdir now creates directory with permission to access it.
1423         * [misc/dos_fs.c]
1424         mkdir now creates directory with permission to access it.
1425         DOS_opendir now uses linked list of dirents to avoid problems with 
1426         realloc changing address of malloced memory.
1428 Thu Nov 16 12:47:13 1995  Michael Patra  <patra@itp1.Physik.TU-Berlin.DE>
1430         * [controls/menu.c]
1431         MENU_CalcItemSize(): Fixed handling of empty menu items.
1433 Sat Nov 11 21:46:54 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
1435         * [misc/file.c]
1436         In OpenFile, unlink should be done on the unix filename.
1438 Sat Nov 11 16:43:29 1995  Cameron Heide  (heide@ee.ualberta.ca)
1440         * [include/handle32.h]
1441         New header file containing internal Win32 kernel handle
1442         information.
1444         * [win32/file.c]
1445         Added ReadFile, CreateFile, and CloseFileHandle, and did
1446         some reorganizing to match the new handle allocation scheme.
1448         * [win32/init.c]
1449         Added CloseHandle and the creation of standard I/O handles.
1451         * [win32/object_mgt.c]
1452         New module for allocating and freeing Win32 kernel handles.
1454 ----------------------------------------------------------------------
1455 Fri Nov  3 20:08:17 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
1457         * [configure.in]
1458         Attempt to check for -li386 on NetBSD. Please test this.
1460 Mon Oct 30 12:40:32 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
1462         * [*/*]
1463         Eliminated various warnings with either explicit casts or more
1464         accurate variable/parameter declarations (e.g. INT instead of short
1465         or WORD).
1466         Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
1467         macros.
1469         * [controls/edit.c] [windows/defdlg.c]
1470         Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
1471         definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
1472         DEFDLG_FindDefButton to avoid warnings.
1474         * [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
1475           [windows/message.c] [windows/nonclient.c]
1476         Converted MAKEPOINT macro call to manual conversion.
1478         * [include/windows.h]
1479         For WINELIB32, structures POINT, SIZE, and RECT have LONG members
1480         instead of INT.  This also invalidates the macro MAKEPOINT(), which
1481         is not supported in Win32.  Also defined the POINTS structure (SHORT
1482         members) and the MAKEPOINTS macro.
1484         * [misc/commdlg.c]
1485         Changed a lot of 'strcpy' calls to 'strncpy' calls.  I'm desperate to
1486         find this memory bug, and this should be done anyway.
1488         * [controls/edit.c]
1489         Well, the alteration mentioned above didn't do it, but #ifdef'ing out
1490         a few lines in EDIT_ClearText did.  This leads to bugs, but for now,
1491         it's better than bizzare memory troubles.
1493         * [toolkit/miscstubs.c]
1494         Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
1495         and RELAY32_GetEntryPoint().  These are the most popular warnings, and
1496         their current implementation seems fine.
1498 Sat Oct 28 09:39:18 1995  Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
1500         * [objects/cursoricon.c]
1501         Fix for "broken" X servers that invert masked cursor colors.
1503 Fri Oct 27 19:27:21 1995  Alex Korobka  <alex@phm6.pharm.sunysb.edu>
1505         * [windows/dialog.c] [windows/nonclient.c]
1506         Remove unnecessary items from the system menu.
1508 Thu Oct 26 05:03:03 MET 1995  Philippe De Muyter <phdm@info.ucl.ac.be>
1510         * [objects/color.c] [objects/palette.c]
1511         Make GetNearestColor return a RGB value instead of a pixel value.
1513 Wed Oct 25 23:33:39 1995    Martin von Loewis <loewis@informatik.hu-berlin.de>
1515         * [controls/desktop.c][controls/menu.c][include/menu.h]
1516         Changed WORD parameters to UINT parameters.
1518         * [include/wintypes.h]
1519         Made UINT 32bit for WINELIB.
1521         * [loader/main.c]
1522         Disabled RELAY32_Init and MODULE_Init for WINELIB.
1524         * [misc/main.c]
1525         Assume CPU386 for WINELIB.
1527         * [rc/winerc]
1528         add_popup: set MF_POPUP flag on menu item.
1530         * [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
1531         Add resource demo hello3 for WINELIB.
1532         New file README.resources.
1534         * [toolkit/miscstubs.c]
1535         Add a case for 17.
1537 Tue Oct 17 15:13:10 IST 1995  Itai Nahshon <nahshon@vnet.ibm.com>
1539         * [loader/module.c]
1540         Do not append .exe if the file name already has an extension.
1542         * [misc/profile.c]
1543         Avoid creating a file with a junk name if a .ini file does not
1544         exist.
1546         * [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
1547         Added a lot of dummy stubs for Windows Hebrew version.
1549 Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
1551         * [controls/button.c]
1552         Fix for buttons with no label.
1554         * [controls/combo.c][controls/listbox.c]
1555         Fixes for scrollbar positioning.  Now disappears correctly
1556         for short lists.
1558         * [controls/edit.c]
1559         Handle memory allocation differently when building as library.
1561         * [controls/static]
1562         Don't destroy old icon before drawing new icon. (Fixes landscape/
1563         portrait toggle icon in print dialog.)
1565         * [if1632/gdi.spec]
1566         New functions SetMetaFileBits and GetMetaFileBits
1568         * [include/sysmetrics.h] [windows/sysmetrics.c]
1569         Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
1571         * [include/windows.h]
1572         META_EXTTEXTOUT, not META_SETTEXTOUT
1573         define GetCurrentTime as GetTickCount (for wine library)
1575         * [loader/main.c]
1576         Don't initialize built-in modules in wine library
1578         * [memory/local.c]
1579         LocalReAlloc was defined incorrectly. Swap flags and size arguments.
1581         * [misc/main.c]
1582         Always report CPUTYPE=4 to wine library.
1584         * [objects/dib.c]
1585         RLE8 images were missing top line when decompressed.
1587         * [objects/metafile.c]
1588         SetMetaFileBits and GetMetaFileBits implemented.  Works when called
1589         from winhelp.  More testing needed.  Various memory leaks plugged.
1590         Various other bug fixes.  New metafile operations added in
1591         PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
1592         SetMapperFlags, RealizePalette, ExtTextOut, Escape.  Testing needed.
1594         * [toolkit/heap.c]
1595         LocalUnLock changed to LocalUnlock
1597 Sun Oct 15 21:55:33 1995  Anand Kumria <akumria@ozemail.com.au>
1598         
1599         * [misc/winsock.c] 
1600         Return the correct error number, for host lookup operations.
1601         Also, correct the problem with send_message.
1603 Fri Oct 13 19:04:35 1995  Morten Welinder  <terra@diku.dk>
1605         * [Makefile.in]
1606         Using nm's built-in sorting.
1608         * [*/*.c]
1609         Use xmalloc for malloc and xrealloc for realloc in all ungarded
1610         cases.
1612         * [debugger/dbg.y]
1613         Handle C-like expressions.  Clean-up.
1615         * [debugger/debug.l]
1616         Lots of new tokens for expressions.
1618         * [debugger/info.c]
1619         Implement "list" command for disassembling.
1621         * [misc/ole2nls.c]
1622         Implement more Danish stuff.
1624 Fri Oct  6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
1626         * [loader/module.c]
1627         Updated self-loading modules to support for new 32 bit 
1628         stack frames.
1630 ----------------------------------------------------------------------
1631 Sun Oct  1 15:48:34 1995  Alexandre Julliard  <julliard@sunsite.unc>
1633         * [controls/menu.c]
1634         Fixed GetMenuString() for non-string items.
1636         * [debugger/*.c]
1637         First attempt to check validity of pointers before memory
1638         accesses. For now only segmented pointers are checked.
1640         * [debugger/dbg.y] [memory/ldt.c]
1641         Added possibility to dump only one segment with 'info segment'.
1643         * [include/bitmaps/ocr_*]
1644         Added all OEM cursors as XPM bitmaps.
1646         * [include/cursoricon.h] [objects/cursoricon.c]
1647         Rewrote all cursor and icon management to use the same memory
1648         layout as Windows, and to factor common code between icons and
1649         cursors. Implemented icon directory lookup to find the best
1650         matching icon (i.e. the color one).
1651         Implemented CopyCursor() and DumpIcon().
1653         * [loader/module.c]
1654         For disabled built-in modules, we now try to load the Windows DLL
1655         first, and if this fails we fall back to using the built-in module
1656         anyway.
1658         * [memory/global.c]
1659         Fixed GlobalHandle() to return the correct selector in the high
1660         word even if we are passed a handle in the first place.
1662         * [miscemu/instr.c]
1663         Take into account the size of the operand and of the stack segment
1664         when incrementing the stack pointer.
1665         Avoid referencing FS_reg and GS_reg on *BSD.
1667         * [objects/dib.c]
1668         All DIB functions now accept a BITMAPCOREHEADER format bitmap.
1669         Monochrome DIBs are created as monochrome bitmap iff they are
1670         black and white.
1672         * [objects/oembitmap.c]
1673         Added support for OEM cursors, changed OBM_LoadIcon to use the new
1674         icon memory layout.
1676         * [rc/sysres_Fr.rc]
1677         Added French [Fr] language support.
1679         * [win32/environment.c]
1680         Fixed GetCommandLineA() to use current PDB.
1682         * [windows/event.c] [windows/winpos.c]
1683         Simulate a mouse motion event upon SetWindowPos() to force the
1684         cursor to be set correctly.
1686 Sat Sep 30 17:49:32  Cameron Heide  (heide@ee.ualberta.ca)
1688         * [win32/*]
1689         New Win32 kernel functions: GetACP, GetCPInfo,
1690         GetEnvironmentVariableA, GetFileType, GetLastError, GetOEMCP,
1691         GetStartupInfoA, GetTimeZoneInformation, SetEnvironmentVariable,
1692         SetFilePointer, SetLastError, VirtualAlloc, VirtualFree,
1693         WriteFile.  Completed implementations of GetCommandLineA.
1695         * [include/kernel32.h]
1696         New file.
1698         * [loader/main.c]
1699         Call initialization function for Win32 data (doesn't currently do
1700         anything).
1702         * [misc/main.c]
1703         Implemented GetEnvironmentVariableA, SetEnvironmentVariableA.
1705 Sat Sep 30 00:26:56 1995  Niels de Carpentier  <niels@cindy.et.tudelft.nl>
1707         * [windows/winpos.c][miscemu/emulate.c][loader/module.c]
1708           [misc/commdlg.c]
1709         Misc. bug fixes
1711 Fri Sep 29 16:16:13 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
1713         * [*/*]
1714         For Winelib, explicit casts have been placed where warnings were
1715         usually generated.
1716         printf formats which give the format for printing a handle as
1717         "%04x" or something similar have been changed to use the NPFMT
1718         macro defined in include/wintypes.h.  Some times, explicit casts
1719         were also necessary.
1720         Parameter, field, and variable declarations have been made more
1721         exact, such as converting 'WORD wParam' to 'WPARAM wParam' or
1722         'WORD hFont' to 'HFONT hFont'.
1723         Any call of the form GetWindowWord(hwnd,GWW_HINSTANCE) has been
1724         replaced with a call to WIN_GetWindowInstance(hwnd).
1726         * [controls/combo.c]
1727         Added WINELIB32 support in CLBoxGetCombo().
1729         * [include/dialog.h]
1730         Commented out the '#ifndef WINELIB' around the '#pragma pack(1)'.
1731         winelib needs the packing as well (e.g. when accessing resources
1732         like sysres_DIALOG_SHELL_ABOUT_MSGBOX).
1734         * [include/windows.h]
1735         Got rid of the F[a-k] macros, which were cluttering up the global
1736         namespace.
1738         * [include/windows.h] [windows/defwnd.c]
1739         Added Win32 messages WM_CTLCOLOR*.
1741         * [include/wintypes.h]
1742         Put in preprocessor '#define WINELIB32' if appropriate and changed
1743         the types of some typedefs (WPARAM, HANDLE) based on this.
1744         
1745         * [loader/module.c] [toolkit/miscstubs.c]
1746         Added #ifdef'd portion in LoadModule to handle loading a WINElib
1747         module (already loaded, just init values).  '#ifdef'ed out the
1748         definition for GetWndProcEntry16 and added a new version to
1749         toolkit/miscstubs.c.
1751         * [misc/shell.c]
1752         Adjusted the lengths of AppName and AppMisc from 512,512 to 128,906.
1753         Same amount of total storage, but much more reasonable.  Also, changed
1754         calls to strcpy() in ShellAbout() to calls to strncpy() instead.
1755         This was a difficult bug to track down, but the AppMisc field was
1756         being initialized with the contributers text, which was much larger
1757         than 512 characters.
1759         * [toolkit/atom.c]
1760         New file for atom-handling functions.  Copied from memory/atom.c and
1761         then heavily modified.  Right now, it's just a linked list of atoms.
1762         Consider it as a hash table with just one entry.  It's easily changed
1763         later.
1765         * [toolkit/heap.c]
1766         Commented out the heap functions with a "#ifdef WINELIB16" and put in
1767         a Win32 version (which is basically a modified copy).
1769         * [toolkit/sup.c] [toolkit/miscstubs.c]
1770         Moved the stuff I put in toolkit/sup.c into toolkit/miscstubs.c and
1771         added quite a few more stubs.
1773         * [toolkit/winmain.c]
1774         Rearranged startup code in _WinMain.  I think this will work.
1776         * [toolkit/Makefile.in]
1777         Added targets for 'hello' and 'hello2' in case anyone cares to try
1778         out the sample programs.
1780 Wed Sep 27 23:13:43 1995  Anand Kumria <akumria@ozemail.com.au>
1781         
1782         * [miscemu/int2f.c] [miscemu/vxd.c] [if1632/winprocs.spec]
1783         First attempt at support for some VxDs. Comm, Shell and Pagefile.
1785 Tue Sep 26 21:34:45 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
1787         * [misc/dos_fs.c]
1788         DOS_SimplifyPath: Also remove "/./" from path. (Happens when
1789         starting applications like 'wine ./excel.exe')
1791 Sat Sep 23 23:32:40 1995  Morten Welinder  <terra@diku.dk>
1793         * [configure.in]
1794         Avoid relative path for wine.ini.
1796         * [rc/sysres_Da.rc]
1797         Support for Danish [Da] language.
1799         * [misc/main.c] [miscemu/cpu.c]
1800         Return the processor we're running on correctly.
1802         * [miscemu/int2f.c]
1803         Minor stuff in int 0x2f, function 0x16.
1805 Sat Sep 23 1995 17:58:04  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
1807         * [misc/shell.c] [misc/main.c]
1808         Implement saving and loading of the registry database (needed for
1809         OLE). Very experimental. Fixed ShellExecute().
1810         
1811         * [miscemu/int21.c]
1812         EEXIST is not a critical error condition for mkdir().
1814 Fri Sep 22 01:33:34 1995  Alex Korobka  <alex@phm6.pharm.sunysb.edu>
1816         * [include/shell.h] [misc/shell.c]
1817         Implemented 4 drag/drop functions with documented functionality.
1819         * [multimedia/time.c]
1820         "Fixed" MMSysTimeCallback kludge so Excel5 loads up without crashing.
1822         * [*/*] 
1823         Added new files, more message definitions, structures, debug info,
1824         etc.  Rewrote message logging functions to produce output similar
1825         to WinSight.  Check out -debugmsg +message option.
1827         * [misc/file.c]
1828         Fixed GetDriveType return value.  
1830         * [windows/message.c] 
1831         Hooks are invoked in normal order.
1833         * [miscemu/*]
1834         Added some functions and interrupts.
1836         * [misc/shell.c]
1837         Implemented Drag... functions.
1839 Thu Sep 21 23:50:12 1995  Jukka Iivonen <iivonen@cc.helsinki.fi>
1841         * [rc/sysres_Fi.rc] [rc/sysres.rc]
1842         First attempt at Finnish [Fi] language support.
1844 ----------------------------------------------------------------------------
1845 Sun Sep 17 16:47:49 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
1847         * [configure.in] [*/Makefile.in] [Make.rules.in]
1848         Cleaned up makefiles, added configuration option for Winelib,
1849         grouped common make rules in Make.rules.in.
1851         * [Configure]
1852         Renamed to 'Configure.old'; please use 'configure' instead.
1854         * [controls/menu.c]
1855         Fixed DestroyMenu() to avoid deleting the same menu twice.
1856         More fixes to WM_MENUSELECT, and added WM_INITMENU.
1858         * [if1632/relay.c]
1859         Fixed wrong register values displayed by RELAY_DebugCall32().
1861         * [memory/local.c]
1862         Fixed LocalLock() and LocalUnlock() to increment/decrement the
1863         lock count for moveable blocks.
1865         * [misc/commdlg.c] [misc/shell.c] [rc/winerc.c]
1866         Modified the generated C file so that the resource information
1867         (size, etc.) is also exported.
1868         Modified common dialogs to use the new informations.
1870         * [misc/main.c] [ANNOUNCE]
1871         Update the list of contributors. Please let me know if I forgot
1872         someone.
1874         * [rc/sysres.rc] [rc/sysres_En.rc]
1875         Moved English resources to sysres_En.rc.
1876         Changed ids from numeric to symbolic for dialogs.
1878         * [windows/dialog.c]
1879         Modified template parsing to be able to pass segmented pointers to
1880         CreateWindow().
1882         * [windows/win.c]
1883         CreateWindow() now takes segmented pointers for class and window
1884         names.
1885         Maxmimize or minimize the window upon creation if the WS_MAXIMIZE
1886         or WS_MINIMIZE bits are set.
1888 Thu Sep 14 17:19:57 1995  Paul Wilhelm  <paul@paul.accessone.com>
1890         * [controls/scroll.c]
1891         Fixed scroll-bar bugs for non-client windows.
1893 Thu Sep 14 14:04:14 MET DST 1995 Jochen Hoenicke <Jochen.Hoenicke@arbi.Informatik.Uni-Oldenburg.de>
1895         * [include/cursor.h] [windows/cursor.c]
1896         Cursor is not mirrored any more and the hotspot is set right.
1898 Wed Sep 13 14:22:31 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
1900         * [ole.h]
1901         Misc small fixes.
1903 Mon Sep  4 00:01:23 1995  Jon Tombs <jon@gte.esi.us.es>
1905         * [rc/sysres_Es.rc]
1906         First attempt at Spanish [Es] language support.
1908 Sun Sep  3 13:22:33 1995     Martin von Loewis <loewis@informatik.hu-berlin.de>
1910         * [include/alias.h][windows/alias.c][include/relay32.h]
1911         New files
1913         * [controls/widgets.c]
1914         WIDGETS_Init: register alias window procedures
1916         * [if1632/callback.c]
1917         CallWndProc: Call alias functions if necessary
1919         * [if1632/gdi32.spec]
1920         GetStockObject, TextOutA: new relays
1922         * [misc/user32.c][if1632/user32.spec][misc/Makefile.in][misc/Imakefile]
1923         user32.c: new file
1924         BeginPaint,CreateWindowExA,DefWindowProcA,DispatchMessage,EndPaint,
1925         GetMessageA,RegisterClassA,ShowWindow,UpdateWindow: new relays
1927         * [if1632/winprocs32.spec][loader/pe_image.c][loader/module.c]
1928         PE_Win32CallToStart: new function
1929         MODULE_CreateInstance: removed static attribute
1930         LoadModule: Try loading PE image on error 21
1931         PE_LoadModule: new function
1932         PE_LoadImage: initialize pe_data with 0
1933         
1934         * [include/dlls.h][include/peexe.h]
1935         moved pe_data and w_files to peexe.h
1936         
1937         * [misc/shell.c]
1938         ShellAbout: Register AboutWndProc aliases
1940         * [miscemu/int21.c]
1941         handle 0x440A and 0xDC
1943         * [miscemu/int2f.c]
1944         handle 0x84
1946         * [objects/dib.c]
1947         CreateDIBitmap: complain if BITMAPINFOHEADER is of wrong size
1949         * [tools/build.c]
1950         include windows.h and relay32.h into generated Win32 relays,
1951         don't declare the implementation as int (*)();
1952         limit in WIN32_builtin was off by one
1954         * [windows/caret.c]
1955         CARET_Initialize: new function, call on strategic places
1957         * [windows/messagebox.c]
1958         MessageBox: register message box proc aliases
1960         * [if1632/advapi32.spec][if1632/comdlg32.spec]
1961         New files
1963         * [if1632/Makefile.in][if1632/Imakefile][if1632/relay32.c]
1964         added new spec files
1965         RELAY32_GetBuiltinDLL: perform lookup case insensitive
1966         RELAY32_GetEntryPoint: start name search at 0
1968         * [if1632/user.spec][if1632/kernel.spec][if1632/gdi.spec]
1969         Added stubs for new Win95 API
1971 Sat Sep 2 1995  Martin Roy
1973         * [misc/commdlg.c]
1974         In WM_INITDIALOG, current filter must reflect lpofn->nFilterIndex.
1975         When process IDOK button in FILEDLG_WMCommand(),
1976         lpofn->nFilterIndex should be updated to current selection.
1978 Thu Aug 31 15:00:00 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
1980         * [loader/module.c] [loader/ne_image.c]
1981         Added support of self-loading modules.
1983 ---------------------------------------------------------------------
1984 Thu Aug 31 17:19:57 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
1986         * [Configure]
1987         Added compile-time option for IPC.
1989         * [configure.in]
1990         Added command-line options for language, IPC and malloc
1991         debugging.
1993         * [controls/menu.c]
1994         WM_MENUSELECT was sometimes sent to the wrong window.
1996         * [debugger/break.c]
1997         For the 'next' command, only step over instruction that require
1998         it. This allows 'next' to do the right thing with jmp and ret
1999         instructions.
2001         * [ipc/*.c] [memory/atom.c] [memory/global.c]
2002         IPC can now be configured out at compile-time.
2004         * [loader/task.c]
2005         Bug fix in TASK_Reschedule() that could cause a task to be deleted
2006         twice.
2008         * [miscemu/dosmem.c] (New file)
2009         Partial emulation of the BIOS data segment.
2011         * [miscemu/instr.c]
2012         Trap attempts to access selector 0x40 and remap the access to
2013         segment __0040H.
2015         * [tools/build.c]
2016         Fixed bug in CallTo32_LargeStack() that caused problems when
2017         compiling Wine with the -fomit-frame-pointer option.
2019         * [windows/message.c]
2020         Fixed bug in hardware event handling that could cause some events
2021         to get ignored.
2023 Sat Aug 26 13:12:59 IST 1995 Michael Veksler <mveksler@vnet.ibm.com>
2025         * [ipc/README] [ipc/dde.tex]
2026         LaTeX documentation for the ipc and DDE stuff.
2028 Wed Aug 23 22:01:23 GMT 1995 Michael Veksler <mveksler@vnet.ibm.com>
2030         * [ipc/Imakefile] [ipc/wine_test_stub.c]
2031         Fixed IPC testing. Now it can be compiled with "make tests"
2033 Wed Aug 23 21:04:14 1995  Fons Botman  <botman@wab-tis.rabobank.nl>
2035         * [if1632/kernel.spec] [include/windows.h] [misc/main.c]
2036         Added GetWinDebugInfo/SetWinDebugInfo stub for player.exe
2038 Sun Aug  20 13:49:42 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
2040         * [miscemu/int21.c]
2041         Misc fix to int21,ah=40 (write) to match _lwrite().
2042         AX=0x440A (check if handle is remote) added.
2044         * [multimedia/mmsystem.c]
2045         Moved mciSendString to mcistring.c.
2047         * [multimedia/mcistring.c]
2048         New file, string interface for MCI (not complete, not thoroughly
2049         tested).
2051         * [multimedia/audio.c]
2052         IOCTL prints errors; one paranoid check disabled.
2054         * [misc/file.c]
2055         Misc operator precedence fixes.
2057         * [if1632/gdi.spec] [objects/bitblt.c]
2058         Stub for FastWindowFrame (parameters not correct).
2060 Sat Aug 19 01:31:23 1995  Graham Menhennitt <gfm@werple.mira.net.au>
2062         * [loader/ne_image.c]
2063         Preliminary support for iterated segments.
2065 Sat Aug 19 00:43:04 1995  Andrew Taylor  (andrew@riscan.com)
2067         * [windows/mapping.c]
2068         In function MAPPING_FixIsotropic(), VportExt[XY] is multiplied by
2069         the absolute value of (ydim / xdim) or (xdim / ydim).
2071 Thu Aug 15 23:00:16  Gregory Trubetskoy  <grisha@mira.com>
2073         * [objects/oembitmap.c]
2074         Added some includes for Windows 95.
2076         * [include/sysmetrics.h]
2077         Added some sysmetrics for Windows 95.
2079         * [include/bitmaps/*95]
2080         New files: obm_close_95, obm_closed_95, obm_reduce_95, obm_reduced_95
2081         obm_zoom_95, obm_zoomd_95 - these are some pixmaps for Windows 95.
2083 Thu Aug 10 12:00:00 1995  Jan Willamowius  (jan@janhh.shnet.org)
2085         * [misc/shell.c] [rc/sysres*.rc]
2086         The caption of the ShellAbout dialog box is language specific and
2087         should be defined in the resources.
2089 ----------------------------------------------------------------------
2090 Thu Aug 17 19:30:14 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
2092         * [*/Makefile.in]
2093         Removed winelibclean target, as it doesn't work anyway.
2095         * [controls/button.c]
2096         Avoid drawing the focus rectangle outside of the button.
2098         * [controls/widgets.c]
2099         Fixed bug with the size of the reserved bytes for the Edit
2100         control (caused Eudora to crash).
2102         * [debugger/*] [include/debugger.h]
2103         Unified debugger address handling. Segmented and linear addresses
2104         are no grouped in a single type DBG_ADDR.
2105         All commands now accept seg:off addresses.
2106         Module entry points are now loaded upon first entry to the
2107         debugger, so that entry points of the loaded executable also
2108         appear in the symbol table.
2110         * [include/registers.h] [miscemu/*.c]
2111         Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
2112         This makes code less readable, but will prevent a lot of name
2113         clashes with other definitions. It also avoids a hidden reference
2114         to the 'context' variable.
2116         * [ipc/dde_atom.c] [misc/atom.c]
2117         All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
2118         to allow supporting integer atoms.
2119         Moved atom.c to memory/ directory.
2121         * [loader/task.c]
2122         Fixed environment allocation to compute the size dynamically.
2123         Added 'windir' environment variable.
2124         Fixed GetDOSEnvironment() to return the current task environment.
2126         * [windows/message.c]
2127         Fixed bug in MSG_GetWindowForEvent().
2129 Wed Aug  9 11:40:43 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
2131         * [include/ole.h]
2132         Added a lot of structures  from my Borland Manual. Neither complete,
2133         nor 100% right (check please)
2134         
2135         * [misc/shell.c]
2136         Fixed some of the Reg* functions.
2137         Enhanced ShellExecute.
2138         Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
2139         Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
2141         * [misc/dos_fs.c]
2142         Make umsdos mounted windows dirs work again.
2144         * [miscemu/emulate.c]
2145         Added some comments, preimplementation of subfunction 7.
2147         * [multimedia/mmsystem.c]
2148         Implemented mciSendString. not complete, not clean, not
2149         necessarily working (only checked with a program which uses
2150         'cdaudio' (one working program is cool.exe, a shareware waveditor
2151         with cdaudio play facilities.)
2153         * [multimedia/mcicda.c]
2154         Segptr fixes in DriverProc
2155         Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
2156         link to your real cdrom device.
2158 Tue Aug  8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
2160         * [loader/resource.c]
2161         Don't crash in a LoadString to NULL
2163         * [loader/resource.c]
2164         Fixed accelerators to work with modifiers.  (ALT-x modifiers still
2165         won't work unless the ALT keypress exited the menu.)
2167         * [misc/file.c]
2168         Expand a file to the current offset with an _lwrite of size zero.
2170         * [misc/file.c]
2171         Set a newly created file to read-write instead of write-only.
2172         
2173 Sun Aug  6 20:28:35 1995  Anand Kumria <akumria@ozemail.com.au>
2175         * [misc/main.c] [include/msdos.h]
2176         Fixed to return DOS version 6.22, and the correct byte order
2177         for Windows programs.
2179 Wed Aug  2 12:36:33 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2181         * [include/options.h] [memory/global.c] [misc/main.c]
2182         Make the new IPC run-time selectible, disabling it by default.
2183         (I think it's only useful for libwine, anyway.)
2185         * [loader/task.c] [memory/selector.c]
2186         In FreeSelector(), walk up the stack and fix the frames.
2188         * [objects/dib.c]
2189         Missing break statement in DIB_SetImageBits_RLE8().
2190         In GetDIBits(), set the compression flag in the bitmap info to zero.
2192         * [windows/dialog.c]
2193         GetNextDlgGroupItem() needs to treat the first child as if it had
2194         an implicit WS_GROUP bit set.
2196 Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
2198         * [misc/dos_fs.c]
2199         Quick'n dirty fix for the initialisation of the Z: information
2200         structure.
2202 ----------------------------------------------------------------------
2203 Sat Jul 22 22:39:09 IDT 1995 Michael Veksler <e1678223@tochnapc2.technion.ac.il>
2205         * [ipc/*]
2206         New directory. This directory contains the new inter-wine
2207         communications support. It enables DDE protocols between two wine
2208         instances.  Currently it is limited to DDE, but can be enhanced to
2209         support OLE between 2 different wine instances.  This is very
2210         important for libwine.a DDE/OLE support.
2212         * [tools/ipcl]
2213         A script to delete garbage IPC handles (shared memory, semaphores
2214         and message queues).  The current inter-wine communication is not
2215         perfect, and sometimes leaves garbage behind.
2217         * [if1632/relay.c] [include/atom.h] [include/global.h]
2218         [loader/selector.c] [loader/task.c] [loader/module.c]
2219         [loader/signal.c] [memory/global.c] [misc/atom.c]
2220         [windows/class.c] [windows/message.c] [windows/win.c]
2221         [Imakefile]
2222         Hooks for inter-wine DDE support, current Global.*Atom functions
2223         renamed to Local.*Atom since Global.*Atom are used for Inter-Wine
2224         DDE communication. (The first call to these functions sets up the
2225         IPC structures - which otherwise cause unneeded overhead.
2227 Mon Jul 17 19:55:21 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
2229         * [controls/menu.c]
2230         Don't crash if a NULL string is passed to menu functions.
2232         * [memory/selector.c]
2233         We now use a bit in ldt_flags_copy to indicate free LDT entries.
2234         Fixed a bug in SELECTOR_ReallocBlock that could cause it to
2235         overwrite valid LDT entries when growing a block.
2237         * [miscemu/instr.c]
2238         Emulate int xx instruction by storing the interrupt vector in
2239         CS:IP and returning directly. This allows a program to install an
2240         interrupt vector.
2242         * [windows/win.c]
2243         Added function WIN_GetTopParent to get the top-level parent of a
2244         window.
2246 Sun Jul  16 18:17:17 1995  Gregory Trubetskoy <grisha@mira.com>
2248         * [loader/resource.c]
2249         Added LoadIconHandler. It doesn't do anything yet, but now you
2250         can use borland help files with winhelp.exe.
2252 Sun Jul 16 11:58:45 1995 Anand Kumria <akumria@ozemail.com.au>
2254         * [misc/main.c]
2255         Fixed to return 386 Enhanced mode correctly. Also return the same
2256         type of CPU, for both Enhanced and Standard mode, namely a 386.
2258 Sun Jul 16 00:02:04 1995    Martin von Loewis <loewis@informatik.hu-berlin.de>
2260         * [Configure] [include/options.h] [include/wineopts.h]
2261           [misc/main.c][misc/spy.c]
2262           Removed support of spy file. Redirected spy messages to stddeb.
2263           Removed -spy option. Added -debugmsg +spy option.
2265         * [debugger/dbg.y][debugger/debug.l]
2266         Enabled segmented addresses (seg:offs) for break and x commands.
2268         * [if1632/gdi.spec] [objects/region.c] [windows/graphics.c]
2269           [include/region.h]
2270         FrameRgn, REGION_FrameRgn: New functions
2272         * [if1632/kernel.spec]
2273         IsWinOldApTask: Return false
2275         * [if1632/mouse.spec]
2276         CplApplet: Removed
2278         * [if1632/user.spec] [windows/win.c]
2279         ShowOwnedPopups: New function
2281         * [if1632/winsock.spec] [misc/winsocket.c]
2282         inet_addr, select: New prototypes in relay code
2283         Fixed memory layout for netdb functions (getXbyY).
2284         WINSOCK_ioctlsocket: Translated FIONREAD, FIONBIO, and FIOASYNC
2286         * [objects/clipping.c]
2287         RectVisible: Fixed call to LPToDP
2289         * [rc/winerc.c]
2290         main: Removed extra argument to getopt for Linux.
2292 Tue Jul 11 00:14:41 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2294         * [controls/listbox.c]
2295         Yet another fix for ListBoxDirectory().
2296         
2297         * [loader/module.c] [if1632/kernel.spec]
2298         Make GetModuleHandle() accept instance handles as parameter.
2300         * [if1632/relay.c] [loader/task.c]
2301         Put a magic cookie at the bottom of the 32 bit stack, and check on
2302         each return from a 32 bit function whether it's still there. Complain
2303         if it's not.
2305         * [if1632/user.spec]
2306         Wrong entry for CloseDriver().
2308         * [misc/dos_fs.c] [loader/task.c] [include/dos_fs.h] [misc/file.c]
2309         [miscemu/int21.c]
2310         Large parts of dos_fs.c simplified. Changed it to use one
2311         current drive/directory per task, which is set to the module path on
2312         task creation.
2313         Prevent CorelPaint from closing stdin.
2314         open() with O_CREAT set must be passed three parameters.
2315         DOS FindFirst()/FindNext() could crash when FA_LABEL was set. Fixed,
2316         it's in DOS_readdir() now.
2318         * [misc/profile.c]
2319         Some badly written software (Lotus Freelance Graphics) passes a bogus
2320         size parameter that caused Wine to write off the end of a segment.
2321         Fixed. (It's probably too paranoid now.)
2322         
2323         * [multimedia/mmsystem.c] [multimedia/time.c] [multimedia/joystick.c]
2324         [multimedia/Imakefile] [if1632/winprocs.spec]
2325         16 bit entry point for MMSysTimeCallback.
2326         Split off time.c and joystick.c from mmsystem.c.
2327         
2328         * [objects/dib.c]
2329         GetDIBits(): call XGetImage() via CallTo32_LargeStack.
2331         * [windows/cursor.c]
2332         DestroyCursor(): do nothing for builtin cursors.
2333         
2334         * [windows/mdi.c]
2335         Half of WM_MDISETMENU implemented.
2336         
2337         * [windows/win.c]
2338         EnumWindows() and EnumTaskWindows() never enumerated any windows.
2339         Fixed.
2341         * [windows/*.c]
2342         Fixed GetParent() to return correct values for owned windows.
2344         * [windows/message.c]
2345         Don't try to activate disabled top-level windows.
2347         * [windows/nonclient.c]
2348         Work around a bug in gcc-2.7.0.
2349         
2350         * [tools/build.c] [include/stackframe.h] [memory/global.c] 
2351         [loader/task.c] [memory/selector.c]
2352         Some Visual Basic programs (and possibly others, too) expect ES to be 
2353         preserved by a call to an API function, so we have to save it.
2354         In GlobalFree() and FreeSelector(), we must clear CURRENT_STACK16->es 
2355         to prevent segfaults if ES contained the selector to be freed.
2357 Sun Jul  9 20:21:20 1995  Jon Tombs  <jon@gtex02.us.es>
2359         * [*/*]
2360         Added missing prototypes to header files and relevant includes
2361         to reduce compile time warnings.
2363 Sun Jul  9 18:32:56 1995  Michael Patra  <micky@marie.physik.tu-berlin.de>
2365         * [configure.in] [include/config.h] [*/Makefile.in]
2366         New configuration scheme based on autoconf.
2368 Sat Jul  8 14:12:45 1995  Morten Welinder  <terra+@cs.cmu.edu>
2370         * [miscemu/ioports.c]
2371         Revamp to have only one in- and one out- variant, both really
2372         implemented.
2374         * [miscemu/instr.c]
2375         INSTR_EmulateInstruction: Use new ioport interface.  Implement
2376         string io.  Correct instruction pointer for 32-bit code.
2378         * [include/miscemu.h]
2379         Update port function prototypes.
2381         * [include/registers.h]
2382         Defined FS and GS.
2384 Sat Jul  8 13:38:54 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
2386         * [misc/dos_fs.c]
2387         ChopOffSlash(): A path consisting off a single slash is left
2388         intact, and multiple slashes are all removed.
2390 ----------------------------------------------------------------------
2391 Wed Jul  5 19:06:35 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
2393         * [controls/scroll.c]
2394         Fixed drawing bug that caused part of a non-client scroll bar
2395         to be painted even when the scroll-bar was hidden.
2397         * [debugger/break.c] [debugger/dbg.y]
2398         Rewrote breakpoint handling to work in 16-bit mode.
2399         Implemented single-stepping ('step' and 'next' instructions).
2401         * [debugger/debug.l]
2402         Format specifier is now a separate token.
2403         Entering an empty line at the debugger prompt causes the previous
2404         command to be repeated, like under gdb.
2405         
2406         * [debugger/debug.l] [debugger/registers.c]
2407         Differentiate 16-bit and 32-bit registers without taking current
2408         mode into account ($eax is always 32-bit, $ax always 16-bit).
2410         * [debugger/stack.c]
2411         Fixed stack information routines to differentiate between 16-bit
2412         and 32-bit stacks.
2414         * [loader/task.c]
2415         Option -debug now sets a breakpoint at the first instruction of
2416         every loaded task.
2418         * [miscemu/instr.c]
2419         Added handling of lock, repe and repne prefixes.
2421         * [objects/dib.c]
2422         Changed StretchDIBits() to do the correct thing, even if it's still
2423         not really optimal.
2425         * [windows/graphics.c]
2426         Fixes in RoundRect(), thanks to Babak Masalehdan.
2428         * [windows/message.c]
2429         Tried to fix mouse event handling with respect to disabled
2430         windows.
2432         * [windows/painting.c]
2433         Clear WIN_NEEDS_NCPAINT flag before sending WM_NCPAINT to avoid
2434         infinite loops.
2436         * [windows/win.c]
2437         Fixed IsWindowVisible() to return FALSE when one of the parent
2438         windows is hidden.
2440 Sat Jul  1 22:08:21 1995   Martin von Loewis <loewis@informatik.hu-berlin.de>
2442         * [if1632/compobj.spec][misc/compobj.c]
2443         CoGetMalloc: New function
2444         Added relay entries for COMPOBJ ordinals above 100
2445         CoInitialize: Changed parameter to DWORD
2447         * [if1632/ole2.spec]
2448         Exported implementation of OleBuildVersion
2450         * [if1632/ole2disp.spec][misc/ole2disp.c][misc/Imakefile]
2451         ole2disp.c: New file
2452         SysAllocString, SysReallocString, SysAllocStringLen,
2453         SysReAllocStringLen, SysFreeString, SysStringLen: new functions
2455         * [if1632/ole2nls.spec][include/winnls.h][misc/ole2nls.c]
2456         CompareStringA: New function
2458 Thu Jun 29 19:42:02 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
2459         * [objects/font.c] [if1632/gdi.spec]
2460         New stubs for CreateScalableFontResource, GetGlyphOutline.
2462 Thu Jun 29 13:47:08 GMT 1995  Göran Thyni  (goran@norrsken.bildbasen.se)
2464         * [misc/commdlg.c]
2465         Extensive changes and bug fixes to FileDialog handling,
2466         behaves more like native Windows.
2468 Wed Jun 28 13:04:44 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2470         * [controls/listbox.c] [controls/combo.c]
2471         Some minor optimizations.
2472         
2473         * [memory/local.c]
2474         LOCAL_FindFreeBlock(): Never use the last one.
2475         
2476         * [memory/global.c]
2477         GlobalReAlloc(): GMEM_MODIFY must not be ignored when size==0.
2478         
2479         * [misc/file.c]
2480         read() returns an error when length==0. This is not what Windows
2481         programs expect, so pay attention to this in _lread(). Changed this
2482         in _lwrite(), _hread(), _hwrite(), too.
2484         * [loader/resource.c]
2485         LoadIcon(): Ignore bih->biSizeImage, some icons have wrong values in
2486         there.
2487         
2488         * [if1632/shell.spec] [misc/shell.c]
2489         Wrong spec file entries caused havoc: HKEY has 32 bit, not 16.
2490         Accept some more combinations of parameters in the Reg..() functions.
2491         
2492         * [if1632/toolhelp.spec]
2493         Make InterruptRegister() and InterruptUnregister() return false.
2495         * [windows/hook.c]
2496         CallNextHookEx() used to crash when called with a null hhook. Fixed.
2498 Wed Jun 28 10:14:34 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
2500         * [include/neexe.h][loader/ne_image.c]
2501         NE_LoadSegment: Detect iterated segments
2503         * [misc/ole2nls.c]
2504         LOCALE_SLONGDATE: fixed typo
2506         * [miscemu/int5c.c]
2507         Reordered include files to avoid conflicts with Linux libc.5.1
2509         * [rc/winerc.c]
2510         Added -b option to process binary resource files into C arrays
2512         * [include/callback.h]
2513         CallWndProc: Added dummy ds parameter for libwine
2515         * [include/gdi.h][include/user.h]
2516         USER_HEAP_ALLOC, GDI_HEAP_ALLOC: dropped flags parameter
2518         * [include/ldt.h][include/stackframe.h]
2519         defined segment conversion macros for libwine
2521         * [misc/atom.c]
2522         Defined USER_HeapSel for libwine
2524         * [misc/main.c]
2525         Disable -dll option for libwine
2527         * [misc/user.c]
2528         removed GetFreeSystemResources, SystemHeapInfo from libwine for now
2530         * [toolkit/heap.c]
2531         fixed LocalLock prototype
2533         * [toolkit/sup.c]
2534         sync'ed load_mz_header, load_ne_header with structures
2536         * [toolkit/winmain.c]
2537         Disabled resource DLLs for libwine for now
2539 Mon Jun 26 19:30:24 1995  Hans de Graaff  (graaff@twi72.twi.tudelft.nl)
2541         * [misc/main.c]
2542         Fixed -enhanced option to report a 386 CPU instead of a 286.
2544 Fri Jun 23 23:18:25 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
2546         * [misc/dos_fs.c]
2547         Remove maximum open dosdirent limit (fixing the winfile.exe
2548         problem) by using telldir()/seekdir().
2549         
2550 Fri Jun 23 13:42:25 1995  Hans de Graaff  (graaff@twi72.twi.tudelft.nl)
2552         * [misc/profile.c]
2553         Fixed problem parsing empty lines within sections in .ini files.
2555 ----------------------------------------------------------------------
2556 Mon Jun 19 20:29:50 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
2558         * [debugger/*.c]
2559         Modified debugger to use segmented pointers everywhere.
2561         * [if1632/shell.spec] [if1632/sound.spec] [if1632/user.spec]
2562         Declared all functions that return only 16-bit as 'pascal16'.
2564         * [include/ldt.h] [memory/ldt.c]
2565         Export LDT_EntryToBytes (new) and LDT_BytesToEntry for DPMI.
2566         Maintain a copy of the selector flags, removing the need to make a
2567         system call to retrieve an LDT entry.
2569         * [loader/module.c]
2570         Fixed bug with module file handle cache.
2572         * [loader/ne_resource.c]
2573         Fixed file name bug in NE_AccessResource().
2575         * [loader/resource.c]
2576         Fixed bug in LoadIcon() that caused wrong colors to be used for
2577         the icon mask.
2579         * [loader/signal.c]
2580         Moved instruction emulation to miscemu/instr.c.
2582         * [misc/dos_fs.c] [miscemu/int21.c]
2583         Lots of small fixes, thanks to Morten Welinder.
2585         * [miscemu/dpmi.c]
2586         More complete DPMI emulation.
2588         * [miscemu/instr.c]
2589         Added support for prefixes in instructions to emulate.
2591         * [miscemu/int2f.c]
2592         Use register macros instead of destroying the high part of 32-bit
2593         registers.
2595         * [objects/dc.c]
2596         Fixed bug in GetDCState() that failed to clear the new DC.
2598         * [rc/sysres.rc]
2599         Removed dialogs 11 and 12 that were never used.
2601         * [tools/build.c]
2602         'pascal16' generated functions did not save %dx.
2603         Removed use of %fs to access the stack.
2604         %ds is no longer initialized before calling a 16-bit routine.
2606         * [windows/defwnd.c]
2607         Accept a NULL pointer as window title.
2609         * [windows/mdi.c]
2610         MDICascade: skip iconic windows.
2611         Implemented CalcChildScroll().
2612         
2613         * [windows/utility.c]
2614         Fixed MulDiv() for illegal values.
2616         * [windows/win.c]
2617         Fixed X error in CreateWindowEx() when WM_NCCALCSIZE returned
2618         a zero width or height.
2620 Sun Jun 18 22:22:30 MET DST 1995  Fons Botman  (botman@inter.nl.net)
2622         * [controls/edit.c]
2623         Fixed "uninitalized" message which -Wall couldnt see to be ok
2624         in EDIT_WriteText.
2626         * [include/debug.h]
2627         Added define for extra checks in API definitions during debugging.
2629         * [loader/ne_image.c]
2630         Added newline in NE_FixupPrologs to avoid long lines.
2632         * [misc/dos_fs.c]
2633         Added extra safety check in DOS_ValidDrive.
2635         * [misc/exec.c]
2636         Fixed definition of ExitWindows.
2637         
2638 Sun Jun 18 21:16:08 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2640         * [controls/edit.c]
2641         Some fixes, mostly for memory management, but also for text selection
2642         and tab postitions. General cleanup. Notepad.exe now works.
2644         * [controls/combo.c]
2645         Fix: the hwnd field of the DRAWITEMSTRUCT should always be that of
2646         the combo box, not the ComboLBox that belongs to it.
2648         * [controls/listbox.c]
2649         Handle itemID field correctly throughout.
2651         * [memory/local.c]
2652         Implemented flag LMEM_ZEROINIT.
2653         LocalReAlloc() could trash the heap. Fixed.
2655         * [objects/font.c]
2656         FONT_MatchFont(): don't get confused by negative widths.
2657         Fixed a segfault in EnumFonts().
2659         * [objects/text.c]
2660         DrawText(): DT_CALCRECT implies DT_NOCLIP.
2662         * [objects/dcvalues.c]
2663         MAKELONG was used with bad parameters in DC_GET_X_Y.
2665         * [windows/dialog.c]
2666         Don't show the dialog if WS_VISIBLE isn't set in the template.
2668         * [windows/utility.c]
2669         UTILITY_convertArgs(): Never pass an expression containing ++ into a
2670         macro...
2672         * [windows/win.c]
2673         SetParent() should unlink the window before changing the parent.
2675         * [windows/message.c]
2676         Don't call timer functions via CallWindowProc(), since it checks
2677         whether hwnd==0 and does not call the function in that case.
2679         * [miscemu/instr.c]
2680         Ignore interrupt 0x3D, for VBRUN300.DLL.
2682         * [misc/commdlg.c]
2683         Don't rely on the itemData field of the DRAWITEMSTRUCT to contain a
2684         pointer to the item text.
2686         * [if1632/relay.c]
2687         Disable OLE and DDEML DLLs by default, since they contain nothing but
2688         stubs anyway. SHELL, COMMDLG and WIN87EM are left enabled, although
2689         some programs may work better without them.
2690         
2691         * [multimedia/*.c] [include/multimedia.h] [include/driver.h]
2692         Begun cleaning things up a little. Replaced printfs with dprintf_
2693         macros, made functions static where possible, and some other minor
2694         changes.
2696 Sun Jun 11 23:19:10 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
2698         * [debugger/dbg.y][debugger/dbg.l]
2699         Removed special handling for FILE_IDENTIFER, because it caused
2700         problems with x/<format> statements.
2702         * [debugger/info.c]
2703         Use SC_ESP instead of SC_EIP for stack dump.
2705         * [misc/compobj.c][if1632/compobj.spec]
2706         CoBuildVersion, CoInitialize, CoUninitialize: new functions
2708         * [misc/ole2.c][if1632/ole2.spec][misc/Imakefile][include/ole2.h]
2709         New files ole2.c, ole2.h
2710         OleBuildVersion, OleInitialize, OleUninitialize: new functions
2712         * [if1632/ole2disp.spec]
2713         Added missing ordinals above 109
2715         * [misc/ole2nls.c][if1632/ole2nls.spec][include/winnls.h]
2716         New file winnls.h
2717         GetLocaleInfoA: new function
2719         * [if1632/shell.spec]
2720         Added FindEnvironmentString as stub
2722         * [misc/olecli.c][if1632/olecli.spec]
2723         OleIsDcMeta: New function
2725         * [objects/font][misc/gdi.spec]
2726         GetKerningPairs: new function
2728         * [misc/shell.c]
2729         ShellExecute: Implemented support for starting programs
2731         * [if1632/user.spec]
2732         Inserted missing relay to GetClipCursor
2734 Sun Jun 11 20:34:47 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2735         
2736         * [controls/edit.c]
2737         Fix a problem with the local heap.
2739         * [include/wintypes.h]
2740         Fixed wrong declarations of CATCHBUF and LPCATCHBUF.
2741         
2742         * [include/mdi.h] [windows/mdi.c]
2743         This code still assumed segmented address==linear address. Fixed.
2745         * [include/msdos.h] [misc/dos_fs.c]
2746         The filemask field of the dosdirent structure could be overrun. Fixed.
2747         If you had a file called foobar and a file called foo, trying to 
2748         FindFile(foo) could accidentally find file foobar instead. Fixed.
2749         
2750         * [misc/file.c]
2751         OpenFile(): Always return the full pathname in ofs->szPathName. This 
2752         also fixes GetModuleFilename().
2753         Prevent _lclose() from closing stderr or stdout.
2755         * [misc/profile.c]
2756         Search for .ini files in the path of the current module as well.
2757         (Needed by Lotus Organizer.)
2759         * [loader/task.c] [loader/ne_image.c] [loader/module.c]
2760         [memory/local.c]
2761         Local heaps are now initialized by InitTask() for executables. DLLs
2762         have to call LocalInit() themselves, LocalInit() has to put the
2763         heap at the end of the segment when called with start==0. We no longer
2764         allocate the DGROUP with 64k on startup, but grow the local heap
2765         in LOCAL_GetBlock() when necessary.
2767         * [loader/module.c]
2768         LoadLibrary() should call LoadModule() in all cases, even if the
2769         DLL is already loaded, to ensure that the reference count is correct.
2771         * [loader/ne_image.c]
2772         Some changes to function prolog fixup. Does anyone know exactly how
2773         this is supposed to work? I am only guessing here.
2774         In NE_InitializeDLLs(), initialize the DLLs a module refers to before
2775         the module itself.
2776         
2777         * [loader/task.c]
2778         Initialize instance data at the beginning of the DGROUP in InitTask().
2780         * [memory/local.c]
2781         Some fixes for moveable blocks.
2783         * [memory/selector.c]
2784         All the IsBad*Pointer() functions returned exactly the wrong boolean
2785         value in all cases!
2786         
2787         * [objects/bitblt.c]
2788         Fixed another null pointer dereference in debugging output.
2789         
2790         * [objects/font.c]
2791         Some more recovery possibilities for FONT_MatchFont() if a specified
2792         font does not exist.
2793         
2794         * [windows/win.c]
2795         The dialog code may call CreateWindowEx with an integer in windowName.
2796         This happens for static icon controls that expect a resource ID as
2797         the window name. CreateWindowEx() used to crash. Fixed.
2798         
2799         * [windows/class.c] [windows/win.c]
2800         Window classes are owned by modules, not instances. Changed
2801         RegisterClass(), UnregisterClass(), GetClassInfo() and CreateWindowEx()
2802         accordingly.
2804 Sat Jun 10 16:10:53 1995  Olaf Flebbe <o.flebbe@science-computing.uni-tuebingen.de>
2806         * [miscemu/int21.c]
2807           clock.exe was displaying incorrect year.
2809 Fri Jun 9 20:36:56 1995  Victor Schneider <tailor@crl.com>
2811         * [include/cursor.h] [windows/cursor.c]
2812         Implemented CreateCursorIconIndirect().
2814 ----------------------------------------------------------------------
2815 Tue Jun  6 12:11:41 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
2817         * [controls/menu.c]
2818         Fixed bug with drawing multi-column menus with vertical separator.
2820         * [debugger/debug.l]
2821         Fixed NULL-pointer reference after readline().
2823         * [if1632/winprocs.spec] [miscemu/int21.c] [miscemu/interrupts.c]
2824         Added interrupt vector emulation. Allows to retrieve an interrupt
2825         vector and jump to it without crashing.
2827         * [loader/ldt.c]
2828         Moved ldt.c to memory directory.
2830         * [loader/task.c]
2831         Implemented LockCurrentTask() and GetInstanceData().
2833         * [objects/bitblt.c]
2834         Fixed a bug that caused StretchBlt() to use wrong colors when
2835         stretching a monochrome bitmap to a color display.
2837         * [objects/bitmap.c]
2838         Fixed a segmented pointer bug in CreateBitmapIndirect().
2840         * [tools/build.c]
2841         Added possibility to have arguments for register functions; used
2842         by interrupt vectors to remove the flags from the stack.
2843         Generate a new function CallTo32_LargeStack(), that allows calling
2844         a 32-bit function using the original 32-bit stack, for functions
2845         that need more that 64k of stack.
2847 Tue May 30 10:29:56 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
2849         * [if1632/shell.spec] [misc/shell.c]
2850         DoEnvironmentSubst: fixed prototype
2852         * [if1632/gdi.spec] [objects/palette.c]
2853         SetSystemPaletteUse: new function
2855         * [if1632/kernel.spec] [loader/resource.c]
2856         DirectResAlloc: new function
2858         * [if1632/user.spec] [windows/keyboard.c]
2859         SetKeyboardState: new function
2861 Mon May 29 12:58:28 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2862         
2863         * [tools/build.c]
2864         Prevent interrupts from destroying the args for a 32 bit function
2865         by loading the correct value into %esp directly after %ss.
2867         * [loader/ne_image.c] [loader/module.c]
2868         The new instance must be created earlier in LoadModule(), so that
2869         fixups referencing it will be handled correctly.
2870         Initialize the local heap for a DGROUP in NE_LoadSegment().
2871         
2872         * [objects/dib.c]
2873         Like RLE8 bitmaps, RLE4 bitmaps don't always end with a proper code.
2874         This used to crash Wine. Fixed.
2876         * [objects/text.c]
2877         Fix possible null pointer dereference in debugging output.
2878         
2879         * [misc/commdlg.c]
2880         Handle user input in the edit control better. Some bugs fixed.
2881         
2882         * [memory/local.c]
2883         Started implementing moveable blocks. This is unfinished (!), but
2884         at least it does not seem to break things.
2886 Wed May 24 13:26:36 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
2887         
2888         * [loader/module.c]
2889         LoadModule(): DLLs occasionally have a data segment, and they work
2890         much better if it is loaded :-)
2891         LoadLibrary(): pass HMODULE instead of HINSTANCE to NE_InitializeDLLs.
2892         FindModule(): also strip off the last backslash of the pathnames
2893         (Winhelp tried to load C:\WINDOWS\SYSTEM\COMMDLG.DLL).
2894         GetModuleHandle(): just call MODULE_FindModule, it does the same job,
2895         only better.
2896         
2897         * [loader/ne_image.c]
2898         LocalInit() the heap of a DLL in NE_InitDLL. (This is probably
2899         not really correct, it seems that all programs and DLLs try to do
2900         this themselves. But they pass weird parameters.)
2901         NE_InitializeDLLs should also call NE_InitDLL for the passed hModule.
2902         
2903         * [loader/task.c] [misc/user.c]
2904         Finish global initializations in InitTask instead of InitApp, or
2905         all the DLLs will be initialized in InitTask without any available
2906         window classes!
2908 ----------------------------------------------------------------------
2909 Sun May 21 12:30:30 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
2911         * [debugger/hash.c] [debugger/info.c]
2912         Added support for symbolic segmented addresses. Add symbols for all
2913         built-in API entry points.
2915         * [if1632/relay.c] [include/dlls.h]
2916         Removed dll_table structure, as we now use the built-in module
2917         structures.
2919         * [if1632/relay.c] [loader/main.c]
2920         Removed winestat option, as it was no longer very meaningful.
2922         * [include/stackframe.h]
2923         New macro MAKE_SEGPTR that creates a segmented pointer to a local
2924         variable on the 32-bit stack.
2926         * [loader/module.c]
2927         Added support for multiple instances of an application.
2928         Implemented LoadModule() and FreeModule().
2930         * [loader/ne_image.c] [loader/task.c]
2931         Moved initialisation of built-in DLLs to InitTask().
2933         * [memory/global.c]
2934         Implemented discardable blocks.
2936         * [misc/file.c]
2937         Search path of current executable in OpenFile().
2938         Fixed bug with searching in Windows path.
2940         * [misc/lstr.c]
2941         Hard-coded translation tables for Ansi<->Oem.
2943         * [misc/user.c]
2944         Moved some global initializations to InitApp(), because they need
2945         a task context to be performed.
2947         * [objects/dc.c]
2948         Handle R2_BLACK and R2_WHITE specially so that they work correctly
2949         with palette displays.
2951         * [tools/build.c]
2952         Suppressed generation of the C file for DLL specs, because it's no
2953         longer needed. Output all the assembly code directly to stdout.
2954         Some changes to integrate Win32 support from Martin von Loewis. 
2956         * [windows/msgbox.c]
2957         Moved message box code from misc/ to windows/.
2959 Mon May 15 23:40:04 1995  Martin Ayotte (wine@trgcorp.mksinfo.qc.ca)
2961         * [misc/audio.c] [misc/mcicda.c] [misc/mcianim.c] [misc/midi.c]
2962           [misc/mmaux.c] [misc/mmsystem.c]
2963         Modify code & use pointers conversion macros.
2964         Make cdaudio & wave devices work again (only using some applets).
2966         * [misc/profile.c]
2967         Change getc() to fgetc() where needed.
2969 Mon May 15 22:10:56 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
2971         * [if1632/Imakefile]
2972         added entries for the new files gdi32.spec, kernel32.spec,
2973         user32.spec, shell32.spec and winprocs32.spec.
2975         * [if1632/commdlg.spec][if1632/kernel.spec][if1632/shell.spec]
2976           [if1632/storage.spec][if1632/system.spec][if1632/user.spec]
2977         ChooseFont, RESERVED5, InternalExtractIcon: Marked as stubs
2978         ExtractAssociatedIcon, DoEnvironmentSubst, DumpIcon:
2979                 stub implementations provided 
2980         marked storage.dll,storege.sys functions as stubs
2982         * [include/pe_image.h]
2983         Added structures WIN32_builtin and  WIN32_function
2985         * [include/peexe.h]
2986         PE_Import_Directory: renamed reserved fields to 
2987                 TimeDate, Forwarder, Thunk_List
2989         * [include/winerror.h]
2990         New file.
2992         * [loader/main.c]
2993         called RELAY32_Init
2995         * [loader/pe_image.c]
2996         xmmap: map BSS anonymous
2997         dump_imports: renamed to fixup_imports, do the fixup of imported
2998                       symbols
2999         PE_LoadImage: pass raw data size to xmmap
3001         * [loader/resource.c]
3002         DumpIcon: new function
3004         * [misc/kernel32.c]
3005         New file.
3007         * [misc/main.c]
3008         make stdout and stderr unbuffered
3010         * [misc/shell.c]
3011         DoEnvironmentSubst: new function
3013         * [objects/font.c]
3014         FONT_MatchFont: try oblique if there is no italic
3016         * [rc/Imakefile][rc/parser.l]
3017         yywrap: new function
3018         Don't link with libfl.a on Linux
3020         * [tools/build.c]
3021         Added keywords stdcall, subsystem, base
3022         GenerateForWin32: new function
3023         BuildSpecFiles: call GenerateForWin32 if subsystem is win32
3025 Mon May 15 10:38:14 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3026         
3027         * [controls/listbox.c] [controls/combo.c] [windows/defwnd.c]
3028         Minor fixes.
3029         
3030         * [misc/message.c] [misc/main.c] [rc/sysres*.rc] [include/texts.h]
3031         Rewrote message box handling.
3032         
3033         * [windows/dialog.c]
3034         Dialogs should be invisible until after WM_INITDIALOG is seent.
3035         Don't switch to invisible dialog items on a TAB keypress.
3036         
3037         * [windows/mdi.c]
3038         Send WM_NCPAINT message in MDIRestoreChild().
3039         
3040         * [windows/painting.c]
3041         Fixed typo (&& -> &).
3042         
3043         * [windows/message.c] [if1632/user.spec]
3044         Implemented PostAppMessage().
3045         
3046         * [windows/event.c]
3047         SetCapture(0) should act like ReleaseCapture().
3049 Tue May  9 11:55:52 1995     Eddie C. Dost             (ecd@dressler.de)
3051         * [Imakefile]
3052         Changed CDEBUGFLAGS for systems running __ELF__ (temporarily)
3053         Added ASFLAGS to exported variables.
3055         * [debugger/readline/Imakefile]
3056         Moved defines for libreadline from DEFINES to EXTRA_DEFINES
3058         * [memory/local.c] [miscemu/int21.c]
3059         Added some more debugging outputs.
3061 Mon May  8 00:55:27 MET DST 1995          Dag Asheim (dash@ifi.uio.no)
3063         * [misc/message.c]
3064         Fixed a "FIXME" concerning norwegian translation.
3066 Sun May  7 23:25:23 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3067         
3068         * [*/*]
3069         Removed warnings in a couple of files and deleted some obsolete code.
3071         * [controls/listbox.c]
3072         Cleanup, speed improvements & lots of bug fixes.
3074         * [controls/combo.c]
3075         Mostly rewritten. This is still very buggy, but not quite as bad as 
3076         before.
3078         * [include/commdlg.h] [misc/commdlg.c]
3079         Removed the need for sysres.dll. Small bug fixes.
3080         
3081         * [objects/oembitmap.c] [include/bitmaps/<many>] [include/windows.h]
3082           [loader/library.c] [loader/main.c] [rc/sysres*.rc]
3083         Removed sysres.dll and replaced the remaining bitmaps/icons with
3084         XPM equivalents.
3086         * [misc/message.c] [windows/nonclient.c] [misc/main.c]
3087           [if1632/winprocs.spec]
3088         "About Wine..." now brings up a standard ShellAbout() window with
3089         the Wine icon and the list of contributors.
3090         
3091         * [misc/shell.c]
3092         Fixed ShellAbout()/AboutDialogProc() to show the right icon.
3094         * [windows/event.c]
3095         Small hack for non-alphanumeric keys: Dont't send the ascii value in
3096         the WM_KEYDOWN message, but some unused code instead. Should be done
3097         properly by sending different codes for each key. The edit control
3098         used to get a VK_DELETE message each time the user typed '.'.
3100         * [windows/class.c]
3101         Removed a check for CS_GLOBALCLASS in CLASS_FindClassByName().
3102         This used to be no problem, but breaks Resource Workshop in 950403.
3103         
3104         * [objects/dib.c]
3105         New diagnostic for a bug I've been encountering. If it shows up,
3106         please report it.
3108 Sun May  7 23:11:18 EDT 1995  William Magro (wmagro@tc.cornell.edu)
3110         * [objects/color.c]
3111         Handle situation when 'dc' exists, but palette mapping
3112         does not.  (Fixes kidpix2 demo.)
3114 Sun May  7 03:32:00 1995  Charles M. Hannum  (mycroft@mit.edu)
3116         * [loader/ldt.c]
3117         LDT_Print: Only show the number of entries that the kernel
3118         returned. Make this work for NetBSD.
3120 Fri May  5 02:53:26 1995  Charles M. Hannum  (mycroft@mit.edu)
3122         * [debugger/dbg.y] [include/wine.h] [loader/signal.c]
3123         Modify cs and ds selector values for NetBSD-current.
3125         * [debugger/debug.l]
3126         $sp, $esp: Use RN_ESP_AT_SIGNAL rather than RN_ESP.
3128         * [debugger/regpos.h]
3129         Modify sigcontext format for NetBSD-current.
3130         SC_ESP: Use RN_ESP_AT_SIGNAL rather than RN_ESP.
3132         * [include/ldt.h]
3133         SELECTOR_TO_ENTRY: Explicitly clear the top half of the selector
3134         value, since only 16 bits of it may have been saved.
3136         * [misc/winsocket.c]
3137         Set structure packing with `#pragma pack' to accomodate
3138         other/older compilers.
3140 Tue May  2 18:15:01 1995 Paal Beyer (beyer@idt.unit.no)
3141         
3142         * [misc/commdlg.c]
3143         Fixed path-names so when changing directory the listboxes
3144         changes too.
3145         
3146         * [debugger/dbg.y debugger/debug.l wine.ini]
3147         Added SymbolTableFile to wine.ini so symbols can be read
3148         without standing in the directory containing wine.sym.
3149         Added the possibility to specify full name of wine.sym from
3150         the debugger prompt.
3152 ----------------------------------------------------------------------
3153 Sat Apr 29 20:42:01 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
3155         * [controls/static.c]
3156         Fixed painting of SS_*FRAME controls.
3158         * [if1632/callback.c]
3159         Pass the window instance as DS to the 16-bit window procedure.
3160         Rewrote Catch() and Throw() to make them work with multiple tasks.
3162         * [loader/main.c]
3163         New function MAIN_Init() to perform initializations before the
3164         first task is started instead of doing them in InitApp().
3165         Temporary hack to command-line parsing to load one program per
3166         command-line argument, to make testing task-switching easier.
3168         * [loader/*.c]
3169         Reimplemented modules to use a Windows-compatible layout and to
3170         allow multiple tasks and multiple module instances. Not really
3171         finished yet.
3173         * [loader/task.c] [misc/exec.c]
3174         Reimplemented tasks to use a common address space, and implemented
3175         preliminary task-switching capabilities.
3177         * [memory/global.c]
3178         Fixed bug in GlobalNext().
3180         * [misc/main.c]
3181         Updated the list of contributors. Let me know if I forgot someone.
3183         * [miscemu/int21.c]
3184         Use one DTA per task instead of a global one.
3186         * [objects/bitblt.c]
3187         Fixed bug in BitBlt() that could cause BadMatch errors.
3189         * [tools/build.c]
3190         Added new function type 'stub', that makes possible to export an
3191         unimplemented function by name as well as by ordinal. This will
3192         avoid loading errors for unimplemented functions.
3193         Generate an in-memory module layout for built-in DLLs so that the
3194         same code can be used for built-in and loaded modules.
3195         Changed relay code to make it unnecessary to save the value of the
3196         BP register.
3198         * [windows/message.c]
3199         Implemented multiple message queues and preliminary task-switching
3200         capabilities. Inter-task SendMessage() calls are not implemented
3201         yet and will probably cause crashes if used.
3203         * [windows/property.c]
3204         Reimplemented properties and allocate them on the USER heap.
3206         * [windows/win.c]
3207         Fixed bug in SetWindowWord().
3208         Reimplemented EnumWindows() and EnumTaskWindows().
3210 Tue Apr 18 09:48:38 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3211         
3212         * [misc/main.c]
3213         GetSystemParametersInfo(): Additional action SPI_GETICONTITLEFONT.
3214         
3215         * [loader/resource.c]
3216         Removed the check for NE_SEGFLAGS_EXECUTEONLY, since it broke
3217         control.exe.
3218         Fixed icon loading.
3219         
3220         * [objects/font.c] [include/windows.h]
3221         Fixed a bug in InitFontsList() and worked on the EnumFonts()
3222         functions to make them comprehensible.
3224         * [controls/button.c]
3225         Fixed my previous patch to handle LBUTTONUP messages.
3227 Fri Apr 14 11:41:28 1995  Cameron Heide  (heide@ee.ualberta.ca)
3229         * [misc/network.c, misc/dos_fs.c]
3230         Implemented WNetGetConnection.  All that is currently
3231         supported are drives, for which the remote name is simply
3232         the redirected UNIX directory name.
3234         * [miscemu/int2?.c]
3235         More drive number validity checking.
3237 Wed Apr 12 11:28:37 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3238         
3239         * [controls/listbox.c]
3240         Oops, my previous change to ListBoxDirectory broke the Borland
3241         file open dialog. Fixed.
3243 Mon Apr 10 23:17:12 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
3245         * [if1632/ole2nls.spec] [misc/ole2nls.c] [misc/Imakefile]
3246         New file ole2nls.c. Added stubs for GetUserDefaultLCID, 
3247         GetSystemDefaultLCID, GetUserDefaultLangID, GetSystemDefaultLangID.
3249 Mon Apr 10 10:05:18 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3250         
3251         * [memory/global.c] [memory/local.c] [include/windows.h]
3252         GlobalReAlloc(): If GMEM_MODIFY is set, don't resize the block.
3253         LocalReAlloc(): Same for LMEM_MODIFY.
3254         
3255         * [controls/listbox.c]
3256         Fixed a bug in ListBoxDirectory that prevented commdlg from working.
3257         Check for errors in some more places.
3259         * [if1632/gdi.spec] [if1632/user.spec]
3260         16 bit callback functions should be passed as segptrs.
3261         
3262         * [include/dlls.h] [loader/ne_image.c] [loader/selector.c]
3263         [loader/library.c]
3264         Prevent a DLL from being initialized twice (Borlands Resource
3265         Workshop used to do this).
3266         Provide an additional flag for each w_file that indicates whether
3267         it's an EXE or a DLL, for combinations like pbrush.exe/.dll.
3268         
3269         * [controls/button.c]
3270         Handle LBUTTONUP messages even if the button no longer has the
3271         capture (for WinHelp).
3272         
3273         * [include/wintypes.h]
3274         FARPROC is now a segptr for the emulator and a function
3275         pointer for the library.
3276         
3277         * [misc/commdlg.c] [misc/commdlg.h]
3278         Cleaned the file dialogs up a little. They now work reasonably well,
3279         although there are still some problems (e.g. files are initially
3280         invisible).
3282         * [windows/class.c] [if1632/user.spec] [include/windows.h]
3283         GetClassInfo() must take a segptr, as it checks whether the
3284         highword is zero.
3285         GetClassName() called the wrong atom function. No surprise it didn't
3286         find anything.
3288         * [misc/lstr.c]
3289         AnsiToOem() and OemToAnsi() didn't terminate the strings. Fixed.
3290         Removed some warnings.
3292         * [if1632/relay.c] [if1632/ddeml.spec] [include/dlls.h]
3293         New spec file for the 3.1 DDEML DDL. 
3295         * [controls/menu.c]
3296         Small fix to ChangeMenu - mask out the obsolete flags
3297         (MF_APPEND == MF_OWNERDRAW, this led to problems). It also had
3298         problems with the MF_BYPOSITION flag.
3300         * [windows/message.c]
3301         SendMessage(): call the WH_CALLWNDPROC hook function. This is rather
3302         ugly, I'm afraid. Windows probably passes a pointer to the 16 bit
3303         stack for speed reasons.
3304         
3305         * [windows/hook.c] [include/windows.h]
3306         Set/HookWindowsHook() shouldn't just call their *Ex counterparts, as
3307         they have slightly different semantics.
3308         MS Hearts now works somewhat, if you disable the new builtin DDEML.
3309         The graphics are completely messed up, though.
3311 ----------------------------------------------------------------------
3312 Sun Apr  2 18:31:12 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
3314         * [Configure] [if1632/Imakefile]
3315         Removed new build and short names options.
3317         * [if1632/*.c] [tools/build.c]
3318         Implemented compiled call-back functions for better performance;
3319         all the relay code is now done in assembly code generated by the
3320         build program.
3321         Relay code is no longer dependent on being loaded below 64K.
3323         * [loader/resource.c]
3324         Fixed memory leak in LoadString(). A fix will also be needed for
3325         other resources.
3327         * [memory/global.c]
3328         Implemented global heap arenas, so we can store informations about
3329         global blocks, like lock counts or owner handle.
3330         Implemented FarGetOwner() and FarSetOwner().
3331         Implemented global heap TOOLHELP functions.
3333         * [memory/selector.c]
3334         Bug fix: it was not possible to re-use a free selector.
3336 Sun Apr 2 01:34:52 1995 Constantine Sapuntzakis  (csapuntz@mit.edu)
3338         *  [controls/listbox.c]
3339         Major work on listbox code
3340          - Many bugs fixed (still many bugs)
3341          - More messages supported
3342          - Code simplified
3344 Fri Mar 31 03:27:16 EST 1995 William Magro (wmagro@tc.cornell.edu)
3346         * [controls/edit.c]
3347         Lots of bug fixes related to diappearing text, lost carets,
3348         highlighting, segmentation faults, occurance of random
3349         characters, insertion of characters over selection, misplaced
3350         caret location, display corruption, end of line behavior, etc.
3352         * [controls/widgets.c]
3353         EDIT class doesn't want to use CS_PARENTDC flag.
3355 Thu Mar 30 20:58:25 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3356         
3357         * [loader/selector.c]
3358           FixupFunctionPrologs() should also handle multiple data modules.
3359           (this bug only became visible because MakeProcInstance() was fixed
3360           in 950319)
3361         
3362         * [misc/dosfs.c]
3363           Simplified DOS_SimplifyPath.
3364           Small fix to DOS_opendir to reuse an entry if an open directory
3365           is opened again, to prevent "too many open directories" messages.
3367 Thu Mar 30 12:05:05 1995 Martin von Loewis  <loewis@informatik.hu-berlin.de>
3369         * [if1632/compobj.spec][include/compobj.h][misc/compobj.c]
3370         CoDisconnectObject: new stub function
3372         * [include/msdos.h]
3373         fix DOSVERSION
3375         * [loader/ne_image.c]
3376         NE_FixupSegment: Be more generous on additive fixups
3378         * [if1632/user.spec][misc/network.c]
3379         Add more WNet* stubs
3381 Wed Mar 29 11:47:22 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3383         * [controls/listbox.c]
3384           DlgDirList(): send segptr instead of linear pointer 
3385           in message to static control
3386         * [controls/menu.c]
3387           Tried to implement ownerdrawn menuitems. Doesn't work.
3388         * [if1632/gdi.spec] [include/windows.h] [objects/font.c]
3389           Provide a stub for GetRasterizerCaps()
3390         * [loader/selector.c]
3391           Pass end address instead of length to LocalInit() in 
3392           CreateSelectors()
3393         * [memory/local.c]
3394           LocalInit(): If there's already a local heap in the segment, do
3395           nothing and return TRUE
3396         * [objects/linedda.c]
3397           Replaced buggy LineDDA() with a Bresenham algorithm. Should work
3398           now.
3399         * [windows/cursor.c]
3400           LoadCursor()/CreateCursor(): Cleaned up the mess. Needs some
3401           more work still.
3403 Tue Mar 21 17:54:43 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3405         * [if1632/relay.c] [if1632/callback.c] [include/dlls.h]
3406           [if1632/winprocs.spec] [if1632/winprocs.c] [include/winprocs.h]
3407           [controls/widgets.c] [misc/shell.c] [misc/commdlg.c]
3408           [windows/nonclient.c] [misc/message.c]
3409           Added a new builtin DLL that provides 16 bit entry points for all
3410           the Def*Procs (DefDlgProc, ButtonProc etc.). OWL programs work
3411           again.
3412         * [misc/shell.c]
3413           RegOpenKey()/RegCreateKey() bugs fixed.
3414         * [loader/ne_image.c]
3415           Skipping the initialization of a DLL when CS == 0 was broken.
3417 ----------------------------------------------------------------------
3418 Sun Mar 19 16:30:20 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
3420         * [*/*]
3421         Implemented a new memory mapping scheme. There's no longer a
3422         one-to-one mapping between 16-bit and 32-bit pointers. Please see
3423         file DEVELOPERS-HINTS for technical details.
3425         * [controls/scroll.c]
3426         Fixed bug when dragging mouse in horizontal scrollbars.
3428         * [tools/build.c] [if1632/*.spec]
3429         Removed support for C callback functions and for re-ordering
3430         of the 32-bit arguments, as these were never used. This should
3431         allow a more efficient callback scheme to be implemented.
3433         * [if1632/olecli.spec]
3434         Reduced the number of entries to make the 16-bit code fit in 64k.
3435         This limitation will soon be removed.
3437         * [loader/ldt.c]
3438         Rewrote LDT manipulation functions and implemented LDT_GetEntry().
3440         * [memory/global.c]
3441         Rewrote Global*() routines to use the new selector allocation
3442         mechanism.
3444         * [memory/local.c]
3445         Rewrote local heap handling to use a Windows-compatible layout
3446         (not really finished yet).
3447         Implemented TOOLHELP heap-walking routines.
3449         * [memory/selector.c]
3450         Implemented LDT manipulation API functions.
3452 Tue Mar 14 19:50:28 EST 1995 William Magro (wmagro@tc.cornell.edu)
3454         * [windows/defdlg.c]
3455         Fixed problem where dialogs closed using the System menu 
3456         ('Close' item or double click on close box) would
3457         hang Wine.
3459 Sun Mar 12 14:28:13 1995  Michael Patra <micky@marie.physik.TU-Berlin.DE>
3461         * [controls/listbox.c]
3462         Removed most of the statements for sending a notification message
3463         ListBoxDirectory(), DlgDirSelect(), DlgDirList(): Improved the
3464         code; Borland's standard file open dialog will work now.
3465         
3466         * [misc/main.c], [misc/file.c], [miscemu/int21.c]
3467         Added support for new command line option "-allowreadonly". If set
3468         an attempt to open a read only file in write mode will be converted 
3469         to opening it read only (many programs try to open all files in 
3470         read/write mode even if they only intend to read it - this might 
3471         cause a few under problems under an unix-like environment where most 
3472         files are read only for a "normal" user)
3474         * [loader/selector.c]
3475         GetMemoryReference(): Added support for __AHIncr and __AHShift
3477         * [misc/dos_fs.c]
3478         DOS_SimplifyPath(): This routine simplifies path names ( e.g., it
3479         will change "/usr///local/bin/../lib//a" to "/usr/local/lib/a" )
3480         match(): rewritten
3481         
3482         * [objects/text.c]
3483         TEXT_NextLine(): Removed a bug in the handling of LF's
3485         * [miscemu/int21.c]
3486         GetFileDateTime(): Fixed. SetFileDateTime() is still broken.
3488 Sat Mar 11 19:46:19 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
3490         * [controls/menu.c]
3491         ChangeMenu: defaults to MF_INSERT
3492         InsertMenu: allow insertion even if position is one after last item
3494         * [if1632/Imakefile] [if1632/compobj.spec] [if1632/relay.c]
3495           [if1632/storage.spec] [include/dlls.h]
3496         Added stubs for STORAGE.DLL and COMPOBJ.DLL
3498         * [if1632/user.spec] [windows/message.c]
3499         InSendMessage: new function
3501         * [include/neexe.h][include/ne_image.c]
3502         NE_FixupSegment: fixed handling of additive records
3504         * [loader/selector.c]
3505         GetEntryDLLName: return NULL instead of pointer to DLL.0 if not found
3507         * [loader/signal.c]
3508         win_fault: Enter debugger on SIGFPE, too
3510 Wed Mar  1 21:47:42 1995  Cameron Heide  (heide@ee.ualberta.ca)
3512         * [miscemu/int*.c]
3513         Various minor modifications to the clock tick counter,
3514         FindFirst/FindNext funcs, and DPB handling.
3516 ----------------------------------------------------------------------
3517 Thu Mar  2 17:44:32 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
3519         * [loader/resource.c] [objects/oembitmap.c]
3520         Removed sysres bitmap code; you need libXpm to compile now.
3521         Implemented LoadIcon() for OEM icons.
3523         * [include/bitmaps/oic_*]
3524         Added OEM icons in XPM format.
3526         * [objects/dib.c]
3527         Bug fix in DrawIcon().
3529         * [rc/sysresbm.rc]
3530         Removed; all bitmaps are stored in XPM format now.
3532 Tue Feb 28 18:54:28 1995  Tomi Leppikangas  (tomilepp@paju.oulu.fi)
3534         * [controls/edit.c]
3535         Small patch to fix edit-control when it's created with text.
3537 Sun Feb 26 20:22:15 1995  Michael Veksler  (e1678223@tochnapc2.technion.ac.il)
3539         * [tools/make_debug]
3540         The created macros won't have side effects anymore when used in
3541         an "if-else" structure. No more warnings from the compiler when
3542         compiled without defining DEBUG_RUNTIME.
3544 Sun Feb 26 20:20:49 1995  Michael Patra <micky@marie.physik.TU-Berlin.DE>
3546         * [controls/listbox.c]
3547         ListBoxDeleteString(): Fixed
3549         * [loader/selector.c]
3550         GetMemoryReference(): When special segments are referenced by
3551         pseudo-functions like __0040H, a reference to a "normal" segment
3552         will be returned preventing the program from crashing as soon
3553         as the referenced segment is actually accessed.
3555 Sun Feb 26 15:55:14 MET 1995  Martin von Loewis (loewis@informatik.hu-berlin.de)
3557         * [Configure]
3558         Ask for OLE stubs and malloc debugging
3560         * [Imakefile]
3561         link with libmcheck.a if necessary
3563         * [if1632/relay.c][include/dll.h][if1632/Imakefile]
3564         Add OLE stubs, increase number of builtins
3565         dll_name_table_entry_s: new field dll_is_used
3567         * [loader/library.c]
3568         GetModuleHandle,ModuleNext: Check dll_is_used
3570         * [loader/ne_image.c]
3571         Bark on unsupported NE_RADDR_LOWBYTE flag (what is it supposed
3572         to mean, anyway?)
3574         * [misc/olecli.c][misc/olesvr.c]
3575         New files. Add to misc/Imakefile
3577         * [misc/dos_fs.c]
3578         DOS_GetUnixFileName: make a copy of the input parameter to 
3579         prevent overwriting
3581         * [misc/main.c]
3582         MAIN_ParseDLLOptions: new function
3583         MAIN_ParseOptions: treat -dll command line flag
3584         main: add support for malloc debugging
3586 Fri Feb 24 12:43:27 1995  Erik Svendsen  <z3esv@kmd-ac.dk>
3588         * [loader/signal.c]
3589         Small patch for people using FreeBSD-2.1.0.
3591 Fri Feb 17 22:49:18 1995  Miguel de Icaza (miguel@roxanne.nuclecu.unam.mx)
3593         * [toolkit/sup.c]
3594         Added return values to the Call* routines
3596         * [toolkit/winmain.c]
3597         Load the resource file properly for WineLib applications.
3599 ----------------------------------------------------------------------
3600 Thu Feb 16 18:57:31 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
3602         * [if1632/call.S]
3603         Only save the lower 16-bits of SP and BP.
3605         * [if1632/callback.c]
3606         When calling to 16-bit code, restore DS from its previous value on
3607         entry to the 32-bit code, instead of from the code segment owner.
3609         * [if1632/relay.c] [include/stackframe.h]
3610         Use a structure to represent the 16-bit stack frame layout
3611         instead of hard-coded offsets.
3612         
3613         * [rc/Imakefile]
3614         Use y.tab.c for bison output file for compatibility with yacc.
3616         * [tools/build.c]
3617         Small optimization for calls to 32-bit code.
3619 Sun Feb 12 03:19:47 1995  Michael Veksler (s1678223@t2.technion.ac.il)
3621         * [tools/build.c]
3622         Fixed bug (inflicted by previous change) - SEGV on ZMAGIC file format.
3624 Sun Feb 11 20:00:00 1995  Göran Thyni  (goran@norrsken.bildbasen.se)
3626         * [debugger/dbg.y]
3627         Remove unnecessary sym-table loading when stopped in 16-bit mode.
3629         * [include/segmem.h] [loader/selector.c]
3630         Added dynamic alloction of selectors.
3631         Fixed some problems with large programs SIGSEGV-ing while
3632         running out of selectors.
3634         * [include/segmem.h] [loader/selector.c] [if1632/callback.c] 
3635           [memory/global.c] [memory/heap.c] [memory/linear.c]
3636         Use __AHSHIFT and __AHINCR instead of 3 and 8.
3638 Mon Feb  6 18:07:38 1995  Cameron Heide  (heide@ee.ualberta.ca)
3640         * [misc/dos_fs.c]
3641         Better relative path handling when converting filenames between
3642         dos and unix, allowing '.' to be used in the Windows path.
3643         Startup working dir is now based on current working dir.
3645 Sat Feb  4 21:21:13 1995  Michael Veksler (s1678223@t2.technion.ac.il)
3647         * [if1632/relay.c] [include/dlls.h] [tools/build.c]
3648         Squeezed data structure that references internal dll's (mostly
3649         "struct dll_table_entry_s"). Caused 20% reduction in executable
3650         code size.
3652 Fri Feb  3 18:53:15 1995  Martin v. Loewis  (loewis@marie)
3654         * [Imakefile]
3655         make wine.sym only when making emulator
3657         * [misc/file.c]
3658         OpenFile(): report as not implemented for WINELIB
3660         * [misc/winsock.c]
3661         Fix CONVERT_HOSTENT and friends for use with WINELIB
3663         * [rc/Imakefile][rc/rc.y][rc/parser.c]
3664         Rename rc.y to parser.y
3665         Use flex and bison on Sun
3667         * [toolkit/sup.c]
3668         CallWindowProc: fix parameter type
3670         * [windows/event.c]
3671         Commented #ifdef sparc
3673 ----------------------------------------------------------------------
3674 Wed Feb  1 19:27:55 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3676         * [windows/nonclient.c] [windows/winpos.c]
3677         Implemented maximized windows.
3678         Implemented icon positioning and ArrangeIconicWindows().
3679         Bug fixes in SetWindowPos().
3681         * [windows/painting.c]
3682         Implemented GetControlBrush().
3683         Window frame is no longer contained in the update region.
3685         * [windows/win.c]
3686         Destroy owned windows upon DestroyWindow().
3688 Sun Jan 29 16:17:22 1995  David Metcalfe <david@prism.demon.co.uk>
3690         * [controls/edit.c]
3691         Changed line terminator to \r\n to be compatible with
3692         Windows.  Fixed bug in text selection.
3694 Sun Jan 29 14:10:22 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3696        * [misc/shell.c]
3697        Rewrote RegCreateKey and RegOpenKey, since they were completely broken.
3698        Fixed a bug in RegQueryKeyValue. Implemented RegEnumKey
3699        These functions now work somewhat more the way Windows programs expect
3700        them to work.
3702 ----------------------------------------------------------------------
3703 Sun Jan 22 18:55:33 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3705         * [loader/resource.c] [objects/dib.c]
3706         Fixed icon loading and drawing, now that BitBlt() works correctly.
3707         
3708         * [objects/clipping.c] [objects/region.c]
3709         Implemented elliptic regions with a set of rectangle. This greatly
3710         simplifies the region code and should boost clipping performance.
3712         * [objects/color.c]
3713         Fixed bug that caused seg-fault on 24bpp displays.
3715         * [objects/bitblt.c]
3716         Fixed bug when shrinking a bitmap to more than half its size.
3718         * [windows/graphics.c]
3719         Fixed bugs in PaintRgn() and Polyline().
3721         * [windows/nonclient.c] [windows/painting.c] [windows/winpos.c]
3722         Fixed some problems with window background painting.
3724 Thu Jan 12 12:20:25 PST 1995 Ross Biro (biro@yggdrasil.com)
3726        * [tools/build.c]
3727        * [tools/newbuild.c]
3728        * [Imakefile]
3729        * [include/wine.h]
3730        * [loader/call.S]
3731        * [loader/selector.c]
3732        * [include/segmem.h]
3733        * [misc/main.c]
3734        Changed selector code and 16/32 bit xfer code so that wine
3735        no longer has to be loaded low in memory.  Changed wine
3736        to work with ELF binary formats under Linux.
3737        
3738 Sat Sep 17 11:08:49 1994  Eric Youngdale  (eric@esp22)
3740         * [debugger/db_disasm.c]
3741         New instruction disassembler - borrowed from Mach kernel.  Has a
3742         BSD style of license as opposed to the gdb code we were previously
3743         using which was under the GPL.
3745 ----------------------------------------------------------------------
3746 Mon Jan  9 18:27:11 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3748         * [Imakefile]
3749         Compiling with -Wall flag.
3751         * [*/*]
3752         Fixes to minimize the number of compilation warnings.
3754         * [objects/bitblt.c]
3755         Fixed BitBlt() and used the same code to rewrite PatBlt() and
3756         StretchBlt(). The three *Blt() functions should now be correct in
3757         every case (famous last words).
3759         * [objects/brush.c] [objects/dither.c]
3760         Merged the two files into brush.c
3762         * [objects/dc.c]
3763         Fixed bug when the Windows programs forget to re-select the
3764         original bitmap in a memory DC.
3766         * [objects/font.c]
3767         Tty to use 'fixed' font when the system font can't be found.
3769         * [windows/dialog.c]
3770         Tentative fix to make dialogs look better when using fixed-width
3771         fonts.
3773         * [windows/graphics.c]
3774         Partially implemented the PS_INSIDEFRAME pen style.
3776         * [windows/nonclient.c]
3777         Fix for windows that have the WS_EX_DLGMODALFRAME style bit
3778         without the WS_DLGFRAME style.
3780 Thu Jan  5 13:37:42 1995  Cameron Heide  (heide@ee.ualberta.ca)
3782         * [memory/global.c]
3783         GlobalCompact should now return the correct value when the
3784         largest run of free blocks includes the last block.
3786         * [windows/mdi.c]
3787         Tiling and cascading windows without any MDI children should
3788         no longer crash (assuming no-op is the correct thing to do).
3790 Sun Jan  1 23:30:25 1995  Fons Botman  <botman@rabo.nl>
3792         * [objects/font.c]
3793         GetTextExtentPoint: fixed debug output, str is counted string, not
3794         zero terminated.
3796         * [if1632/relay.c]
3797         DLLRelay: when debugging_stack got segv, added upper bound for
3798         stack dump.
3800 ----------------------------------------------------------------------
3801 Tue Dec 27 13:35:16 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3803         * [*/Imakefile]
3804         All objects files are now kept in their respective directory.
3806         * [README]
3807         Rewrote most of it.
3809         * [objects/bitblt.c]
3810         Rewrote BitBlt() to look right in every case, while minimizing
3811         the impact on performance. Not really finished yet.
3813         * [objects/bitmap.c] [objects/dc.c]
3814         Fixed bug with pattern brushes.
3816         * [objects/clipping.c] [windows/painting.c]
3817         Fixes for logical coordinates.
3819         * [objects/color.c] [windows/graphics.c]
3820         Fixed GetPixel() to return the correct color, and made it faster.
3822         * [objects/region.c]
3823         Fixed bug in CombineRgn() when one of the region is empty.
3825 Fri Dec 22 01:42:57 MET 1994              Dag Asheim (dash@ifi.uio.no)
3827         * [Configure]
3828         Don't assume that expr handles '==', use '=' instead.
3829         Give a (hopefully informative) message if imake fails.
3831 ----------------------------------------------------------------------
3832 Wed Dec  7 14:52:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3834         * [controls/listbox.c]
3835         Fixed problems due to new scroll-bar code.
3837         * [loader/signal.c] [miscemu/ioports.c]
3838         Handle I/O opcodes that use an absolute address.
3840         * [objects/text.c]
3841         Implemented TabbedTextOut().
3843 Sat Dec  3 18:53:08 1994  Kenneth MacDonald  <K.MacDonald@ed.ac.uk>
3845         * [objects/metafile.c]
3846         Implemented GetMetafile().
3847         Fixed bug in PlayMetaFile() when reading disc based metafile records.
3848         Added META_POLYPOLYGON, META_DELETEOBJECT and META_EOF to 
3849         PlayMetaFileRecord().
3850         
3851 Wed Nov 30 06:32:25 1994  Martin von Loewis  (martin@cs.csufresno.edu)
3853         * [Imakefile]
3854         wine.sym: Remove gcc2_compiled and friends
3856         * [controls/listbox.c][if1632/relay.c][if1632/relay.c]
3857           [loader/resource.c][memory/heap.c][objects/dib.c][windows/dialog.c]
3858         Replace #ifdef DEBUG_XXX with if(debugging_xxx){
3860         * [if1632/call.S]
3861         CallToLibMain: New function
3863         * [if1632/relay.c][include/options.h][misc/main.c]
3864           [miscemu/int1a.c][miscemu/int21.c][miscemu/kernel.c]
3865         removed Options.relay_debug
3867         * [include/heap.h]
3868         HEAP_OWNER: Use ds instead of cs:ip
3870         * [loader/ne_image.c]
3871         LoadNEImage: Remember current exe, handle nodata dlls
3872         InitNEDLL: handle nodata dlls, call CallToLibMain
3874         * [loader/selector.c]
3875         CreateSelectors: Initialize auto_data_sel with 0
3877         * [memory/heap.c]
3878         HEAP_CheckHeap: Check prev
3879         HEAP_CheckLocalHeaps: new function
3881         * [misc/profile]
3882         Remember and dump only changed profiles
3884         * [tools/makedebug]
3885         Introduce debugging_xxx flags
3887 Sun Nov 27 23:13:22 MET 1994    <erik@xs4all.nl>
3889         * [clipboard.h color.h dc.h dos_fs.h event.h font.h graphics.h
3890         if1632.h kernel.h library.h miscemu.h ne_image.h nonclient.h 
3891         pe_image.h selectors.h wintypes.h]
3892         Added.
3894         * [*/*]
3895         - Commented all 'static char copyright statements', see misc/main.c
3896         - moved prototypes to headers files, fixed wrong prototypes.
3897         - *please* add a header file for each .c if you need to export
3898           things.
3900         * [misc/main.c]
3901         Added one static string which list the names of the contributors.
3903 Fri Nov 25 16:24:27 MET 1994              Dag Asheim (dash@ifi.uio.no)
3905         * [Configure]
3906         Made the support for multiple languages more automatic.  Added
3907         a [fonts] section to the wine.conf file.  Made the defaults
3908         better.  Generally cleaned it up.
3910         * [rc/sysres_No.rc] [rc/sysres_De.rc] [rc/sysres.c]
3911         Norwegian resources and small fixes to the german resources.
3913 Wed Nov 23 20:28:59 1994  Martin von Loewis  (martin@cs.csufresno.edu)
3915         * [debugger/break.c]
3916         bark(), toggle_next(), should_continue(): New functions
3917         insert_break(): Fixed, adds write access to page before writing
3918         wine_bp.next_addr: new structure field
3920         * [debugger/dbg.y]
3921         Changed symbol's value to be it's value instead of the value
3922         pointed to by the symbol.
3923         Changed SIGTRAP handling to allow continuation after break point
3925         * [misc/shell.c]
3926         ShellAbout(): Load resource from memory
3928 ----------------------------------------------------------------------
3929 Sun Nov 20 18:30:06 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
3931         * [controls/scroll.c] [include/scroll.h]
3932         Rewritten most of scroll-bar code for better Windows look & feel.
3933         Implemented EnableScrollBar().
3934         Preliminary keyboard support.
3936         * [objects/bitblt.c]
3937         Fixed BadMatch error for BitBlt() and StretchBlt() when reading
3938         bits from outside the visible region.
3940         * [objects/oembitmap.c] [include/bitmaps/obm_*]
3941         Use XPM symbolic colors to load bitmaps. This allows the colors
3942         of the bitmaps to depend on the system colors.
3944         * [tools/make_debug]
3945         Made the make_debug script more robust.
3947         * [windows/dialog.c]
3948         Fixed CheckRadioButton().
3950         * [windows/nonclient.c]
3951         A few changes to scroll-bar drawing and tracking.
3953         * [windows/winpos.c]
3954         Renamed NextWindowFromPoint() to WINPOS_NextWindowFromPoint() to
3955         avoid confusion, and optimized it somewhat.
3957 Nov 19, 94 Martin Ayotte (wine@trgcorp.mksinfo.qc.ca)
3959         * [misc/audio.c]
3960         * [misc/mcianim.c]
3961         more coding but nothing spectacular.
3963         * [misc/mmaux.c]
3964         some coding to access '/dev/mixer'.
3966         * [misc/midi.c]
3967         some coding to read .MID files, but it's not playing yet.
3969 Sun Nov 13 19:31:03 1994    James Youngman (mbcstjy@afs.man.ac.uk)
3971         * [objects/dib.c]
3972         Reimplemented DIB_SetImageBits_RLE8() so that it would cope with
3973         bitmaps which don't end 0x00, 0x02 (previously it blew up).  This
3974         includes some bitmaps output by Paint Shop Pro.  Implementation is
3975         possibly now too lax.  Please see the notes on the function about
3976         why.
3978         * [controls/desktop.c]
3979         The desktop pattern should be painted if the wallpaper doesn't
3980         cover the whole screen width OR the whole screen height.
3982 Sun Nov 13 00:07:11 MET 1994    Erik Bos        <erik@xs4all.nl>
3984         * [objects/dib.c]
3985         Small bug in DIB_SetImageBits() fixed, bitmaps in 16,24 bpp
3986         now work.
3988         * [loader/ne_resource.c] [include/resource.h]
3989         Some cleanup.
3991 Thu Nov 10 20:44:58 1994  Martin von Loewis  (martin@cs.csufresno.edu)
3993         * [Configure]
3994           [rc/sysres.rc]
3995         Primitive compile-time support for multiple languages
3997         * [rc/sysres_De.rc]
3998         New file
4000         * [loader/resource.c]
4001         LoadBitmap: Recognize end of sysresbm properly
4003         * [rc/Imakefile]
4004         Rules to compile resources simplified, dependencies changed
4006         * [rc/sysresbm.rc]
4007         Don't use sysresbm if using XPM
4009         * [windows/dialog.c]
4010         CreateDialogIndirectParam: Reverse Z-order of controls
4012         * [windows/message.c]
4013         MSG_TranslateMouseMsg: Fix HTTRANSPARENT handling
4015         * [windows/winpos.c]
4016         NextWindowFromPoint: New function
4018         * [controls/button.c]
4019         WM_NCHITTEST: Group Box is HTTRANSPARENT
4020         BUTTON_CheckAutoRadioButton: New function
4021         BM_SETCHECK: Added call to BUTTON_CheckAutoRadioButton
4023 Mon Nov  7 11:20:26 1994  Paul Falstad  (pf@zoof.cts.com)
4025         * [objects/text.c]
4026         Fix hang when using DrawText(..., DT_WORDBREAK) with a word that
4027         is too long to break.
4029         * [objects/font.c]
4030         Don't assume helvetica if there is no font family; let the other
4031         font attributes decide what font to use.
4033         * [controls/widgets.c]
4034         Listboxes and combo boxes need to be notified of double-clicks.
4036         * [controls/listbox.c]
4037           [include/listbox.h]
4039         scrolling to bottom of list box should display last item at the
4040         bottom, not at the top.
4041         
4042         list boxes need to allocate a separate heap for their item data,
4043         rather than using the user heap.  Otherwise, it's very easy to run
4044         out of memory for list box items.
4046         removed redundant code in ListBoxAddString().  Implemented simple
4047         version of LBS_SORT.
4049         Don't put [.] in the list box when using DDL_DIRECTORY.
4051         * [controls/combo.c]
4052         Combos should pass CBS_SORT onto their list box.
4054         * [windows/win.c]
4055         If window creation is aborted, remove the window from the
4056         linked lists.
4058         * [controls/static.c]
4059         static controls with SS_ICON were always returning 0 from
4060         WM_NCCREATE.
4062         Make sure static controls have text to draw before drawing it.
4064 ----------------------------------------------------------------------
4065 Sun Nov  6 18:52:04 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4067         * [objects/oembitmap.c]  (New file)
4068         Added possibility to use .xpm files for OEM bitmaps.
4070         * [include/bitmaps/obm*]  (New files)
4071         Redrawn all OEM bitmaps in xpm format.
4073         * [objects/font.c]
4074         Add space for internal leading when using a negative font height.
4075         Stubs for AddFontResource() and RemoveFontResource().
4076         Fix in FONT_Init() for uninitialised default font.
4078         * [windows/dialog.c]
4079         Make font height negative as it is really a point size and not a
4080         pixel size; dialogs using 8-point fonts look better now.
4082         * [windows/graphics.c]
4083         Fixed the fix :-) for Pie() to make it work for Arc() and Chord() also.
4085         * [windows/nonclient.c]
4086         A few changes for new OEM bitmaps.
4088 Sun Nov  6 18:22:18 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
4090         * [windows/class.c]
4091         The names of local classes have to be stored using GlobalAtom*.
4092         Otherwise they couldn't be accessed from other modules (e.g. BWCC) 
4094         * [if1632/call.S]
4095         CallTo16(cx): It's possible to set the contents of the cx-register.
4097         * [loader/ne_image.c]
4098         InitNEDLL(): The size of the local heap is now passed in the cx-
4099         register when initializing a DLL.
4101         * [memory/heap.c]
4102         LocalInit(): The case start==0 is now handled in the way it should.
4104         * [windows/win.c]
4105         GetWindowLong(): If the adress of the windows function is requested
4106         it's no longer returned if it's within the Wine code (and therefore
4107         unreachable by a windows program). This makes Borland's OWL happy.
4109         * [controls/edit.c]
4110         EDIT_GetStr(): Added handling for off<0.
4112 Sun Nov  6 17:37:14 1994  Chris Jones  <chrisj@ichips.intel.com>
4114         * [loader/library.c]
4115         Fixed infinite loop bug when two DLLs refer to each other (fixes
4116         hangup of Quicken during loading).
4118 Thu Nov 04 12:00:00 1994  Jan Willamowius  (jan@janhh.sh.sub.de)
4120         * [misc/dos_fs.c]
4121         Bug fix: The size of a disk an the available space
4122         is now returned in bytes instead of (incorrectly)
4123         KBytes.
4125 Thu Nov 03 12:00:00 1994  Jan Willamowius  (jan@janhh.sh.sub.de)
4127         * [windows/graphics.c]
4128         Bug fix: Pie segments are now filled with correct brush.
4130 Thu Nov  3 10:40:09 1994  Martin von Loewis  (martin@cs.csufresno.edu)
4132         * [Imakefile]
4133         generate rc.o before loader.o
4135         * [controls/menu.c]
4136         CopySysMenu: generate SYSMENU on the fly, eliminate hSysMenu
4138         * [include/resource.h]
4139         Add struct ResourceTable
4141         * [loader/bitmap.h]
4142         Load system bitmaps from sysresbmTable
4144         * [misc/clipboard.c]
4145           [windows/event.c]
4146         IsClipboardFormatAvailable,EVENT_SelectionRequest: bug fixes
4147         
4148         * [rc/Imakefile]
4149         generate rc.o from sysres.o and sysresbm.o. Added -lfl
4151         * [rc/rc.y]
4152         change style handling to allow ( S1 | S2 ) | S3
4154         * [rc/sysres.rc]
4155           [rc/sysresbm.rc]
4156         Put bitmaps and icons to sysresbm, everything else to sysres
4158         * [rc/winerc.c]
4159           [rc/winerc.h]
4160         Added -o, -c flags. New function set_out_file. Output to files.
4162         * [windows/dialog.c]
4163         DialogBoxIndirectPtr, DialogBoxIndirectParamPtr: New functions 
4165         * [windows/nonclient.c]
4166         Create AboutWine dialog from template pointer
4168 ----------------------------------------------------------------------
4169 Sun Oct 30 13:01:18 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4171         * [controls/static.c]
4172         Bug fix for SS_ICON controls.
4174         * [if1632/Imakefile]
4175         Fixed call.o dependencies.
4177         * [objects/clipping.c] [objects/dc.c]
4178         Fixed visible region handling. hVisRgn is always non-null now.
4180         * [windows/dce.c]
4181         Bug fix in GetDCEx for CS_OWNDC windows.
4183         * [windows/nonclient.c] [windows/painting.c]
4184         Fixes to icon window drawing.
4186         * [windows/winpos.c]
4187         A few fixes in SetWindowPos().
4189 Sun Oct 30 12:50:24 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
4191         * [objects/bitblt.c]
4192         BitBlt(): BitBlt is now able to handle any raster operation. If
4193         the request can't be passed to XWindows directly, it's quite
4194         slow, though.
4196         * [*/*.c]
4197           [misc/main.c]
4198         Improvements of the system for handling debug messages. Options are
4199         now also loaded from /usr/lib/X11/app-defaults/Wine (insert
4200         *debugoptions: +xxx there if you want to have turn messages xxx on).
4202         * [controls/menu.c]
4203         DestroyMenu(): The whole window won't be destroyed as a sideeffect
4204         any longer.
4206         * [misc/file.c]
4207         OpenFile(): Fixed bug in searching in system/window-directory.
4209 Sun Oct 30 12:25:53 1994  Jimmy Tirtawangsa <j0t2527@tam2000.tamu.edu>
4211         * [include/windows.h]
4212         Bug fix for window related structures.
4213         DCB and COMSTAT are affected. They must be packed.
4215         * [misc/comm.c]
4216         Bug fix for COM ports:
4217         Dial and dialog window in terminal.exe now works.
4218         Non sequential COM assignments in wine.conf should not break now.
4219         Baudrate can be specified in wine.conf to overcome baudrate limitation
4220         in mswindow. See sample wine.ini
4222         * [include/comm.h]
4223         add baudrate field to DosDeviceStructre
4225         * [object/font.c]
4226         Bug fix for font assignment.
4227         Use pairs of foundry and family fontnames in X11 to correspond with
4228         window's fonts.
4229         Put font assignment ini wine.ini.
4231         * [wine.ini]
4232         Adding optional baudrate after port name in "serialports" section
4233         Add new section, "fonts".
4234         "default" is special key in "fonts" to match any unmatch window font.
4236 Oct 29, 94 (new address) wine@trgcorp.mksinfo.qc.ca (Martin Ayotte)
4238         * [if1632/relay.c]
4239         * [if1632/commdlg.spec]         New file.
4240         * [misc/commdlg.c]                      New file.
4241         * [include/commdlg.h]           New file.
4242         Begin of an emulated COMMDLG DLL, built-in for now.
4243         (BTW, if you want to switch between built-in & 16bits CommDlg, only 
4244         thing you need to do is to put the real/dummy name in file relay.c)
4246         * [controls/scroll.c]
4247         * [controls/combo.c]
4248         * [controls/listbox.c]
4249         Few bug fixes and/or cosmetic.
4251         * [misc/audio.c]
4252         * [misc/mmaux.c]
4253         bug fixes and flags returned to emulate SB16.
4255         * [misc/midi.c]                         New file.
4256         skeleton for 'Midi' MMSYSTEM & MCI driver.
4258         * [misc/mcianim.c]                      New file.
4259         skeleton for 'Animation1' MCI driver.
4261         * [windows/win.c]
4262         Add new stub for GetLastActiveWindow().
4264 Tue Oct 25 09:17:25 1994  Olaf Flebbe  (flebbe@tat.physik.uni-tuebingen.de)
4266         * [if1632/call.S] [tools/build.c]
4267            Support for ELF format. (Not complete)
4269 Sun Oct 23 00:51:50 1994  Paul Falstad  (pf@zoof)
4271         * [if1632/user.spec]
4272         Add stubs for ArrangeIconicWindows(), etc.
4274         * [if1632/kernel.spec]
4275         Add IsBad*Ptr() functions.
4277         * [loader/signal.c]
4278         Add test_memory(), for use with IsBad*Ptr().
4280         * [windows/winpos.c]
4281         Add stubs for TileChildWindows(), etc.
4283         * [windows/win.c]
4284         IsWindow() shouldn't crash if it's given a bad handle.
4285         Add stub for GetLastActivePopup().
4287         * [memory/global.c]
4288         Implement the IsBad*Ptr() functions.
4290         * [controls/listbox.c]
4291         Return the full longword of the item data in LB_GETITEMDATA.
4293         * [controls/edit.c]
4294         Don't let the user select an area past the end of the text.
4296         * [objects/text.c]
4297         In DrawText(), the code to delete crlfs also removed multiple
4298         consecutive newlines.  Also, using DT_CALCRECT didn't return
4299         the right height, and the width wasn't returned at all.
4300         This caused MessageBoxes to be missing much of their text.
4302         * [windows/scroll.c]
4303         ScrollWindow[Ex] didn't work right with null LPRECT arguments.
4305 Fri Oct 21 21:47:19 1994  Paul Falstad  (pf@zoof.cts.com)
4307         * [miscemu/int21.c]
4308         Fixed int21 0x42 handler to properly assemble 32-bit seek ptr.
4310         * [misc/property.c]
4311         Fixed inverted logic in EnumProps(), and changed CallBack16()
4312         call to use new arg format.
4314         * [windows/win.c]
4315         Fixed CallBack16() call in Enum[Child]Windows to use new arg
4316         format; this fixes crashes in enum procedures.
4318 Wed Oct 19 21:30:00 PDT 1994            martin@cs.csufresno.edu
4320         * [misc/clipboard.c]
4321           [windows/event.c]
4322           [windows/message.c]
4323         Added cut and paste between Wine and other X clients via
4324         the PRIMARY selection. Text only this time.
4326         * [controls/edit.c]
4327         EDIT_LineLength, EDIT_TextLine return 0 for lines after last one.
4329         * [windows/defwnd.c]
4330         Send WM_SYSCOMMAND to overlapped ancestor window, 
4331         not the receiver of WM_SYSKEYDOWN
4333 Sat Oct 22 15:01:02 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
4335         * [controls/edit.c]
4336         ClientWidth()/ClientHeight() macros: return 0 if size would
4337         be negative
4338         EDIT_StrLength(): takes unsigned char* instead of char*
4340         * [controls/listbox.c]
4341         ListBoxWndProc(): in "case WM_MOUSEMOVE" - set lphl at start of
4342         case instead of in each place required (it was omitted in
4343         some places causing problems!)
4345         * [controls/menu.c]
4346         MENU_CalcItemSize(): don't try to find size of a text item
4347         if the pointer is NULL
4349         * [include/heap.h]
4350         added definition of HEAP_LocalInit()
4352         * [include/msdos.h]
4353         removed buggy pointer() macro (use SAFEMAKEPTR() from segmem.h
4354         instead)
4356         * [loader/selector.c]
4357         IPCCopySelector(): added missing flags to shmget() call
4358         ? does this break linux - I added these flags in a previous
4359         patch but they were missing in the corresponding release ?
4361         * [loader/signal.c]
4362         win_fault(): added missing definitions of i, dump for those
4363         not running NetBSD or linux
4365         * [misc/dos_fs.c]
4366         DOS_GetCurrentDir(): made temp[] static so it can be safely
4367         returned
4369         * [miscemu/int21.c,int25.c,int26.c]
4370         Changed all invocations of pointer() to SAFEMAKEPTR(). Included
4371         segmem.h where necessary.
4373         * [windows/dialog.c]
4374         CreateDialogIndirectParam(): Changed HEAP_Init() call to 
4375         HEAP_LocalInit(), removed redundant variables
4377 Sat Oct 22 00:29:41 MET 1994              Dag Asheim (dash@ifi.uio.no)
4379         * [loader/library.c] [loader/main.c] [loader/ne_image.c]
4380           [misc/exec.c] [miscemu/int10.c] [miscemu/int21.c]
4381           [objects/bitblt.c] [objects/metafile.c]
4382         Rewritten more printf's to use the new debugging system, and
4383         made wine less verbose per default. Use "-debugmsg +module"
4384         to get (almost) the same behavior as before.
4386 ----------------------------------------------------------------------
4387 Sun Oct 16 13:29:07 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4389         * [controls/button.c]
4390         Implemented WM_GETDLGCODE, WM_SETFONT, BM_SETSTYLE, BM_SETCHECK,
4391         BM_SETSTATE.
4392         Implemented default button painting.
4393         Optimised redrawing.
4394         Fixed owner-draw buttons.
4396         * [controls/static.c]
4397         Implemented WM_SETFONT.
4398         A few optimisations in painting code.
4399         Bug fix for SS_SIMPLE controls.
4401         * [if1632/callback.c]
4402         Preliminary GetCodeHandle().
4404         * [if1632/gdi.spec]
4405         Changed 'pascal' to 'pascal16' everywhere it's needed.
4407         * [include/windows.h]
4408         Fixed a few data structures.
4410         * [memory/heap.c]
4411         Bug fix in HEAP_ReAlloc().
4413         * [misc/cursor.c]
4414         Fixed SetCursor().
4416         * [objects/bitblt.c]
4417         Fixed PatBlt() when using BLACKNESS or WHITENESS codes.
4419         * [objects/font.c]
4420         Better font mapping code.
4421         Implemented GetTextFace().
4423         * [objects/region.c]
4424         Bug fix in REGION_MakePixmap().
4425         Faster region copying.
4427         * [objects/text.c]
4428         Implemented ExtTextOut().
4429         Implemented DT_NOCLIP style for DrawText().
4431         * [windows/dc.c]
4432         Free the bitmap when deleting a memory DC.
4434         * [windows/dce.c]
4435         Added support for windows that have no associated X window.
4436         Implemented DCX_CLIPSIBLINGS and DCX_PARENTCLIP in GetDCEx().
4438         * [windows/defdlg.c]
4439         Implemented default push button handling and DM_SETDEFID.
4440         Implemented WM_NEXTDLGCTL.
4442         * [windows/dialog.c]
4443         Implemented default push button handling.
4444         Beginning of a keyboard interface in dialogs
4445         (does not really work yet).
4446         Fixed dialogs that use a special font.
4448         * [windows/event.c] [windows/focus.c]
4449         Added support for non-X windows.
4451         * [windows/graphics.c]
4452         Rewritten FloodFill() and implemented ExtFloodFill().
4454         * [windows/message.c]
4455         Cleaner hardware messages and X events handling.
4457         * [windows/defwnd.c] [windows/painting.c]
4458         Implemented WM_SETREDRAW.
4460         * [windows/win.c]
4461         Only create an X window for top-level windows, or for the desktop.
4462         Child windows now use their parent's drawable.
4464         * [windows/winpos.c]
4465         Beginning of support for non-X windows (still somewhat broken).
4466         Implemented *DeferWindowPos().
4468         * [*/Imakefile]
4469         Cleaned up some Imakefiles.
4470         Moved dc.c from windows/ to objects/.
4471         Moved cursor.c from misc/ to windows/.
4473 Sun Oct 16 12:21:52 1994  Michael Patra <micky@marie.physik.tu-berlin.d400.de>
4475         * [include/debug.h]
4476           [include/stddebug.h]
4477           [*/*.c]
4478         Rewritten all the calls to printf for displaying debug-information
4479         (messages like "LoadImage: loading SOL (SOL.EXE)" etc.) 
4480         Added option "-debugmsg" to Wine. Example: "-debugmsg +all" will turn
4481         all these messages on, "-debugmsg -dll" will turn all messages 
4482         concerning DLLs off.
4484         * [controls/combo.c]
4485         Added some handling for combo controls with ownerdraw-styles
4486         (just creating and passing the necessary messages to the 
4487         corresponding listbox control; the edit-control needs to be
4488         replaced with something else).
4490         * [controls/edit.c]
4491           [windows/dialog.c]
4492         Added support for use of global heap memory in dialogs with 
4493         edit controls.
4495         * [controls/listbox.c]
4496         Added support for item data.
4497         ListBoxInsertString(): Fixed bug for elements which are not inserted
4498         after the currently last element.
4499         
4500         * [misc/dos_fs.c]
4501           [miscemu/int21.c]
4502         DOS_ValidDirectory(): Checks whether a given string is in fact the
4503         valid name of a directory.
4505 Sat Oct 15 17:35:00 PDT 1994            <martin@cs.csufresno.edu>
4507         * [Imakefile]
4508         generate wine.sym after creating wine
4510         * [debugger/dbg.y]
4511         load "wine.sym" when entering debugger
4513         * [debugger/info.c]
4514         symbolic backtrace for 32-bit stack. Breaks 16-bit bt.
4516 Sun Sep  25 12:00:00 PDT 1994   <martin@osiris.cs.csufresno.edu>
4518         * [rc/rc.y] [rc/rc.h] [rc/rc.l] [rc/winerc.c]
4519         Files created
4521 Sun Sep 18 11:04:45 MET DST 1994          Dag Asheim (dash@ifi.uio.no)
4523         * [misc/spy.c]
4524         Exclude and Include no longer requires a terminating ';' to
4525         register the last component.
4527 Thu Sep 15 23:10:09 MET DST 1994          Dag Asheim (dash@ifi.uio.no)
4529         * [Configure]
4530         Rewrote much of it.  Added capability to generate a wine.ini
4531         file.  Commented out the processor emulator options until that
4532         becomes interesting.  Gives a warning if it sees any *.rej
4533         files.  I hope I haven't assumed to much about the shell/OS so
4534         that it breaks under *BSD.
4536         * [misc/dos_fs.c]
4537         Removed/changed calls to ToUnix() (which calls tolower()) so
4538         that the part of the pathname which correspond with the drive
4539         letter on DOS no longer will be mapped to lowercase.  This
4540         means that it should be possible to have uppercase letters in
4541         the [drives] section of wine.ini.
4543         * [LICENSE]
4544         Cosmetic changes so that it displays better in the window you
4545         get from pressing "Credit_License" in the "About WINE" window.
4547 Sun Aug 21 21:12:06 MET DST 1994        <erik@xs4all.nl>
4549         * [controls/menu.c]
4550         LoadMenu() moved to loader/resource.c.
4552         * [misc/main.c]
4553         Added stub for FileCDR().
4555         * [include/peexe.h]
4556         Added, from Eric's pe-test.
4558         * [include/resource.h]
4559         Added.
4561         * [loader/resources.c]
4562         Removed duplicated code in *Resource() functions.
4563         Moved NE-program specific functions into ne_image.c.
4564         Moved NE-fileformat functions to ne_resource.c.
4566         * [pe_image.c] [pe_resource.c]
4567         Added. Nothing implemented to run PE-executables, resource
4568         loading only.
4570         * [misc/file.c]
4571         Changed OpenFile() to use macros.
4573         * [misc/shell.c]
4574         Added NULL-ptr checks to ShellAbout().
4576         * [miscemu/int21.c]
4577         Fixed a few typos.
4579         * [miscemu/kernel.c]
4580         Added _DI = _DS, to put the caller's instance in DI. Doesn't
4581         work properly if caller changed DS :-(
4583 ----------------------------------------------------------------------
4584 Thu Aug 25 15:24:36 EDT 1994            <jrichard@cs.uml.edu>
4586         * [include/win.h]
4587         Removed seperate X window for icon, added icon width,height.
4589         * [include/windows.h]
4590         Commented out the old SW_xxx emum and added defines since
4591         they aren't enumerated.
4593         * [windows/dce.c]
4594         Removed some older IsIconic checks from GetDCEx(), functionality
4595         is now in nonclient and generic wine window handling code.
4596         Lots of thanks to Alexandre Julliard all the hints and
4597         help...
4599         * [windows/defwnd.c]
4600         Removed call to NC_HandleNCPaintIcon() under case WM_PAINTICON,
4601         WM_PAINTICON now calls NC_HandleNCPaint.  
4603         * [windows/event.c]
4604         Removed IsIconic checks.
4606         * [windows/icon.c]
4607         Removed everything in this file for now... could be used later.
4608         Icon functionality is now handled by the generic wine windows
4609         handling functions.
4610         
4611         * [windows/mdi.c]
4612         Added a ShowWindow in MDIRestoreChild().  MDI child windows now
4613         show up when deiconified.  Removed IsIconic checks.
4615         * [windows/message.c]
4616         Removed old icon routines from hardware_event().
4618         * [windows/nonclient.c]
4619         Changed NC_HandleNCCalcSize() so it doesn't change the size
4620         of an icon window.  Made NC_InternalNCHitTest() on an Iconic
4621         window always return HTCAPTION.  Made NC_HandleNCLButtonDblClk()
4622         on an Iconic window always send a SC_RESTORE message.
4624         * [windows/painting.c]
4625         Changed RedrawWindow() so it doesn't redraw an iconic window
4626         unless it has to (no icon for this class).
4627         
4628         * [windows/win.c]
4629         Removed creation of seperate icon window from CreateWindowEx().
4630         
4631         * [windows/winpos.c]
4632         Added saving and restoring of window rectangle during
4633         iconification/deiconification to ShowWindow().  Added
4634         functions to recursively hide and show children... called
4635         by ShowWindow during iconification/deiconification.
4637 Sat, 27 Aug 1994 18:47:34 +0100 (MET DST)  micky@marie.physik.tu-berlin.de (Michael Patra)
4639         * [windows/message.c]
4640         WaitMessage(): Fixed handling of wm_timer-messages
4642         * [miscemu/int21.c]
4643         FindNextFCB(): Rewritten to support other functions than just
4644         returning the volume label
4646         * [misc/file.c]
4647         OpenFile(): Fix in handling of OF_CREATE
4649 Wed Aug 24 19:40:42 PDT 1994  Andrew Lagodzinski  (andrew@netcom.com)
4651         * [if1632/user.spec]
4652         Added SetParent.
4654         * [windows/win.c]
4655         Added SetParent.
4657 Fri Aug 19 16:37:00 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
4659         * [loader/selector.c]
4660         Many changes throughout file to correct handling of shared memory
4661         function return codes. FreeBSD and SunOS shm functions return
4662         -1 not 0 on error. If Linux is different, these changes
4663         will have to be backed out.
4664         CleanupSelectors(): this is a new (internal) call to free
4665         up all selectors (and shm handles/memory) for use on exit.
4667         * [include/segmem.h]
4668         Change comment to reflect new use of shm_key
4670         * [misc/main.c]
4671         called_at_exit(): add call to CleanupSelectors()
4673 Mon Aug 22 18:19:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4675         * [controls/button.c]
4676         Use OBM_CHECKBOXES to draw check boxes with correct colors.
4677         Fixed bug with WM_SETTEXT handling.
4678         A few drawing optimisations.
4680         * [controls/menu.c]
4681         Implemented correct \t and \a handling in menu items.
4682         Implemented help items (flush right) on menu bar.
4683         Added WM_ENTERMENULOOP and WM_EXITMENULOOP messages.
4685         * [controls/static.c]
4686         Fixed SS_ICON controls and implemented STM_SETICON message
4687         handling.
4689         * [controls/widget.c]
4690         Set cursor to IDC_ARROW for built-in classes.
4692         * [include/options.h] [misc/main.c]
4693         Backing store is now off by default.
4695         * [objects/region.c]
4696         Use X regions for rectangle and polygon regions: *major* speed
4697         improvement.
4699         * [windows/dialog.c]
4700         Fixed the fix for integer ids in controls. SS_ICON controls in
4701         dialogs should work now.
4702         Implemented DS_ABSALIGN style.
4704         * [windows/graphics.c]
4705         Implemented InvertRgn().
4706         New internal function GRAPH_DrawBitmap() to draw bitmaps faster
4707         than with CreateCompatibleDC() + BitBlt().
4709         * [windows/message.c]
4710         Determining the window for a mouse message is now done at
4711         GetMessage() time.
4712         Modified PeekMessage() handling to avoid needlessly flushing the
4713         output queue.
4715         * [windows/timer.c]
4716         Check for restart of a timer (SetTimer call with the same hwnd and
4717         id than an existing timer).
4719 ----------------------------------------------------------------------
4720 Tue Aug  9 23:58:29 MET DST 1994        <erik@hacktic.nl>
4722         * [misc/file.c]
4723         OpenFile(): Completly rewritten.
4725         * [miscemu/int21.c]
4726         CreateFile(): Fixed wrong mode in call to open.
4727         OpenExistingFile(): Implemented file sharing.
4728         FindNext(): Fixed.
4729         CreateNewFile(): Fixed wrong mode in call to open.
4730         fLock(): Added to handle record locking.
4731         GetFileAttribute(): Added.
4732         As a result, AH = 0x5c, 0x09, and 0x0b were changed.
4734         * [miscemu/int2f.c]
4735         AH = 0x10: SHARE installation check
4737         * [loader/resource.c]
4738         AccessResource(): Fixed. A new file descriptor will be returned by
4739         every call to AccessResource().
4741         * [windows/utility.c]
4742         wvsprintf(): Fixed.
4744         * [controls/menu.c]
4745         FindMenuItem(): Fixed (handling for nPos == -1 added).  
4747         * [windows/win.c]
4748         CreateWindowEx(): Added call to WINPOS_GetMinMaxInfo.
4750         * [Configure]
4751         Added two options for a processor emulator that might be
4752         plugged in later..
4754         * [loader/task.c] [include/toolhelp.h] [if1632/toolhelp.spec]
4755         CreateNewTask() stores real modulename instead of 'TASKxxxx'.
4756         Added TaskFirst(), TaskNext(), TaskFindHandle().
4758         * [memory/global.c]
4759         Added stub for MemManInfo().
4761         * [objects/text.c]
4762         Added stub for GetTabbedTextExt().
4764         * [miscemu/*]
4765         Changed all references to registers. Please don't access
4766         the context structure.
4767         fix for GetSystemTime() by <jspeter@birch.ee.vt.edu> added.
4769         * [misc/lstr.c]
4770         Fixed bug in AnsiUpper() & AnsiLower().
4772         * [misc/winsocket.c]
4773         bugfix in getsockopt()/setsockopt(): winsock uses different values
4774         than unix.
4776         * [objects/dib.c]
4777         Added DIB_SetImageBits_RLE[48] to support compressed bitmaps.
4779 Mon Aug  8 21:12:33 1994  David Metcalfe <david@prism.demon.co.uk>
4781         * [controls/edit.c]
4782         Added support for WM_COPY, WM_CUT and WM_PASTE messages.
4784         * [windows/dialog.c] [windows/defdlg.c] [include/dialog.h]
4785         Modified dialog code to create new heap for edit controls
4786         unless DS_LOCALEDIT style is set.
4788 Thu Aug  4 18:50:56 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4790         * [controls/button.c] [controls/edit.c] [controls/static.c]
4791         Removed unneeded GlobalUnlock() calls.
4793         * [controls/menu.c] [include/menu.h]
4794         Lots of changes, fixed a lot of old bugs and introduced a lot of
4795         new ones :-)
4796         - Changed message loop to use MSG_GetInternalMessage().
4797         - Fixed a bug that caused the main window to lose activation when
4798           displaying a menu.
4799         - Correctly send initialisation messages (WM_INITMENUPOPUP).
4800         - Implemented EndMenu() and LookupMenuHandle().
4801         - Changed internal structures to be as compatible as possible with
4802           MS-Windows.
4803         - Allocated everything on the USER heap instead of the global heap.
4804         - Prefixed all internal function names with MENU_ and declared
4805           them static.
4806         - Moved "About Wine..." handling to NC_HandleSysCommand().
4807         - Multi-line menus should now work correctly.
4809         * [loader/resource.c] [objects/bitmap.c]
4810         Added the possibility to create OEM bitmaps directly as X bitmaps.
4812         * [objects/dcvalues.c] [windows/dc.c]
4813         Fixed GetDCOrg() to return screen coordinates.
4815         * [windows/message.c]
4816         Fixed double-click checks when the message is not removed from the
4817         queue.
4818         Fixed MSG_GetInternalMessage() to send WM_ENTERIDLE messages.
4820         * [windows/nonclient.c]
4821         Bug fix in system menu hit-test calculation.
4822         A few changes for new menu functions.
4824 Thu Aug 11 17:51:02 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
4826         * [controls/edit.c]
4827         Bug fix in Edit_NCCreateMessage
4828         es->textlen was being used before being set
4830         * [controls/menu.c]
4831         Bug fix in MENU_DrawMenuItem
4832         don't try to write text if NULL pointer passed
4834 ----------------------------------------------------------------------
4835 Thu Aug  4 07:18:02 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
4837         * [windows/message.c]
4838         Implemented WaitMessage() (USER.112).
4840         * [if1632/user.spec]
4841         Added WaitMessage.
4843         * [windows/defwnd.c]
4844         WM_ERASEBKGND: Added support for hbrBackground=COLOR_xxx.
4846         * [miscemu/int{13,21,2a}.c]
4847         * [miscemu/Imakefile]
4848         * [signal/loader.c]
4849         Added a few basic disk information and diagnostic functions to
4850         prevent programs using this function from crashing. All drives
4851         are claimed to be remote ones, so direct I/O isn't allowed.
4853         * [controls/edit.c]
4854         EDIT_WriteText(): Added code to correctly erase the remaining space
4855         of the edit-control if the size of the control has changed sinced it's
4856         creation.
4858 Tue Jul 26 22:05:54 MET DST 1994 Erik Bos <erik@hacktic.nl>
4860         * [if1632/mouse.spec]
4861         Added mouse.dll entry, no functions.
4863         * [loader/resource.c]
4864         Bug fix in AccessResource(). 
4866         * [misc/keyboard.c], added [include/keyboard.h]
4867         Changed functions to return more useful values.
4869         * [windows/dialog.c]
4870         Hacked DIALOG_GetControl() to support resources which
4871         have 0xff00 - 0xffff as id. ** Needs to be done properly by
4872         someone who knows the NE fileformat **
4874 Jul 29, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
4876         * [windows/event.c]
4877         Add new stub for EnableHGardwareInput() function.
4879         * [windows/message.c]
4880         Add coding for HWND_BROADCAST in PostMessage().
4882         * [misc/file.c]
4883         Add coding for OpenFile() also search in WindowPaths.
4885         * [misc/mmsystem.c]
4886         * [misc/audio.c]
4887         * [misc/mmaux.c]
4888         * [misc/mcicda.c]
4889         Change #include "linux/soundcard.h" by #include "sys/soundcard.h"
4890         Add coding in MMIO functions. Now, mmioDescend() can find WAV chunks.
4891         SndPlaySound & MCI_ELEMENT now use MMIO and adjust to proper formats.
4892 ----------------------------------------------------------------------
4893 Mon Jul 18 23:55:13 MET DST 1994
4895         * [if1632/call.S]
4896         CallTo16(): added `mov %eax,%edx' just before lcall,
4897         to make sure that DX contain the DLL's hinstance when
4898         initialised.
4900         CallTo32_16() added, equal to CallTo32() except for
4901         one thing: it saves DX and 
4903         * [tools/build.c]
4904         Added some code to support 16 and 32 bit return values.
4906         * [1632/{kernel,user}.spec]
4907         Changed most of the `pascal' style to pascal_16 when
4908         function returned a 16bit value.
4910 Tue Jul 19 18:40:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4912         * [controls/menu.c]
4913         Reorganized sizing and drawing code to implement multi-line menus.
4914         Implemented MENUBREAK style.
4915         Use system colors to draw menus.
4917         * [objects/color.c]
4918         Bug fix in COLOR_IsSolid().
4920         * [objects/font.c]
4921         Bug fix in FONT_GetMetrics(): calculate average character width
4922         only on existing chars (dialogs look much better).
4924         * [objects/text.c]
4925         Bug fix in DrawText(): use text color to underline mnemonic.
4927         * [windows/nonclient.c]
4928         Changed WM_NCHITTEST handling to cope with multi-line menu bars.
4930         * [windows/syscolor.c]
4931         Added system objects for menu colors.
4933 Mon Jul 18 19:32:08 PDT 1994  Andrew Lagodzinski  (andrew@netcom.com)
4935         * [controls/menu.c]
4936         Fixed bug in SelectPrevItem that caused seperators to not be
4937         skipped when using the up arrow key.
4939 ----------------------------------------------------------------------
4940 Thu Jul 14 17:50:45 1994  Bob Amstadt  (bob@pooh)
4942         * [Configure]
4943         Autodetects Linux version (if running Linux).
4945         * [loader/signal.c]
4946         New signals for Linux.
4948         * [loader/ldtlib.c]
4949         New structure field in sys call.
4951 Sun Jul 10 19:31:34 1994  Olaf Flebbe  (olaf@dragon)
4953         * [load/resource.c] 
4954           fixed Memory (Resource) Leak.
4956         * [load/main.c] 
4957           fixed a printf.
4959 Tue Jul 12 18:50:34 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
4961         * [controls/desktop.c]
4962         Implemented desktop wallpaper (only 16 colors for now).
4964         * [controls/menu.c] [windows/nonclient.c]
4965         Preliminary work to allow multi-line menus.
4967         * [misc/main.c]
4968         No backing store on desktop window (not useful).
4970         * [objects/text.c]
4971         A few fixes to DrawText() to make underlines under mnemonic
4972         letters to look better.
4974         * [windows/graphics.c]
4975         More fixes to GRAPH_DrawArc(), and some fixes to Polygon().
4976         Implemented PolyPolygon() (partially working).
4978         * [windows/winpos.c]
4979         New function WINPOS_SendNCCalcSize().
4980         Cleaned up SetWindowPos() and added preliminary support for
4981         multi-line menus.
4983 Mon Jul 11 19:15:51 1994  Miguel de Icaza  (miguel@sphinx)
4985         * [controls/edit.c]
4986         Changes to work as a library.
4988         * [if1632/callback.c] 
4989         Ifdefed module.
4991         * [if1632/relay.c]
4992         Changes to allow linking with WineLib.
4994         * [include/windows.h]
4995         Added macro WINELIB_UNIMP
4997         * [loader/library.c]
4998         When compiling WineLib, GetProcAddress is not implemented yet.
5000         * [loader/main.c]
5001         Added empty InitDLL when using WineLib.
5003         * [loader/ne_image.c]
5004         Some parts of the loader are needed for WineLib, ifdefed correctly
5006         * [misc/{audio.c,mcicda.c,mmaux.c,mmsystem.c]
5007         Disable compilation of module when compiling WineLib.
5009         * [toolkit/heap.c]
5010         Fixed small bug.  When passed an invalid handle WineLib would
5011         crash, now return NULL.
5013         * [toolkit/winmain.c]
5014         Call CreateNewTask in _WinMain.
5016 Sun Jul 10 09:08:02 1994  David Metcalfe <david@prism.demon.co.uk>
5018         * [controls/edit.c] [controls/widget.c]
5019         More changes to improve compatibility with Windows' edit
5020         control.  Finished off tab stop support.
5022 Mon Jul 11 21:05:02 MET DST 1994  Erik Bos <erik@hacktic.nl>
5024         * [if1632/relay.c]
5025         # of ordinals in shell.dll changed to 103.
5027         * [loader/signal.c]
5028         sti, cli will now be ignored.
5030         * [objects/brush.c]
5031         Added stub for GetSysColorBrush().
5033 ----------------------------------------------------------------------
5034 Sun, 3 Jul 1994 20:15:56 +0100 (BST)  David Metcalfe <david@prism.demon.co.uk>
5036         * [controls/edit.c]
5037         Bug fixes and tidying up.  Preliminary tab stop support
5038         (doesn't work yet).
5040         * [windows/dialog.c]
5041         Reversed order of buttons in CheckRadioButtons so that all
5042         buttons are now displayed.
5044 Tue Jul  5 18:30:24 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
5046         * [include/options.h] [misc/main.c] [windows/win.c]
5047         Removed nosaveunders option, replaced by handling
5048         the CS_SAVEBITS flag.
5050         * [windows/class.c]
5051         Modified the fix for negative size in class extra bytes to
5052         avoid modifying the caller's data.
5054         * [windows/dc.c]
5055         Bug fix: system font must be a proportional font.
5056         Fixed a bug that caused the default pen to not be selected
5057         correctly in a DC.
5059         * [windows/graphics.c]
5060         Bug fix in GRAPH_DrawArc(). Thanks to Adriano Azevedo for
5061         noticing it.
5063         * [windows/painting.c]
5064         Removed incorrect selecting of default objects in BeginPaint()
5065         (no longer needed because of the fix in dc.c).
5067 Jul 4, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5069         * [misc/mmsystem.c]
5070         * [misc/audio.c]
5071         Add more code to interface '/dev/dsp'.
5073         * New file [misc/mcicda.c]
5074         Create an MCI_DEVTYPE_CD_AUDIO driver connected to '/dev/sbpcd'.
5076         * New file [misc/mmaux.c]
5077         Stubs to make a future driver connected to '/dev/mixer'.
5079         * [windows/win.c]
5080         Temporary patch to CreateWindowEx() for reseting negative
5081         coordinates to 0,0 ; because 'soundrec.exe' give negative values
5082         and I need it to work on MMSYSTEM ... :-)
5084         * [miscemu/int2f.c]
5085         add a stub 'do_int2f_16' (function 0x16) for DMPI server.
5087 Mon Jun 20 10:08:40 BST 1994  William Smith (wos@dcs.warwick.ac.uk)
5089         * include/comm.h
5090         New file -- some definitions that were in comm.c now need to
5091         be shared with misc/dos_fs.c
5093         * misc/comm.c
5094         Some definitions moved into include/comm.h
5096         * misc/dos_fs.c (DOS_GetEquipment):
5097         Fixed error in equipment -- bitwise or of two values should
5098         be used instead of logical or.  Also added code to correctly
5099         report the number of serial and parallel devices.
5101 ----------------------------------------------------------------------
5102 Mon Jun 20 14:26:41 1994  Bob Amstadt  (bob@pooh)
5104         * [objects/bitmap.c]
5105         Allow negative bitmap sizes.
5107 Sun Jun 19 12:00:04 1994  David Metcalfe <david@prism.demon.co.uk>
5109         * [controls/edit.c]
5110         Improved selection display.  Added processing for WM_SETFONT,
5111         EM_REPLACESEL, EM_LINELENGTH, EM_UNDO, EM_EMPTYUNDOBUFFER,
5112         EM_GETHANDLE, EM_SETHANDLE messages.  Text buffer now stored on 
5113         application's local heap.
5115         * [windows/graphics.c]
5116         Corrected bug in Rectangle().  XFillRectangle has the same
5117         width as Rectangle, but XDrawRectangle is one pixel wider
5118         for the same co-ordinates.
5120         * [memory/heap.c] [include/heap.h]
5121         Added HEAP_LocalSize function.
5123         * [windows/event.c] [windows/keyboard.c]
5124         Improvements to KeyStateTable and addition of AsyncKeyStateTable.
5125         Added supporting code to GetKeyState and GetAsyncKeyState and
5126         merged mouse button states into GetKeyboardState.
5128         * [loader/resource.c] [include/accel.h]
5129         Added recognition of SHIFT, CONTROL and ALT keys to
5130         TranslateAccelerator.
5132         * [objects/metafile.c] [objects/font.c] [objects/bitblt.c]
5133         A bit more metafile support.
5135 Sun Jun 19 17:29:00 MET DST 1994  Erik Bos (erik@hacktic.nl)
5137         * [loader/resource.c]
5138         SizeofResource() and AllocResource() added, AccessResource() updated.
5140         * [if1632/kernel.spec]
5141         FreeLibrary() used for FreeModule().
5143         * [windows/graphics.c]
5144         Rectangle(): swap left & right corners when right < left,
5145         swap top & bottom when botton < top.
5147 Jun 19, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5149         * [controls/combo.c]
5150         Fix bug in window style of the associated listbox.
5152         * [controls/menu.c]
5153         Skip separators in keyboard navigation by using new internal 
5154                 functions SelectPrevItem() & SelectNextItem(),
5156         * [misc/profile.c]
5157         Bug fix in GetPrivateProfileInt(), was limited to 4 digit,
5158                 IntBuf must be alloc to (5+1)=6. char instead of 5.
5160         * [misc/main.c]
5161         Put code in functions SetEnvironment() & GetEnvironment().
5163         * [misc/shell.c]
5164         Start putting some code in ExtractIcon() function.
5166         * [misc/mmsystem.c]
5167         Some code for MMTimer functions & timers list.
5169         * [miscemu/int31.c]
5170         Few stubs for DPMI interrupt calls. Nothing work yet.
5172 Mon Jun 20 07:37:43 EDT 1994    John Richardson (jrichard@cs.uml.edu)
5174         * include/win.h (tagWND):
5175         Added icon fields icon, hIcon and rectClientSave to 
5176         the tagWND struct.
5178         * windows/Imakefile
5179         Added icon.c to the list of files to compile
5181         * windows/dce.c (GetDCEx):
5182         Added some checks for iconic mode and pass icon window as drawable,
5183         not the real window.
5185         * windows/defwnd.c (DefWindowProc)
5186         Added PAINTICON default windows procedure.
5188         * windows/event.c (EVENT_Expose)
5189         Added check for iconic window expose. If iconic window is exposed
5190         send a WM_PAINTICON message
5192         * windows/icon.c 
5193         New file.  ICON_Iconify, ICON_findIconFromPoint, ICON_Deiconify.
5195         * windows/mdi.c (DefMDIChildProc)
5196         Test for IsIconic during a SC_RESTORE, this doesn't work yet.
5198         * windows/message.c (hardware_event)
5199         Looks for icon as well as window now.
5201         * windows/nonclient.c (NC_HandleSysCommand, NC_DoNCPaintIcon)
5202         Added iconify/deiconify in NC_HandleSysCommand, new function
5203         NC_DoNCPaintIcon which paints an icon.
5205         * windows/painting.c (BeginPaint)
5206         Made a BeginPaint select the STOCK_BLACK_PEN, STOCK_WHITE_BRUSH,
5207         and STOCK_SYSTEM_FONT objects since this is (hopefully) default
5208         windows behavior.
5210         * windows/win.h (CreateWindowEx)
5211         Set the default background color of a window to be white.
5212         Create icon window, turn off MINIMIZE if it is on, since
5213         I don't know what to do with it as of yet... register
5214         the icon with the hwnd of its window so we can identify where
5215         icon messages are coming from.
5217 Mon Jun 20 10:15:59 1994  Miguel de Icaza  (miguel@sphinx)
5219         * windows/event.c: Added a hack to define XPointer when using
5220         X11R4. 
5222         * toolkit/hello.c: Test application for WineLib. To compile you'll
5223         need: gcc -Iinclude -DWINELIB -g hello.c -c, and to link you'll
5224         need: gcc hello.o libwine.a -lX11 -L/usr/openwin/lib -lm 
5226         * toolkit/heap.c: Extended the size of the block size per chunk.
5228         * misc/stress.c (GetFreeFileHandles): Fixed typo.
5230         * misc/main.c (main): Changes to allow compilation under SunOS. 
5232         * loader/library.c: Changed some ifdefs to compile WineLib.
5234 ----------------------------------------------------------------------
5235 Tue Jun 14 08:09:14 1994  Bob Amstadt  (bob@pooh)
5237         * loader/selector.c (GetCurrentPDB): 
5238         Added trivial function GetCurrentPDB() which returns the program
5239         segment prefix selector.
5241         * memory/heap.c (HEAP_Free): 
5242         If free list is empty, make the freed block the free list.
5244 Fri Jun 10 07:56:49 1994  Bob Amstadt  (bob@pooh)
5246         * controls/edit.c (EDIT_SetTextMsg): 
5247         Do not append a newline at the end of the last line.
5249         * windows/event.c (SetCapture): 
5250         Set winHasCursor if mouse capture succeeds.
5252 Jun 13, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5254         * [controls/listbox.c]
5255         Fix bug in listbox : InsertString should call AddString if -1.
5257         * [controls/menu.c]
5258         New function GetMenuState().
5260         * [controls/scroll.c] [windows/nonclient.c]
5261         Try to make ShowScrollBar() recalc NC_ regions. Not finished !
5263         * [objects/text.c]
5264         Add Stub for TabbedTextOut(), which temporarely call Textout().
5266         * [windows/keyboard.c] [windows/event.c]
5267         New function GetKeyBoardState() with an KeyStateTable array
5268                 & associated handling in function EVENT_key().
5270 Mon Jun 13 16:45:24 MET DST 1994 (erik@hacktic.nl)
5272         * [controls/menu.c]
5273         IsMenu() added.
5275         * [loader/library.c]
5276         ModuleFirst(), ModuleNext(), ModuleFindName(), ModuleFindHandle()
5277         added.
5279         * [object/gdiobj.c]
5280         IsGDIObject() added.
5282         * [miscemu/int2[56].c]
5283         bugfix: both didn't leave flags pushed on 16bit-stack.
5284         (winfile gets a bit further)
5286         * [miscemu/int16.c]
5287         Added (empty).
5289 Sat Jun 11 22:56:48 1994 Jon Tombs (jon@esix2.us.es)
5290         * windows/event.c:
5291         Added code to drop redundant motion Events in the XEvent queue.
5293 Thu Jun  9 10:55:55 MET DST 1994  Jochen Hein ( Hein@Student.TU-Clausthal.de )
5295         * [misc/main.c misc/message.c include/texts.h]
5296         Removed the text-constants from message.c into variables
5297         which may be changed from X-resources.
5299         * [misc/main.c misc/message.c]
5300         added <locale.h> and setlocale() to main.c, used toupper() in message.c
5302 Mon, 13 Jun 94 09:41:16 -0500 Paul Bramel <paulbr@comm.mot.com>
5304         * controls/button.c ( [CR]B_LButton* ) 
5305         left rc.right at full window width so click on label also 
5306         activates the control (MSWin behavior)
5308 Sat Jun 11 19:05:40 1994  Olaf Flebbe  (flebbe@tat.physik.uni-tuebingen.de)
5310         * include/windows.h:
5311           functions pointers can not be packed.
5312           (annoying warnings with forthcomming gcc-2.6.x)
5313         
5314         * loader/main.c (InitDLL): 
5315           Fixed a printf statement. (for control.exe) 
5317           (InitializeLoadedDLLs): 
5318           deleted shadow definition of  *wpnt.
5319           (Breaks many programs, because now COMMDLG will be
5320            initialized :-(
5322         * windows/win.c (SetWindowText): 
5323           added missing breaks; (PENSATE starts) 
5325         * windows/graphics.c (FloodFill): 
5326           Proper boundarys. (BANGBANG starts) FloodFile_rec should
5327           be rewritten.
5329         * objects/font.c (FONT_GetMetrics): 
5330           TYPO: use font->perchar only if it is defined. (WRITE starts)
5332 Sun June 12, Peter Broadhurst (pbr@ua.nwl.ac.uk)
5333         controls/scroll.c:
5334         Fixes for improved behaviour when dragging thumb;
5335         Added SB_THUMBPOSITION message when thumb is released.
5337 ----------------------------------------------------------------------
5338 Tue Jun  7 08:41:27 1994  Bob Amstadt  (bob@pooh)
5340         * loader/selector.c (FixupFunctionPrologs): 
5341         New function to fixup loaded DLL function prologs.  It replaces the
5342         do nothing code with code that loads DS with the appropriate data
5343         segment for the DLL.
5345         * misc/cursor.c (LoadCursor): 
5346         Disabled cursor loading from .EXE or .DLL.  The code needs to handle
5347         the possibility of multiple cursors in a single directory.  Also,
5348         it should check to see if the cursor is the right size.
5350         * objects/font.c (EnumFonts): 
5351         Checked for lpLogFontList[i] == NULL
5353         * objects/gdiobj.c (SetObjectOwner): 
5354         Removed stub.  Replaced with simple return in gdi.spec.  This
5355         function is not defined for the retail version of Windows.
5357         * memory/heap.c (WIN16_LocalHandleDelta): 
5358         New function.  This is really a dummy that imitates the proper
5359         return values.
5361         * loader/library.c (GetProcAddress): 
5362         Fixed definition of IS_BUILTIN_DLL() macro.
5364 Mon Jun  6 18:15:40 1994  Bob Amstadt  (bob@pooh)
5366         * miscemu/int21.c (SeekFile): 
5367         Needed to return current position in DX:AX.
5369         * windows/utility.c (windows_wsprintf): 
5370         Added support for '#' in format, and fixed bug with "ptr" being
5371         incremented too many times.
5373         * miscemu/int21.c (OpenExistingFile): 
5374         Add code to handle opening files read-only and write-only.
5376         * loader/wine.c:
5377         Segment fixups now done in LoadImage instead of _WinMain.  This
5378         is necessary to support LoadLibrary().
5380 Sun Jun  5 17:34:24 1994  Erik Bos (erik@hacktic.nl)
5382         * [loader/*]
5383                 - fixed: GetModuleHandle() sometimes returned
5384                   a wrong handle.
5385                 - don't init dlls when cs == 0 (lzexpand, doesn't
5386                   seem to have a init function)
5387                 - LoadLibrary & LoadImage now return error instead
5388                   of stopping wine.
5389                 - moved most of NE-functions into one file.
5390                 - LoadLibrary() uses w_files list instead of its
5391                   own list.
5392                 - NE exectables are now fixed-up and initialised when
5393                   loaded instead of only once before calling InitTask.
5395         * [miscemu/int15.c] [miscemu/int31.c]
5396         Added.  
5398         * [loader/selector.c]
5399         Stubs added for {Get|Set}SelectorLimit(), {Get|Set}SelectorBase().
5401         * [misc/main.c]
5402         Stub added for IsRomModule().
5404         * [miscemu/int21.c]
5405         Some cleanup, added heap for returning data.
5407 Jun 6, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5409         * [tools/build.c]
5410         Change MAX_ORDINALS     define to higher value, 1299 entries.
5411         (MMSYSTEM doesn't have succesive numbers, some are around 1200).
5413         * [windows/utility.c]
5414         Bug fix in windows_wsprintf(), (twice increments ...).
5416         * [windows/winpos.c]
5417         Bug fix in SetWindowPos(), redraw was done if flag
5418                 was set to SWP_NOREDRAW while SWP_SHOWWINDOW).
5420         * [misc/message.c] [controls/combo.c]
5421         Add an InvalidateRect() in WM_SHOWWINDOW to statisfy the new 'saveunder'.
5423         * [windows/win.c]
5424         In CreateWindowEx(), do SetMenu() calls after window creation,
5425                 just before sending to WM_NCCALCSIZE.
5427         * [controls/menu.c]
5428         In function SetMenu(), now use SetWindowPos() with 
5429                 flags SWP_FRAMECHANGED to readjust menu area.
5430         Function MenuBarCalcSize() redone.
5432 Sun May 29 11:08:24 1994  David B. Thomas  (dt@yenta.abq.nm.us)
5434         * [objects/text.c]
5435         Fixed problems associated with DT_WORDBREAK flag.  String length
5436         was not being properly decremented when lines were folded, and
5437         wrapping was not performed when DT_NOCLIP and DT_NOPREFIX were
5438         both on in addition to DT_WORDBREAK.  Windows does wrapping in
5439         this case, and now so does wine.
5441 Sun Jun  5 19:17:49 1994  Olaf Flebbe  (olaf@dragon)
5443         * [edit.c]
5444         cp1 was uninitialized iff lineno == 0
5446         *  FindFile tests for existance of file even if a full
5447            filename was supplied. What about unix file names?
5449         * [controls/listbox ]
5450         wndPtr was uninitialized for LB_SETTOPINDEX
5452         * [misc/property.c]     
5453         Do not free lpProp. Is it really allocated by malloc?
5454         {edited by Bob Amstadt: changed free() to GlobalFree()}
5456 ----------------------------------------------------------------------
5457 Sat May 28 12:03:23 1994  Bob Amstadt  (bob@pooh)
5459         * miscemu/int21.c (OpenExistingFile): 
5460         OpenExistingFile needed to return handle in AX register instead
5461         of the BX register.
5463         * miscemu/int21.c (ioctlGetDeviceInfo): 
5464         Added a little code to give a fake result for normal files.
5466 Wed May 25 21:55:38 1994  Bob Amstadt  (bob@pooh)
5468         * [memory/global.c]
5469         return value from GlobalSize was completely wrong.
5471         * [miscemu/int21.h]
5472         fixed bug in FindFirst.  Directory pointer (dp) was not placed in
5473         dta correctly.
5475         * [tools/build.c]
5476         fixed creation of pop.h to guarantee that flags are restored correctly.
5478         * [misc/comm.c]
5479         changed all occurance of strncmp() to strncasecmp().
5480         BuildCommDCB() should not require that OpenComm() be called first.
5482         * [loader/selector.c]
5483         Heap initialized to size of full segment less stack size and 
5484         automatic data size.
5486 Sat May 28 09:14:33 1994  Rick Sladkey  (jrs@world.std.com)
5488         * [controls/listbox.c]
5489         Correct typos in ListBoxResetContent where lpls variable is
5490         used where lsls2 variable is meant.  Don't call USER_HEAP_FREE
5491         twice on the same handle if hData and hMem are the same.
5493         * [debugger/opcodes/i386-dis.c]
5494         Add new name array names_rmw for table driven decoding of the
5495         16-bit mod/rm field.  Omit large case statement in OP_E and
5496         replace with array reference to match existing coding style.
5497         Add new static variable machine with value 286 or 386 to
5498         correctly decode mod/rm field in either 16 or 32 bit modes.
5499         Set it in print_insn_i{2,3}86.  In OP_E use it to decide how
5500         to decode mod/rm.  While the code was correct for 16 bit code,
5501         it was improperly decoding mod/rm fields on word prefixed
5502         32 bit instructions.
5504         * [debugger/debug.l]
5505         Recognize new token ABORT.   Recognize single letters 'p'
5506         and 'q' as tokens.
5508         * [debugger/dbg.y]
5509         Add new token ABORT.  Allow print command to be invoked by
5510         'p' and quit command by 'q', ala GDB.  Change lots of '};'
5511         to just '}'.  Add static dummy_regs to wine_debug so that
5512         wine_debug(0, NULL) doesn't core dump with qmagic.
5514         * [debugger/info.c]
5515         Correct syntax of break command in helptext and omit former
5516         comment about probable bugginess of the disassembly since it
5517         is now correct.  Change fprintf of first backtrace stack
5518         frame to match that of the second and subsequent frames.
5520         * [loader/selector.c]
5521         Change construction of command line in CreatePSP from creating
5522         a string that looks like "arg1 arg2 \r" to "arg1 arg2".  A DOS
5523         PSP command line looks like " arg1 arg2\r" with the length not
5524         including the trailing "\r" but that is not how Windows does it.
5526         * [loader/library.c]
5527         Change uses of %s to print strings in GetModuleHandle to %x so
5528         that string IDs don't cause a core dump with qmagic.  Handle
5529         converting a string id to a literal module handle.  For
5530         example, GetModuleHandle((LPSTR) 0x57) now returns 0x57 if
5531         it is a real module handle.
5533         * [misc/message.c]
5534         In MessageBox, translate a NULL title argument to the string "Error".
5536         * [misc/profile.c]
5537         In GetSetProfile translate a NULL Default argument to "".  Any
5538         caller whose Default argument is NULL is buggy, but CHARMAP does it
5539         anyway.
5541         * [objects/font.c]
5542         Add NULL pointer checks in EnumFontFamilies to prevent core dumps.
5544 Sat May 28 20:01:51 1994 Jon Tombs (jon@gtex02.us.es) 
5546         * New options/resourses nosaveunders and nobackingstore.  By 
5547         default backingstore and saveunders are now enabled, these use 
5548         more memory but avoids those slow (sometimes multiple) redraws 
5549         caused be exposure events.
5551 May 30, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5553         * [misc/driver.c] New file
5554         Skeleton for 'Installable Wine Drivers' functions. :-)
5555         * [misc/audio.c] New file
5556         Skeleton for basic 'Audio Driver' functions.
5557         * [misc/network.c] New file
5558         Stubs for few networking functions.
5560         * [misc/mmsystem.c]
5561         More coding ... a dust in a galaxy ...
5562         * [misc/shell.c]
5563         Some coding for 'RegXXX' functions ... a dust in the wind ...
5565         * [misc/profile.c]
5566         Bug fix in GetSetProfile(), bad enumeration if KeyName == NULL.
5568         * [objects/gdi.c]
5569         New function CreateDiscardableBitmap(), it just calling 
5570         CreateCompatibleBitmap() for now. It's get 'clock.exe' running ! :-)
5572         * [controls/listbox.c]
5573         * [controls/combo.c]
5574         New font member assigned to SYSTEM_FONT as default.
5575         Added processing for WM_SETFONT message;
5578 Tue May 31 20:34:25 EDT 1994  John Richardson <jrichard@cs.uml.edu>
5580         * [windows/event.c]
5581         Added AsyncMouseButtonsStates array for GetAsyncKeyState.
5583         * [windows/keyboard.c]
5584         Implemented beginning of GetAsyncKeyState.
5586 Wed May 25 23:35:03 1994  David Metcalfe <david@prism.demon.co.uk>
5588         * [objects/metafile.c] [include/metafile.h]
5589           [windows/mapping.c] [objects/clipping.c] [objects/bitblt.c]
5590           [windows/dc.c]
5591         Further metafile support.
5593 ----------------------------------------------------------------------
5594 Mon May 23 15:07:36 1994  Bob Amstadt  (bob@pooh)
5596         * [loader/selector.c]
5597         Allocate heap and stack segments as 64k.
5599 Sat May 21 01:15:49 1994  Rick Sladkey  (jrs@world.std.com)
5601         * [loader/selector.c]
5602         Correct typos where memcpy is used instead of memset.
5604         * [loader/resource.c]
5605         Allow for legitimate cases where biSizeImage is 0 in LoadIcon
5606         by calculating the value when the bitmap is not compressed.
5608         * [miscemu/int21.c]
5609         Fix NULL dereference caused by superfluous DOS_closedir in FindNext.
5611         * [loader/resource.c]
5612         New function type_match to handle string resource types as
5613         well as IDs.  In addition, compare only low 4 bits of type_id
5614         when both numbers are IDs so that 0x0002 matches 0x8002.
5615         In FindResourceByNumber and FindResourceByName use type_match
5616         instead of comparing numbers.  In FindResource handle the
5617         "#number" syntax and empty strings in both the resource and
5618         type names.
5620 Mon May 23 00:48:25 1994  Rick Sladkey  (jrs@world.std.com)
5622         * [windows/dialog.c]
5623         Fix inadvertent printing of string IDs as strings.
5625 May 23, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5627         * [controls/menu.c]
5628         New functions GetMenuItemCount(), GetMenuItemID().
5629                 GetMenuString() & HiliteMenuItem().
5630         Bug fix in CheckMenuItem().
5631         Function SetMenu() now make client area recalc if menu removed.
5633         * [windows/winpos.c]
5634         Bug fix in SetWindowPos(), no more XMapping or XConfiguring     of
5635                 windows with initial width or height equal zero.
5637         * [objects/gdiobj.c]
5638         New function EnumObjects(), using new lpPenBrushList buildup
5639                 from calls to new function GDI_AppendToPenBrushList().
5640                 ('pbrush.exe' don't show its face yet ! ... :-( )
5641         New EMPTY STUB for function SetObjectOwner(),
5642                 ('mplayer.exe' call it via GetProcAddress() ...)
5644         * [objects/font.c]
5645         New internal functions ParseFontParms() & InitFontsList().
5646         EnumFonts() & EnumFontFamilies() enumerates fonts (no more dummies).
5647         FONT_MatchFont now make retries to find closest-smallest font.
5648                 ('charmap.exe' can now show the differents fonts available)
5650         * [windows/nonclient.c]
5651         Use small dos OBM_OLD_CLOSE button for MDI windows.
5653         * [windows/graphics.c] [objects/bitmap.c]
5654         Start to remove obsolete globals such XT_screen ...
5656         * [loader/library.c]
5657         Make function GetProcAddress() working also with builtin DLLs.
5659 Tue May 24 20:18:02 1994  Erik Bos (erik@hacktic.nl)
5661         * [if1632/system.spec] [if1632/toolhelp.spec]
5662         system.dll & toolhelp.dll added.
5664         * [loader/library.c]
5665         Modified GetModuleFileName() to return the full
5666         filename.
5667         Added a check to LoadLibrary() to prevent loading
5668         built in dlls. (eg. user.exe)
5669         Added a check to FreeLibrary() to prevent built-in
5670         dlls from being freed.
5671         Modified GetProcAddress() to support builtin dlls.
5673         * [loader/signal.c] [miscemu/int2f.c]
5674         Added => pifedit runs.
5676         * [misc/dos_fs.c]
5677         Added a NULL-ptr check to DOS_closedir().
5679 ----------------------------------------------------------------------
5680 Tue May 17 23:03:16 1994  Bob Amstadt  (bob@pooh)
5682         * [windows/dce.c]
5683         Fixed bug with dce initialization that was causing dialog boxes to not
5684         be displayed.
5686         * [if1632/callback.c]
5687         Better fix for bug found by Martin.
5689 Sat May 14 19:48:39 1994  Rick Sladkey  (jrs@world.std.com)
5691         * [ memory/heap.c ]
5692         Redirect HEAP_ReAlloc calls with NULL argument to HEAP_Alloc.
5694 May 16, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5696         * [objects/font.c]
5697         Make EnumFonts() calling a callback with dummy fonts ... :-)
5699         * [objects/text.c]
5700         Add Empty Stub for ExtTextOut(), which temporarely call Textout().
5702         * [if1632/callback.c]
5703         Temporarely go around bug in CallWindowProc(), you will see printfs.
5705         * [controls/edit.c]
5706         Make EDIT controls focused by a mouse click.
5708         * [misc/property.c]
5709         Bug Fix in function EnumProps(), better use of CallBack16().
5711         * [misc/mmsystem.c]
5712         Basic Skelton's for MCI messages dispatching function.
5714 Sun May 15 16:15:17 1994  Erik Bos (erik@hacktic.nl)
5716         * [windows/utility.c]
5717         Added windows_wsprintf() for the emulator, wsprintf() is
5718         for libwine.
5720 Sat May 14 22:16:40 1994  Rick Sladkey  (jrs@world.std.com)
5722         * [misc/cursor.c]
5723         Fix pointer problems in LoadCursor leading to heap corruption.
5725         *  [ controls/menu.c ]
5726         Fix two NULL dereferencing bugs.
5728 Sun May 15 20:07:48 1994  Rick Sladkey  (jrs@world.std.com)
5730         * [objects/font.c]
5731         Fix NULL pointer dereferencing bug in GetCharWidth.
5733         * [loader/resource.c]
5734         Fix under-allocation of memory in LoadAccelerators.
5736         * [windows/class.c]
5737         Ignore negative sizes for extra fields in RegisterClass.
5739 Sun May 15 06:35:03 1994  David Metcalfe <david@prism.demon.co.uk>
5741         * [objects/metafile.c] [include/metafile.h] [include/windows.h]
5742           [objects/gdiobj.c] [objects/brush.c] [objects/pen.c]
5743           [objects/text.c] [objects/dcvalues.c] [windows/graphics.c]
5744           [windows/dc.c] [windows/mapping.c]
5745         Beginnings of metafile support.
5747         * [misc/file.c]
5748         Corrected spelling of _lcreat.
5750         * [controls/edit.c]
5751         Minor bug fixes.
5752 ----------------------------------------------------------------------
5753 May 9, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5755         * [controls/scroll.c]
5756         Make thumbtrack button disappear if scroll box ratio < 3:1.
5757         Make arrow buttons rectangular if scroll box ratio < 2:1.
5758         Add code for SBS_TOPALIGN, SBS_BOTTOMALIGN, 
5759                                 SBS_LEFTALIGN & SBS_RIGHTALIGN.
5760         Bug fix in NC_CreateScrollBars(), no more bigbutt in calendar.exe... :-)
5762         * [loader/library.c] [loader/task.c] [misc/exec.c]
5763         Continue playing around trying to get a second task running.
5765         * [windows/mdi.c]
5766         Change OBM_CLOSE for OBM_OLD_CLOSE, a smaller dot button when maximized.
5768         * [everywhere]
5769         Adding previous works of the Apr 25, 94.
5771 Tue May 10 18:09:14 1994 Erik Bos (erik@trashcan.hacktic.nl)
5773         * [if1632/mmsystem.spec] [misc/mmsystem.c] [include/mmsystem.h]
5774         Added Martin's mmsystem.dll stubs.
5776         * [misc/sound.c]
5777         Added remaining stubs for sound.dll.
5779         * [if1632/shell.spec] [misc/shell.c]
5780         Fixed prototypes (I found them in BC 4) and added ShellAbout()
5781         and AboutDlgProc().
5783 ----------------------------------------------------------------------
5784 May 1, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5786         * [loader/signal.c]
5787         Add XUngrabPointer() & XUngrabServer() in wine_fault().
5789 Fri Apr 22 19:30:08 1994  Erik Bos (erik@trashcan.hacktic.nl)
5791         * [objects/bitblt.c]
5792         color_stretch() rewritten to use ints only. *fast!*
5793         BLACKONWHITE & WHITEONBLACK stretchmodes redirected to
5794         use color_stretch().
5796 Mon May  2 21:39:43 1994  Erik Bos (erik@trashcan.hacktic.nl)
5798         * [controls/menu.c]
5799         SetSysMenu() added.
5801         * [misc/cursor.c]
5802         GetCursor() added.
5804         * [misc/main.c]
5805         SwapMouseButton() added, (NOP).
5807         * [windows/win.c]
5808         GetDesktopHwnd() added.
5810         * [if1632/*spec]
5811         Added not implemented functions defs as comment.
5813         * [misc/winsocket.c]
5814         Change WSAGetXbyY() functions to non-blocking ones,
5815         Added WSAAsyncSelect(). 
5816         (WSA functions can't be canceled yet).
5818 Wed Apr 20 23:58:58 1994  Scott A. Laird  (scott@curly)
5820         * misc/profile.c: Fixed bug with GetIniFileName returning wrong
5821         path when given a simple file name.  Fixed GetSetProfile to allow
5822         enumerating all key names when KeyName is null.
5824 Apr 25, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5826         * [objects/bitblt.c]
5827         Add protection to BitBlt() & StretchBlt() for width or height = 0.
5829         * [windows/nonclient.c]
5830         Avoid painting in NC_DoNCPaint() if IsWindowVisible().
5831         Simplify NC_TrackMouseMenuBar() because code moved to MenuFocusLoop().
5833         * [windows/win.c]
5834         CreateWindowEx() & DestroyWindow() now call respectively
5835                 AddWindowToTask() & RemoveWindowFromTask().
5836         New empty stub for function AnyPopup().
5838         * [loader/library.c]
5839         Bug Fix : GetModuleFileName() now return full path filename.
5841         * [include/menu.h] [controls/menu.c]
5842         Add hText handle and remove obsolete MENUITEM struct members.
5843         Add a ReleaseCapture() in SetMenu() when menubar changed while captured.
5844         Add MenuMouseMove() MenuButtonUp() in function MenuFocusLoop().
5846         * [misc/file.c]
5847         GetTempFilename() now create a file.
5848         _lcreate() use unix open (name, mode, perm), with perm=O666.
5850         * [if1632/relay.c]
5851         Remove temporarly builtin SHELL.DLL, Add MMSYSTEM.DLL in builtin list.
5853         * New file [misc/mmsystem.c]
5854         * New file [include/mmsystem.h]
5855         * New file [if1632/mmsystem.spec]
5856         Many, many empty stubs ... :-)
5858 ----------------------------------------------------------------------
5860 Wed Apr 20 14:53:35 1994  Bob Amstadt  (bob@pooh)
5862         * [tools/build.c] [if1632/call.S] [if1632/Imakefile]
5863         Fixed bug for non-Linux systems.
5865 Apr 18, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5867         * [windows/win.c]
5868         Bug fixed in CreateWindowEx() : Now use SetMenu() for menubar setup.
5869         New empty stub for function SetSysModalWindow().
5871         * [misc/exec.c]
5872         New empty stub for function ExitWindows().
5874         * [objects/font.c]
5875         New empty stub for function EnumFonts().
5877         * New file [misc/property.c]
5878         New functions RemoveProp(), GetProp(), SetProp() & EnumProps().
5880         * New file [misc/shell.c]
5881         New empty stubs for function RegisterShellProc(), 
5882                         ShellExecute() & ShellProc().
5884         * New files [loader/task.c] & [include/task.h]
5885         Move functions GetWindowTask(), GetNumTask(), EnumTaskWindows()
5886                 from 'loader/library.c'.
5888         * [if1632/user.c] [if1632/kernel.c]
5889         Put Atoms functions entries.
5891         * [controls/combo.c]
5892         New functions DirDlgSelectComboBox() & DirDlgListComboBox().
5894         * [controls/listbox.c]
5895         New functions DirDlgSelect() & DirDlgList().
5897 Sun Apr 17 20:57:59 1994  Erik Bos (erik@trashcan.hacktic.nl)
5899         * [objects/test.c]
5900         GrayString() added.
5902         * [if1632/callback.c]
5903         CallGrayStringProc() added.
5905         * [if1632/relay.c] [if1632/mmsystem.spec]
5906         Added.
5908         * [if1632/kernel.spec] [if1632/user.spec]
5909         Added forgotten specs for atom functions.
5911 ----------------------------------------------------------------------
5912 Tue Apr 12 00:05:31 1994  Bob Amstadt  (bob@pooh)
5914         * misc/spy.c (SpyInit): Added more message types
5916         * [windows/mdi.c] [include/mdi.h]
5917         Maximizing and restoring child windows.
5918         Tiling of child windows.
5920 Mon Apr 11 20:48:28 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
5922         * [windows/winpos.c]
5923         Revert focus and activation to previous window when hiding a window.
5925         * [windows/syscolor.c]
5926         Implemented system color objects (brushes and pens created at
5927         SetSysColor() time for better performance).
5929         * [windows/graphics.c] [windows/nonclient.c] [controls/button.c]
5930         Changed painting code to use system color objects.
5932         * [windows/message.c]
5933         New function MSG_InternalGetMessage() for internal messages
5934         loops (e.g. for dialogs or menus).
5936         * [windows/hook.c] [include/hook.h]  (New files)
5937         Beginning of the window hooks implementation.
5939         * [windows/dialog.c]
5940         Use new function MSG_InternalGetMessage() in DialogBox().
5942         * [if1632/callback.c]
5943         Added function CallHookProc().
5945 Apr 11, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
5947         * [windows/event.c]
5948         Bug fix : WM_CHARs are sent to focused window like WM_KEY???.
5950         * [misc/exec.c]
5951         Nothing much more than a stub for LoadModule(), I saw there a lot
5952                 to be done in that corner, I will come back later ...
5954         * [loader/library.c]
5955         New functions GetWindowTask(), GetNumTask(), EnumTaskWindows() 
5956                         and associated modules & tasks linked-lists.
5957         (it's only an 'emerging bud', more to come next weeks).
5959         * [loader/wine.c]
5960         Use LoadLibrary() instead of LoadImage() for 'sysres.dll'.
5962         * [control/menu.c]
5963         You can now click outside menu region without problem.
5964         Keyboard navig more smootly, even if a child has the focus.
5965         Bug fix in InsertItem(), (bad linklist when insert point not found).
5966         change Realloc for Free & Alloc in ModifyItem().
5967         MF_STRING now set BLACK_PEN to fix bug of bad color of the underscores 
5968                 done by DrawText(), (maybe it should done in DrawText() itself ?).
5970 Sun Apr 10 14:06:08 1994  Erik Bos (erik@trashcan.hacktic.nl)
5972         * [misc/profile.c]
5973         .INI files will now be stored in / loaded from the windows dir
5974         if no path is supplied.
5976         * [if1632/kernel.spec]
5977         Fixed GetDriveType's prototype.
5979         * [if1632/winsock.spec] [include/winsock.h] [misc/winsocket.c]
5980         Fixed prototypes: winsock uses a word as socket handle not an int.
5982         * [misc/winsocket.c]
5983         Added heap allocation for returned structures.
5984         Added non-blocking WSAAsyncGetXbyY() functions as blocking ones.
5986         * [loader/wine.c]
5987         Added IsDLLLoaded(), used in LoadImage() to prevent loading
5988         a dll multiple times.
5989         Directory is added to wine's path when a fullpath is supplied when
5990         starting wine.
5991         LoadImage(): DLL filename used instead DLL's own internal name,
5992         fixes 'Bad DLL name' errors.
5994 Sat Apr  9 08:26:03 1994  David Metcalfe <david@prism.demon.co.uk>
5996         * [controls/edit.c] [controls/widgets.c]
5997         First release of edit control.
5999 ----------------------------------------------------------------------
6000 Tue Apr  5 14:36:59 1994  Bob Amstadt  (bob@pooh)
6002         * [include/mdi.h] [windows/mdi.c]
6003         Use WM_PARENTNOTIFY messages to activate children.
6004         Generate WM_CHILDACTIVATE messages.
6005         Beginnings handler for maxmized child window.
6006         Clean up when children are destroyed.
6008         * [windows/message.c] [windows/nonclient.c] [windows/winpos.c]
6009         Removed code add 94/03/26.
6011 Apr 4, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6013         * [control/menu.c]
6014         Make mouse menu navigation working again. :-))
6015         (be carefull, clicking outside menus (ie.: clientrect) 
6016         not resolved yet)
6018         * [windows/nonclient.c]  [controls/scroll.c]
6019         Bugs fix in NCTrackScrollBars().
6021         * [misc/dos_fs.c]
6022         Bug fix in 'ToDos()' in conversion for '/',
6023                 (example: '/window/' was translated to 'WINDOWs').
6025         * [miscemu/int21.c]
6026         Function ChangeDir() extract possible drive before DOS_ChangeDir().
6028         * [loader/library.c]  [loader/wine.c]
6029         Playing around moving function GetProcAddress() and put some code in.
6031 Mon Apr  4 21:39:07 1994  Alexandre Julliard (julliard@lamisun.epfl.ch)
6033         * [misc/main.c]
6034         Better explanation of command-line options.
6036         * [objects/dib.c]
6037         Implemented SetDIBitsToDevice().
6039         * [windows/dc.c]
6040         Bug fix in SetDCState().
6042         * [windows/event.c]
6043         Removed WS_DISABLED handling (now done in message.c).
6045         * [windows/message.c]
6046         Added sending a WM_PARENTNOTIFY message in MSG_TranslateMouseMsg().
6047         Use WindowFromPoint() to find the window for mouse events, taking
6048         into account disabled windows.
6050         * [windows/painting.c]
6051         Bug fix in BeginPaint() to allow calling it at other times than
6052         on WM_PAINT (Solitaire needs it...)
6054         * [windows/win.c]
6055         Implemented FindWindow().
6056         Rewritten EnableWindow() to behave more like Windows.
6058         * [windows/winpos.c]
6059         Rewritten WindowFromPoint() to also search child windows.
6061 Mon Apr  4 17:36:32 1994  Erik Bos (erik@trashcan.hacktic.nl)
6063         * [include/int21.h] -> [msdos.h]
6064         renamed.
6066         * [miscemu/int10.h] [miscemu/int25.h] [miscemu/int26.h] 
6067         new, added for int 10, 25 and 26.
6069         * [miscemu/ioports.c]
6070         new, added to allow win apps to use ioports.
6072         * [loader/signal.c]
6073         Added support for in, inb, out, outb instructions.
6075 ----------------------------------------------------------------------
6076 Sun Mar 27 13:40:25 1994  Bob Amstadt  (bob@pooh)
6078         * controls/menu.c (InsertMenu): Changed to use FindMenuItem().
6080 Sat Mar 26 21:23:55 1994  Bob Amstadt  (bob@pooh)
6082         * [windows/mdi.c]
6083         Window list properly updated.
6085         * [windows/message.c]
6086         Call WINPOS_ChildActivate() when mouse pressed.
6088         * [windows/nonclient.c]
6089         Use WINPOS_IsAnActiveWindow() instead of GetActiveWindow() in
6090         NC_HandleNCPaint().
6092         * [windows/winpos.c]
6093         Created functions WINPOS_IsAnActiveWindow() and WINPOS_ActivateChild()
6095 Thu Mar 24 14:49:17 1994  Bob Amstadt  (bob@pooh)
6097         * controls/menu.c (DeleteMenu): Changed to use FindMenuItem
6098         (DeleteMenu): Many bug fixes.
6100         * [controls/menu.c]
6101         Created function FindMenuItem().
6103 Thu Mar 24 14:17:24 1994  Bob Amstadt  (bob@pooh)
6105         * [windows/win.c]
6106         Removed incorrect MDI handling code from CreateWindowEx().
6108         * [controls/menu.c]
6109         MF_STRING items needed to allocate a private copy of string.
6111         * [controls/menu.c]
6112         Fixed buggy calls to GlobalFree().
6114         * [memory/global.c]
6115         Eliminated some redundant code with function call.
6117 Wed Mar 23 1994 Pentti Moilanen (pentti.moilanen@ntc.nokia.com)
6119         * [windows/timer.c]
6120         timer list pointers looped in InsertTimer
6122 Tue Mar 29 13:32:08 MET DST 1994  julliard@di.epfl.ch (Alexandre Julliard)
6124         * [misc/cursor.c]
6125         A few changes for desktop window support.
6127         * [misc/main.c]
6128         Added -depth option.
6130         * [misc/rect.c]
6131         Yet another bug fix in SubtractRect().
6133         * [objects/bitmap.c]
6134         Changes to use only one depth (specified with -depth)
6135         for color bitmaps.
6137         * [objects/brush.c]
6138         Added support for dithered solid brushes.
6140         * [objects/color.c]
6141         Use the same 20 system colors as in Windows.
6142         System palette initialisation now done in COLOR_InitPalette().
6143         Added support for a color mapping table to map logical color
6144         indexes to X colormap entries.
6145         Implemented GetNearestColor() and RealizeDefaultPalette().
6147         * [objects/dib.c]
6148         Added support for color mapping table.
6150         * [objects/dither.c]  (New file)
6151         Implemented solid color dithering.
6153         * [objects/palette.c]
6154         Implemented GetSystemPaletteEntries() and SelectPalette().
6156         * [windows/class.c]
6157         Make a copy of the menu name in RegisterClass().
6159         * [windows/dc.c]
6160         Fixed device caps when using a desktop window.
6161         Added support for the color mapping table in DCs.
6163         * [windows/event.c]
6164         Added ConfigureNotify handler on desktop window.
6166         * [windows/message.c]
6167         Removed call to XTranslateCoordinates() on every mouse motion
6168         New function MSG_Synchronize() to synchronize with the X server.
6170         * [windows/syscolor.c]
6171         Rewritten SYSCOLOR_Init() to read the system colors from WIN.INI.
6173         * [windows/winpos.c]
6174         Added synchronization on window mapping. Solves the double redraw
6175         problem when starting Solitaire.
6177 Mar 27, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6179         * [control/menu.c]      * [windows/defwnd.c]
6180         Make keyboard navigation working with menubar,
6181         but temporarely inserted a bug in menubar mouse handling ... :-((
6182         (it will be fix next week !)
6184         * [windows/defwnd.c]
6185         Connect VK_MENU to menubar navigation.
6187         * [loader/library.c]
6188         GetModuleHandle() return 'fictive 0xF000+ handles' for built-in DLLs.
6190 Sun Mar 20 22:32:13 1994 Erik Bos (erik@trashcan.hacktic.nl)
6192         * [misc/main.c]
6193         Added Copy(). Added a check for `-h' to show usage.
6195         * [misc/dos_fs.c]
6196         Fixed bug in FindFile(), to load directories as dlls.
6198         * [misc/dos_fs.c]
6199         Fixed ToUnix() and ToDos() again, as my previous patch
6200         didn't make it.
6202         * [misc/dos_fs.c] [miscemu/int21.c]
6203         Bug fixes, should be able to handle all winfile and progman int21
6204         requests now except for a few small things.
6206 Tue Mar 29 06:25:54 1994  crw@harris.mlb.semi.harris.com (Carl Williams)
6208         * [memory/heap.c]
6209         Implemented GetFreeSystemResources().
6211 ----------------------------------------------------------------------
6212 Mon Mar 21 17:32:25 1994  Bob Amstadt  (bob@pooh)
6214         * controls/menu.c (GetSubMenu): Function did not return correct value
6216         * [windows/mdi.c]
6217         Beginnings of menu handling.
6219 Thu Mar 10 11:32:06 1994  Stefan (SAM) Muenzel  (muenzel@tat.physik.uni-tuebingen.de)
6221         * [objects/font.c]
6222         if font.width equals zero use asterix instead.
6224 Mon Mar 21 17:23:37 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6226         * [objects/bitmap.c]
6227         Rewritten bitmap code to use exclusively X pixmaps; *much* faster.
6229         * [objects/brush.c]
6230         Some changes with pattern brushes because of the new bitmap code.
6232         * [objects/color.c]
6233         Added function COLOR_ToPhysical for better color mapping.
6235         * [objects/dib.c]
6236         Heavily optimized SetDIBits().
6238         * [windows/dc.c]
6239         Opimized SetDCState() and DC_SetupGC*() functions.
6240         Added stub for CreateIC().
6242 Mar 20, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6244         * [misc/message.c]
6245         Call SetFocus() after closing box to give back focus to previous owner.
6247         * [misc/files.c]
6248         Small bug fix in GetTempFilename() : replace a '\' to '\\'.
6250         * [control/scroll.c]
6251         Calls to BitBlt() replace by StretchBlt().
6253         * [control/menu.c]
6254         Call SetFocus() to previous owner after closing Popups. 
6255         Fill stub DeleteMenu().
6257         * [control/listbox.c]
6258         * [control/combo.c]
6259         Use SetFocus() in WM_LBUTTONDOWN.
6260         Close ComboBox List upon WM_KILLFOCUS.
6261         Early development of WM_MEASUREITEM mecanism.
6263         * [windows/defwnd.c]
6264         Early development of WM_MEASUREITEM mecanism.
6266 Tue Mar 22 10:44:57 1994  Miguel de Icaza  (miguel@xochitl)
6268         * [misc/atom.c]
6269         Fixed sintaxis problem when building the library.
6271 ----------------------------------------------------------------------
6272 Tue Mar 15 13:11:56 1994  Bob Amstadt  (bob@pooh)
6274         * [include/windows.h]
6275         Added message types and structures for MDI
6277         * [include/mdi.h]
6278         Created internal structures for handling MDI
6280         * [windows/mdi.c]
6281         Began creating MDI support
6283 Thu Mar 10 16:51:46 1994  Bob Amstadt  (bob@pooh)
6285         * [loader/wine.c] [include/wine.h]
6286         Added new field to "struct w_files" to hold the "name table"
6287         resource for Windows 3.0 programs
6289         * [loader/resource.c]
6290         Added code to handle programs with a "name table" resource.
6291         LoadResourceByName() modified to check for the existence of
6292         this resource.
6294 Mon Mar 14 22:31:42 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6296         * [objects/color.c]
6297         Added installing the private colormap on the desktop window.
6299         * [windows/event.c]
6300         Cleaned up focus event handling (see focus.c).
6301         Use GetFocus() to direct key events to the correct window.
6303         * [windows/focus.c]
6304         Rewritten SetFocus() to:
6305         - only set X focus on top-level windows
6306         - send WM_SETFOCUS and WM_KILLFOCUS messages (was done in event.c)
6307         - prevent setting focus to disabled windows
6308         - install private colormap so -privatemap option works again
6310         * [windows/message.c] [windows/timer.c]
6311         Changed timer management to no longer use PostMessage(), but
6312         to generate timer messages on the fly. Also fixed a related bug
6313         in GetMessage() which could cause busy-waiting.
6315         * [windows/win.c]
6316         Only select focus events on top-level windows.
6318         * [windows/winpos.c]
6319         Added some sanity checks for desktop window.
6321 Fri Mar  4 20:42:01 1994  Erik Bos (erik@trashcan.hacktic.nl)
6323         * [misc/dos_fs.c]
6324         bug fixes in ToUnix(), WinIniFileName(), GetUnixFileName(). 
6325         Support for tilde symbol added for rootdirectories in [drives]
6326         section of wine's configfile.
6328         * [misc/file.c]
6329         hread(), hwrite() added.
6331         * [misc/main.c]
6332         hmemcpy() added.
6334         * [if1632/stress.spec] [include/stress.h] [misc/stress.c]
6335         Added STRESS.DLL, an useless dll used to stress a windows system.
6337         * [*/*]
6338         Added missing #includes, fixed prototypes for prototype checking.
6340         * [include/prototypes.h]
6342         Added prototypes for loader/*c, if1632/*c.
6344 ----------------------------------------------------------------------
6345 Tue Mar  8 09:54:34 1994  Bob Amstadt  (bob@pooh)
6347         * [Configure]
6348         Added reminder to set WINEPATH, if it is not set.
6350         * [Imakefile]
6351         Removed #elif's
6353         * [controls/button.c]
6354         Added BN_CLICKED notification for owner-draw buttons.
6356         * [if1632/kernel.spec] [memory/heap.c]
6357         Changed Local* functions to WIN16_Local* to prevent unconcious use
6358         of these functions.
6360         * [if1632/relay.c]
6361         Push old Stack16Frame on stack before setting.
6363         * [include/atom.h] [misc/atom.c] [include/heap.h] [memory/local.c]
6364         Added multiple local heap handling in Atom* functions.
6366         * [include/regfunc.h] [miscemu/int21.c]
6367         Rewrote DOS3Call() use context frame that is already on the stack.
6369         * [misc/profile.c]
6370         Fixed to allow leading ";" to mark comments.
6372         * [misc/spy.c]
6373         Fixed bugs and added support for "include" and "exclude" filters.
6375         * [misc/user.c]
6376         Rearranged calls in InitApp().
6378         * [misc/font.c]
6379         Fixed font handling to create system fonts, if they are used.
6381         * [windows/dc.c]
6382         If text drawn on window with no font specified, then default the
6383         font to the system font.
6385 Mon Mar  7 20:32:09 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6387         * [controls/desktop.c]
6388         Added handling of WM_NCCREATE and WM_ERASEBKGND functions.
6389         Implemented SetDeskPattern().
6391         * [misc/main.c]
6392         Added -desktop option to get a large desktop window with
6393         everything inside it.
6394         Added -name option.
6396         * [misc/rect.c]
6397         Bug fix in SubtractRect().
6399         * [objects/*.c]
6400         Replaced the DefaultRootWindow() macro by the rootWindow variable.
6402         * [windows/event.c] [windows/message.c]
6403           [windows/nonclient.c] [windows/win.c]
6404         A few changes to accomodate the new desktop window.
6406  Tue Mar  8 11:13:03 1994  Miguel de Icaza  (miguel@xochitl.nuclecu.unam.mx)
6408         * [toolkit/arch.c] --New file-- 
6409         Routines for converting little endian data structures to
6410         big-endian data structures, currently only BITMAP structures are 
6411         converted.
6413         * [misc/atom.c]
6414         When used as part of the WineLib, the code is much simpler.
6415         Doesn't depend on alignement.
6417         * [loader/wine.c]
6418         Ifdefed Emulator dependent code if compiling WineLib.
6420         * [loader/resource.c]
6421         Moved misc/resource.c to loader/resource.c.
6423         * [loader/dump.c,ldt.c,ldtlib.c,library,c,selector.c,signal.c]
6424         Ifdefed whole code if compiling WINELIB.
6426         * [include/winsock.h]
6427         Added compilation define to allow compilation on SunOS.
6429         * [include/wine.h]
6430         Removed load_typeinfo and load_nameinfo prototypes, they belong
6431         to neexe.h
6433         * [include/neexe.h]
6434         Added load_typeinfo and load_nameinfo prototypes.
6436         * [include/arch.h]
6437         Fixed some bugs in the conversion routines.
6438         Added macros for Bitmap loading.
6440 Tue Mar  8 12:52:05 1994  crw@maniac.mlb.semi.harris.com (Carl Williams)
6441         
6442         * [if1632/kernel.spec] [memory/global.c]
6443         Implemented GetFreeSpace()
6445         * [if1632/user.spec] [loader/resource.c]
6446         Implemented CreateIcon()
6448 ----------------------------------------------------------------------
6449 Tue Mar  1 11:30:21 1994  Bob Amstadt  (bob@pooh)
6451         * [Configure] [*/Imakefile]
6452         Created configure script to handle different types of Wine builds.
6454         * [Configure] [tools/build.c] [if1632/Imakefile] [Wine.tmpl]
6455         Added ability to compile Wine on systems with 14-char filename limit.
6457         * [if1632/relay.c] [include/options.h] [misc/main.c]
6458         Added -relaydbg option to command line if DEBUG_RELAY is defined.
6460         * [loader/selector.c]
6461         Fixed bug in GetEntryDLLName() that caused Wine to seg fault.
6463         * [memory/heap.c]
6464         Fixed LocalInit() to work correctly.
6466         * [misc/user.c]
6467         Added code to call loaded DLLs' initialization routines.
6469 Tue Mar  1 01:01:17 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6471         * [windows/dce.c]
6472         Added clipping of child windows by their parent's client area.
6474         * [windows/nonclient.c]
6475         Bug fix in NC_DoNCPaint().
6477         * [windows/painting.c]
6478         Bug fix in RedrawWindow().
6480 Feb 27, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6482         * [mem/atom.c]
6483         Bug fix again in ATOM_DeleteAtom() : 
6484                 change LocalFree() by USER_HEAP_FREE().
6485         (Previous patch done Feb 13th had been lost)
6487         * [controls/scroll.c]
6488         Move bitmaps loading in AllocScrollBar() instead of in WM_CREATE.
6490         * [windows/class.c] (sorry Alex ...)
6491         There was no bug there "in RegisterClass() : 
6492                 WNDCLASS->lpszClassName was reset to NULL."
6493                               ^^^^^
6495         * [misc/clipboard.c]    --- New File ---
6496         New function EnumClipboardFormats().
6497         New function OpenClipboard().
6498         New function CloseClipboard().
6499         New function EmptyClipboard().
6500         New function GetClipboardOwner().
6501         New function GetClipboardViewer().
6502         New function CountClipboardFormats().
6503         New function IsClipboardFormatAvailable().
6504         New function OpenClipboard().
6505         New function GetClipboardData().
6506         New function SetClipboardViewer().
6507         New function EnumClipboardFormats().
6508         New function RegisterClipboardFormat().
6509         New function ChangeClipboardChain().
6510         New function SetClipboardData().
6511         New function GetOpenClipboardWindow().
6512         New function GetPriorityClipboardFormat().
6513         New function GetClipboardFormatName().
6515 Tue Mar  1 20:15:45 1994  Erik Bos <erik@trashcan.hacktic.nl>
6517         * [misc/comm.c]
6518         bugfix in OpenComm().
6520 ----------------------------------------------------------------------
6521 Tue Feb 22 18:04:02 1994  Jeffrey Hsu <hsu@freefall.cdrom.com>
6523         * [include/winsock.h]
6524         The sockproto struct is already defined in <sys/socket.h>
6526         * [misc/winsock.c]
6527         Need to include <netinet/in.h> for struct in-addr.
6528         Use sys_errlist[] instead of strerror[].
6530         *[toolkit/heap.c]
6531         ANSI C specifies that the malloc functions are defined in stdlib.h,
6532           so we don't need to include malloc.h.
6534         *[loader/ldtlib.c]
6535         Print informative error message about probable cause of i386_set_ldt()
6536           failure and then exit.
6538         *[Imakefile]
6539         For systems that don't use gmake by default, set the MAKE variable
6540           to gmake and propagate it on recursive makes.
6541         Take out -li386 for FreeBSD systems and define __FreeBSD__ so Wine
6542           can be built with the FreeBSD 1.0.2 compiler.
6544 Tue Feb 22 02:52:19 EST 1994    jrichard@cs.uml.edu (John Richardson)
6546         * [objects/bitblt.c]
6547         Added in three functions to do stretching and compression
6548         for WHITEONBLACK, BLACKONWHITE, and color copies.
6550 Tue Feb 22 15:01:31 EST 1994    jrichard@cs.uml.edu (John Richardson)
6552         * [windows/graphics.c]
6553         Added FloodFill and FloodFill_rec.  FloodFill_rec is pretty
6554         inefficent, but should suffice for now.
6556         * [include/windows.h]
6557         Changed the x,y paramaters for the FloodFill prototype 
6558         from ints to shorts
6560 Tue Feb 22 00:58:28 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6562         * [windows/widgets.c]
6563         Added desktop window class.
6565         * [windows/painting.c]
6566         Bug fix in RedrawWindow().
6567         Implemented ExcludeUpdateRgn().
6569         * [windows/win.c] [windows/winpos.c]
6570         Implemented desktop window.
6572         * [controls/desktop.c]
6573         Preliminary desktop window procedure.
6575 Feb 20, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6577         * [controls/menu.c]
6578         New function LoadMenuIndirect().
6579         New function GetMenuCheckMarkDimensions().
6581         * [if1632/user.spec]
6582         Entry for DefDlgProc().
6584         * [windows/class.c]
6585         Fix bug in RegisterClass() : 
6586                 WNDCLASS->lpszMenuName was reset to NULL.
6588         * [windows/win.c]
6589         In CreateWindowEx(), if hMenu == 0 then use 
6590                 wndclass->lpszMenuName to load Menu from resource;
6592 Mon Feb 21 22:38:28 1994 Erik Bos (erik@trashcan.hacktic.nl)
6594         * [loader/library.c] [loader/wine.c]
6595         Fixed runing DLL's as main executable problem.
6597         * [misc/dos_fs.c]
6598         Added wildcard support in DOS_readdir().
6600         * [misc/winsocket.c]
6601         Added proper error handling of BSD winsocket functions.
6603         * [miscemu/int21.c]
6604         KERNEL_DOS3Call renamed to DOS3Call and modified to use do_int21().
6606         * [main/main.c]
6607         Added functions for GetVersion, GetWinFlags and GetTimerResolution
6608         for libwine.a, SystemParametersInfo() partly implemented.
6610 Tue Feb 22 19:00:02 1994  Miguel de Icaza  (miguel@xochitl.nuclecu.unam.mx)
6612         * [toolkit/winmain.c]
6613         Added _WinMain function. Setups the library (calls USER_InitApp).
6615         * [toolkit/sup.c]
6616         Added load_mz_header, load_ne_header, load_type_info and
6617         load_name_info functions.
6619         * [toolkit/heap.c] 
6620         Code cleanup. 
6622         * [misc/user.c]
6623         Moved from loader/misc.c. I hope to put back all the loader
6624         functions in the ~loader subdirectory in the future. CUrrently is
6625         needed since it has USER_InitApp.
6627         * [misc/resource.c]
6628         Since WineLib will probably need DLLs (currently it needs
6629         Sysres.dll). WineLib will be using much code of the loader again.
6630         So I removed some ifdefs that were used by WineLib.
6632         Added load_typeinfo and load_nameinfo (and the corresponding
6633         functions in [toolkit/sup.c]
6635         Added integer convertion functions in the needed places.
6637         Added very ugly patch (includes wine.c). In the next release I
6638         plan to move back all the loader routines to ~/loader. In the
6639         meantime I needed this patch. It doesn't affect any of the
6640         emulator code (its ifdefed for WineLib).
6642         * [misc/main.c]
6643         Cleaned up call to WinMain (now uses [toolkit/winmain.c]
6644         Ifdefed argument number checking when compiling the library.
6646         * [loader/wine.c]
6647         Modified to use load_(mz|ne)_header instead of doing a direct
6648         read.  When compiling the emulator it still uses the direct read
6649         for performance. 
6651         * [include/wine.h]
6652         Prototypes for loading routines.
6654         * [include/class.h]
6655         Added WINE_PACKED macro instead of __attribute__ ((packed))
6657         * [include/arch.h]
6658         Macros for converting integers (Little endian to big-endian).
6659         Needed in the Sun to allow loading of DLL files.
6661 ----------------------------------------------------------------------
6662 Mon Feb 14 23:48:09 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6664         * [windows/clipping.c]
6665         Moved everything into windows/painting.c and removed this file.
6667         * [windows/message.c]
6668         Removed calls to memmove() in MSG_RemoveMsg().
6670         * [windows/nonclient.c]
6671         Added WM_GETMINMAXINFO support for window resizing.
6673         * [windows/painting.c]
6674         Implemented RedrawWindow().
6676         * [windows/scroll.c]
6677         Bug fix in ScrollWindowEx().
6679         * [windows/win.c]
6680         Moved UpdateWindow() to windows/painting.c.
6682 Fri Feb 11 12:41:28 1994  Erik Bos (erik@trashcan.hacktic.nl)
6683         
6684         * [loader/wine.c] [misc/dos_fs.c]
6685         getenv() eq NULL bugfixes.
6687         * [misc/comm.c]
6688         cfmakeraw changed for SunOS.
6690 Feb 13, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6692         * [mem/atom.c]
6693         Bug fix in ATOM_DeleteAtom() : 
6694                 change LocalFree() by USER_HEAP_FREE().
6696         * [misc/message.c]
6697         New function FatalAppExit().
6699         * [objects/font.c]
6700         New empty stub SetMapperFlags().
6702         * [controls/menu.c]
6703         Better CheckMark & other bitmaps placement.
6705         * [windows/graphics.c]
6706         New function RoundRect() : calc.exe now working...
6708 Tue Feb 15 14:29:37 1994  John Richardson
6710         * [objects/bitblt.c]
6711         Fixed StretchBlt so it works quicker and faster.  It still doesn't
6712         use the StretchMode bits for bitmap compression, but that will
6713         come soon.
6715 Mon Feb 14 13:21:04 1994  Miguel de Icaza  (miguel@roxanne.nuclecu.unam.mx)
6717         * [include/windows.h,dialog.h,gdi.h]
6718         Changed __atribute__ ((packed)) for WINE_PACKED. 
6719         When compiling the library this is defined as nothing. This gets
6720         rid with all the problems compiling under SunOS. Also 
6722         * [windows/utility.c]
6723         Added DebugPrintString.
6725         * [toolkit/sup.c]
6726         Added hSysRes = 1 definition to resolve externals.
6727         Added CallLineDDAProc function (toolkit version).
6728         Added toy, and hi ineficient memmove until code in message.c get
6729         rewritten.
6731         * [objects/gdiobj.c]
6732         Ifdefed linux/emulator-dependent code to allow compilation of
6733         WineLib.
6735         * [misc/winsocket.c]
6736         Added ifdef to allow compilation under SunOS.
6738         * [misc/resource.c]
6739         When compiling the library, the resource file is expected to be in
6740         a file called $argv[0].Res. Also the information of the resource
6741         is expected to be at offset 0 of the .Res file.
6743         * [misc/main.c]
6744         Call WinMain with arguments if compiling WineLib.
6745         Call shutdown functions (Comm_DeInit, DOS_DeInitFS).
6746         Call sync_profiles to preserve changes to .INI files.
6748         * [misc/comm.c,dos_fs.c]
6749         removed call to atexit(Comm_DeInit)
6750         removed call to atexit(DOS_DeInitFS)
6751         Shutdown functions are now called from the return of WinMain
6753         * removed memorylib subdirectory
6755         * moved memory/atom.c    to misc/atom.c
6756           moved memorylib/heap.c to toolkit/heap.c
6758         * [loader/wine.c]
6759         Moved DebugPrintString to windows/utility.c
6761         * [include/winsock.h]
6762         Define SO_DONTLINGER only if it has not been previously defined.
6764         * [include/windows.h]
6765         added definition for DLGPROC.
6766         added definition for LMEM_WINE_ALIGN and other LMEM_* constants.
6767         When compiling WineLib WNDPROC is defined with all the parameters
6768         to avoid compilation problems.
6770         * [include/user.h]
6771         When compiling WineLib USER_HEAP_(ALLOC|REALLOC|ADDR|FREE) the
6772         calls are translated to the library allocation routines.
6774         * [include/gdi.h,user.h]
6775         When compiling WineLib GDI_HEAP_(ALLOC|ADDR|FREE) the calls are
6776         translated to the library allocation routines.
6778         * [include/atom.h]
6779         Defined LocalAlign. When compiling the emulator it's translated as
6780         a call to LocalAlloc (the original code), when compiling WineLib
6781         as a call to LocalAlloc with a WINE-flag called LMEM_WINE_ALIGN
6782         (atom.c needs aligned data on a 4 byte boundary).
6784         * [misc/file.c]
6785         Renamed KERNEL_* functions and fixed prototypes.
6787         * [if1632/kernel.spec]
6788         Renamed KERNEL_* functions in order to be used by applications
6789         using Wine as a library (OpeFile, _lclose, _lread, _lcreate,
6790         _llseek, _lopen, _lwrite).
6792         * [Makefile]
6793         Create library instead of executable when building target
6794         libwine.a 
6796 ----------------------------------------------------------------------
6797 Tue Feb  8 13:52:11 1994  Miguel de Icaza  (miguel@roxanne)
6799         * [Makefiles]
6800         Use $(CC) instead of cc.
6801         Added libwine target.
6803         * [include/prototypes]
6804         #ifdefed section for WineLib
6806         * moved loader/cursor.c   to misc/cursor.c
6807           moved loader/resource.c to misc/resource.c
6808           moved misc/emulate.c    to miscemu/emulate.c
6809           moved misc/int1a.c      to miscemu/int1a.c
6810           moved misc/int21.c      to miscemu/int21.c
6811           moved misc/kernel.c     to miscemu/kernel.c
6812           moved misc/user.c       to miscemu/user.c
6814         * [memorylib/heap.c]
6815         Heap management for WineLib
6817         * [misc/comm.c]
6818         Modified to allow compilation under SunOS (#include errno, SunOS
6819         doesn't have atexit ()).
6821         * [misc/dos_fs.c]
6822         Modified to allow compilation under SunOS (#include vfs.h)
6824         * [misc/file.c]
6825         Modified to allow compilation under SunOS (OPEN_MAX constant,
6826         #include unistd.h)
6828         * [objects/palette.c]
6829         Modified to allow compilation under SunOS (#include limits)
6831         * [toolkit/sup.c]
6832         WineLib version of CallWindowProc.
6834         * [windows/event.c]
6835         Typedef XPointer under X11R4 (OpenWindows).
6837         * [windows/win.c]
6838         When compiling WineLib, use direct callbacks instead of the
6839         windows supplied callbacks.
6841 Mon Feb  7 22:37:34 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
6843         * [loader/cursor.c]
6844         New function CURSOR_SetWinCursor(), for internal use, to set
6845         the cursor of a specific window more reliably than with SetCursor().
6847         * [windows/nonclient.c]
6848         Better window management. Moving and resizing from the system
6849         menu should work now.
6850         Added scroll-bar mouse tracking.
6852         * [windows/win.c]
6853         Moved scroll-bar creation and destruction to defwnd.c.
6855 Feb 5, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6857         * [windows/nonclient.c]
6858         Call to StdDrawMenuBar() during NC's drawing.
6859         New NC_TrackMouseMenuBar() function which call 
6860                 MenuButtonDown(), MenuButtonUp() & MenuMouseMove().
6862         * [controls/menu.c]
6863         New ChangeMenu() function.
6864         Remove permanently old Xt menu code.
6865         Make common functions MenuButtonDown(), MenuButtonUp()
6866                 & MenuMouseMove() for both popups & menubar.
6867         
6868         * [controls/combo.c]
6869         Paint OBM_COMBO directly in combo client.
6871         * [controls/listbox.c]
6872         Fix bug in multicolumns calculations.
6874         * [controls/Makefile]
6875         Remove rules for old file 'caption.c'.
6877         * [misc/kernel.c]
6878         Remove empty stub GetModuleFileName().
6880         * [loader/library.c]
6881         New GetModuleHandle() function.
6882         New GetModuleUsage() function.
6883         New GetModuleFileName() function.
6885         * [loader/resource.c]
6886         Try to find the bug a missing menu loading ... Not found yet !
6888         * [windows/win.c]
6889         Remove old menubar creation.
6891 Thu Feb  3 22:30:11 1994  Erik Bos (erik@trashcan.hacktic.nl)
6893         * [misc/winsocket.c]
6894         More functions added.
6896         * [if1632/winsock.spec] [misc/winsocket.c]
6897         Added John Brezak's winsock.dll stuff.
6899 ----------------------------------------------------------------------
6900 Tue Feb  1 21:14:47 1994  Bob Amstadt  (bob@pooh)
6902         * [loader/selector.c]
6903         Added function CreateNewSegments().  Modified IPCCopySelector
6904         to allow aliasing to any arbitrary memory space.
6906         * [memory/global.c]
6907         Fixed potential bug in GlobalGetFreeSegments().
6909         * [memory/linear.c]
6910         Created functions GlobalLinearLock() and GlobalLinearUnlock().
6912 Tue Feb  1 05:51:43 1994  julliard@di.epfl.ch (Alexandre Julliard)
6914         * [controls/widgets.c]
6915         Removed CAPTION window class.
6917         * [loader/cursor.c]
6918         Bug fix in LoadCursor(): don't allocate memory every time for
6919         built-in cursors.
6921         * [windows/clipping.c]
6922         Invalidate child windows in InvalidateRgn().
6924         * [windows/defwnd.c]
6925         Added repaint of the caption when changing window text.
6927         * [windows/event.c]
6928         Modified SetCapture() to allow keyboard events while capturing.
6930         * [windows/message.c]
6931         New function MSG_GetHardwareMessage(), to do mouse tracking
6932         without returning control to the Windows program.
6934         * [windows/nonclient.c]
6935         A couple of changes in frame drawing for DLGMODALFRAME windows.
6936         Rewritten window moving code, to use MSG_GetHardwareMessage()
6937         instead of non-client mouse events (this is the way Windows
6938         does it), and to send WM_ENTERSIZEMOVE messages.
6939         Removed WM_NCBUTTONUP and WM_NCMOUSEMOVE handlers.
6941         * [windows/win.c]
6942         Allocate temporary structures on the USER heap instead of
6943         using GlobalAlloc().
6945         * [windows/winpos.c]
6946         Added function WINPOS_GetMinMaxInfo() to get sizing informations.
6948 Jan 31, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
6950         * [windows/nonclient.c]
6951         Call to StdDrawScrollBar() during NC's drawing.
6952         Call to NC_ScrollBarButtonDown() on NC mouse events WM_LBUTTONDOWN.
6953         Call to NC_ScrollBarButtonUp() on NC mouse events WM_LBUTTONUP.
6954         Call to NC_ScrollBarMouseMove() on NC mouse events WM_MOUSEMOVE.
6956         * [controls/menu.c]
6957         New GetSubMenu() function.
6958         Move GetMenu() & SetMenu() functions from 'windows/win.c'.
6960         * [controls/listbox.c]
6961         Start changes to satisfy recent changes in scrollbars/windows.
6963         * [loader/resource.c]
6964         Put some code in LoadAccelerators() stub.
6965         New TranslateAccelerator() function.
6967         * [windows/win.c]
6968         Remove GetMenu() & SetMenu() functions.
6969         Call to NC_CreateScrollBars() if required by CreateWindow().
6971 ----------------------------------------------------------------------
6972 Mon Jan 24 10:40:10 EST 1994 John Richardson (jrichard@cs.uml.edu)
6974         * [window/win.c]
6975         Added functions EnumWindows, EnumChildWindows, and helper
6976         WIN_EnumChildWin.  EnumWindows won't list all wine windows
6977         because GetDesktopWindow isn't complete.  However, the code
6978         is in place for it to work correctly and only needs 
6979         GetDesktopWindow to do so.  
6981 Tue Jan 25 05:51:47 1994  julliard@di.epfl.ch (Alexandre Julliard)
6983         * [windows/defwnd.c]
6984         Added handling of activation messages (WM_ACTIVATE,
6985         WM_NCACTIVATE, WM_MOUSEACTIVATE)
6987         * [windows/event.c]
6988         De-activate the window when losing input focus.
6990         * [windows/focus.c]
6991         Bug fix in SetFocus().
6993         * [windows/message.c]
6994         Added activation of the window on mouse-clicks.
6996         * [windows/nonclient.c]
6997         Changed non-client area painting to use the correct colors
6998         depending upon the activation state.
6999         Added WM_NCACTIVATE message handling.
7000         Fixed a couple of bugs in window moving and resizing.
7002         * [windows/winpos.c]
7003         Implemented Get/SetActiveWindow().
7004         Implemented SWP_NOACTIVATE flag in SetWindowPos().
7006 Jan 17, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7008         * [misc/message.c]
7009         MessageBox has a CaptionBar for his title except for
7010                 MB_SYSTEMMODAL with MB_ICONHAND.
7012         * [windows/nonclient.c]
7013         Call to NC_TrackSysMenu on SysMenu button mouse click.
7015         * [windows/defwnd.c]
7016         Call to NC_TrackSysMenu on Alt key (VK_MENU).
7018         * [controls/menu.c]
7019         New GetSystemMenu() function.
7020         New CopySystemMenu() internal function.
7021         New NC_TrackSysMenu() internal function.
7023         * [include/windows.h]
7024         New WM_INITMENU, WM_INITMENUPOPUP, WM_MENUSELECT & WM_MENUCHAR defines.
7026 ----------------------------------------------------------------------
7027 Thu Jan 13 11:45:13 1994  John Richardson <jrichard@cs.uml.edu>
7029         * [window/win.c]
7030         Added functions EnableWindow, IsWindowEnabled, and helper 
7031         WIN_SetSensitive.
7032         
7033         * [window/event.c]
7034         Added checks for WS_DISABLED windows in EVENT_key, EVENT_MotionNotify,
7035         EVENT_ButtonPress, EVENT_ButtonRelease, EVENT_ConfigureNotify,
7036         EVENT_FocusIn, EVENT_FocusOut, and EVENT_EnterNotify.  Key and 
7037         button presses beep for a disabled window.  
7038         If anyone finds better places for these checks, please tell me.
7040 Jan 17, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7042         * [misc/message.c]
7043         Cleanup on buttons answer value returned.
7045         * [control/combo.c]
7046         Now use OBM_COMBO bitmap dropdown button.
7048 Mon Jan 17 21:56:45 1994  Erik Bos (erik@trashcan.hacktic.nl)
7050         * [misc/comm/c]
7051         A few bugfixes.
7053 Tue Jan 18 06:36:48 1994  julliard@di.epfl.ch (Alexandre Julliard)
7055         * [loader/cursor.c]
7056         Added X cursor for IDC_SIZENS and IDC_SIZEWE.
7058         * [include/options.h] [misc/main.c]  (New files)
7059         Rewrote main() function to get rid of Xt application context,
7060         and added command-line option parsing.
7062         * [objects/color.c]
7063         Use of a private map now configurable with command-line option.
7065         * [windows/defwnd.c]
7066         Added WM_SYSCOMMAND handling, and better WM_SETCURSOR handling.
7068         * [windows/event.c]
7069         Removed ConfigureNotify event handler (no longer needed).
7071         * [windows/message.c]
7072         Send WM_SETCURSOR message on mouse events.
7074         * [windows/nonclient.c]
7075         Use OEM bitmaps for the drawing of the non-client area.
7076         Added caption bar buttons handling, and moving and resizing of
7077         the window via the window frame (bypassing the window manager).
7079         * [windows/painting.c]
7080         Bug fix in BeginPaint().
7082         * [windows/win.c]
7083         Set the override_redirect flag for windows (to bypass window
7084         manager).
7086         * [windows/winpos.c]
7087         Implemented WindowFromPoint(), ChildWindowFromPoint(),
7088         BringWindowToTop(), Get/SetInternalWindowPos(),
7089         Get/SetWindowPlacement().
7091 Mon Jan 17 20:48:24 1994  Bob Amstadt  (bob@pooh)
7093         * [memory/heap.c]
7094         Added support for multiple local heaps.
7096 ----------------------------------------------------------------------
7097 Tue Jan  4 13:01:33 1994  David Metcalfe <david@prism.demon.co.uk>
7099         * [window/caret.c]
7100         Modified code to use system timer.
7102 Jan 9, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7104         * [windows/win.c]
7105         Windows create if required new XLIB MenuBar & CaptionBar.
7107         * [windows/defwnd.c]
7108         WM_CALCSIZE Move & Resize caption, menubar & scrollbars.
7109         (I'm not sure it's the good place for it, but it work...)
7111         * [loader/resource.c]
7112         optimize in FindResourceByNumber, make lseek() if next type ...
7114         * [controls/scroll.c]
7115         scrollbar buttons are now using system resources bitmaps.
7117         * [controls/caption.c] - new file ...
7118         captionbar showing title, close button with SysMenu,
7119         and other buttons using system resources bitmaps.
7121         * [controls/menu.c]
7122         New functions: SetMenuItemBitmaps() with 'glues',
7123         Make new version of LoadMenu() & ParseMenu(),
7124         ( put #define USE_POPUPMENU ).
7125         Implementation of MenuBar functions.
7126         
7127         * [sysres.dll]
7128         New bitmaps for system such OBM_CLOSE, OBM_MINIMIZE, OBM_UPARROWI.
7129         New SYSMENU menu, it don't work yet ! :-((
7131 Tue Jan 11 05:27:45 1994  julliard@di.epfl.ch (Alexandre Julliard
7133         * [memory/atom.c]
7134         Fixed a bug that could cause atoms to be case-sensitive.
7136         * [misc/rect.c]
7137         Bug fix in SubtractRect().
7139         * [objects/clipping.c]
7140         Bug fix when setting the clip mask to an empty region.
7142         * [windows/dce.c]
7143         Bug fix in ReleaseDC().
7145         * [windows/dialog.c]
7146         Call AdjustWindowRectEx() before creating the dialog window.
7147         Added support for DS_MODALFRAME style.
7149         * [windows/event.c]
7150         Cleaned up event handling and removed old Xt stuff.
7151         Moved double-click handling to windows/message.c
7153         * [windows/focus.c]
7154         Bug fix: only set the X focus when the window is viewable.
7156         * [windows/graphics.c]
7157         Rewritten DrawReliefRect() to use brush instead of pen, and
7158         to use the system colors.
7160         * [windows/message.c]
7161         Implemented WM_NCHITTEST message sending, and non-client
7162         mouse messages.
7163         Cleaned up double-click handling, and removed the Xt code.
7165         * [windows/nonclient.c]  (New file)
7166         Implemented AdjustWindowRect().
7167         Implemented WM_NCCALCSIZE, WM_NCHITTEST and WM_NCPAINT handling.
7169         * [windows/painting.c]
7170         Added sending of the WM_NCPAINT message in BeginPaint().
7172         * [windows/sysmetrics.c] [include/sysmetrics.h]  (New files)
7173         Implemented system metrics.
7175         * [windows/win.c]
7176         Bug fix in setting the parent and owner in CreateWindow().
7177         Removed the Xt code.
7179         * [windows/winpos.c]
7180         Added sending of the WM_NCPAINT message in SetWindowPos().
7181         Removed the Xt code.
7183 Sun Jan  2 12:38:53 1994  David Metcalfe <david@prism.demon.co.uk>
7185         * [windows/class.c]
7186         Implemented GetClassName and GetClassInfo.
7188         * [windows/caret.c]
7189         Various improvements to text caret code.
7191 Fri Dec 31 15:22:22 1993  John Brezak <brezak@apollo.hp.com>
7193         * [misc/comm.c]
7194         Patches to work with NetBSD.
7196 Thu Dec 30 12:11:55 1993  John Richardson <jrichard@cs.uml.edu>
7198         * [objects/bitblt.c] Added StretchBlt().
7200 Tue Jan  4 05:22:07 1994  julliard@di.epfl.ch (Alexandre Julliard)
7202         * [misc/user.c]
7203         Added creation of system message queue.
7205         * [objects/bitmap.c] [objects/dcvalues.c] [windows/dc.c]
7206         Added DC size fields into DC structure.         
7208         * [objects/clipping.c]
7209         Bug fix in CLIPPING_IntersectRect().
7211         * [windows/class.c]
7212         Allocate a DCE instead of a DC for CS_CLASSDC classes.
7214         * [windows/clipping.c]
7215         Fixed GetUpdateRect() and GetUpdateRgn() to clip to the client area.
7217         * [windows/dce.c]
7218         Implemented GetDCEx() and GetWindowDC().
7220         * [windows/defwnd.c]
7221         Implemented WM_WINDOWPOSCHANGED handling.
7223         * [windows/event.c]
7224         Preliminary support for Xlib event handling instead of Xt callbacks.
7225         Changed MSG_AddMsg() calls to hardware_event() or PostMessage().
7227         * [windows/message.c]
7228         Preliminary support for multiple message queues.
7229         Implemented hardware_event() to store messages into the system queue.
7230         Implemented Get/SetTaskQueue().
7231         Better WM_PAINT and WM_TIMER handling.
7232         Changes to use Xlib instead of Xt for events.
7234         * [windows/painting.c]
7235         Use GetDCEx() to retrieve the DC, to get a correct visible region.
7237         * [windows/timer.c]
7238         Moved the timer procedure callback into DispatchMessage().
7239         Changed implementation to get rid of Xt timeouts.  Timer checking
7240         is now done inside GetMessage().
7242         * [windows/win.c]
7243         Allocate a DCE instead of a DC for CS_OWNDC windows.
7244         Replaced Xt calls with Xlib calls.
7245         Moved window positioning functions into windows/winpos.c
7247         * [windows/winpos.c]  (New file)
7248         Rewritten most of the window positioning functions.
7249         Implemented SetWindowPos() and MapWindowPoints().
7251 Jan 3, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7253         * [if1632/user.spec]
7254         Bad arguments description for function SetDlgItemText.
7256         * [objects/text.c]
7257         Function DrawText now handle DT_CALCRECT request.
7259         * [misc/message.c]
7260         Message boxes now use DrawText with DT_CALCRECT.
7262         * [windows/graphics.c]
7263         Bug fix in function FrameRect, (it was using PEN instead of BRUSH).
7265         * [windows/win.c]
7266         Bug fix for flags in function ShowWindow.
7267         More accurate WM_SIZE generated by function ShowWindow.
7269         * [controls/listbox.c]
7270         More code for LBS_MULTIPLESEL.
7271         More code for LBS_MULTICOLUMN.
7273         * [include/windows.h]
7274         Bad define for MF_SEPARATOR.
7276         * [controls/menu.c]
7277         New functions: PopMenuWndProc() with 'glues',
7278         CreatePopupMenu(), AppendMenu(), InsertMenu(), RemoveMenu(), 
7279         DeleteMenu(), ModifyMenu(), TrackPopupMenu().
7280         Code in stubs: CreateMenu(), DestroyMenu(). 
7282 Sat Jan  1 10:22:43 1994  Bob Amstadt  (bob@pooh)
7284         * loader/wine.c: Added support for relocation types 5 and 6.
7286 Mon Dec 27 11:06:03 1993  Erik Bos (erik@trashcan.hacktic.nl)
7288         * [misc/comm.c]
7289         new functions: BuildCommDCB(), OpenComm(), CloseComm(),
7290         SetCommBreak(), ClearCommBreak(), EscapeCommFunction(), FlushComm(),
7291         GetCommError(), SetCommEventMask(), GetCommEventMask(),
7292         SetCommState(), GetCommState(), TransmitCommChar(), ReadComm(), 
7293         WriteComm().
7295 Wed Dec 22 13:00:15 1993  David Metcalfe <david@prism.demon.co.uk>
7297         * [windows/caret.c]
7298         Implemented text caret functions.
7300 Tue Dec 21 06:13:58 1993  julliard@di.epfl.ch (Alexandre Julliard)
7302         * [loader/wine.c]
7303         Bug fix in LoadImage().
7305         * [objects/bitblt.c] [objects/clipping.c] [objects/text.c]
7306           [windows/dc.c] [windows/dce.c] [windows/graphics.c]
7307         Modified graphics calls to take into account the DC origin.
7309         * [windows/defwnd.c]
7310         Added preliminary WM_NCCALCSIZE handling.
7312         * [windows/event.c]
7313         Send WM_NCCALCSIZE message on resize event.
7315         * [windows/win.c]
7316         Send WM_NCCALCSIZE message in CreateWindow().
7317         Realize widgets at creation time (should prevent problems with
7318         unrealized widgets).
7320 Dec 19, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7322         * [controls/static.c]
7323         Send mouse & keyboard message received to its parent.
7325         * [controls/scroll.c]
7326         Send keyboard message received to its parent.
7328         * [controls/listbox.c]
7329         Add Navigation keys .
7330         ListBox now use VSCROLL & HSCROLL instead of children.
7331         Alpha version of LBS_MULTIPLESEL.
7332         Alpha version of LBS_MULTICOLUMN.
7334         * [controls/combo.c]
7335         Add Navigation keys on closed ComboBox.
7336         Remove useless 'COMBOBOX_CreateComboBox' function.
7338 Mon Dec 19 20:39:34 1993  Erik Bos (erik@trashcan.hacktic.nl)
7340         * [loader/wine.
7341         LoadImage() modified to use FindFile().
7343         * [misc/file.c]
7344         SetErrorMode added
7346         * [misc/dos_fs.c]
7347         bug fixes.
7349 Dec 13, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7351         * [memory/global.c]
7352         bug fix in GlobalGetFreeSegment : good ptr in 'g_prev'.
7354         * [sysres.dll]
7355         preliminary version of a 'glass of wine' bitmap
7357         * [windows/event.c]
7358         New function 'GetCapture'.
7360         * [controls/scroll.c]
7361         Remove useless 'SCROLLBAR_CreateScrollBar' function.
7363         * [controls/listbox.c]
7364         Remove useless 'LISTBOX_CreateListBox' function.
7366 Mon Dec 13 13:51:00 1993  David Metcalfe <david@prism.demon.co.uk>
7368         * [objects/font.c]
7369         Corrected bugs in GetCharWidth().
7371         * [windows/event.c]
7372         Modified EVENT_key to send Windows virtual key codes for
7373         WM_KEYDOWN and WM_KEYUP messages, and a WM_CHAR message
7374         for printable characters.
7376 Wed Dec 08 19:20:00 1993  Karl Guenter Wuensch (hn324wu@unidui.uni-duisburg.de)
7378         * [windows/graphics.c]
7379         Added Polyline and Polygon
7381 Mon Dec 13 14:51:54 1993  Erik Bos (erik@trashcan.hacktic.nl)
7383         * [controls/listbox.c]
7384         ListBoxDirectory() modified to use dos_fs.c's functions to
7385         access files&|drives.
7387 Sat Dec 04 17:04:23 1993  Erik Bos (erik@trashcan.hacktic.nl)
7389         * [misc/dos_fs.c]
7390         Added FindFile() to search a file in a dos/unix style path.
7391         
7392         * [misc/file.c]
7393         New Win31 functions: OpenFile, _lcreate, _llseek, GetTempDrive,
7394         GetTempFileName, GetWindowsDirectory, GetSystemDirectory,
7395         GetDriveType.                      
7397         * [misc/int21.c]
7398         Modified.
7400 Wed Dec  1 16:20:45 1993  Miguel de Icaza  (miguel@roxanne.nuclecu.unam.mx)
7402         * [misc/profile.c]
7403         The Profile functions now return the correct values. They now
7404         implement all the features described in the SDK.
7406 Tue Nov 30 13:55:27 1993  Bob Amstadt  (bob at amscons)
7408         * [loader/selector.c]
7409         Rewrote selector aliasing routines to use System V IPC
7410         routine to alias memory segments.
7412 Nov 28, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7414         * [controls/listbox.c]
7415         More consistency in functions using wIndexes
7417         * [controls/scroll.c]
7418         New function : ShowScrollBar().
7420         * [loader/cursor.c] ... New file
7421         Move cursor functions from [loader/resource.c].
7422         New function : ClipCursor().
7423         New function : GetClipCursor().
7424         New function : CreateCursor().
7425         SetCursor() now working using gloabal variable 'winHasCursor'.
7427         *[object/palette.c]
7428         New stub only : SelectPalette().
7429         New stub only : RealizePalette().
7431         *[win/event.c]
7432         New function : EVENT_enter_notify(),
7433                 update 'winHasCursor' and send WM_SETCURSOR.
7435         *[win/defwnd.c]
7436         Add processing of WM_SETCURSOR message.
7438         *[win/win.c]
7439         New members in WND structure : hCursor, hWndVScroll & hWndHScroll. 
7440         CreateWindowEx() now create children for WM_HSCROLL & WM_VSCROLL.
7441         New function ClientToScreen().
7442         New function ScreenToClient().
7444 Mon Nov 25 18:25:40 1993  Erik Bos (erik@trashcan.hacktic.nl)
7446         * [files.h / regfunc.h / misc/dos.c]
7447         Removed.
7449         * [misc/dos_fs.c]
7450         Added support for loading dosdrive cfg from wine.ini.
7452         * [misc/int21.c]
7453         Modified.
7456 Wed Nov 24 11:37:33 1993  julliard@disuns2.epfl.ch (Alexandre Julliard)
7458         * [include/atom.h] [memory/atom.c]
7459         Implemented atoms.
7461         * [windows/class.c]
7462         Modified RegisterClass() to use atoms.
7463         Implemented CS_GLOBALCLASS style.
7465         * [windows/message.c]
7466         Implemented RegisterWindowMessage().
7468         * [loader/resource.c]
7469         Bug fix in LoadResource().
7471         * [windows/dialog.c]
7472         Modified CreateDialogParam() to use Find/LoadResource().
7474 Mon Nov 22 13:58:56 1993  David Metcalfe <david@prism.demon.co.uk>
7476         * [windows/scroll.c]
7477         Preliminary implementations of ScrollWindow, ScrollDC and
7478         ScrollWindowEx.
7480 Nov 21, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7482         * [controls/listbox.c]
7483         Optimization of redraw during 'Add' or 'Insert'.
7485         * [controls/scroll.c]
7486         Optimization of WM_PAINT during 'thumbtracking'.
7488         * [controls/button.c]
7489         Add of beta implement of 'BS_OWNERDRAW'
7491         * [controls/static.c]
7492         Style 'SS_ICON' new supported.
7494         * [misc/message.c]
7495         Begin of implemantation of MB_XXX styles.
7497         * [loader/resource.c]
7498         Function LoadIcon() : now prepare transparency Bitmap mask.
7499         Function LoadCursor() : now prepare a 'X pixmapcursor'.
7500         New function SetCursor() : not finished.
7501         New function ShowCursor() : not finished.
7502         New function AccessResource() : stub.
7504         * [obj/dib.c]
7505         Function DrawIcon(): deugging phase of icon transparency mask.
7507         * [loader/library.c]
7508         new file for news functions LoadLibrary() & FreeLibrary().
7510         * [sysres.dll]
7511         Resources only 16bits DLL for System Resources, icons, etc...
7513 Sun Nov 14 14:39:06 1993  julliard@di.epfl.ch (Alexandre Julliard)
7515         * [include/dialog.h] [windows/dialog.c]
7516         Simplified dialog template parsing.
7517         Implemented DialogBoxIndirect().
7519         * [windows/win.c]
7520         Fixed bug in CreateWindow() when aborting window creation.
7521         Modified UpdateWindow() to only update visible windows.
7522         Implemented IsWindow().
7524 Nov 14, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7526         * [controls/listbox.c]
7527         Listbox control window : new messages.
7529         * [controls/combo.c]
7530         Combo box control window : new messages.
7532         * [misc/message.c]
7533         Moved stub MessageBox() to this new file.
7534         Implemented of a callback, now MessageBox show a window.
7536         * [loader/resource.c]
7537         New function DestroyIcon()
7538         New function DestroyCursor()
7539         Filled stub LoadIcon()
7540         Filled stub LoadCursor()
7541         Bug fixed in FindResourceByName() : missing lseek().
7543         * [obj/dib.c]
7544         New function DrawIcon()
7546         * [windows/win.c]
7547         New function CloseWindow()
7548         New function OpenIcon()
7549         New function IsIconic()
7550         New Function FindWindow()
7552 Sun Nov 14 08:27:19 1993  Karl Guenter Wuensch (hz225wu@unidui.uni-duisburg.de)
7554         * [loader/selector.c]
7555         Wrote AllocCStoDSAlias() and AllocDStoCSAlias()
7557 Sun Nov 14 08:27:19 1993  Bob Amstadt  (bob at amscons)
7559         * [loader/selector.c]
7560         Wrote AllocSelector() and PrestoChangoSelector().  YUK!
7562 Sat Nov 13 13:56:42 1993  Bob Amstadt  (bob at amscons)
7564         * [loader/resource.c]
7565         Wrote FindResource(), LoadResource(), LockResource(),
7566         and FreeResource()
7568         * [include/segmem.h] [loader/selector.c] [loader/signal.h]
7569         Changed selector allocation method.
7571 Sun Nov 10 08:27:19 1993  Karl Guenter Wuensch (hz225wu@unidui.uni-duisburg.de)
7573         * [if1632/callback.c if1632/call.S if1632/user.spec] 
7574         added Catch (KERNEL.55) and Throw (KERNEL.56)
7575         
7576 Nov 7, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7578         * [controls/scroll.c]
7579         Scroll bar control window
7580                 Bug resolved : Painting message before scroll visible.
7582         * [controls/listbox.c]
7583         Listbox control window
7584                 Destroy cleanup.
7586         * [controls/combo.c]
7587         Combo box control window
7588                 Destroy cleanup.
7590         * [controls/button.c]
7591                 GetCheck Message now return is state.
7593         * [windows/win.c]
7594         New function IsWindowVisible()
7596 Mon Nov  1 14:40:21 1993  julliard@di.epfl.ch (Alexandre Julliard)
7598         * [if1632/user.spec]
7599         Removed some duplicate entries.
7601         * [include/dialog.h] [windows/dialog.c]
7602         Implemented dialog units and fonts.
7603         Added preliminary loading of dialog resources.
7604         Preliminary implementation of DialogBox().
7605         Implemented Get/SetDlgItem* functions.
7607         * [windows/win.c]
7608         Implemented WM_PARENTNOTIFY message.
7609         Implemented CreateWindowEx() and GetWindow().
7610         Completed DestroyWindow().
7612 Mon Nov  1 18:19:34 1993  Erik Bos
7614         * [loader/signal.c]
7615         Added support for int 0x11 & 0x12.
7617         * [loader/int21.c]
7618         Improved function handling.
7620 Sun Oct 31 12:38:09 1993  David Metcalfe <david@prism.demon.co.uk>
7622         * [objects/font.c]
7623         Implemented GetCharWidth().
7625 Wed Oct 27 09:56:06 1993  John Brezak <brezak@ch.hp.com>
7627         * [Makefile]
7628         Use GNU malloc.
7630         * [include/int21.h include/wine.h]
7631         Change sc_eflags to sc_efl .
7633         * [include/wine.h]
7634         Fix misplaced #endif
7635         Include <signal.h> for NetBSD
7637         * [loader/int21.c]
7638         Don't include <sys/vfs.h> in NetBSD
7639         Do include <sys/mount.h> in NetBSD
7640         Cleanup some lint.
7642 Mon Oct 26 17:59:01 1993  Erik Bos
7644         * [include/int21.h]
7645         Added.
7647         * [loader/int21.c]
7648         Added support for many dos ints.
7650         * [misc/file.c] [include/files.h]
7651         Moved OPEN_MAX and DosDriveStruct to files.h.
7653 Sun Oct 24 13:36:50 1993  David Metcalfe <david@prism.demon.co.uk>
7655         * [controls/button.c]
7656         Implemented CHECKBOX, AUTOCHECKBOX, 3STATE, AUTO3STATE,
7657         RADIOBUTTON, AUTORADIOBUTTON, GROUPBOX controls, together with
7658         a preliminary USERBUTTON control.
7660         * [objects/text.c]
7661         Corrected bugs in TEXT_NextLine() and added handling of prefix
7662         character.
7664         * [controls/button.c]
7665         Disabled focus handling by commenting out SetFocus() calls until
7666         serious bug can be found.
7668 Oct  20, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7670         * [controls/listbox.c]
7671         Listbox control window
7672                 Painting cleanup, new messages processed.
7674         * [controls/scroll.c]
7675         Scroll bar control window
7676                 Painting cleanup.
7678         * [controls/combo.c]
7679         Combo box control window
7680                 Painting cleanup.
7682 Tue Oct 12 17:50:11 1993  julliard@di.epfl.ch (Alexandre Julliard)
7684         * [objects/color.c] [objects/palette.c] [windows/syscolor.c]
7685         Better support for the private color map.
7686         Using a private map is now the default.
7688         * [windows/win.c]
7689         Bug fix.
7691         * [include/dialog.h] [windows/dialog.c]
7692         Implemented CreateDialog*() and IsDialogMessage().
7694         * [misc/xt.c] [windows/defwnd.c]
7695         Moved DefWindowProc() to defwnd.c.
7696         Added WM_NCCREATE, WM_NCDESTROY and WM_CTLCOLOR handling.
7698         * [windows/defdlg.c]
7699         Started the implementation of DefDlgProc().
7701         * [windows/win.c]
7702         Added WM_NCCREATE and WM_NCDESTROY messages.
7703         Implemented IsChild().
7705 Tue Oct 12 17:50:20 1993  David Metcalfe <david@prism.demon.co.uk>
7707         * [windows/focus.c]
7708         Implemented GetFocus() and SetFocus().
7710         * [windows/event.c]
7711         Added processing of FocusIn and FocusOut events.
7713         * [windows/graphics.c]
7714         Added DrawFocusRect().
7716 Sat Oct  9 14:36:57 1993  Erik Bos
7718         * [loader/int1a.c]
7719         Added more function handling.
7721 Wed Oct  6 12:21:22 1993  Erik Bos
7723         * [loader/signal.c]
7724         Split signal.c into int1a.c, int21.c and signal.c.
7726 Tue Oct  5 22:12:40 1993  David Metcalfe
7728         * [controls/static.c] [control/widgets.c]
7729         Static control class.
7731         * [objects/text.c]
7732         Added processing of additional DT_ flags to DrawText().
7734         * [windows/win.c] [misc/xt.c]
7735         Added SetWindowText() and WM_SETTEXT processing.
7737 Tue Oct  5 22:12:40 1993  Martin Ayotte
7739         * [controls/listbox.c]
7740         Listbox control window
7742         * [controls/scroll.c]
7743         Scroll bar control window
7745         * [controls/combo.c]
7746         Combo box control window
7748         * [include/combo.h]
7749         Combo box definitions
7751         * [include/listbox.h]
7752         Listbox definitions
7754         * [include/scroll.h]
7755         Scroll bar definitions
7757 Sat Oct  2 09:35:54 1993  Bob Amstadt  (bob at pooh)
7759         * [if1632/callback.c]
7760         Fixed bug in MakeProcInstance().
7762         * [debugger/info.c]
7763         Changed x/w and x/b to display in hex.
7765         * [debugger/i386-pinsn.c]
7766         Added code to properly unassemble 16-bit indexing.
7768 Fri Oct  1 08:29:05 1993  Bob Amstadt  (bob at pooh)
7770         * [loader/files.c] [misc/profile.c]
7771         System initialization file is now called "wine.ini" and can
7772         be located in the current directory, the user's home directory,
7773         or any directories specified in the WINEPATH environment variable.
7775         * [tools/build.c] [if1632/call.S] [include/regfunc.h]
7776         Changed register function stack to match sigcontext structure.
7778 Thu Sep 30 22:30:21 1993  Bob Amstadt  (bob at pooh)
7780         * [loader/files.c]
7781         Created function to search a path for files to load.
7783         * [loader/wine.c]
7784         Modified exe and dll file loading to search through path
7785         specified by the environment variable WINEPATH.
7787 Thu Sep 30 22:30:21 1993  Eric Youngdale
7789         * [loader/signal.c]
7790         Bug fix.
7792 Thu Sep 30 22:30:21 1993  John Brezak
7794         * [debugger/dbg.y] [debugger/debug.l] [debugger/dtest.c] 
7795           [debugger/obstack.h]
7796         Updates to allow debugger to function under NetBSD.
7798 Tue Sep 28 19:59:21 1993  David Metcalfe
7800         * [windows/win.c]
7801         Implemented support for windows with no borders.  Added
7802         GetParent(), GetDlgCtrlID(), GetWindowText() and
7803         GetWindowTextLength() functions.
7805         * [misc/xt.c]
7806         Added processing of WM_GETTEXT and WM_GETTEXTLENGTH messages
7807         to DefWindowProc and Implemented MessageBeep().
7809         * [windows/syscolor.c]
7810         Added preliminary system color support.
7812         * [controls/button1.c]
7813         Mods to new button control and integration with Wine.
7815 Tue Sep 28 19:59:21 1993  Johannes Ruscheinski
7817         * [controls/button1.c]
7818         New button control using GDI functions.
7819         
7820 Tue Sep 28 19:59:21 1993  Eric Youngdale
7822         * [debugger/*]
7823         Added debugging capabilities to Wine
7825 Sat Sep 25 13:22:50 1993  Alexandre Julliard  (julliard@di.epfl.ch)
7827         * [objects/region.c]
7828         Bug fix
7830 Fri Sep 24 07:35:11 1993  Bob Amstadt  (bob at pooh)
7832         * [tools/build.c]
7833         Changed the entry point code to reduce the standard entry
7834         point size from 22 bytes to 10 bytes.  This leaves about
7835         4000 free entry points instead of the 800 in version 0.4.2.
7837         * [loader/resource.c]
7838         Rewrote functions to allow loading of resources from any
7839         DLL.
7841         * [loader/wine.c] [include/wine.h]
7842         Added functions GetFilenameFromInstance() and GetFileInfo()
7843         to search for a loaded file based on its instance handle.
7844         Added a field in struct w_files to make searching by an instance
7845         handle faster.
7847 Tue Sep 21 09:57:01 1993  miguel@roxanne.nuclecu.unam.mx (Miguel de Icaza)
7849         * [misc/profile.c]
7850         Implementation of .INI file handling
7852 Mon Sep 20 10:54:32 1993  David Metcalfe
7854         * [misc/profile.c.old]
7855         Implementation of .INI file handling
7857 Mon Sep 20 10:54:32 1993  John Brezak
7859         * [controls/WinButton.c]
7860         Bug fix with call to XtVaSetValues.
7862 Mon Sep 20 10:54:32 1993  Alexandre Julliard
7864         * [windows/win.c]
7865         Quick patch to get colormaps to work with button widget.
7867 Mon Sep 20 02:42:54 1993    (yngvi@hafro.is)
7869         * misc/keyboard.c: 
7870         Ifdefed out some bogus Ansi<->Oem conversion functions
7872         * misc/lstr.c: 
7873         New file with string functions like lstr* IsChar* *Ansi* 
7875 Wed Sep 15 20:35:10 1993  John Brezak
7877         * [loader/signal.c]
7878         Additional changes to support NetBSD.
7880 Wed Sep 15 22:19:22 1993  Martin Ayotte
7882         * [windows/graphics.c]
7883         Added FrameRect function
7885 Tue Sep 14 13:54:45 1993  Alexandre Julliard
7887         * [objects/color.c] [objects/palette.c]
7888         Preliminary support for private color map.
7890         * [windows/class.c]
7891         Implemented CS_CLASSDC style.
7893         * [windows/dce.c]
7894         Moved DCEs to USER heap.
7895         Implemented class and window DCs.
7897         * [windows/event.c]
7898         Implemented CS_DBLCLKS style.
7900         * [windows/graphics.c]
7901         Bug fix in SetPixel().
7903         * [windows/win.c]       
7904         Implemented CS_OWNDC style.
7905         Implemented Get/SetWindowLong().
7907         * [controls/menu.c] [windows/class.c] [windows/clipping.c] 
7908           [windows/dce.c] [windows/message.c] [windows/win.c]   
7909         Moved windows from global heap to USER heap.
7911 Mon Sep 13 05:00:11 1993  Eric Youngdale
7913         * [Makefile] [if1632/relay.c] [include/dlls.h] [selector.c]
7914           [loader/wine.c] [tools/build.c]
7915         Added ability to generate missing functions statistics.
7917 Mon Sep 13 12:09:47 1993  Scott A. Laird  (scott@curly)
7919         * [WIN31-APPLETS]
7920         Added new file.
7922         * [if1632/kernel.spec]
7923         Added definitions for GetProfile{Int,String} and SetHandleCount.
7925         * [if1632/keyboard.spec]
7926         Created interface specification for Keyboard driver DLL.
7928         * [if1632/relay.c]
7929         Added keyboard.dll to list of included DLLs.
7931         * [if1632/user.spec]
7932         Added LoadAccelerators definition.
7934         * [loader/resource.c]
7935         Added LoadAccelerators stub.
7937         * [misc/file.c]
7938         Changed OpenFile, and added SetHandleCount (for winfile.exe)
7940         * [misc/keyboard.c]
7941         Added keyboard code.
7943         * [misc/profile.c] [misc/xt.c]
7944         Moved GetPrivateProfile* commands here, and added GetProfile*
7945         commands.
7947 Mon Sep 13 10:24:37 1993  Andrew Bulhak
7949         * [windows/utility.c]
7950         Implemented MulDiv(), OutputDebugString() and wvsprintf()
7952 Fri Sep 10 09:13:30 1993  John Brezak
7954         * [*/Makefile]
7955         Created patch to allow BSD make to build wine.
7957         * [windows/win.c]
7958         Fixed NULL pointer reference.
7960         * [windows/message.c] [misc/xt.c]
7961         Defined HZ to handle system specific timing.
7963         * [windows/graphics.c]
7964         Use M_PI is PI
7966         * [objects/pallete.c]
7967         NetBSD does not have /usr/include/values.h and MAXINT is INT_MAX.
7969         * [dump.c] [ldt.c] [wine.c]
7970         ifdef'ed linux headers for linux compile.
7972         * [loader/ldtlib.c]
7973         Add NetBSD system calls when compiled on that system.
7975         * [loader/selector.c]
7976         Use mmap(MAP_ANON, ...) for NetBSD.
7978         * [if1632/call.S]
7979         Fixed selector assumptions.
7981 Thu Sep 9 20:01:37 1993  David Metcalfe
7983         * [controls/WinButton*] [controls/button.c] [controls/widget.c]
7984           [windows/win.c] [windows/class.c]
7985         Added 3D button control and tied into CreateWindow()
7987 Thu Sep  9 07:35:24 1993  Scott Laird
7989         * [if1632/sound.spec]
7990         Created interface specification for SOUND DLL.
7992         * [if1632/win87em.spec]
7993         Added more functions to the WIN87EM DLL interface specification
7995         * [misc/emulate.c]
7996         Created stubs for the new math emulation functions.
7998         * [misc/sound.c]
7999         Created stubs for the SOUND DLL.
8001 Sun Sep  5 21:02:10 1993  John Burton
8003         * [if1632/kernel.spec]
8004         Added interface specifications for OpenFile, _lclose, _lread, _lopen,
8005         and _lwrite.
8007         * [include/windows.h]
8008         Added OF_ macros
8010         * [misc/file.c]
8011         Implemented OpenFile, _lclose, _lread, _lopen and _lwrite.
8013 Fri Sep  3 18:47:03 1993  Alexandre Julliard
8015         * [windows/dc.c]
8016         Bug fix
8018         * [objects/text.c]
8019         Bug fix
8021 Fri Sep  3 18:47:03 1993  Bob Amstadt
8023         * [objects/linedda.c]
8024         Finished LineDDA().
8026 Fri Sep  3 11:52:18 1993  Bob Amstadt
8028         * [windows/timer.c]
8029         Changed to use CallWindowProc() rather directly calling callback.
8031         * [windows/event.c]
8032         Implemented SetCapture() and ReleaseCapture()
8034         * [windows/keyboard.c]
8035         Created stub for GetKeyState()
8037         * [objects/linedda.c]
8038         Created stub for LineDDA()
8040         * [if1632/callback.c]
8041         Created callback handler for LineDDA callback procedure.
8043         * [if1632/callback.c]
8044         Created FreeProcInstance()
8046 Fri Sep  3 08:36:52 1993  David Metcalfe
8048         * [loader/signal.c]
8049         Patch to and code for INT 1A
8051 Thu Sep  2 00:31:54 1993  Alexandre Julliard
8053         * [objects/font.c] [objects/text.c]
8054         More text support: implemented justification and underlining.
8056         * [windows/clipping.c] [objects/clipping.c]
8057         Moved low-level clipping functions to objects/clipping.c.
8059         * [windows/clipping.c] [windows/event.c] [windows/message.c]
8060         Implemented window update regions.
8062         * [windows/dc.c] [objects/dcvalues.c]
8063         Moved some device-independent DC functions to objects/dcvalues.c.
8065         * [windows/graphics.c]
8066         Implemented InvertRect() and GetPixel().
8068 Sat Aug 28 08:40:23 1993  Eric Youngdale
8070         * [include/neexe.h] [loader/wine.c]
8071         Added code to handle relocation type 4.
8073         * [loader/signal.h] [loader/wine.c] [loader/selector.c]
8074         Added support for dos interrupts.
8076 Thu 26 Aug 19:15:00 1993  Eric Youngdale
8078         * [loader/selector.c]
8079         Fixed bug dealing with loading DLLs.
8081 Thu Aug 26 19:22:40 1993  Alexandre Julliard
8083         * [include/gdi.h] [objects/font.c] [windows/dc.c]
8084         Beginning of real font support.
8086         * [windows/graphics.c]
8087         Implemented PatBlt().
8089         * [memory/global.c]
8090         Corrected a bug with linked list handling in GlobalAlloc().
8092         * [objects/bitmap.c]
8093         Corrected a bug in BITMAP_SelectObject().
8095 Tue Aug 24 19:22:40 1993  David Metcalfe
8097         * [controls/Command*] [controls/Label*] [controls[MenuButto*]
8098           [controls/SmeMenuButt*]
8099         Change code to support & as a special character in menu item text.
8101 Tue Aug 24 19:22:40 1993  Alexandre Julliard
8103         * [include/gdi.h] [windows/dc.c]
8104         Heavily modified the DC structure for better device-independence.
8106         * [objects/bitmap.c]
8107         Implemented bitmap dimensions.
8109         * [windows/dc.c] [windows/dce.c]
8110         Implemented DC state saving and restoring.
8112         * [windows/dc.c]
8113         Implemented ROP mode.
8115         * [windows/graphics.c]
8116         Implemented FillRect().
8118 Mon Aug 23 22:08:34 1993  Bob Amstadt  (bob at pooh)
8120         * [misc/xt.c]
8121         Fixed bug in InvalidateRect().  Solitaire attempted to
8122         clear window before it was realized.
8124         * [loader/resource.c]
8125         Began rewrite of LoadBitmap().
8127         * [loader/wine.c]
8128         Fixed code which set Argv and Argc global variables.
8130         * [loader/selector.c]
8131         Added code to set up command line arguments.
8133         * [include/neexe.h]
8134         Fixed error in PSP structure.
8136 Tue Aug 17 20:41:12 1993  Alexandre Julliard
8138         * [include/gdi.h] [windows/dc.c]
8139         Implemented device capabilities.
8141         * [objects/region.c]
8142         Implemented EqualRgn() and CombineRgn().
8144         * [windows/clipping.c]
8145         Implemented Save/RestoreVisRgn().
8147         * [windows/graphics.c]
8148         Implemented PaintRgn() and FillRgn().
8150         * [windows/mapping.c]
8151         Implemented mapping modes.
8153 Tue Aug 10 14:07:38 1993  Alexandre Julliard
8155         * [if1632/user.spec] [misc/rect.c]
8156         Implemented rectangle API functions.
8158         * [if1632/gdi.spec] [include/gdi.h] [objects/region.c]
8159         Implemented regions.
8161         * [windows/class.c]
8162         Corrected a typo in UnregisterClass().
8164         * [windows/clipping.c] [windows/dc.c]
8165         Implemented DC clipping and visible region.
8167 Tue Aug 10 20:57:56 1993  Bob Amstadt  (bob at pooh)
8169         * [controls/menu.c] [windows/win.c]
8170         SetMenu(), GetMenu(), CheckMenuItem() implemented
8172 Thu Aug  5 22:33:22 1993  Bob Amstadt  (bob at pooh)
8174         * [controls/menu.c] [windows/win.c]
8175         Many improvements menus.  LoadMenu() should work.
8177 Wed Aug  4 14:55:36 1993  Alexandre Julliard
8179         * [objects/dib.c]
8180         Started the implementation of device-independent bitmaps.
8182         * [objects/bitmap.c]
8183         Added support for multiple bitmap depths.
8185         * [objects/brush.c]
8186         Implemented pattern brushes.
8188         * [windows/dc.c] [windows/graphics.c]
8189         Implemented some GDI graphics primitives.
8191 Tue Aug  3 21:16:47 1993  Bob Amstadt  (bob at pooh)
8193         * [controls/menu.c] [windows/win.c] [include/menu.h]
8194         Code to load class menus from executable file.
8196         * [if1632/user.spec]
8197         Fixed specification of SendMessage() and PostMessage.
8199 Mon Jul 26 21:53:24 1993  Alexandre Julliard
8201         * [if1632/call.S]
8202         Corrected a bug in KERNEL_InitTask().
8204         * [include/windows.h]
8205         Added a lot of constants.
8207         * [loader/selector.c]
8208         Corrected a bug in segment allocation in CreateSelectors().
8210         * [objects/bitmap.c]
8211         Implemented SelectObject() for bitmaps.
8213         * [objects/brush.c]
8214         Implemented hatched brushes and SelectObject().
8216         * [objects/gdiobj.c]
8217         Removed linked list (not needed).
8219         * [objects/palette.c]
8220         Implemented system palette creation and misc. palette API functions.
8222         * [windows/timer.c]
8223         Implemented timers.
8225         * [windows/dc.c]
8226         Implemented memory device contexts.
8228 Tue Jul 20 10:38:59 1993  Bob Amstadt  (bob at pooh)
8230         * [dos.c]
8231         Split DOS3Call() out of kernel.c.  Added support for get date
8232         and time functions.
8234         * [call.S]
8235         Added function ReturnFromRegisterFunc() to allow DOS calls
8236         to return values in registers.
8238         * [regfunc.h]
8239         Macros to access registers saved on stack.
8241 Tue Jul 20 10:38:59 1993  Alexandre Julliard
8243         * [win.c]
8244         Corrected allocation of the WM_CREATE data structure.
8246         * [dce.c] [dce.h]
8247         Implemented DCE handling.
8249         * [bitmap.c] [brush.c] [dc.c] [font.c] [gdi.h] [gdi.spec] 
8250           [gdiobj.c] [palette.c] [pen.c]
8251         Implemented the GDI objects data structures and allocation.
8253         * [windows.h]
8254         Added several structures and constants for GDI objects.
8256 Mon Jul 19 12:51:10 1993  Bob Amstadt  (bob at pooh)
8258         * [ldtlib.c]
8259         Modified system calls to match Linus' new interface for
8260         the LDT modification.
8262         * [win.c]
8263         Fixed bug with WM_CREATE message.
8265         * [heap.c] [kernel.spec]
8266         Completed local heap allocation functions.
8268         * [global.c]
8269         Created function GlobalQuickAlloc() for easy allocation from DLLs
8271 Tue Jul 13 20:31:31 1993  Bob Amstadt  (bob at pooh)
8273         * [global.c]
8274         Completed global memory pool API
8276 Sun Jul 11 16:59:52 1993  Alexandre Julliard
8278         * [message.c] [user.c] [user.spec] [windows.h]
8279         Added emulation of Windows message queue.
8281 Thu Jul  8 19:29:27 1993  Bob Amstadt  (bob at pooh)
8283         * [build.c] Original by Bob Amstadt
8284         * [callback.c] Original by Bob Amstadt, updates by 
8285         Alexandre Julliard
8286         * [dump.c] Original by Bob Amstadt
8287         * [global.c] Original by Bob Amstadt
8288         * [heap.c] Original by Bob Amstadt
8289         * [kernel.c] Original by Bob Amstadt
8290         * [ldt.c] Original by Bob Amstadt
8291         * [ldtlib.c] Original by Bob Amstadt
8292         * [relay.c] Original by Bob Amstadt
8293         * [resource.c] Original by Bob Amstadt, updates by 
8294         Alexandre Juliard
8295         * [selector.c] Original by Bob Amstadt, updates by Eric Youngdale
8296         * [user.c] Original by Bob Amstadt
8297         * [wine.c] Original by Bob Amstadt, updates by Eric Youngdale and
8298         Alexandre Julliard
8299         * [wintcl.c] Original by Regents of the University of California,
8300         updates by Peter MacDonald and Alexandre Julliard
8301         * [callback.h] Original by Bob Amstadt
8302         * [dlls.h] Original by Bob Amstadt
8303         * [heap.h] Original by Bob Amstadt
8304         * [neexe.h] Original by Bob Amstadt
8305         * [prototypes.h] Original by Bob Amstadt, updates by 
8306         Eric Youngdale
8307         * [segmem.h] Original by Bob Amstadt
8308         * [tkInt.h] Original by Regents of the University of California
8309         * [windows.h] Original by Peter MacDonald, updates by 
8310         Alexandre Julliard and Bob Amstadt
8311         * [wine.h] Original by Eric Youngdale
8312         * [kernel.spec] Original by Bob Amstadt, updates by 
8313         Alexandre Julliard
8314         * [gdi.spec] Original by Bob Amstadt, updates by 
8315         Alexandre Julliard
8316         * [shell.spec] Original by Bob Amstadt
8317         * [unixlib.spec] Original by Bob Amstadt
8318         * [user.spec] Original by Bob Amstadt, updates by Alexandre Julliard
8319         * [win87em.spec] Original by Bob Amstadt
8320         * [Windows.tcl] Original by Peter MacDonald, updates by 
8321         Alexandre Julliard
8322         * [build-spec.txt] Original by Bob Amstadt
8323         * [if1632.S] Original by Bob Amstadt, updates by Eric Youngdale