Release 960913
[wine/multimedia.git] / ChangeLog
blob4db62be9d878cf5a5b382d198358192bf29f8391
1 ----------------------------------------------------------------------
2 Wed Sep 11 18:08:30 1996  Albrecht Kleine  <kleine@ak.sax.de>
4         * [windows/event.c]
5         Minor improvements in setting event time in MSG struct.
7         * [windows/hook.c]
8         Removed an useless 'unimplemented hook' message.
10         * [windows/win.c]
11         Added a WH_CBT hook call during window creation: good for CTL3D.DLL
13 Wed Sep 11 11:19:56 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
14         * [loader/pe_image.c]
15         Fixed imports with no name/ordinal list (MFC30.DLL).
16         Added borland style - ordinal import (wsock32.dll).
18         * [files/file.c] [win32/file.c] [if1632/kernel.spec]
19           [if1632/kernel32.spec] [include/windows.h]
20         Win32 and Win16 code use the same filehandles/HFILEs.
21         Added SetEndOfFile, MoveFile*, diverse *W functions.
23         * [loader/pe_image.c]
24         Fixed argument 2 to DllEntry.
26         * [misc/comm.c]
27         Adapt to filehandling changes, win32 code still broken.
29         * [misc/registry.c]
30         Use Wine filehandling.
31         StartupRegistry to add startup-detected registry entries.
33         * [miscemu/dpmi.c] [miscemu/int21.c]
34         Some missing interrupt-functions added.
36         * [if1632/gdi32.spec][if1632/user32.spec]
37         Some thunks to 16 bit equivalent functions added.
39 Sat Sep  7 11:36:57 EDT 1996  Matthew Ghio <ghio@netcom.com>
41         * [misc/winsocket.c]
42         Rewrote WINSOCK_select() and WSAFDIsSet() to properly convert
43         Windows fd_set structs.
45         * [if1632/winsock.spec]
46         Corrected arguments to select().
48 ----------------------------------------------------------------------
49 Sun Sep  1 19:22:46 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
51         * [misc/commdlg.c] [if1632/commdlg.spec]
52         Fixed some SEGPTR problems.
54         * [windows/winproc.c]
55         Added message translation for WM_COMPAREITEM, WM_DELETEITEM
56         and WM_MEASUREITEM
57         Fixed 16-to-32 translation for WM_HSCROLL/WM_VSCROLL.
59 Fri Aug 30 13:39:00 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
60         * [files/drive.c]
61         GetDriveType16 should report CDROMs as DRIVE_REMOTE (ACME setup).
63         * [multimedia/audio.c]
64         The minimum audiobuffer size shrunk somewhere in linux 1.3.xx
65         below 4096 bytes.
67         * [multimedia/mcistring.c]
68         Segptr string handling fixed & enhanced.
70         * [if1632/crtdll.spec][misc/crtdll.c]
71         malloc,free,_strupr,_stricmp,_strcmpi added.
73         * [if1632/wsock32.spec][misc/winsock.c]
74         More direct thunks into unix libc and WsControl-stub added.
76 Thu Aug 29 23:54:25 1996  Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
78         * [objects/metafile.c]
79         Bug fixes to both recording and playback of ExtTextOut().
81 Tue Aug 27 15:43:21 1996  Slaven Rezic  <eserte@cs.tu-berlin.de>
83         * [multimedia/audio.c] [multimedia/mcianim.c]
84           [multimedia/mcicda.c] [multimedia/midi.c]
85         Made cdaudio, audio and midi work for FreeBSD.
87 Sun Aug 25 20:18:56 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
89         * [misc/crtdll.c] [if1632/crtdll.spec]
90         Added a lot of functions.
92         * [misc/ole2nls.c]
93         Added ID values for all languages in GetUserDefaultLCID().
94         
95 Fri Aug 24 21:02:28 1996  Albrecht Kleine  <kleine@ak.sax.de>
97         * [windows/event.c] [windows/message.c]
98         First attempt at hook WH_JOURNALPLAYBACK.
100 ----------------------------------------------------------------------
101 Sat Aug 24 13:57:01 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
103         * [controls/scroll.c]
104         Renamed SCROLLINFO to SCROLLBAR_INFO to avoid conflict with Win32.
106         * [graphics/driver.c] [include/x11drv.h]
107         New files for graphics driver handling.
109         * [if1632/relay.c] [include/registers.h] [tools/build.c]
110         Implemented Win32 register functions. Not really tested yet.
112         * [include/gdi.h]
113         Added a lot of functions to the DC func table.
115         * [loader/pe_image.c]
116         Initialise %fs before calling out to 32-bit code.
118         * [windows/hook.c]
119         Fixed bug in HOOK_GetHook().
121         * [windows/win.c]
122         Fixed FindWindow to return an error if the class name doesn't exist.
124 Wed Aug 21 15:15:53 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
126         * [if1632/Makefile.in] [misc/mpr.c] [if1632/mpr.spec]
127         mpr.dll specs added.
129         * [if1632/kernel32.spec] [win32/newfns.c] [memory/global.c]
130         QueryPerformanceCounter(), GlobalMemoryStatus() added.
132         * [if1632/user32.spec] [win32/error.c]
133         SetLastErrorEx() added.
135         * [misc/commdlg.c]
136         lpstrFilter might be NULL in FILE_WMInitDialog (NS 3.0 setup).
138         * [misc/registry.c]
139         Some missing NULL ptr checks added, misc clean up.
141 Tue Aug 20 21:00:00 1996 Alex Korobka  <alex@pharm.sunysb.edu>
143         * [controls/menu.c]
144         Adjust popup menu coordinates so that it always stays within 
145         the desktop.
147         * [misc/main.c]
148         Fixed GetEnvironment() return value for lpEnv == NULL case.
150 Mon Aug 19 22:48:36 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
152         * [misc/crtdll.c] [if1632/crtdll.spec]
153         Added some is* functions, strlen and tolower.
154         
155 Mon Aug 19 13:33:13 1996  Stephen Simmons  <ssimmons@vitsemi.com>
157         * [tools/wineconf]
158         New perl script to generate the wine.conf file.
160 Fri Aug 16 15:31:44 1996   John Harvey <john@division.co.uk>
162         * [if1632/gdi.spec]
163         Lots of printer functions.
164         
165         * [include/callback.h]
166         New functions for printer driver support.
168         * [include/gdi.h]
169         New/changed structures to support printer driver.
171         * [misc/escape.c]
172         New version that uses function table in DC structure.
174         * [objects/dc.c]
175         CreateDC copes with things other than Display.
176         X code for CreateDC moved to graphics/x11drv directory.
177         CreateCompatibleDC copies func table from original DC.
179         * [objects/font.c]
180         GetTextExtentPoint32A,GetTextMetrics16 use function table in
181         DC and code moved to drivers directory.
183         * [misc/printdrv.c] [graphics/*/*] [include/win16drv.h]
184         New files for printer support. 
186 Fri Aug 16 12:33:00 1996  Bruce Milner <Bruce.Milner@genetics.utah.edu>
188         * [controls/scroll.c]
189         Added SetScrollInfo32 and GetScrollInfo32.  These just call existing
190         code. There are a few options in which I'm probably the wrong person
191         for the job (page size and disable bar). There are comments in the
192         code as to what they should do.
194         * [objects/gdiobj.c] [objects/font.c] [include/font.h]
195         Added 32 bit version of FONT_GetObject.
197 ----------------------------------------------------------------------
198 Sun Aug 18 12:17:54 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
200         * [files/drive.c]
201         Added 'Filesystem' option in drives configuration.
203         * [files/dos_fs.c] 
204         Added handling of case-insensitive filesystems.
206         * [memory/selector.c] [include/stackframe.h]
207         Removed MAKE_SEGPTR.
209         * [misc/commdlg.c] [multimedia/mcistring.c]
210         Replaced MAKE_SEGPTR by the SEGPTR_* macros.
212         * [objects/bitblt.c] [windows/graphics.c]
213         Use an intermediary pixmap to avoid some BadMatch errors on
214         XGetImage().
216 Sun Aug 18 09:21:27 1996  Albrecht Kleine  <kleine@ak.sax.de>
218         * [windows/message.c]
219         Added handling of WM_NC...mouse messages in JOURNALRECORD hook.
221         * [misc/ver.c]
222         Fixed a bad string result in VerQueryValue[16|32A|32W].
224 Fri Aug 16 19:55:04 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
226         * [if1632/crtdll.spec] [misc/crtdll.c]
227         More additions to get win95 programs further down the road.
229         * [if1632/kernel.spec] [loader/module.c]
230         GetModuleName() added.
231         LoadModule(): params->showCmd can be NULL.
233         * [if1632/kernel32.spec] [if1632/thunk.c]
234         ThunkConnect32() stub added.
236         * [loader/resource.c]
237         Entries include lastentry.
239         * [misc/shell.c] [files/file.c]
240         Made progman work again.
242 Fri Aug 16 09:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
243         
244         * [windows/defwnd.c] [windows/winpos.c] [windows/painting.c]
245         Icon painting fixes.
247         * [windows/winpos.c] [windows/painting.c]
248         Enforce and follow hrgnUpdate more closely to cut down on
249         redundant RedrawWindow() calls.
251         * [windows/event.c]
252         Process ConfigureNotify only for managed windows.
254         * [windows/winpos.c]
255         Do not redraw parent if the window was hidden before SetWindowPos().
257         * [windows/nonclient.c]
258         Omit some nonclient decoration painting for managed windows.
260         * [controls/menu.c] [windows/mdi.c] [windows/nonclient.c]
261         Implemented WM_NEXTMENU.
263         * [controls/listbox.c]
264         Multicolumn listboxes return WVR_VREDRAW on WM_NCCALCSIZE.
266         * [misc/shell.c]
267         Added .ICO file handling to ExtractIcon().
269 ----------------------------------------------------------------------
270 Sun Aug 11 13:00:20 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
272         * [configure.in] [include/acconfig.h] [tools/build.c]
273         Added check for underscore on external symbols.
275         * [memory/selector.c] [memory/global.c]
276         Fixed FreeSelector() to free only one selector.
277         Added SELECTOR_FreeBlock() to free an array of selectors.
279         * [objects/color.c]
280         Fixed a bug in COLOR_ToLogical() that caused GetPixel() to fail on
281         hi-color displays.
283         * [tools/build.c] [if1632/crtdll.spec]
284         Added 'extern' type, used for external variables or functions.
286         * [windows/winpos.c]
287         Allow de-activating a window in WINPOS_ChangeActiveWindow().
289         * [windows/winproc.c]
290         Added 32-to-16 translation for button messages.
291         Fixed WINPROC_GetPtr() to avoid crashes on 32-bit procedures that
292         happen to be valid SEGPTRs.
294 Sat Aug 10 18:22:25 1996  Albrecht Kleine  <kleine@ak.sax.de>
296         * [windows/message.c]
297         Removed a FIXME in MSG_PeekHardwareMsg(): produces correct 
298         data for the JOURNALRECORD-hook (using EVENTMSG16 structure).
300         * [if1632/gdi.spec] [include/windows.h] [objects/metafile.c]
301         Introduced undocumented API function IsValidMetaFile(), plus a
302         minor fix in last patch of CopyMetaFile().
304         * [objects/gdiobj.c]
305         Removed a FIXME in IsGDIObject(): added magic word check.
307 Sun Aug 10 18:10:10 1996  Bruce Milner <Bruce.Milner@genetics.utah.edu>
309         * [controls/statuswin.c]
310         First pass at implementing the StatusWindow class.
312         * [include/commctrl.h]
313         Header file for common controls.
315         * [controls/widgets.c]
316         Added InitCommonControls().
318         * [if1632/comctl32.spec]
319         Add DrawStatusTextA, CreateStatusWindowA, InitCommonControls.
321         * [win32/findfile.c] [if1632/kernel32.spec]
322         Add FindNextFile32A, FindClose.
323         Modified FindFirstFile32A so it works with FindNextFile32A.
325         * [include/winbase.h]
326         Fixed WIN32_FIND_DATA structure member names.
328 Sat Aug 10 09:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
330         * [windows/scroll.c]
331         Changed scrolling routines to benefit from DCE code update.
333 Thu Aug  8 18:05:09 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
335         * [files/file.c]
336         SearchPath* could get NULL for lastpart argument.
338         * [if1632/build-spec.txt] [documentation/debugging]
339         Varargs documentation added, debugging hints updated.
341         * [if1632/crtdll.spec][misc/crtdll.c][misc/Makefile.in]
342         Started to implement CRTDLL.
344         * [if1632/wsock32.spec]
345         Some thunks to standard libc functions (structures have the same
346         elements, but perhaps wrong offset due to packing).
348         * [include/kernel32.h][include/windows.h][win32/*.c][loader/main.c]
349         Merged kernel32.h into windows.h.
351         * [misc/lstr.c]
352         Enhanced FormatMessage().
354         * [misc/main.c] [if1632/kernel.spec] [include/windows.h]
355         GetVersion() updated to new naming standard.
356         Changed language handling to support language ids.
358         * [misc/shell.c]
359         Enhanced FindExecutable, so it finds files in the search path too.
361         * [win32/environment.c]
362         GetCommandLine* updated.
364         * [loader/resource.c] [loader/pe_resource.c]
365         FindResourceEx32* added.
366         Loading of messagetables added.
367         Language handling now uses Wine default language id.
369 ----------------------------------------------------------------------
370 Sun Aug  4 18:18:48 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
372         * [controls/scroll.c]
373         Attempted to implement undocumented scroll-bar messages.
375         * [tools/build.c] [include/callback.h] [windows/winproc.c]
376         CallTo16_* functions now get DS from the previous 16-bit stackframe.
378         * [if1632/thunk.c] [include/callback.h]
379         Added thunks to implement callbacks for the emulator. Now all the
380         Enum* functions always take a real function pointer even in the
381         emulator.
382         
383         * [loader/builtin.c]
384         Removed binary search in BUILTIN_GetEntryPoint32(), as it didn't
385         work with NULL entry points. Using linear search now.
387         * [loader/module.c]
388         Implemented IsSharedSelector().
390         * [loader/task.c]
391         Changed SwitchStackTo/Back to use the instance data to store the
392         previous stack instead of the TDB. Also copy the local variables
393         onto the new stack.
394         Added GetExeVersion() and SetTackSignalProc().
395         Implemented SetSigHandler().
397 Sat Aug  3 22:19:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
399         * [controls/menu.c]
400         "Fixed" problem in deleting menus where win32 could get into an
401         endless loop when it crashed. I think I've fixed the symptoms, not
402         the original problem so it might be worth further investigation.
404         * [debugger/registers.c]
405         Added missing #ifdefs on FS_REG and GS_REG, needed for FreeBSD to
406         compile wine properly.
408         * [files/dos_fs.c]
409         Made DOSFS_Hash and DOSFS_Match non-static so they can be called
410         from win32/findfile.c (q.v.).
412         * [if1632/gdi32.spec]
413         Added SetMapMode (call existing function)
415         * [if1632/kernel32.spec]
416         Added FindFirstFileA and SetFileAttributesA.
418         * [if1632/user32.spec]
419         Added BringWindowToTop, CreatePopupMenu, GetKeyState, GetParent,
420         IsDlgButtonChecked (call existing functions) and IsDialogMessageA,
421         UnhookWindowsHookEx.
423         * [win32/file.c]
424         Added stub function SetFileAttributes32A. It's a stub because I
425         can't really work out what this function should do with most
426         attributes in a Unix environment. Anyone care to expand it?
428         * [win32/findfile.c]
429         New file. Initial stab at FindFirstFile. This doesn't work as
430         specified yet, though a lot of the groundwork is there. I haven't
431         time to work on this for the next month, so if anyone wants to pick
432         it up and run with it please do.
434         * [win32/memory.c]
435         Removed malloc.h from includes (covered by stdlib.h include, and
436         gets rid of a warning in FreeBSD).
438         * [win32/newfns.c]
439         UnhookWindowsHookEx32A stub added.
441         * [win32/user32.c]
442         Added implementation of IsDialogMessage32A.
444         * [windows/dialog.c]
445         IsDlgButtonChecked now calls SendDlgItemMessage32A instead of
446         SendDlgItemMessage16.
448 Sat Aug  3 18:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
450         * [windows/graphics.c]
451         Removed rectangle checking (conflicted with nonstandard
452         mapping modes). 
454         * [windows/dialog.c]
455         Added check for child-style dialogs to DS_ABSALIGN
456         coordinate conversion.
458         * [objects/color.c]
459         Cleaned up misc. bits
461 Thu Aug  1 10:51:45 1996  Andrew Lewycky <plewycky@oise.utoronto.ca>
463         * [windows/focus.c] [windows/event.c] [windows/win.c]
464           [windows/defdlg.c]
465         Fixes to focusing and activation.
467         * [windows/defdlg.c]
468         Properly(?) handle DM_GETDEFID.
470         * [controls/combo.c]
471         Handle CB_FINDSTRINGEXACT, CB_SETEDITSEL, CB_GETEDITSEL.
472         CBCheckSize: Adjust edit position.
474 Tue Jul 30 09:46:36 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
476         * [files/file.c] [include/file.h] [loader/module.c] [loader/ne_image.c]
477         Pass HFILEs instead of unix-fds to self-loader code.
479 Mon Jul 29 21:48:25 1996  Albrecht Kleine  <kleine@ak.sax.de>
481         * [include/metafile.h] [objects/metafile.c] [objects/text.c]
482         Implemented handling of some new metafile records (META_...)
483         in PlayMetaFileRecord(), rewrite of 'case META_EXTTEXTOUT'.
484         Added functions like MF_StretchBlt() for usage in metafiles.
485         Minor bugfix in CopyMetafile().
487         * [objects/bitmap.c][objects/dib.c]
488         Added check for metafile-DC in Bitmap and DIB functions:
489         CreateCompatibleBitmap() etc.
491 ----------------------------------------------------------------------
492 Sun Jul 28 17:57:19 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
494         * [loader/task.c] [include/task.h]
495         Implemented SwitchStackTo()/SwitchStackBack().
497         * [include/wintypes.h] [loader/main.c]
498         Added __winelib variable to distinguish between emulator and
499         library at run-time. Later on, this should avoid some
500         recompilations when building Winelib.
502         * [windows/property.c]
503         Implemented Win32 functions for window properties.
505 Fri Jul 26 18:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
507         * [controls/listbox.c]
508         Implemented LBS_SORT style, WM_COMPAREITEM, and WM_DELETEITEM
509         messages.
511         * [controls/menu.c]
512         Call TranslateMessage() to enable shortcuts (on WM_CHAR).
514         * [include/cursoricon.h]
515         Moved #pragma pack(1) back to where it belongs.
517         * [objects/palette.c]
518         RealizeDefaultPalette() maps to system colors only.
519         Do not broadcast palette notifications when in TrueColor.
521         * [objects/color.c] [include/palette.h]
522         Miscellaneous optimizations. Had to fix several
523         "improvements" made to my patch for previous release.
525         * [objects/dib.c]
526         Reverse dib bits order for 24-bit SetDIBits().
528         * [objects/dc.c]
529         GetDeviceCaps() does not return RC_PALETTE when in TrueColor.
531         * [windows/scroll.c]
532         Scroll update region too.
534         * [windows/message.c]
535         Include QS_MOUSE into the event mask for nonclient mouse
536         message filter. Fixes problems with Word 6 freezing when
537         mouse hits nonclient area.
539         * [windows/win.c] 
540         Allow top-level windows to be linked as HWND_TOP in CreateWindow().
542         * [windows/winpos.c] [windows/mdi.c]
543         Attempt to fix control menu duplication.
545 Fri Jul 26 09:49:35 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
547         * [files/drive.c]
548         GetDriveType32A(): return value for CDROM fixed.
550         * [files/file.c]
551         SearchPath* added.
553         * [if1632/gdi32.spec] [objects/brush.c]
554         SetBrushOrgEx() added.
556         * [loader/pe_resource.c]
557         If even loading the default entry fails, we just use the first
558         entry from the resource directory.
560         [loader/task.c]
561         SetSigHandler() stub added, Paradox 4.5 now starts up.
563         * [misc/comm.c] [include/windows.h] [if1632/kernel32.spec]
564         COMM functions updated to win32, not complete.
566         * [misc/lstr.c]
567         FormatMessageA partially implemented.
569         * [include/miscemu.h] [memory/selector.c]
570           [memory/global.c] [miscemu/dosmem.c]
571         DOS memory handling changed: 1MB preallocated block, real-mode
572         segment handling possible, SetSelectorBase into lower physical 1MB
573         possible.
575         * [miscemu/dpmi.c]
576         Real-mode segments changed, real-mode int 21,ax=6506 added.
577         AX=0x0303 added.
579         * [multimedia/time.c]
580         Fixed bug in killTimer.
582         * [objects/bitmap.c]
583         LoadImageA partially implemented.
585 Wed Jul 24 18:20:24 1996  Albrecht Kleine  <kleine@ak.sax.de>
587         * [include/dde_mem.h][include/dde_proc.h]
588           [ipc/dde_atom.c][ipc/dde_proc.c][windows/message.c]
589           [ipc/generic_hash.h][library/miscstubs.c]
590         Changes for error free compilation using "--with-ipc":
591         replaced some names with *16-equivalent (e.g. MSG to MSG16),
592         modified prototype of function DDE_GlobalFree() .
594         * [objects/palette.c]
595         Added check for metafile-DC in GDISelectPalette(),
596         GDIRealizePalette(),RealizeDefaultPalette() and
597         IsDCCurrentPalette().
599 Tue Jul 23 22:46:53 1996  Andrew Lewycky <plewycky@oise.utoronto.ca>
601         * [controls/edit.c]
602         EDIT_WM_Create: Don't EDIT_EM_ReplaceSel if created with lParam = "",
603         fixes Winhelp.
605         * [windows/dialog.c]
606         DIALOG_CreateIndirect: Initialise dlgProc before creating children.
608 ----------------------------------------------------------------------
609 Wed Jul 17 16:10:16 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
611         * [configure.in]
612         Generate include/config.h instead of putting everything on the
613         command-line.
614         Removed -with-malloc-debug option (not useful for end users
615         anyway).
616         Added check for memmove().
618         * [include/wintypes.h] [*/Makefile.in]
619         Added definition of __WINE__ symbol when compiling Wine code
620         (emulator or library) as opposed to user programs.
622         * [debugger/editline.c] [debugger/readline/*]
623         Moved all the readline code into debugger/editline.c. Removed the
624         readline subdirectory.
626         * [files/profile.c]
627         Added PROFILE_GetWineIniInt().
629         * [include/stackframe.h] [loader/task.c]
630         The 16-bit stackframe now also exists for Winelib (even though it
631         only ever contains one frame).
633         * [loader/module.c]
634         Added function MODULE_CreateDummyModule() to create a dummy Win16
635         module for Winelib and Win32.
637         * [memory/ldt.c]
638         Make sure the ldt entry contents will be acceptable for the Linux
639         kernel.
641         * [memory/selector.c]
642         Fixed SetSelectorLimit() when the limit is in pages.
644         * [misc/port.c]
645         Added memmove().
647         * [miscemu/dpmi.c]
648         Clear the segment registers that contain the selector being freed
649         in int31/ax=0001.
650         Added missing break after SelectorAccessRights call.
652         * [win32/struct32.c]
653         Added conversions for MDICREATESTRUCT.
655         * [windows/winproc.c]
656         Added message conversions for WM_MDICREATE.
658 Tue Jul 16 19:46:24 1996  Pavel Kankovsky <KAN@frode.dcit.cz>
660         * [windows/class.c]
661         Added GetExePtr() call in CLASS_FindClassByAtom().
663 Mon Jul 15 17:49:38 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
665         * [if1632/*.spec]
666         Some more trivial specs added.
668         * [if1632/gdi32.spec] [objects/font.c][windows/dialog.c]
669         CreateFont32* added, changed to new naming std.
671         * [include/windows.h] [include/mmsystem.h] [include/wintypes.h]
672         Some defines/types added.
674         * [win32/thread.c]
675         TlsSetValue() returns boolean.
677         * [win32/resource.c] [loader/pe_resource.c] [loader/resource.c]
678           [controls/menu.c] [objects/bitmap.c]
679         Cleanup of the resource functions, mostly changes to new naming
680         standard and fixing of argument types so that they agree with the
681         win16/win32 API.
683 Thu Jul 11 15:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
685         * [windows/winpos.c]
686         ShowWindow() fixes.
688         * [windows/mdi.c]
689         Fix reversed LPARAM in WM_MDIACTIVATE.
691         * [wine.ini]
692         New option AllocSystemColors tells Wine how many colors to grab
693         from the system colormap.
695         * [objects/bitblt.c] [objects/dc.c]
696         Fixed pink garbage over Word buttons in PseudoColor. Added
697         optional DSTINVERT shortcut for faster text selection.
699         * [misc/wsprintf.c]
700         Skip bogus segmented pointers in wsvnprintf16(). 
702         * [objects/gdiobj.c]
703         Added palette handling to UnrealizeObject(). 
705         * [objects/color.c] [objects/palette.c] [windows/dce.c]
706         Wine gets palette manager with support for more than 20 colors. 
707         Only PseudoColor and TrueColor visuals tested so far.
709         * [windows/winpos.c] [windows/win.c] 
710         Set X size hints for WS_EX_DLGMODALFRAME windows (no resize) and
711         use XReconfigureWMWindows() instead of XConfigureWindow() in
712         managed mode.
714         * [memory/global.c]
715         Do not allocate more than 640K of DOS memory.
717         * [misc/main.c]
718         Do not allow -desktop and -managed together.
720 ----------------------------------------------------------------------
721 Fri Jul 12 17:43:05 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
723         * [controls/scroll.c]
724         Use Win32 heap functions to allocate scroll-bar info structure.
726         * [debugger/dbg.y] [debugger/registers.c]
727         Added support for FS and GS segment registers.
728         Check that segment registers value are OK before returning from
729         the signal handler.
731         * [tools/build.c] [if1632/relay.c] [loader/builtin.c]
732         Changed relay debugging for Win32 function: the relay code now
733         passes the entry point address instead of the function name.
735         * [tools/build.c] [miscemu/*.c]
736         Added support for data entry points in Win32 DLLs.
737         Added 'cdecl' function type for Win32.
738         For 'register' function, the relay code now passes a pointer to
739         the SIGCONTEXT structure.
740         
741         * [include/registers.h] [include/wine.h]
742         Moved SIGCONTEXT structure definition in registers.h.
744         * [loader/pe_image.c]
745         Don't die at once if some Win32 entry points cannot be found, but
746         set them to NULL, just like we do for Win16. This allows some
747         programs to go further before crashing.
749         * [loader/task.c] [loader/main.c]
750         Moved global initializations from InitTask() to MAIN_Init(), as
751         they no longer need a task context with the new SEGPTR heap functions.
753         * [memory/string.c]
754         Added lstrcpynAtoW and lstrcpynWtoA; not real API functions, but
755         very convenient.
757         * [windows/graphics.c]
758         Partially implemented DrawEdge().
760         * [windows/timer.c] [windows/caret.c]
761         Implemented Win32 timer handling. Updated caret management to use
762         Win32 timers (avoids having to use a Win16 callback).
764         * [windows/win.c]
765         Prevent programs from setting some style bits with
766         SetWindowLong(). This should fix some BadMatch crashes.
767         Link new windows at the end of the linked list.
769         * [windows/winpos.c]
770         Don't try to activate a child window in ShowWindow().
772         * [windows/winproc.c]
773         Added a 32->32 thunk to support Ansi-Unicode translation.
775 Wed Jul 10 22:11:12 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
777         * [files/directory.c]
778         Additional (undocumented) return value for GetTempDrive() added.
780         * [files/dos_fs.c] [files/file.c] [include/windows.h]
781         GetTempFileName32* added.
782         GetShortPathName* added.
784         * [memory/string.c]
785         Win16 lstrcpy() can get NULL ptrs as argument and survive.
787         * [misc/lzexpand.c]
788         LZOpenFile(): also try opening with compressed filename if normal
789         open fails.
791         * [misc/ole2nls.c] [misc/lstr.c] [include/windows.h]
792         Char* added.
793         CompareString* added.
795 Sun Jul  7 01:22:14 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
797         * [objects/font.c] [if1632/gdi32.spec]
798         CreateFontIndirect32A and CreateFontIndirect32W added.
800         * [misc/ole2nls.c]
801         GetUserDefaultLCID return values updated for new languages.
802         Finnish support added for GetLocaleInfoA.
804         * [object/palette] [gdi32.spec]
805         RealizePalette32 and SelectPalette32 added.
806         
807 Sat Jul  6 17:27:30 1996  Ronan Waide  <root@waider.ie>
809         * [misc/shell.c]
810         Fixup for SHELL_FindExecutable so that File->Run from progman
811         works once more. Still needs some more fixups - grep for FIXME in
812         this file.
814 ----------------------------------------------------------------------
815 Fri Jul  5 16:27:43 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
817         * [controls/desktop.c]
818         Use Windows file I/O routines to load the desktop bitmap.
820         * [files/file.c]
821         Implemented RemoveDirectory* and DeleteFile*.
823         * [include/wine.h]
824         Added SIGCONTEXT typedef to replace #define sigcontext_struct.
826         * [loader/task.c]
827         Fixed initial breakpoint setting for Win32 tasks.
829         * [misc/wsprintf.c]
830         Ignore Unicode formats for wsprintf16().
832         * [objects/font.c]
833         Implemented Win32 version of GetTextMetrics.
835         * [windows/winproc.c] [windows/win.c] [windows/class.c]
836           [windows/dialog.c]
837         Modified windows procedures to use thunks, to ensure that the
838         procedure can be called directly from the Windows program.
840         * [windows/win.c]
841         Added function WIN_BuildWinArray() to make it easier to enumerate
842         windows. Implemented Win32 version of EnumWindows() and friends.
844 Fri Jul  5 11:56:22 1996  Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
846         * [controls/button.c] [windows/win.c]
847         Operator precedence fixes.
849         * [controls/edit.c]
850         Implemented ES_PASSWORD, ES_LOWERCASE and ES_UPPERCASE styles.
851         Fixed word wrap with long words.
853         * [debugger/debug.l]
854         New alias "where" for command "backtrace".
856         * [if1632/gdi.spec]
857         Corrected parameter of ExtTextOut.
859         * [loader/module.c]
860         Corrected printing of table of modules.
862         * [misc/spy.c]
863         Removed superfluous \n in message name.
865         * [windows/message.c]
866         Declared MSG_SendMessage as static.
867         Changed parameter of DirectedYield() from queue handle to task handle.
868         Removed warning mesages for argument of printf.
870         * [windows/nonclient.c]
871         Added the flag DT_NOPREFIX when drawing window titles.
873         * [windows/win.c]
874         WIN_WalkWindows now prints the invalid window handle.
875         Added a warning if Get-/SetWindowWord/-Long gets an invalid offset.
877         * [windows/winproc.c]
878         Allows creating dialog windows with NULL as dialog function.
880 Wed Jul  3 09:26:41 1996  Andrew Lewycky <plewycky@oise.utoronto.ca>
882         * [windows/event.c]
883         EVENT_key: Fixes to VK_ code generation for space bar and
884         punctuation.
886         * [files/file.c]
887         GetTempFileName: first character in temporary name is "~".
889         * [memory/heap.c]
890         HEAP_MakeInUseBlockFree now frees the whole subheap if possible.
892         * [objects/text.c]
893         ExtTextOut16(): handle NULL lpRect and ETO_OPAQUE.
895         * [misc/driver.c]
896         Removed some bugs and reformatted. Actually loads drivers now.
898         * [include/callback.h]
899         Added CallDriverProc() and CallWindowsExitProc().
901         * [loader/module.c]
902         MODULE_CallWEP(): new function.
904         * [misc/lzexpand.c]
905         LZSeek(): return new pointer, not old one.
907         * [misc/ver.c]
908         find_ne_resource(): fixed dependence on LZSeek() bug.
909         GetFileResource(): initialize reslen before using it.
911         * [windows/class.c]
912         SetClassWord(): add missing else.
914         * [objects/font.c]
915         lpFontList is now MAX_FONTS+1. It used to overwrite the array.
916         InitFontList: allocate one huge array of structures.
917         FONT_MatchFont: uppercase the face name.
919 Thu Jun 27 12:41:40 1996  Bruce Milner <bruce@genetics.utah.edu>
921         * [memory/heap.c]
922         Fixed a typo in HeapReAlloc().
924 Tue Jun 25 22:22:03 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
926         * [files/directory.c] [files/drive.c] [if1632/kernel.spec]
927           [if1632/kernel32.spec] [if1632/shell.spec] [include/windows.h]
928         GetTempPath* added
929         GetDriveType* fixed, updated to NewNameStandard.
930         GetCurrentDirectory* fixed (needs to prepend X:\).
932         * [controls/listbox.c]
933         Missing NULL check added.
935         * [if1632/winmm.spec] [loader/builtin.c]
936         winmm.dll (32bit mmsystem equivalent) specs added.
938         * [memory/string.c] [if1632/kernel32.spec] [include/windows.h]
939         Rtl{Move,Zero,Fill}Memory added.
941         * [misc/registry.c]
942         Some NULL ptr dereference bugs fixed.
944         * [multimedia/mcicda.c][multimedia/mcistring.c][multimedia/mmsystem.c]
945         Check for NULL ptr.
946         Fill mciOpenDrv when mixing mciOpen and mciSendString("open ..").
947         Aliasing should work for all MCI devices.
949         * [windows/win.c]
950         Allow passing invalid window handles to CloseWindow().
952 Tue Jun 25 20:02:15 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
954         * [files/directory.c] [if1632/kernel32.spec]
955         GetSystemDirectory32A and GetSystemDirectory32W added.
957         * [misc/main.c] [if1632/kernel32.spec]
958         Beep and SetEnvironmentVariable32W added.
960 ----------------------------------------------------------------------
961 Wed Jun 19 14:49:27 1996  Marcus Meissner <msmeissn@faui45.informatik.uni-erlangen.de>
963         * [files/drive.c] 
964         GetFreeDiskSpace*, GetVolumeInformation* added.
966         * [files/file.c]
967         FlushFileBuffers, CreateDirectory* added.
969         * [include/winbase.h] [include/windows.h]
970         Prototypes, defines added and fixes.
972         * [if1632/kernel32.spec] [include/resource32.h]
973           [win32/cursoricon32.c] [win32/resource.c] [windows/dialog.c]
974         Fixes to resource handling.
976         * [if1632/kernel.spec] [if1632/kernel32.spec] [if1632/user32.spec]
977         Specs for implemented functions added
978         Some thunks to functions which are same as win16 equivalents.
980         * [loader/task.c]
981         GetAppCompatFlags() added.
983         * [misc/registry.c]
984         One missing else added, small hack to RegQueryValue16().
986         * [win32/file.c]
987         GetFileAttributesA() fixed (was using DOS path as UNIX path).
989 Tue Jun 18 21:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
991         * [loader/ne_resource.c]
992         Fixed FreeResource() return value.
994         * [objects/text.c]
995         Fixed a bug in ExtTextOut() that was causing overlapped characters
996         in WinWord.
998         * [windows/winpos.c]
999         SWP_FRAMECHANGED for top-level windows now invalidates client
1000         area as clock.exe wants.
1002 Tue Jun 18 11:30:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
1004         * [controls/listbox.c]
1005         Mini bugfix: 'revival' of missing scrollbar in listboxes.
1007 Mon Jun 17 20:27:41 1996  Robert Pouliot <krynos@clic.net>
1009         * [resources/sysres_Fr.rc] [resources/TODO]
1010         Made changes for Choose_Font dialog.
1012 ----------------------------------------------------------------------
1013 Sun Jun 16 16:51:31 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1015         * [memory/heap.c]
1016         Fixed bug in HeapRealloc (thanks to Bruce Milner).
1018         * [misc/wsprintf.c]
1019         Fixed argument size for %c format in wsprintf16().
1021         * [objects/dc.c]
1022         Don't free hFirstBitmap for saved DCs.
1024         * [windows/event.c]
1025         Added timer handling in EVENT_WaitXEvent().
1027         * [windows/message.c]
1028         In MSG_TranslateMouseMsg and MSG_TranslateKbdMsg, check if the
1029         event is for the current task; if not, wake the other task.
1031         * [windows/queue.c] [include/queue.h]
1032         Added 'self' handle in queue structure.
1034         * [windows/timer.c]
1035         Added TIMER_ExpireTimers() function to mark expired timers and
1036         wake up the corresponding tasks.
1038 Thu Jun 13 01:46:33 EDT 1996  William Magro <wmagro@tc.cornell.edu>
1040         * [windows/mapping.c]
1041         First point in list was mapped multiple times in DPtoLP and
1042         LPtoDP.  Other points were not mapped.
1044 Wed Jun 12 18:08:45 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1046         * [misc/shell.c]
1047         Some fixes for ExtractIcon function family.
1049         * [documentation/user_module]
1050         Chapter about windowing and messaging subsystems.
1052 ----------------------------------------------------------------------
1053 Tue Jun 11 15:20:43 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1055         * [debugger/break.c] [loader/signal.c]
1056         Fixed breakpoints in 32-bit code.
1058         * [include/windows.h]
1059         Added many more Win32 versions of standard structures.
1061         * [include/winreg.h] [misc/registry.c]
1062         Moved private types into registry.c.
1064         * [memory/string.c] (New file)
1065         Moved most string functions from misc/lstr.c; added Win32 version
1066         of all functions.
1068         * [misc/wsprintf.c]
1069         Implemented Win32 wsprintf functions.
1071         * [objects/bitmap.c]
1072         Implemented Win32 bitmap functions.
1074         * [windows/dialog.c]
1075         Don't set dialog procedure before the controls are created. This
1076         avoids a crash in Winhelp.
1078 Tue Jun 11 14:10:06 1996 Martin von Loewis <loewis@informatik.hu-berlin.de>
1080         * [controls/menu.c] [if1632/user.spec] [windows/message.c]
1081         Replace PeekMessage with PeekMessage16.
1083         * [if1632/kernel32.spec][misc/main.c]
1084         GetVersion32,GetVersionEx32A,GetVersionEx32W: new functions.
1085         MAIN_ParseVersion: new function, new command line option -winver.
1086         GetVersion: modified to take command line argument into account.
1088         * [if1632/kernel32.spec] [win32/process.c]
1089         FreeLibrary32: new function.
1090         TlsAlloc: initialize Tls to zero.
1091         InterlockedIncrement,InterlockedDecrement,InterlockedExchange: new
1092         functions.
1094         * [if1632/kernel32.spec]
1095         SetErrorMode,GetActiveWindow: new relays to existing functions.
1097         * [if1632/kernel32.spec][win32/user32.c]
1098         PeekMessage32A,PeekMessage32W: new functions.
1100         * [include/struct32.h][include/windows.h]
1101         Moved MSG32 to windows.h.
1102         Renamed MSG to MSG16.
1103         Modified prototypes to use MSG16
1105         * [include/winbase.h]
1106         OSVERSIONINFO32A,OSVERSIONINFO32W: new structures.
1108 Sun Jun  9 20:53:30 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1110         * [if1632/Makefile.in] [loader/builtin.c]
1111         version.dll,lz32.dll added.
1113         * [include/lzexpand.h] [if1632/lz32.spec] [if1632/lzexpand.spec]
1114           [misc/lzexpand.c]
1115         lz32.dll added.
1116         Modified to new function naming standard.
1118         * [include/ver.h] [if1632/ver.spec] [if1632/version.spec] [misc/ver.c]
1119         version.dll added (win32 version of ver.dll).
1120         Modified to new function naming standard.
1121         Use registry to look up a LOCALE langids too.
1122         (VerInstallFile,VerFindFile still stubs)
1124 Fri Jun  7 20:40:20 1996  Albrecht Kleine  <kleine@ak.sax.de>
1126         * [files/file.c]
1127         Added a warning if GetTempFileName() gets a bad drive parameter.
1129         * [misc/commdlg.c]
1130         Changed file listbox color to gray in SaveFile dialog 
1131         (just like Windows does this).
1133 ----------------------------------------------------------------------
1134 Wed Jun  5 20:13:54 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1136         * [controls/button.c] [controls/listbox.c]
1137         Fixed wParam of WM_DRAWITEM message.
1139         * [if1632/Makefile.in] [loader/builtin.c]
1140         Remove WPROCS32 DLL, as the relay code can call Wine routines
1141         directly.
1143         * [loader/module.c] [loader/ne_image.c]
1144         Fixed initial stack layout for self-loading modules.
1146         * [tools/build.c]
1147         Fixed data segment building for Win16 modules.
1149         * [windows/defdlg.c]
1150         Implemented Win32 versions of DefDlgProc().
1152         * [windows/dialog.c]
1153         Merged Win16 and Win32 dialog code.
1154         Added support for control extra data in dialog item template.
1156         * [windows/win.c]
1157         Unified Win16 and Win32 versions of CreateWindow().
1158         Implemented Win32 version of GetWindowLong().
1160         * [windows/winproc.c]
1161         Changed the implementation of window procedures, so that 16-bit
1162         winprocs are valid segmented pointers.
1164 Sun Jun  2 16:39:46 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1166         * [misc/registry.c]
1167         Fixed another bug in the w95 loader. Quietened some debug output.
1169 Sun Jun  2 10:00:22 1996  Ulrich Schmid  <uschmid@mail.hh.provi.de>
1171         * [windows/winproc.c]
1172         Bug fix: WM_PARENTNOTIFY: don't fall through to WM_SETTEXT.
1174 Sat Jun  1 12:37:22 1996  Tristan Tarrant <tst@sthinc.demon.co.uk>
1176         * [resources/TODO] [resources/sysres_It.rc]
1177         Updated font dialog box.
1179 Thu May 30 21:05:19 1996  Albrecht Kleine  <kleine@ak.sax.de>
1181         * [include/commdlg.h] [misc/commdlg.c]
1182         ChooseFont() and ChooseColor(): 
1183         Bugfixes and added more support for some CF_* and CC_* flags: 
1184         dialog templates and font size control.
1185         Bugfix in structure definition of CHOOSECOLOR definition.
1187         * [ipc/dde_proc.c] [windows/event.c]
1188         Replaced SendMessage with SendMessage16 and added inclusion of
1189         dde_proc.h for error-free compilation of ipc module.
1191 Thu May 30 19:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1193         * [windows/scroll.c]
1194         Made ScrollDC to save/restore current clipping region.
1196         * [misc/clipboard.c] [windows/event.c]
1197         Implemented most of the previously missing features (not tested), 
1198         improved text pasting from/to X. 
1200         * [if1632/user.spec] [if1632/gdi.spec] [objects/dc.c]
1201           [objects/gdiobj.c] [objects/clipping.c] [windows/dce.c]
1202           [windows/winpos.c] [windows/painting.c]
1203         Updated DCE code, implemented dynamic invalidation of owned DCs.
1204         This fixes a lot of problems with scrolling in WinWord. Not
1205         sure about the effect on -desktop.
1207 Wed May 29 23:35:44 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
1209         * [win32/time.c] [if1632/kernel32.spec]
1210         Added SetSystemTime and SetTimeZoneInformation.
1212         * [if1632/kernel32.spec]
1213         Added lstrcat, lstrcatA, lstrcmp, lstrcmpA, lstrcpy, lstrlen.
1215         * [include/windows.h]
1216         Added SYSTEM_POWER_STATUS structure and prototypes for
1217         GetSystemPowerStatus, SetSystemPowerState, SetSystemTime.
1219         * [include/kernel32.h]
1220         Added a prototype for SetTimeZoneInformation.
1222         * [win32/environment.c] [if1632/kernel32.spec]
1223         Added GetSystemPowerStatus and SetSystemPowerState stubs.
1225 ----------------------------------------------------------------------
1226 Tue May 28 19:36:36 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1228         * [controls/combo.c]
1229         Destroy the listbox and edit control when destroying the
1230         combo. This should prevent crashes on application exit.
1232         * [misc/system.c] [if1632/system.spec]
1233         Implemented InquireSystem().
1235         * [loader/task.c] [windows/message.c] [windows/queue.c]
1236         First attempt at inter-task SendMessage(). Still has a lot of
1237         problems.
1239 Tue May 28 14:26:04 1996  Peter Bajusz  <hyp-x@inf.bme.hu>
1241         * [windows/mdi.c]
1242         Fixed MDITile with iconic children.
1244 Mon May 27 20:28:18 1996  Albrecht Kleine  <kleine@ak.sax.de>
1246         * [misc/commdlg.c]
1247         ChooseFont dialog:
1248         - complete rewrite of FontFamilyEnumProc() and FontStyleEnumProc()
1249           not real available font types (e.g. "Bold") can not selected
1250         - supporting more CF_LIMITSIZE- and CF_...ONLY- flags
1252         * [objects/font.c]
1253         In FONT_MatchFont perform check if "lfFaceName" is family from X11
1254         only if "lfFaceName" is a windows font family then do a call of
1255         FONT_TranslateName() : this results in better font selections in 
1256         ChooseFont() or applications like charmap.exe or write.exe.
1257         Added a ParseFontParms() call if necessary in function 
1258         FONT_MatchFont(): we need a font name as basis for GetTextFace() 
1259         even if there isn't one...
1261         * [resources/TODO]
1262         Inventory of resource translations in sysres_??.rc
1264 Fri May 24 16:33:28 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1266         * [misc/registry.c]
1267         _w95_loadreg: use offset to determine next RGDB position too.
1269 Thu May 23 19:35:38 1996  Greg Kreider <kreider@natlab.research.philips.com>
1271         * [controls/combo.c]
1272         Fixed size of combo, lbox, and button (lb sometimes off by 2 pixels).
1274         * [misc/main.c]
1275         Result of option "-fixedmap" is to turn flag on.
1277 Thu May 23 19:15:41 1996  Ronan Waide  <root@waider.ie>
1279         * [misc/shell.c]
1280         ShellExecute and FindExecutable now both use common code to
1281         determine the required executable file.
1283 ----------------------------------------------------------------------
1284 Tue May 21 14:06:07 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1286         * [controls/button.c]
1287         Made ButtonWndProc a 32-bit window procedure.
1289         * [controls/desktop.c]
1290         Made DesktopWndProc a 32-bit window procedure.
1291         Added handling of WM_SETCURSOR.
1293         * [controls/menu.c]
1294         Allocate menu items and strings on the 32-bit system heap.
1295         Implemented Win32 versions for ChangeMenu, InsertMenu, ModifyMenu,
1296         AppendMenu and LoadMenuIndirect.
1298         * [controls/widgets.c]
1299         Added possibility to have 32-bit built-in classes.
1301         * [files/drive.c]
1302         Implemented GetLogicalDrive() and GetLogicalDriveStrings().
1304         * [misc/spy.c] [include/spy.h]
1305         Added support for spying Win32 messages.
1307         * [loader/builtin.c]
1308         Fixed bug in -dll option parsing.
1310         * [memory/local.c]
1311         Added back the change by Huw D. M. Davies to free the block in
1312         LocalRealloc() before allocating the new one.
1314         * [objects/bitmap.c] [objects/cursoricon.c] [objects/oembitmap.c]
1315         Fixed bug in bitmap size that caused memory corruption for 24bpp.
1317         * [windows/defwnd.c]
1318         Implemented Win32 version of DefWindowProc().
1320         * [windows/dialog.c]
1321         Implemented Win32 version of SendDlgItemMessage,
1322         Get/SetDlgItemText and Get/SetDlgItemInt.
1324         * [windows/mdi.c]
1325         Implemented Win32 version of DefFrameProc() and DefMDIChildProc().
1326         Don't make a copy of the OBM bitmaps for every MDI window.
1328         * [windows/message.c]
1329         Implemented Win32 version of SendMessage().
1330         
1331         * [windows/winproc.c] [windows/class.c] [windows/win.c]
1332         New scheme for 32-bit window procedures to replace aliases. All
1333         32-bit window procedure get a 16-bit address pointing to a
1334         WINDOWPROC structure.
1335         Implemented Ansi<->Unicode translation for CallWindowProc().
1336         Added translation of WM_DRAWITEM between Win16 and Win32.
1338         * [windows/win.c] [include/callback.h]
1339         Added ugly hack to build CREATESTRUCT on the stack when sending
1340         WM_NCCREATE.
1341         Implemented Win32 version of Get/SetWindowWord/Long and
1342         Get/SetWindowText.
1343         
1344 Fri May 17 10:20:16 1996  Albrecht Kleine  <kleine@ak.sax.de>
1346         * [controls/button.c]
1347         Avoid gray text on gray background in disabled push buttons
1348         using a b/w raster and some raster operations (PatBlt,BitBlt).
1350         * [objects/text.c]
1351         DrawText(): don't draw an underbar anymore if DT_CALCRECT is set.
1353 ----------------------------------------------------------------------
1354 Thu May 16 13:35:31 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1356         * [*/*.c]
1357         Renamed RECT, POINT and SIZE structures to RECT16, POINT16 and
1358         SIZE16. Implemented Win32 version of most functions that take
1359         these types as parameters.
1361         * [configure]
1362         Patched autoconf to attempt to correctly detect -lnsl and
1363         -lsocket. Please check this out.
1364         
1365         * [controls/button.c]
1366         Added support for Win32 BM_* messages.
1368         * [controls/menu.c]
1369         Avoid sending extra WM_MENUSELECT messages. This avoids crashes
1370         with Excel.
1372         * [memory.heap.c] [include/heap.h]
1373         Added support for SEGPTRs in Win32 heaps. Added a few macros to
1374         make using SEGPTRs easier. They are a bit slower than MAKE_SEGPTR,
1375         but they work with Win32.
1377         * [memory/atom.c]
1378         Implemented Win32 atom functions.
1380         * [memory/local.c]
1381         Fixed LocalReAlloc() changes to avoid copying the whole block twice.
1383         * [win32/memory.c]
1384         Use /dev/zero instead of MAP_ANON for VirtualAlloc().
1386         * [windows/class.c]
1387         Properly implemented the Win32 class functions.
1389         * [windows/winproc.c] (New file)
1390         New file handling the message translation between Win16 and Win32.
1392 Mon May 13 18:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
1394         * [windows/mdi.c] [windows/menu.c]
1395         Improved WM_MDICREATE and WM_MDICASCADE handling.
1397         * [windows/event.c] [objects/bitblt.c]
1398         Handle GraphicsExpose event for BitBlt from screen to screen.
1400         * [windows/event.c] [windows/win.c] [windows/nonclient.c]
1401         Bunch of fixes for problems with -managed.
1403         * [windows/win.c] [windows/winpos.c]
1404         Changed conditions for WM_SIZE, WM_MOVE, and WM_GETMINMAXINFO
1405         in CreateWindow.
1407         * [windows/win.c] [windows/queue.c] [misc/user.c]
1408         Do not send WM_PARENTNOTIFY when in AppExit and call WH_SHELL
1409         on window creation/destruction.
1411         * [objects/palette.c]
1412         Crude RealizePalette(). At least something is visible in LviewPro.
1414 Sun May 12 02:05:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
1416         * [if1632/gdi32.spec]
1417         Added Rectangle (use win16 version).
1419         * [if1632/kernel32.spec]
1420         Added GetWindowsDirectoryA (use win16 GetWindowsDirectory).
1422         * [if1632/user32.spec]
1423         Added GetSubMenu, MoveWindow, SetScrollPos, SetScrollRange (use win16
1424         versions).
1425         Added SetWindowsHookExA (empty stub for now).
1427         * [include/handle32.h]
1428         Changed #include <malloc.h> to #include <stdlib.h> to prevent
1429         hate message from FreeBSD compiler.
1431         * [win32/newfns.c]
1432         Added new function SetWindowsHookEx32A (empty stub for now).
1434         * [win32/user32.c]
1435         Removed redundant debugging printf statement.
1437 Sun May 12 01:24:57 1996  Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
1439         * [memory/local.c]
1440         Avoid creating adjacent free blocks.
1441         Free the block in LocalReAlloc() before allocating a new one.
1442         Fixed LocalReAlloc() for discarded blocks.
1443         
1444 Fri May 10 23:05:12 1996  Jukka Iivonen <iivonen@cc.helsinki.fi>
1446         * [resources/sysres_Fi.rc]
1447         ChooseFont and ChooseColor dialogs updated.
1449 Fri May 10 17:19:33 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1451         * [files/drive.c,if1632/kernel.spec]
1452         GetCurrentDirectory(),SetCurrentDirectory() implemented.
1454         * [if1632/advapi32.spec] [if1632/kernel.spec] [if1632/shell.spec]
1455           [include/windows.h] [include/winreg.h] [loader/main.c]
1456           [misc/main.c] [misc/shell.c] [misc/registry.c]
1457         Registry fixes:
1458         - loads win95 registry databases,
1459         - save only updated keys on default,
1460         - now adhers to the new function naming standard,
1461         - minor cleanups.
1463 Tue May 7 22:36:13 1996  Albrecht Kleine  <kleine@ak.sax.de>
1465         * [combo.c]
1466         Added WM_COMMAND-handling for interaction between EDIT and COMBOLBOX
1467         and synchronized mine with Greg Kreider's works.
1469         * [commdlg.c]
1470         Bugfix in ChooseFont: font size handling.
1472 ----------------------------------------------------------------------
1473 Mon May  6 12:56:26 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1475         * [DEVELOPERS-HINTS]
1476         Added paragraph on naming conventions for Win16/Win32/Winelib.
1478         * [controls/menu.c]
1479         Create a default system menu that is the same for all windows
1480         instead of making a copy every time.
1482         * [include/wintypes.h]
1483         Added WINELIB_NAME and DECL_WINELIB_TYPE macros.
1484         Added xx16 and xx32 definitions for most types. General clean-up.
1486         * [memory/global.c] [memory/local.c] [*/*]
1487         Renamed Global and Local heap functions to xxx16. Added all xxx32
1488         versions of the same functions.
1490         * [memory/selector.c]
1491         Mask out lower bits of selector in FreeSelector().
1493         * [misc/lstr.c]
1494         Fixed wvsprintf().
1496         * [windows/class.c]
1497         Changed the class structure to make Win32 support easier.
1499         * [windows/defwnd.c]
1500         Added handling of WM_INITMENUPOPUP for system menu to gray out
1501         invalid options.
1503         * [windows/winpos.c]
1504         Bug fix: the WINDOSPOS structure pointer in WM_NCCALCSIZE must be
1505         a SEGPTR.
1507 Sun May  5 03:51:26 1996  Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
1509         * [memory/local.c]
1510         Implementation of moveable and (rudimentary) support for
1511         discardable local memory, plus several bug fixes.
1513 Sat May  4 18:33:35 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1515         * [include/windows.h] [windows/win.c] [if1632/user.spec] 
1516         FindWindowEx() implemented (someone reported it was missing
1517         for FrameMaker 4.1).
1519         * [if1632/kernel32.spec] [if1632/user32.spec] [win32/memory.c]
1520           [win32/resource.c]
1521         Misc small stubs/small functions which bring win95 binaries
1522         further down the road. (IsBadCodePtr, LocalReAlloc,GetCursorPos)
1523         Small fix in WIN32_LoadAcceleratorsA.
1525 Fri May  3 19:43:12 1996  Frans van Dorsselaer <dorssel@rulhm1.LeidenUniv.nl>
1527         * [controls/edit.c] [controls/EDIT.TODO]
1528         Changed / fixed some types and typecasts.
1529         Fixed the scrollbar reset after WM_SETHANDLE / WM_SETTEXT.
1530         Added heap initialization in WM_CREATE.
1532 Fri May  3 19:30:02 1996  Greg Kreider <kreider@natlab.research.philips.com>
1534         * [controls/combo.c] [controls/listbox.c]
1535         Pass WM_[HV]SCROLL to listbox, but not combo.
1536         Don't try to redraw non-existant scroll bars (changes dwStyle flags).
1537         Combo box gets border.
1538         Combo box includes button (otherwise button won't trigger dropdown).
1539         Proper border around RectButton.
1540         Check size consistancy of combo, listbox, and button after resizing 
1541         or before painting.  These routines still aren't completely correct.
1542         Localize size checks in separate routines.
1543         Listboxes are white.
1545 Thu May  2 19:21:23 1996  Albrecht Kleine  <kleine@ak.sax.de>
1547         * [controls/combo.c][include/commdlg.h][include/commdlg.c]
1548           [resources/sysres_De.rc][resources/sysres_En.rc]
1549         Introduced ChooseFont dialog, but needed some patches in 
1550         handling of comboboxes with edit controls.
1552 Tue Apr 30 00:33:27 1996  Ulrich Schmid  <uschmid@mail.hh.provi.de>
1554         * [programs/winhelp/*]
1555         Added a help viewer and a simple `.hlp' to `.sgml' converter.
1557 Mon Apr 29 14:17:57 1996  Tristan Tarrant <tst@sthinc.demon.co.uk>
1559         * [resources/sysres_*.rc] [misc/shell.c]
1560         Modified size of "About" dialog boxes.
1562 Sat Apr 27 18:10:11 Martin von Loewis <loewis@informatik.hu-berlin.de>
1564         * [if1632/Makefile.in][loader/builtin.c]
1565         crtdll.spec, ntdll.spec, wsock32.spec: new files.
1567         * [loader/pe_image.c]
1568         Fix error message if import by ordinal failed.
1570 ----------------------------------------------------------------------
1571 Sun Apr 28 14:32:43 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1573         * [Makefile.in]
1574         Subdir memory is now also compiled for Winelib, in order to get
1575         the Win32 heap functions.
1577         * [if1632/Makefile.in]
1578         Renamed winprocs and winprocs32 to wprocs and wprocs32 to avoid
1579         DLL names > 8 characters.
1581         * [loader/builtin.c] (New file)
1582         Grouped all built-in DLLs code in a single file.
1584         * [memory/global.c]
1585         Use the Win32 heap code instead of malloc() to allocate linear
1586         memory. This will help test the heap code.
1588         * [memory/local.c]
1589         Fixed FreeSelector() to clear DS and ES correctly for huge blocks.
1591         * [tools/build.c] [if1632/relay.c]
1592         Removed 'id' directive in spec files. For relay debugging, the DLL
1593         entry point is now computed from the CS:IP entry point address.
1594         Added 'heap' directive to specifiy a local heap for the DLL. USER
1595         and GDI heap are now created this way.
1597         * [windows/class.c] [include/class.h]
1598         Changed the class structure to use pointers instead of handles.
1599         Changed Get/SetClassWord/Long to use a switch statement; this
1600         allows changing the layout of the CLASS structure.
1602         * [windows/win.c] [include/win.h]
1603         Use a CLASS * instead of a handle for the window class.
1605 Sat Apr 27 18:10:11 Martin von Loewis <loewis@informatik.hu-berlin.de>
1607         * [if1632/kernel32.spec] [memory/global.c]
1608           [win32/memory.c] [win32/process.c]
1609         GetProcessAffinityMask,GlobalLock,IsBadReadPtr,IsBadWritePtr,
1610         LocalLock,SetThreadAffinityMask: new relays.
1612         * [win32/cursoricon32.c]
1613         Return same handle if a cursor is loaded multiple times.
1615 Sat Apr 27 15:13:37 1996  Bang Jun Young <bangjy@nownuri.nowcom.co.kr>
1617         * [resources/sysres_Ko.rc]
1618         Added support for Korean [Ko] language.
1620 Fri Apr 26 00:49:05 1996  Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
1622         * [objects/dc.c] [objects/font.c]
1623         Fixed problem with SaveDC()/RestoreDC() and font cache 'used' count.
1625         * [objects/metafile.c] [objects/dcvalues.c]
1626         Fixed broken SetTextAlign() on metafiles.
1628         * [objects/metafile.c]
1629         Delete objects in handle table at end of PlayMetaFile().
1631 Wed Apr 24 19:21:01  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1633         * [if1632/ver.spec] [misc/ver.c] [include/ver.h] (New files)
1634         VER.DLL (partially) implemented (VerFindFile,VerInstallFile)
1635         [If it doesn't work for you, use -dll -ver and report it to me]
1637         * [if1632/user32.spec] [if1632/kernel32.spec] [if1632/shell.spec]
1638           [if1632/shell32.spec] [misc/ole2nls.c] [windows/message.c]
1639           [windows/graphics.c]
1640         Simple win32 functions, where we can just use the win16 counterpart.
1641         Misc. stubs. 
1643         * [misc/lstr.c]
1644         Someone reported a _lstrlen(NULL). NULL is a valid argument. Fixed.
1646         * [misc/registry.c]
1647         Some alloclens were off by 1, one double fclose() fixed.
1648         Requesting value 0 of a key with no values returns an error 
1649         (should we always return a made up value NULL? what does win3.1?)
1651 Tue Apr 23 17:00:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
1653         * [misc/shell.c]
1654         Implemented FindEnvironmentString(), DoEnvironmentSubst(),
1655         ExtractIcon(), InternalExtractIcon() and ExtractAssociatedIcon().
1657         * [misc/user.c]
1658         Do extensive cleanup on application exit.
1660         * [windows/hook.c] [windows/win.c] [windows/class.c]
1661         Added miscellaneous cleanup routines.
1663         * [controls/menu.c]
1664         More efficient popup menu window handling.
1666 Mon Apr 22 21:35:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
1668         * [include/windows.h][objects/oembitmap.c][include/bitmaps/obm_trtype]
1669         Added "TT-bitmap" for later usage in a ChooseFont() ownerdraw combobox.
1671 ----------------------------------------------------------------------
1672 Sat Apr 20 23:23:16 1996  Robert Pouliot <krynos@qbc.clic.net>
1674         * [resources/sysres_Fr.rc] [resources/TODO]
1675         Made changes for Choose_Color dialog.
1677 Sat Apr 20 15:43:49 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1679         * [controls/button.c]
1680         Fixed test that got miscompiled by some old gcc versions.
1682         * [memory/local.c]
1683         Fixed the layout of handle tables so that moveable handle entries
1684         can be freed on LocalFree().
1685         Implemented LocalFlags(), LocalCountFree(), LocalHandleDelta() and
1686         GetHeapSpaces().
1688         * [misc/main.c] [ANNOUNCE]
1689         Update the list of contributors. Please let me know if I forgot
1690         someone.
1692 Fri Apr 19 20:07:20 1996  Frans van Dorsselaer  <dorssel@rulhm1.leidenuniv.nl>
1694         * [controls/edit.c] [controls/EDIT.TODO]
1695         Fixed EM_SETHANDLE / WM_CREATE / EDIT_MakeFir() buffer allocation.
1696         Fixed ES_NOHIDESEL / WM_MOUSEMOVE / WM_LBUTTONDOWN implementation.
1697         Added WM_ENABLE implementation (gray text).
1698         Fixed buffer > 32767 bug.
1699         Fixed argument types / typecasting.
1700         Faster selection (re)drawing.
1702 Thu Apr 18 13:38:26 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1704         * [misc/registry.c] [include/winreg.h]
1705         Changed savefile format again to human readable/editable
1706         (UNICODE chars >0xff are specified by \uXXXX, data by XX).
1707         Has now global / local registry databases (including merging them).
1708         HKEY_CLASSES_ROOT == HKEY_LOCAL_MACHINE\\SOFTWARE\\Classes.
1709         HKEY_CURRENT_USER == HKEY_USERS\\<loginname>.
1711         * [misc/comm.c]
1712         Allow " " as COMx: ... spec delimiter too.
1713         (AOL-CD setup.exe tries to initialize modem2 as "9600,x,x x" (can't 
1714         remember the x).
1716 Thu Apr 18 09:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1718         * [windows/mdi.c]
1719         Miscellaneous changes.
1721         * [windows/winpos.c] 
1722         Use BitBlt whenever possible in SetWindowPos.
1724         * [windows/painting.c]
1725         Fix incompatibilities with hrgnUpdate being 1.
1727 Wed Apr 17 19:19:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
1729         * [misc/commdlg.c]
1730         Many bugfixes in ChooseColor dialog.
1731         Added a user defined dialog title in FileOpen-/FileSave- dialog.
1733         * [misc/commdlg.c][include/commdlg.h]
1734           [if1632/commdlg.spec][if1632/winprocs.spec]
1735         Introduced dialog-, callback- and enum- stub functions
1736         for ChooseFont dialog
1738 Wed Apr 17 19:08:38 1996  Niels de Carpentier  <niels@cindy.et.tudelft.nl>
1740         * [objects/metafile.c] [include/metafile.h] [if1632/gdi.spec]
1741         Implemented EnumMetaFile and CopyMetaFile. Removed METAFILE struct.
1742         Implemented META_STRETCHDIB in PlayMetaFileRecord, several bug 
1743         fixes.
1745         * [windows/winpos.c]
1746         Don't try to hide the window if it's already hidden.
1748         * [windows/message.c]
1749         Let MSG_PeekHardwareMsg fill the message queue with events if
1750         it's empty.
1752 Wed Apr 17 17:54:04 1996  Tristan Tarrant <tst@sthinc.demon.co.uk>
1754         * [resources/sysres_It.rc]
1755         Updated to support the new CHOOSE_COLOR_DIALOG.
1757 Tue Apr 16 11:50:00 1996  Anand Kumria <akumria@ozemail.com.au>
1759         * [if1632/Makefile] [if1632/relay.c] [if1631/w32sys.spec]
1760           [include/w32sys.h] [include/dlls.h]
1761           [misc/Makefile] [misc/w32sys.c]
1762         W32SYS.DLL partially implemented.
1764 ----------------------------------------------------------------------
1765 Sun Apr 14 12:51:27 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1767         * [controls/menu.c] [include/dialog.h] [windows/dialog.c]
1768         Made the resource loading code always use the correct Windows
1769         layout for Winelib on other CPUs.
1771         * [include/module.h] [loader/module.c]
1772         Added self handle in NE_MODULE structure, so we can use a pointer
1773         instead of a handle.
1774         Added function MODULE_GetPtr() to validate a HMODULE.
1776         * [memory/heap.c]
1777         Implemented Win32 heap management.
1779         * [memory/selector.c]
1780         Fix selector limit for huge blocks.
1782 Sat Apr 13 00:19:12 1996  Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
1784         * [objects/metafile.c]
1785         Fixed memcpy bug to allow memory based metafiles to work.
1787 Fri Apr 12 19:25:41 1996  Frans van Dorsselaer  <dorssel@rulhm1.leidenuniv.nl>
1789         * [controls/edit.c] [controls/EDIT.TODO]
1790         Complete rewrite.  Everything changed: new features, new bugs.
1791         Main addition: WordWrap.
1793 Fri Apr 12 20:29:55 1996  Tristan Tarrant <tst@dcs.ed.ac.uk>
1795         * [resources/sysres_It.rc]
1796         Fixed a few mistakes in the file and resized some of the controls.
1798 Fri Apr 12 09:55:13 1996  John Harvey <john@division.co.uk>
1800         * [misc/winsocket.c]
1801         Fixed broken #if defined that stopped unixware compiling.
1803         * [win32/resource.c]
1804         Added missing return to end of FindResource32.
1806 Thu Apr 11 18:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1808         * [windows/keyboard.c] [windows/event.c]
1809         Fixed GetKeyState for mouse buttons.
1811         * [windows/message.c]
1812         WM_MOUSEACTIVATE wasn't sent in some cases.
1814 Wed Apr 10 18:59:53 1996  Niels de Carpentier  <niels@cindy.et.tudelft.nl>
1816         * [objects/font.c]
1817         Match slightly bigger font if height negative.
1819 Mon Apr  8 13:46:15 1996  Deano Calver <deano@rattie.demon.co.uk>
1821         * [multimedia/mmsystem.c]
1822         Changed read's to FILE_read's in mmsystem to fix mmio bug.
1824 Sun Apr  7 21:40:29 1996  Albrecht Kleine  <kleine@ak.sax.de>
1826         * [misc/commdlg.c] [resources/sysres_En.rc] [resources/sysres_De.rc]
1827         Introduced ColorDlgProc() for ChooseColor() and replaced fitting
1828         En-,De- resources. 
1829         As written in TODO: some national language support is needed here.
1831 ----------------------------------------------------------------------
1832 Fri Apr  5 15:22:55 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1834         * [controls/button.c] [controls/static.c]
1835         Changes to use WND * wherever possible.
1837         * [debugger/dbg.y] [debugger/debug.l]
1838         Added 'info module' and 'walk module' commands.
1840         * [if1632/Makefile.in] [if1632/relay.c] [tools/build.c]
1841         Added assembly code generation to call from Wine into 32-bit code.
1842         Changed all 'call32' references in 'callfrom16' to avoid confusion
1843         with Win32 routines.
1845         * [include/callback.h]
1846         Added prototypes for 32-bit callbacks.
1848         * [loader/module.c] [if1632/relay32.c] [tools/build.c]
1849         Unified 16- and 32-bit modules. The fake module for 32-bit DLLs is
1850         now generated by the build program.
1852         * [include/module.h]
1853         Added extra info to NE_MODULE for Win32 modules to point to the PE
1854         module data.
1856         * [include/pe_image.h] [loader/pe_image.c] [win32/resource.c]
1857         Removed the wine_files list. The PE data for a module can now be
1858         accessed with the NE_WIN32_MODULE macro.
1860         * [loader/signal.c] [miscemu/instr.c]
1861         Don't start the BIOS timer at startup, but only after an access to
1862         the 0x40 segment.
1864         * [memory/local.c]
1865         Changed LOCAL_Lock() to return a 32-bit pointer.
1867         * [misc/main.c] [include/dlls.h]
1868         Some built-in DLLs (like KERNEL) can no longer be disabled from
1869         the command-line.
1870         
1871 Thu Apr  4 19:54:39 1996  Keith Reynolds <keithr@sco.COM>
1873         * [*/*]
1874         A lot of small changes to support SCO OpenServer 5.
1876 Thu Apr  4 15:38:13 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
1878         * [controls/edit.c]
1879         Fixed GetKeyState() call to use 0x8000 convention.
1881         * [include/windows.h]
1882         Added undocumented messages EM_SCROLL and EM_GETTHUMB.
1884 Thu Apr  4 09:52:52 1996  John Harvey <john@division.co.uk>
1886         * [if1632/except.S]
1887         Modified code to assemble on unixware.
1889 Wed Apr  3 09:38:26 1996  Juergen Marquardt <marqu@lunar.advantest.de>
1891         * [objects/font.c]
1892         Implementation of a second font cache which will be updated
1893         dynamically.
1895 Mon Apr  1 16:47:40 1996  Robert Pouliot <krynos@qbc.clic.net>
1897         * [resources/sysres_Cz.rc] [resources/sysres_Da.rc]
1898           [resources/sysres_De.rc] [resources/sysres_Eo.rc]
1899           [resources/sysres_Es.rc] [resources/sysres_Fi.rc]
1900           [resources/sysres_No.rc] [resources/TODO]
1901         Updated FIND_TEXT and REPLACE_TEXT to work like the English version.
1903 ----------------------------------------------------------------------
1904 Sun Mar 31 13:54:46 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
1906         * [tools/build.c]
1907         Changed BuildSpec32Files() to generate assembly instead of C code.
1908         Unified -spec16 and -spec32 options; DLL type is now determined by
1909         the 'type' declaration in the .spec file.
1910         New -stdcall option to build all stdcall assembly relays.
1912         * [if1632/relay.c] [if1632/relay32.c] [include/dlls.h]
1913         Started to unify 16- and 32-bit builtin DLLs.
1915         * [loader/module.c]
1916         Added MODULE_GetWndProcEntry32() to mirror MODULE_GetWndProcEntry16().
1918         * [loader/pe_image.c] [loader/resource.c]
1919         All modules now have a NE signature, and can be distinguished by
1920         the NE_FFLAGS_WIN32 flag.
1922         * [windows/alias.c]
1923         Aliases for built-in window procedures are now all created at
1924         startup in ALIAS_Init().
1926 Fri Mar 29 14:56:39 1996  Greg Kreider <kreider@natlab.research.philips.com>
1928         * [controls/combo.c]
1929         Limit rectangle to clear to size of item when painting combo, not
1930         default.  Only draw items in list when there is enough room for them.
1932         * [controls/listbox.c]
1933         Get the measure of every item that's added and store in the item's
1934         data structure.  Scroll listbox if mouse near edge of box.  Only
1935         draw items in list when there is enough room.
1937 Fri Mar 29 12:00:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
1939         * [windows/defwnd.c] [windows/dialog.c] [windows/mdi.c]
1940           [windows/nonclient.c] [controls/menu.c] 
1941         Various changes for better keyboard handling. 
1943         * [windows/event.c] [windows/message.c] [misc/keyboard.c]
1944         Proper keyboard message ordering, working GetKeyState() (finally!), 
1945         improvements in ToAscii().
1947         * [windows/win.c] [windows/message.c]
1948         Small improvements in WIN_FindWinToRepaint.
1950         * [windows/win.c] [windows/painting.c] [windows/nonclient.c]
1951         Put update region in WM_NCPAINT wParam.
1953         * [loader/task.c]
1954         Kill task timers when task is deleted, switch timers to the
1955         new queue in SetTaskQueue().
1957         * [loader/signal.c] [miscemu/dosmem.c]
1958         Added SIGALRM signal handler to increment BIOS clock. 
1960         * [windows/win.c] [windows/winpos.c] [windows/mdi.c]
1961         Fixed ChildWindowFromPoint(), WM_PARENTNOTIFY and its handling by
1962         MDI client.
1964         * [windows/winpos.c]
1965         Improvements in handling of owned popups. "Floating" toolboxes 
1966         work better now. 
1968 Thu Mar 28 12:38:29 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
1970         * [misc/registry.c]
1971         New file, registry rewrite including win32 extensions
1972         - Unicode
1973         - multiple valus per key
1974         - different datatypes for values
1975         - multiple rootkeys
1976         - saving and loading in different registries.
1978         * [include/winreg.h]
1979         New file, definitions and structs for registry.
1981         * [include/winerror.h]
1982         Some new error defines added... there are more, someone please
1983         check a (real-)windows winerror.h.
1984         
1985         * [if1632/shell.spec] [if1632/advapi32.spec] [if1632/kernel.spec]
1986         Registry specs added.
1988         * [if1632/relay.c]
1989         Switch internal SHELL.DLL to default 'used'.
1991         * [win32/string32.c] [include/string32.h]
1992         Some new functions added.
1993         char should be unsigned char when converting to 16bit ints.
1995         * [misc/shell.c] [include/shell.h] [win32/advapi.c]
1996         Removed old registry functions.
1998 Tue Mar 26 15:01:46 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
2000         * [include/bitmaps/ocr_ibeam]
2001         Fixed the position of the hotspot.
2003         * [objects/text.c]
2004         Fixed a few bugs in TEXT_TabbedTextOut().
2006         * [windows/event.c]
2007         Fixed the order of the bits in the KeyStateTable.
2008         0x80 is the up/down-bit.  0x01 is the toggle bit.
2010         * [loader/resource.c] [windows/mdi.c] [controls/edit.c]
2011         Fixed the calls to GetKeyState().
2013 Tue Mar 26 08:43:15 1996  Robert Pouliot <krynos@qbc.clic.net>
2015         * [resources/sysres_Fr.rc] [resources/TODO]
2016         Updated FIND_TEXT and REPLACE_TEXT to work like the English version.
2018 Mon Mar 25 17:38:59 1996  Tristan Tarrant <tst@dcs.ed.ac.uk>
2020         * [resources/sysres_it.rc]
2021         Added support for Italian [It] language.
2023 ----------------------------------------------------------------------
2024 Sun Mar 24 13:13:11 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2026         * [include/win.h] [windows/*.c]
2027         Replaced next, parent, child and owner handles by pointers in WND
2028         structure. This should improve performance, and should be
2029         reasonably safe since Microsoft did the same in Win95.
2031         * [include/wintypes.h] [*/*]
2032         Redefined HANDLE to be UINT instead of a pointer for Winelib. This
2033         allows removing a lot of unnecessary casts and NPFMTs.
2035         * [windows/caret.c]
2036         Create the caret brush upon CreateCaret(); use the bitmap
2037         dimensions for the caret.
2038         Fixed CARET_DisplayCaret() to use PatBlt().
2040 Fri Mar 22 16:00:00 1996  Anand Kumria <akumria@ozemail.com.au>
2042         * [misc/winsocket.c]
2043         More sanity checks, fixup some erroneous return codes.
2045         * [documentation/winsock]
2046         Description of how compatible the winsock is currently.
2048 Fri Mar 22 13:05:34 1996  Ulrich Schmid  <uschmid@mail.hh.provi.de>
2050         * [library/winmain.c]
2051         Set `lpszCmdParam' by concatenating arguments.
2053         * [loader/module.c]
2054         WinExec: accept Unix commands, use Wine emulator.
2056 Mon Mar 18 12:16:27 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
2058         * [if1632/kernel32.spec][win32/thread.c][include/kernel32.h]
2059         DeleteCriticalSection, EnterCriticalSection,
2060         InitializeCriticalSection, LeaveCriticalSection, TlsAlloc,
2061         TlsFree, TlsGetValue, TlsSetValue: new functions.
2062         CRITICAL_SECTION: new structure.
2064         * [if1632/kernel32.spec][win32/code_page.c]
2065         WideCharToMultiByte: new function.
2067         * [if1632/kernel32.spec][win32/file.c]
2068         GetFileAttributesA: new function.
2070         * [if1632/kernel32.spec][misc/main.c]
2071         GetEnvironmentStringsW, FreeEnvironmentStringsA,
2072         FreeEnvironmentStringsW: new functions.
2073         
2074         * [if1632/user.spec][win32/cursoricon32.c][win32/Makefile.in]
2075         cursoricon32.c: new file.
2076         LoadCursorA, LoadCursorW: modified implementation from LoadCursor
2077         to WIN32_*.
2078         LoadIconA, LoadIconW: modified implementation from LoadIconA32
2079         to WIN32_*.
2081         * [include/struct32.h]
2082         pragma pack inserted.
2083         CURSORICON32 structures added.
2085         * [include/winnls.h]
2086         Constants CP_* and WC_* added.
2088         * [loader/pe_image.c]
2089         PE_LoadModule: call PE_InitDLL with hModule rather than wpnt.
2091 Sun Mar 17 16:59:12 1996  Albrecht Kleine  <kleine@ak.sax.de>
2093         * [misc/commdlg.c]
2094         Introduced hook function handling in file dialog.
2095         Removed an unnecessary ShowWindow call in FILEDLG_WMCommand().
2097 Thu Mar 14 10:50:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
2099         * [if1632/gdi32.spec]
2100         Added GetNearestColor.
2102         * [if1632/kernel32.spec]
2103         Added GlobalAddAtomA.
2105         * [win32/param32.c]
2106         Added stackframe.h to includes.
2107         WIN32_GlobalAddAtomA() - new function.
2109 ----------------------------------------------------------------------
2110 Wed Mar 13 19:46:50 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2112         * [controls/edit.c]
2113         Removed calls to memmove (not portable).
2115         * [debugger/dbg.y] [debugger/debug.l]
2116         Prefixed all token with 't' to avoid conflicts with type
2117         definitions.
2118         Added 'walk queue', 'walk class' and 'info class' commands.
2120         * [debugger/info.c]
2121         Moved queue and window information functions to windows/queue.c
2122         and windows/win.c respectively.
2124         * [loader/signal.c]
2125         Added SIGHUP handling to force entry into built-in debugger.
2126         Cleaned up a bit.
2128         * [misc/spy.c]
2129         General cleanup and performance improvements.
2131         * [windows/class.c]
2132         Added CLASS_DumpClass() and CLASS_WalkClasses() functions for
2133         debugger.
2135         * [windows/event.c]
2136         Pressing Ctrl-Alt-Return forces an entry into the debugger. Not
2137         sure if this key combination is a good choice...
2139         * [windows/message.c] [windows/queue.c] (New file)
2140         Moved message queue handling functions to windows/queue.c.
2142 Tue Mar 12 14:55:16 1996  Onno Hovers  <onno@stack.urc.tue.nl>
2144         * [if1632/except.S] [include/except.h] [win32/except.c] (New files)
2145         Implemented Win32 exception functions: RaiseException(),
2146         RtlUnwind(), SetUnhandledExceptionFilter() and
2147         UnhandledExceptionFilter().
2149 Mon Mar 11 19:23:29 1996  Albrecht Kleine  <kleine@ak.sax.de>
2151         * [controls/listbox.c] [include/listbox.h]
2152         Special handling for COMBOLBOX styles introduced via extension of
2153         HEADLIST structure: lphl->dwStyle.
2155 Mon Mar 11 13:31:06 1996  Greg Kreider <kreider@natlab.research.philips.com>
2157         * [controls/combo.c]
2158         Any mouse movement within a small distance (defined by CBLMM_EDGE)
2159         of the top or bottom edge causes the window to scroll.  Also moved 
2160         some assignments so the routine works correctly.
2162         * [controls/listbox.c]
2163         Changing selection in ListBoxSetCurSel now updates PrevFocused.
2164         Added to LBSetFont and CreateListBoxStruct a fake hdc that tests 
2165         and sets the standard text height.
2167 Sun Mar 10 08:39:23 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
2169         * [windows/dce.c]
2170         Fixed memory leak in DCE_ClipWindows().
2172 ----------------------------------------------------------------------
2173 Fri Mar  8 19:07:18 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2175         * [configure.in]
2176         Quote '[' and ']' in the test program for the strength-reduce
2177         bug. This should work much better...
2179         * [files/file.c]
2180         Augmented DOS_FILE structure. Most internal functions now return a
2181         DOS_FILE* instead of a Unix handle.
2182         Added a local file array to replace the PDB list upon startup, to
2183         allow using file I/O functions before the first task is created.
2184         Added FILE_SetDateTime() and FILE_Sync() functions.
2185         
2186         * [loader/module.c]
2187         Use the DOS file I/O functions in MODULE_LoadExeHeader().
2189         * [objects/bitblt.c]
2190         Use visible region instead of GC clip region to clip source
2191         area. This fixes the card drawing bug in freecell.
2193         * [objects/region.c]
2194         Fixed CombineRgn() to allow src and dest regions to be the same.
2196 Fri Mar  8 16:32:23 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
2198         * [controls/EDIT.TODO]
2199         Updated so it reflects the current status.
2201         * [controls/edit.c]
2202         Implemented internal EDIT_WordBreakProc().
2203         Implemented ES_READONLY.
2204         Implemented WM_LBUTTONDBLCLK to select whole words.
2205         Fixed a lot of types in the function definitions.
2207 Wed Mar  6 19:55:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
2209         * [debugger/info.c]
2210         Added "walk window" command to walk window list. 
2212         * [windows/mdi.c]
2213         Added proper(?) WM_MDISETMENU message handling.
2215 Wed Mar  6 09:27:12 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
2217         * [if1632/callback.c][if1632/relay32.c]
2218         RELAY32_CallWindowProcConvStruct: new function.
2220         * [win32/struct32.c][win32/Makefile.in][win32/param.c][win32/user32.c]
2221         struct32.c: new file. Moved all structure conversions into that file
2222         PARAM32_POINT32to16,MSG16to32,USER32_RECT32to16: 
2223         renamed to STRUCT32_POINT32to16, ...
2224         WIN32_POINT,WIN32_MSG,WIN32_RECT,WIN32_PAINTSTRUCT: renamed to
2225         POINT32, ...
2226         New conversion functions for NCCALCSIZE_PARAMS, WINDOWPOS,
2227         CREATESTRUCT.
2229         * [include/windows.h][misc/exec.c]
2230         WINHELP, MULTIKEYHELP, HELPWININFO: new structures
2231         WinHelp: Reimplemented. Thanks to Peter Balch
2232         (100710.2566@compuserve.com) for his valuable research.
2234         * [win32/winprocs.c]
2235         WIN32_CallWindowProcTo16: new function, call in
2236         USER32_DefWindowProcA,...
2238 Mon Mar  4 23:22:40 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
2240         * [include/wintypes.h]
2241         Added "#define __export".
2243         * [objects/bitblt.c]
2244         Put in a few hacks to make bitblt-ing work when upside-down and/or
2245         mirrored.  BITBLT_StretchImage should really be checked over
2246         thoroughly.
2248         * [programs/progman/main.c]
2249         Added "#include <resource.h>" for definition of HAVE_WINE_CONSTRUCTOR.
2251         * [rc/parser.h] [rc/parser.l] [rc/parser.y] [rc/winerc.c]
2252         Eliminated shift/reduce conflict in style definition.
2253         Added crude error message support: "stdin:%d: parse error before '%s'".
2254         Implemented string table support to the best of my ability (it works
2255         with LoadString() calls).
2257         * [windows/nonclient.c]
2258         Fixed bug in NC_DoSizeMove() that made system menu pop up when title
2259         bar of non-iconized window was clicked (checked for iconization).
2261 Mon Mar 04 20:55:19 1996  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
2263         * [if1632/lzexpand.spec] [if1632/relay.c]
2264           [include/lzexpand.h][misc/lzexpand.c]
2265         LZEXPAND.DLL added.
2267 Sun Mar 03 18:10:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
2269         * [windows/win.c]
2270         Prevent usage of invalid HWNDs in WIN_EnumChildWin(),
2271         this prevents too early termination of EnumChildWindows().
2273 ----------------------------------------------------------------------
2274 Sat Mar  2 18:19:06 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2276         * [controls/scroll.c]
2277         Fixed SCROLL_THUMB painting fixes from Alex Korobka to store the
2278         current tracking window.
2280         * [files/file.c]
2281         Fixed two file descriptor leaks in FILE_OpenFile().
2283         * [if1632/relay32.c] [loader/module.c] [loader/pe_image.c]
2284           [tools/build.c]
2285         Replaced LOADEDFILEINFO structure by OFSTRUCT.
2287         * [memory/atom.c]
2288         Reload the pointer to the atom table in ATOM_GetTable() and
2289         ATOM_AddAtom() in case the LOCAL_Alloc() calls caused the table to
2290         move in linear memory.
2292 Fri Mar  1 11:57:13 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
2294         * [include/callback.h]
2295         Added support for CallWordBreakProc().
2297         * [controls/edit.c]
2298         New caret handling (really efficient / fast).
2299         Implemented EM_SETWORDBREAKPROC and EM_GETWORDBREAKPROC.
2300         Fixed EM_SETFONT so it now also creates a proper new caret.
2302 Wed Feb 28 22:03:34 1996  Daniel Schepler  <daniel@frobnitz.wustl.edu>
2304         * [controls/desktop.c] [misc/main.c] [windows/event.c] [windows/win.c]
2305         Added WM_DELETE protocol to top-level windows.
2307         * [controls/scroll.c]
2308         Fixed a problem which caused slow scrolling to continue uncontrollably.
2310         * [misc/exec.c]
2311         Implemented ExitWindows().
2313         * [windows/win.c]
2314         Set top-level owned windows to be transient.
2316 Wed Feb 28 19:13:22 1996  Ulrich Schmid  <uschmid@mail.hh.provi.de>
2318         * [programs/progman/*]
2319         Added a program manager.
2321 Wed Feb 28 18:38:01 1996  Duncan C Thomson <duncan@spd.eee.strath.ac.uk>
2323         * [resources/sysres_Eo.c]
2324         Added support for Esperanto [Eo] language.
2326 Wed Feb 28 00:23:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
2328         * [if1632/user32.spec]
2329         Added EndDialog, GetDlgItem, GetDlgItemInt, SetDlgItemInt,
2331         * [win32/init.c]
2332         Added task.h to includes. GetModuleHandleA() - return hInstance
2333         if called with NULL parameter. Freecell needs this. NOTE this
2334         may indicate a problem with differentiation between hModule and
2335         hInstance within Wine.
2337         * [win32/resource.c]
2338         FindResource32() and LoadResource32() - Removed #if 0's around
2339         conversion from hInstance to hModule. See remarks above.
2341         * [win32/string32.c]
2342         WIN32_UniLen() - removed stray semicolon.
2344 Tue Feb 27 21:05:18 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
2345         
2346         * [windows/caret.c]
2347         Set blink rate with call to GetProfileInt().
2349         * [rc/winerc.c]
2350         In new_style(), made initial flag settings WS_CHILD | WS_VISIBLE
2351         instead of 0.  This seems to correspond to Borland's defaults, and
2352         the flags can be unset by using the (rather obtuse) "| NOT WS_CHILD"
2353         or "| NOT WS_VISIBLE" technique in the *.rc file.
2355         * [win32/time.c]
2356         In GetLocalTime() and GetSystemTime(), used tv_sec field of result
2357         returned by gettimeofday() instead of making second call to
2358         time().  This eliminates clock jitter if the seconds change
2359         between the two calls (rare, but possible).
2361         * [include/wintypes.h]
2362         Added "#define _far" and "#define _pascal".
2364         * [windows/win.c]
2365         Added function GetDesktopHwnd().
2367         * [include/xmalloc.h]
2368         Removed the '#ifdef HAVE_STDLIB_H' structure, since it seemed to
2369         have been removed from 'configure', and was causing redefinition
2370         warnings.
2372 Tue Feb 27 19:31:11 1996  Albrecht Kleine <kleine@ak.sax.de>
2374         * [windows/winpos.c] 
2375         Added RDW_ALLCHILDREN flag in SetWindowPos (handling SWP_FRAMECHANGED)
2376         to force a repaint when setting menu bars with different rows.
2378 Sun Feb 25 21:15:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
2380         * [windows/syscolors.c] [controls/scroll.c]
2381         Fixed DrawFocusRect pen and SCROLL_THUMB painting.
2383 ----------------------------------------------------------------------
2384 Sat Feb 24 16:17:05 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2386         * [files/profile.c]
2387         Added \r when writing profile files, for DOS compatibility.
2389         * [memory/global.c]
2390         Fixed bug in GlobalReAlloc() that caused a discarded block not to
2391         be reallocated if its size was not changed.
2393         * [memory/selector.c]
2394         Avoid setting a valid LDT entry with base and limit set to 0, as
2395         this causes the kernel to clear the entry. This fixes a crash when
2396         exiting Windows program manager.
2398         * [objects/metafile.c]
2399         Removed call to creat() instead of _lcreat() for WINELIB.
2401 Fri Feb 23 00:35:54 1996  Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
2403         * [if1632/gdi32.spec]
2404         GetTextExtentPointA now has win32 specific implementation.
2406         * [include/struct32.h]
2407         Define new structure tagSIZE32 and typedef SIZE32 to it.
2408         Define prototype for function PARAM32_SIZE16to32
2410         * [win32/param32.c]
2411         New functions PARAM32_SIZE16to32 and WIN32_GetTextExtentPointA
2413         * [win32/memory.c]
2414         Added missing file pointer parameter to fprintf.
2416 Thu Feb 22 01:14:21 1996  Eric Warnke <ew2193@csc.albany.edu>
2418         * [windows/nonclient.c]
2419         Added more familiar icon activity, ie single click brings up
2420         system menu.
2422 Wed Feb 21 13:07:04 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
2424         * [controls/menu.c]
2425         Added calls to HideCaret() and ShowCaret() from within
2426         TrackPopupMenu(), MENU_TrackMouseMenuBar() and
2427         MENU_TrackKbdMenuBar().  Are there any more places where this
2428         should be done?
2430         * [controls/static.c]
2431         Fixed a FIXME in STATIC_SetIcon(), which now returns a handle to
2432         the previous icon.  Added a new FIXME at the point where
2433         WM_SETTEXT is handled for a SS_ICON static control.
2435         * [misc/commdlg.c]
2436         Implemented FindText() and ReplaceText()
2437         Still missing : Templates and Hooks handling / error checking
2439         * [resources/sysres_En.c]
2440         Redesigned FIND_TEXT and REPLACE_TEXT dialogs, so they now work.
2441         Languages other than En should update these too, though, as well
2442         as redimension the controls because some of the text doesn't fit.
2443         Created file resources/TODO to explain this.
2445         * [windows/caret.c]
2446         Re-written.  It now uses the correct R2_XORPEN.  It resets the
2447         blink timer on SetCaretPos().  It does its own hide/show scheme
2448         when SetCaretPos() is called (should be faster).
2450 Mon Feb 19 21:50:00 1996  Alex Korobka <alex@phm30.pharm.sunysb.edu>
2452         * [controls/listbox.c]
2453         Miscellaneous changes for better LBS_EXTENDEDSEL support.
2454         Removed several superfluous redrawals of item list.
2456         * [controls/scroll.c]
2457         WM_GETDLGCODE return value.
2459         * [windows/win.c]
2460         FlashWindow function.
2462         * [windows/painting.c] [windows/scroll.c]
2463         Added HideCaret/ShowCaret calls.
2465         * [objects/font.c]
2466         Added GetCharABCWidths stub.
2468         * [include/windows.h]
2469         "#define"s needed for changes mentioned above.
2471 Mon Feb 19 20:12:03 1996  Hans de Graaff  <Hans.deGraaff@twi72.twi.tudelft.nl>
2473         * [include/winsock.h]
2474         Change order of includes to get in_addr struct defined in time.
2475         (Note: Linux 1.3.66, libc 5.2.18)
2477         * [misc/main.c] [include/options.h] [miscemu/int2f.c]
2478         Changed the -enhanced option into a -mode option, which can be
2479         either 'standard' or 'enhanced'. 'enhanced' is the default.
2481 ----------------------------------------------------------------------
2482 Sun Feb 18 16:35:54 1996  Alexandre Julliard  <julliard@lrc.epfl.ch>
2484         * [controls/desktop.c]
2485         Look for the wallpaper file in the Windows directory.
2487         * [controls/menu.c]
2488         Fixed swapped parameters in SetMenuItemBitmaps().
2489         Create a separator in MENU_SetItemData() when the string is NULL.
2491         * [file/dosfs.c]
2492         DOSFS_FindNext: don't return '.' and '..' in a drive root dir.
2494         * [files/file.c]
2495         Added a DOS_FILE structure to store per-file information (not
2496         really used yet).
2497         Fixed _lread and _hread to check the size of the buffer before
2498         calling Unix read() to avoid EFAULT error.
2500         * [misc/exec.c]
2501         Return TRUE in WinHelp() for HELP_QUIT to quiet Notepad on exit.
2503         * [miscemu/instr.c]
2504         Call DOSMEM_Alarm() in INSTR_ReplaceSelector(). This should fix
2505         programs that poll the BIOS counter, provided they reload the
2506         selector on every read.
2508         * [miscemu/int21.c]
2509         Re-implemented FindFirst/FindNext for FCB calls.
2511         * [windows/message.c] [windows/winpos.c]
2512         Merged MSG_GetWindowForEvent() and WINPOS_WindowFromPoint().
2514         * [windows/nonclient.c] [windows/win.c] [include/windows.h]
2515         Added a per-window WIN_MANAGED flag; only windows that have a
2516         dialog frame or a sizing border are managed.
2518 Sat Feb 17 18:25:00 1996  Thomas Sandford <tdgsandf@prds-grn.demon.co.uk>
2520         * [if1632/Makefile.in]
2521         Added -g flag to compilation of .c files generated from *32.spec.
2523         * [if1632/gdi32.spec]
2524         Numerous additional functions implemented.
2526         * if1632/user32.spec]
2527         wsprintfA maps to vsprintf not wsprintf
2528         Numerous additional functions implemented.
2530         * [include/gdi.h] [objects/gdiobj.c]
2531         New #define MAGIC_DONTCARE added. This is used in
2532         GDI_GetObjPtr to enable getting a pointer to a GDI object of
2533         unknow type.
2535         * [win32/gdi32.c]
2536         New file.
2538         * [win32/param32.c]
2539         WIN32_MoveToEx() - handle NULL pointer argument.
2541         * [win32/user32.c]
2542         USER32_InvalidateRect - handle passing of a NULL pointer.
2543         USER32_SetTimer - New function.
2545         * [files/directory.c]
2546         Fixed DIR_Init() (off by one in allocation of space for
2547         environment variables).
2549         * [files/drive.c]
2550         Added <sys/types.h> to #includes (prerequisite for <sys/stat.h>
2551         on FreeBSD).
2553 Fri Feb 16 10:26:56 1996  Andreas Kirschbaum <ank@rbg.informatik.th-darmstadt.de>
2555         * [controls/menu.c]
2556         Memory leak plugged.
2558         * [controls/edit.c]
2559         Erase space with function ExtTextOut(). This eliminates the use of
2560         xmalloc().  Memory leak in EDIT_WriteText plugged.
2562         * [debugger/db_disasm.c]
2563         Operand for scas now is di.
2565         * [files/profile.c]
2566         PROFILE_GetSection was copying too much data.
2567         PROFILE_GetSection now returns the correct value. It was returning
2568         the number of unused instead of used bytes.
2570         * [objects/dc.c]
2571         Corrected two typos in comments.
2573         * [objects/font.c]
2574         FONT_MatchFont didn't return if it couldn't find any font.
2576         * [objects/oembitmap.c]
2577         Free object only if it has been allocated.
2579         * [windows/scroll.c]
2580         Memory leak in ScrollDC plugged.
2582 Tue Feb 13 11:17:00 1996 William Magro  <wmagro@tc.cornell.edu>
2584         * [controls/edit.c]
2585         Implemented ES_NOHIDESEL style, shift+click selection,
2586         shift+{arrow,home,end,pgup,pgdn} selection.  Optimized
2587         (de)selection drawing.  Changed selection drawing to use correct
2588         system colors instead of inverting.  Fixed deleting or backspacing
2589         across a '\r\n' end of line pair.  Selection now anchors
2590         correctly. Fixed text leaking and extra garbage problem bug
2591         uncovered by change in class style in wine960131.
2593         * [controls/widgets.c]
2594         Class flags now match those of Windows.
2596 Mon Feb 12 21:28:19 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
2598         * [controls/widgets.c]
2599         WIDGETS_Init: RELAY32_GetEntryPoint does not take a string anymore.
2601         * [if1632/Makefile.in][if1632/relay32.c][include/relay32.h]
2602         comctl32.spec ole32.spec winspool.spec: new files.
2603         RELAY32_Init: call initialization of new DLLs.
2604         RELAY32_GetEntryPoint: expects WIN32_builtin* now.
2605         RELAY32_MakeFakeModule: new function.
2607         * [if1632/gdi32.spec][if1632/kernel32.spec][if1632/user32.spec]
2608         Added Win95 functions. Ordinals now differ from both NT and Win95
2609         HeapCreate, CreateDialogIndirectParamA, CreateDialogIndirectParamW,
2610         CreateDialogParamA, CreateDialogParamW, DialogBoxIndirectParamA
2611         DialogBoxIndirectParamW, DialogBoxParamA, DialogBoxParamW:
2612         new relays.
2614         * [if1632/shell32.spec]
2615         shell32.spec: renumbered all functions to take into account ordinals.
2616         These seem to be identical between NT and Win95.
2618         * [include/dialog.h][windows/dialog.c]
2619         xBaseUnit,yBaseUnit,DIALOG_DoDialogBox: made non-static.
2621         * [include/handle32.h]
2622         New handle types VRANGE, HEAP, HEAPITEM.
2624         * [include/pe_image.h][loader/pe_image.c]
2625         struct w_files: new field builtin.
2626         PE_FindExportedFunction: support ordinals.
2627         PE_GetProcAddress: call RELAY32_GetEntryPoint for builtins.
2628         fixup_imports: support ordinals.
2629         PE_LoadImage: prefer directories over segments.
2631         * [include/resource.h][win32/resource.c]
2632         FindResource32: changed parameter from LPCTSTR to LPCWSTR
2633                 check LANG_NEUTRAL if LANG_ENGLISH fails.
2634         LoadAcceleratorsW,SizeofResource32,AccessResource32: 
2635                 disabled because it's broken.
2636         Casted to and from LPWSTR at various places.
2638         * [include/string32.h][win32/string32.c]
2639         Changed prototypes to take const arguments where appropriate.
2641         * [include/struct32.h]
2642         New structures DLGTEMPLATE32, DLGITEMTEMPLATE32.
2644         * [tools/build.c]
2645         BuildSpec32Files: generate Base value into code, generate call to
2646         RELAY32_MakeFakeModule.
2647         
2648         * [win32/heap.c]
2649         This is still not finished and needs rework.
2650         HeapAlloc: renamed to SIMPLE_HeapAlloc, implemented HeapAlloc.
2651         HeapCreate: implemented on top of VirtualAlloc, which does not work yet
2652         HeapDestroy, HEAP_GrowHeap, HeapFree: new functions.
2654         * [win32/memory.c]
2655         Support for VRANGE_OBJECT. This is not yet called from any place,
2656         and needs more platform specific support
2657         MEMORY_FindVrange, MEMORY_IsVrangeFree, MEMORY_InsertVrange,
2658         MEMORY_AllocVrange, MEMORY_ReleaseVrange: new functions.
2660         * [win32/user32.c]
2661         WIN32_CreateWindowExA: don't GlobalAlloc for integer class and window
2662         names, as in dialogs.
2663         Implemented dialog functions (see user32.spec).
2665         * [windows/caret.c]
2666         CARET_Initialize: call RELAY32_GetBuiltinDLL.
2668 Mon Feb 12 18:52:40 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
2670         * [controls/edit.c]
2671         Removed commented out #ifdefs for WINELIB.
2673         * [tools/makehtml.pl]
2674         Put in error checking when trying to open a file.
2676         * [libtest/Makefile.in] [libtest/new.c] [libtest/hello4.c]
2677         Added two new targets: hello4 and new.
2679         * [include/windows.h]
2680         Added definition of DEVMODE structure, although it's not yet used.
2681         Modified various API functions from CreateDC() to Escape(), in
2682         order to make them more compliant with the strict API definitions.
2684         * [include/wintypes.h]
2685         Added 'typedef char TCHAR'.  It probably should be defined as
2686         'short', but then we would have to support such characters.  Also did
2687         'typedef const TCHAR* LPCTSTR' and 'typedef TCHAR* LPTSTR'.
2688         Also defined WNDENUMPROC, FONTENUMPROC, GOBJENUMPROC, PROPENUMPROC
2689         MFENUMPROC, and HGDIOBJ.
2691 Mon Feb  5 16:42:07 1996  Frans van Dorsselaer <dorssel@rulhm1.leidenuniv.nl>
2693         * [misc/commdlg.c]
2694         Patched a bug that occurred in the internal COMMDLG module for the
2695         FileOpen(), FileSave() and FileSaveAs() functions.  The file-type
2696         combobox is now handled correctly.
2698 Fri Feb  2 22:52:58 1996  Roman Dolejsi  <roman@sorry.vse.cz>
2700         * [resources/sysres_Cz.rc]
2701         Added support for Czech [Cz] language.
2703 Thu Feb  1 00:35:04 1996  Philippe De Muyter  <phdm@info.ucl.ac.be>
2705         * [objects/font.c]
2706         FONT_matchfont : for fixed-spacing fonts, allow 'c' if 'm' fails;
2707         for variable-spacing fonts : allow '*' if 'p' fails; if asked lfHeight
2708         is -1, assume 0.
2709         CreateFontIndirect : if font parameter is NULL, issue an error message.
2710         CreateFont : null-terminate lfFaceName.
2711         ParseFontParms : debug code turned off : too verbose.
2712         InitFontsList : recognize *-c-* fonts as fixed-spacing fonts.
2714         * [objects/color.c]
2715         ColorToPhysical : admit 0xff...... COLORREF's as 0x00...... ones.
2717 --------------------------------------------------------------------
2718 Wed Jan 31 10:58:00 1996  Alexandre Julliard  <julliard@sunsite.unc.edu>
2720         * [configure.in]
2721         Added --with-dll option to build libwine.so.
2723         * [controls/listbox.c]
2724         Fixed ListBoxDirectory(), DlgDirSelect() and
2725         DlgDirList(). Hopefully their behavior is correct now.
2727         * [controls/menu.c]
2728         Use SEGPTRs in ChangeMenu(), InsertMenu(), AppendMenu() and
2729         ModifyMenu() for the item data, to avoid corrupting the pointer
2730         for owner-drawn items.
2732         * [controls/static.c]
2733         Attempt to load OEM icons for SS_ICON controls. Probably not
2734         entirely correct.
2735         Don't clip the text output.
2737         * [files/directory.c]
2738         Add temp dir and Windows dir to environment.
2740         * [files/dos_fs.c]
2741         Fixed a few path handling bugs in DOSFS_GetUnixFileName().
2742         Cache last used directory in DOSFS_FindNext() to avoid quadratic
2743         search time.
2745         * [files/drive.c]
2746         New format for drives configuration in wine.conf; allows
2747         specifying the type, label and serial number of a drive.
2749         * [files/file.c]
2750         New function FILE_OpenUnixFile to make sure we don't open a
2751         directory instead of a file.
2752         Fixed DOSFS_GetUnixFileName() check_last flag in FILE_MakeDir().
2754         * [files/profile.c]
2755         Rewrote profile handling. Should be closer to Windows behavior now.
2756         New function PROFILE_GetWineIniString() to get a string from wine.conf.
2757         Support environment variables in wine.conf.
2759         * [loader/task.c]
2760         Fixed the order of deletion in TASK_DeleteTask() to avoid memory
2761         corruption.
2763         * [memory/global.c]
2764         Create a discarded block on GlobalAlloc() if the size is 0; thanks
2765         to John Harvey for noticing this.
2767         * [memory/local.c]
2768         LOCAL_GetHeap: make sure the pointer is valid before checking
2769         magic number.
2771         * [misc/main.c]
2772         Moved profile and registry saving to ExitWindows(), so we don't
2773         try to save them in case of a crash.
2775         * [miscemu/int21.c]
2776         INT21_GetFreeDiskSpace: try to compute the cluster size from the
2777         filesystem size instead of hard-coding it to 64.
2778         Fixed functions 0x3f and 0x40 to use _hread and _hwrite to allow
2779         reading or writing 65535 bytes (thanks to Bruce Milner for this one).
2781         * [windows/message.c]
2782         Fixed bug in linked-list handling in MSG_DeleteQueue().
2783         Simplified SetMessageQueue().
2785         * [wine.ini] [wine.man]
2786         Updated for new drives configuration format.
2788 Tue Jan 30 11:24:46 1996  William Magro  <wmagro@tc.cornell.edu>
2790         * [controls/edit.c]
2791         Implemented ES_PASSWORD style, EM_SETPASSWORDCHAR and
2792         EM_GETPASSWORDCHAR messages.
2794         * [controls/widgets.c]
2795         Adjusted class creation flags to better match values Windows uses.
2797         * [include/windows.h]
2798         Fixed ES_NOHIDESEL typo.
2800         * [loader/ne_image.c]
2801         Added detection for zero offset in RADDR fixups. Quicken
2802         was in an infinite loop here.
2804 Mon Jan 29 20:12:22 1996  Albrecht Kleine  <kleine@ak.sax.de>
2806         * [files/dos_fs.c]
2807         Bugfix: range error in month value (0..11 set to 1..12).
2809         * [windows/caret.c]
2810         Changed ROP2-mode to R2_NOTXORPEN in CARET_Callback for pulsed
2811         appearance of the caret.
2813         * [windows/mdi.c] [include/mdi.h]
2814         Changed MDITile(): added a new parameter WORD wParam for
2815         WM_MDITILE second tiling method (MDITILE_HORIZONTAL in wParam) as
2816         used in Win3.1
2818 Sun Jan 28 14:20:00 1996  Cameron Heide  <heide@ee.ualberta.ca>
2820         * [miscemu/int2f.c]
2821         Added a small bit of MSCDEX emulation.
2823         * [windows/alias.c]
2824         ALIAS_RegisterAlias was returning the hash value when it should
2825         have been returning the record number.
2826         
2827 Sat Jan 27 10:53:51 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
2829         * [include/shell.h] [include/wintypes.h]
2830         Moved definition of HKEY and LPHKEY types to include/wintypes.h.
2831         Declared FONTENUMPROC in wintypes.h.
2833         * [include/windows.h]
2834         Added definition of KERNINGPAIR and LPKERNINGPAIR types.  Added
2835         declarations for CopyCursor(), CopyIcon(), EnumFontFamilies(),
2836         ExtractIcon(), FatalAppExit(), FindExecutable(), GetClipCursor(),
2837         GetKerningPairs(), GetQueueStatus(), GetRasterizerCaps(),
2838         IsGDIObject(), IsMenu(), IsTask(), RegCloseKey(), RegCreateKey(),
2839         RegDeleteKey(), RegEnumKey(), RegOpenKey(), RegQueryValue(),
2840         RegSetValue(), ResetDC(), ShellExecute(), SystemParametersInfo(),
2841         and wsprintf().
2843         * [tools/makehtml.pl] [documentation/apiw.index]
2844         New files that scan windows.h, commdlg.h, and toolhelp.h and output
2845         an HTML sorted list with optional links to www.willows.com and a
2846         tally of unimplemented APIW functions.
2848         * [objects/cursoricon.c]
2849         Added Win32 versions of CopyIcon() and CopyCursor() for use in
2850         libwine.
2852         * [win32/resource.c] [win32/winprocs.c]
2853         Added '#include "libres.h"' and explicit declarations of windows
2854         procs in order to avoid warnings.
2856         * [windows/utility.c]
2857         Added Win32 version of MulDiv() for libwine.
2859         * [*/*] [include/windows.h]
2860         Changed several function declarations to comply more strictly to
2861         the windows API (without, hopefully, altering their functionality).
2863         * [controls/menu.c]
2864         Made the return value of CheckMenuItem be the previous state of
2865         the menu item if it was found, otherwise -1 as specified in the
2866         SDK. This conflicts with the APIW specification, which says it
2867         should return TRUE if successful, otherwise FALSE.
2869         * [include/windows.h]
2870         Added obsolete WM_SIZE message wParam names for compatibility.
2871         Added WinHelp() command constants, even though they are not yet
2872         supported.
2874         * [rc/winerc.c]
2875         Tidied up transform_binary_file().  In argument checking, flattened
2876         any invalid characters specified with the prefix argument.
2878         * [library/libres.c]
2879         Made FindResource() case-insensitive when parameter 'name' is a string.
2881 Sat Jan 27 02:30 1996  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de
2883         * [files/drive.c]
2884         If root "/" is given in wine.conf, use it as last resort.
2886         * [files/file.c]
2887         Report ER_AccessDenied it disk ist not writable
2888         More Debug Output
2890         * [miscemu/int21.c]
2891         Squeezed some bugs in ExtendedOpenCreateFile
2892         
2893         * [windows/winpos.c]
2894         Some windows may not be moved or resized. We are missing some
2895         structures to be exact, but the approach should help in some cases
2896         and make things worse in much fewer.
2898 Fri Jan 26 10:24:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
2900         * [loader/pe_image.c]
2901         fixup_imports: Find builtins for Borland style entries, too
2903 Fri Jan 26 10:24:00 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
2905         * [controls/menu.c]
2906         LoadMenu: branch to Win32 for PE modules
2908         * [if1632/gdi.spec][if1632/kernel32.spec][if1632/user32.spec]
2909         DeleteObject, GetPixel, SetPixel,WritePrivateProfileStringA,
2910         WriteProfileStringA, EmptyClipboard, EnableMenuItem, EnableScrollBar,
2911         EnableWindow, InvalidateRect, SetWindowTextA, WinHelpA: new relays
2912         DrawTextA, MoveToEx, GetClientRect, InvalidateRect, LoadBitmapA/W,
2913         LoadAcceleratorsA/W, LoadMenu[Indirect]A/W, LoadStringA/W: changed
2914         to convert parameters or naming convention
2916         * [include/kernel32.h][include/wintypes.h]
2917         moved WCHAR, defined LPWSTR
2919         * [include/string32.h][win32/string32.c][include/struct32.h]
2920         New files
2922         * [loader/module.h]
2923         LoadModule: exit after returning from PE_LoadModule
2925         * [loader/pe_image.c]
2926         my_wcstombs: isascii does not work on Linux for Unicode
2927         PE_LoadImage: Handle directories
2929         * [misc/user32.c]
2930         USER32_RECT32to16, USER32_RECT16to32: new functions
2931         implemented new user32 relays
2933         * [misc/newfns.c]
2934         WIN32_WinHelpA: new function
2936         * [win32/param32.c]
2937         New file
2939         * [win32/resource.c]
2940         GetResDirEntry: added support for named entries
2941         WIN32_LoadAcceleratorsW: invoke *32 resource functions
2942         WIN32_LoadBitmapA: convert name to unicode if appropriate
2943         WIN32_ParseMenu: new function
2944         implemented new resource functions from user32.spec
2946 Wed Jan 24 18:09:00 1996 Alex Korobka <alex@phm30.pharm.sunysb.edu>
2948         * [objects/cursoricon.c]
2949         GetIconId() and LoadIconHandler() functions.
2951         * [windows/mdi.c]
2952         Better maximization support, TranslateMDISysAccel() function, 
2953         misc improvements.
2955         * [windows/defwnd.c]
2956         Fix for WM_WINDOWPOSCHANGED message handler.
2958         * [windows/winpos.c]
2959         Rewrote WindowFromPoint() function.
2961 Sun Jan 21 1996 17:05:09  Marcus Meissner <msmeissn@faui01.informatik.uni-erlangen.de>
2963         * [include/toolhelp.h] [misc/toolhelp.c]
2964         Added Notify(Un)Register, but no callbacks yet.
2966 Fri Jan 19 01:43:37 1996 Victor Schneider <root@tailor.roman.org>
2968         * [Makefile.in]
2969         Added target for libwine.so.1.0.
2971         * [library/winmain.c]
2972         For WINELIBDLL, _WinMain just returns hInstance instead of calling
2973         WinMain().
2975         * [misc/main.c]
2976         For WINELIBDLL, renamed main() to _wine_main() for calling from the
2977         stub main function.
2979         * [library/winestub.c] (new file)
2980         Provides a stub main() function for using libwine.so.
2982 Tue Jan 16 11:04:34 1996  Anand Kumria <akumria@ozemail.com.au>
2984         * [winsocket.c]
2985         Fix EPERM problem.
2987         * [global.c]
2988         Attempt to do some sanity checking in MemManInfo().
2990         * [Changelog]
2991         Fix changelog oversight for previous entry.
2993 ---------------------------------------------------------------------
2994 Sun Jan 14 13:45:22 1996  Alexandre Julliard  <julliard@sunsite.unc.edu>
2996         * [configure.in]
2997         Added check for gcc strength-reduce bug.
2999         * [controls/listbox.c]
3000         Changed ListBoxDirectory() to use the new DOS file functions.
3002         * [controls/menu.c]
3003         Fixed parameters for DeleteMenu() call in ChangeMenu().
3005         * [debugger/stack.c]
3006         Also display current frame in back-trace.
3008         * [files/directory.c] [files/dos_fs.c] [files/drive.c] [files/file.c]
3009         Complete rewrite of the DOS file handling.
3010         Implemented per-task file handles.
3011         Removed default Z: drive; needs to be put explicitely in wine.ini
3012         if desired.
3014         * [loader/module.c]
3015         Fixed file descriptor leak in LoadModule().
3017         * [loader/task.c]
3018         Initialise PDB file handle table in TASK_CreateTask().
3019         Close file handles on task termination.
3020         Implemented SetErrorMode().
3022         * [misc/network.c]
3023         Fixed WNetGetConnection() to use GetDriveType().
3025         * [misc/xmalloc.c]
3026         Added function xstrdup().
3028         * [miscemu/int21.c]
3029         Many changes for new DOS file functions.
3031         * [miscemu/interrupts.c]
3032         Moved DOS_GetEquipment() function into INT_Int11Handler().
3034         * [windows/win.c]
3035         Bug fix: create system menu before sending WM_NCCREATE.
3037         * [*/*.c]
3038         Replaced strcasecmp and strncasecmp by lstrcmpi and lstrncmpi for
3039         better portability.
3041 Sat Jan 13 16:13:02 1996  Jim Peterson <jspeter@birch.ee.vt.edu>
3043         * [include/wintypes.h]
3044         Added 'typedef HGLOBAL GOBALHANDLE;'.  This is not precisely in line
3045         with the true windows 'typedef HANDLE GLOBALHANDLE;', but I believe
3046         it should suffice.
3048         * [include/winsock.h]
3049         Added '#include <arpa/inet.h>' for various declarations.  '#ifdef'-ed
3050         out some old style internet address #define's.
3052         * [loader/task.c]
3053         Made MakeProcInstance() return first parameter #ifdef WINELIB32.
3054         Made FreeProcInstance() do nothing #ifdef WINELIB32.
3055         '#ifdef'-ed out TASK_AllocThunk(), as it was unused in WINELIB32.
3057         * [library/miscstubs.c]
3058         Made GetWndProcEntry16() return ACTIVATEAPP_callback() when called
3059         with name="ActivateAppProc".  This hardly seems correct, but it's my
3060         best guess as to how the emulator responds.
3062 Sat Jan  6 17:57:45 1996  Martin von Loewis <loewis@informatik.hu-berlin.de>
3064         * [if1632/kernel32.spec][win32/process.c]
3065         WIN32_GetProcAddress, LoadLibraryA: new functions
3067         * [if1632/relay32.c]
3068         RELAY32_GetEntryPoint: Removed code to load PE DLLs
3070         * [include/pe_image.h][include/pe_exe.h]
3071         struct pe_data: new fields base_addr,load_addr,vma_size,pe_reloc
3072         struct PE_Reloc_Block: new structure
3074         * [loader/module.c]
3075         MODULE_RegisterModule: new function
3077         * [loader/pe_image.c]
3078         PE_FindExportedFunction,PE_GetProcAddress: new functions
3079         fixup_imports: expect struct w_files* now, fill dlls_to_init,
3080                        load PE DLLs
3081         do_relocations: new functions
3082         calc_vma_size: renamed from dump_table
3083         PE_LoadImage: use malloc to allocate memory for image
3084         PE_InitDLL: expect HMODULE
3085         PE_InitializeDLLs: new function
3087         * [loader/task.c]
3088         NE_InitializeDLLs: branch to PE_InitializeDLLs for PE modules
3089         GetExePtr: Accept PE modules
3091         * [misc/commdlg.c]
3092         FILEDLG_WMCommand: unpack WIN32 WM_COMMAND appropriately for WineLib
3094 Thu Jan  4 11:36:21 1996  Manfred Weichel <Manfred.Weichel@mch.sni.de>
3096         * [misc/port.c]
3097         New file with usleep() function for SVR4.
3099         * [configure.in]
3100         Check for usleep() function.
3102 Tue Jan 02 14:00:00 1996  Anand Kumria <akumria@ozemail.com.au>
3104         * [if1632/toolhelp.spec] [include/toolhelp.h]
3105           [misc/user.c] [windows/message.c]
3106         Implement TOOLHELP.80 TimerCount. Fix GetTickCount.
3108         * [winsocket.c]
3109         Fixed ENOENT error.
3111         * [miscemu/dpmi.c]
3112         Implement DPMI Get Page Size (AX=0604, INT 31)
3114         * [memory/global.c]
3115         Implement TOOLHELP.72 GetMemManInfo.
3117 Mon Jan  2 10:33:00 1996  Thomas Sandford <t.d.g.sandford@prds-grn.demon.co.uk>
3119         * [if1632/callback.c]
3120         CallWindowProc() - When calling RELAY32_CallWindowProc, check
3121         whether lParam should be a SEGPTR, and if so convert it to one.
3123         * [if1632/gdi.spec] [if1632/kernel32.spec] [if1632/user32.spec]
3124         Numerous functions added, mostly calls to original (win16)
3125         functions.  Note that some (many) of these are probably not
3126         strictly correct, but with these additions freecell will at least
3127         display its main window though it is garbled.
3129         * [if1632/winprocs.spec]
3130         Completely rewritten - all WndProcs now have win32 versions to
3131         help with the lparam SEGPTR fix in callback.c
3133         * [include/kernel32.h]
3134         LPTCSTR defined.
3136         * [include/peexe.h]
3137         Definition of PE_Export_Directory amended.
3139         * [include/resource32.h]
3140         New file.
3142         * [include/stackframe.h]
3143         Definition of MAKE_SEGPTR macro #ifdef'd out and replaced with
3144         prototype for replacement function in memory/selector.c which
3145         can operate on any given memory address. This is currently
3146         required for win32 support. It is a dreadful cludge, and will
3147         certainly slow down other programs. If you are not interested
3148         in win32 development you may wish to reverse this patch.
3150         * [include/windows.h]
3151         Definition of SW_SHOWDEFAULT added.
3153         * [loader/pe_image.c]
3154         Extensive rewrites of xmmap() fixup_imports().
3155         PE_LoadImage() - initialisation of bss added, extraction of
3156         module name fixed, initialisation of DLL added.
3157         PE_InitDLL() - now does something.
3158         PE_Win32CallToStart() - initialisation of TEB pointed to by
3159         fs added.
3160         PE_InitTEB() created to perform TEB initialisation.
3162         * [memory/selector.c] 
3163         New function MAKE_SEGPTR() - see include/stackframe.h above.
3165         * [misc/user32.c]
3166         USER32_RegisterClassA(), CreateWindowExA() memory allocation
3167         method changed. This is probably now unnecessary with the
3168         new MAKE_SEGPTR handling code.
3169         USER32_DefWndProcA() removed to win32/winprocs.c
3170         USER32_TranslateMessage added.
3172         * [tools/build.c]
3173         handling of win32 spec files changed to support gcc2.6.X
3174         this requires optimisations to be disabled.
3176         * [win32/resource.c] [win32/newfns.c] [win32/heap.c] [win32/winprocs.c]
3177         New files.
3179         * [win32/Makefile.in]
3180         New files heap.c, newfns.c, resource.c and winprocs.c added to build.
3182         * [win32/file.c]
3183         New function W32_SetHandleCount.
3185         * [win32/init.c]
3186         WIN32_GetModuleHandle() - now returns handle of running process
3187         if called with NULL.
3188         GetStartupInfoA() - set cbReserved2 to 0.
3190         * [win32/memory.c]
3191         VirtualAlloc() - set mmap() file parameter to -1 instead of 0 to make
3192         it work with FreeBSD. Also check for return value. Removed extra
3193         return.
3195         * [windows/winpos.c]
3196         ShowWindow() - SW_SHOWDEFAULT handling kludged in.
3198 ----------------------------------------------------------------------
3199 Sat Dec 23 18:15:59 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
3201         * [configure.in] [Makefile.in] [tools/install-sh]
3202         New 'install' target installs Wine binary, library and man page.
3203         Library is now more logically named libwine.a.
3204         Split toolkit/ directory into library (for library code) and
3205         libtest (for test programs).
3207         * [controls/edit.c]
3208         Quick hack to partially support EM_PASSWORD style (avoids
3209         displaying your passwords on the screen when testing programs...)
3211         * [configure.in] [controls/menu.c] [include/resource.h]
3212           [misc/commdlg.c] [misc/ole2nls.c] [misc/shell.c] [windows/msgbox.c]
3213         Language is now a run-time option (wine -language xx).
3215         * [debugger/dbg.y]
3216         Dump some more debugging info on crash.
3218         * [misc/profile.c]
3219         Only consider ';' as a comment if it's the first non-blank
3220         character on the line.
3222         * [miscemu/dpmi.c]
3223         More debugging info for real-mode callback.
3225         * [objects/gdiobj.c]
3226         Rewrote EnumObjects() to do the Right Thing.
3228         * [resources/sysres*]
3229         New directory containing system resources.
3231 Fri Dec 22 11:24:39 GMT 1995  John Harvey <john@division.co.uk>
3233         * [win32/file.c] [win32/memory.c]
3234         Unixware doesn't have MAP_ANON ifdefed out for now.
3236         * [misc/dos_fs.c]
3237         DOS_GetDosFileName didn't truncate paths starting ./ properly.
3239         * [tools/build.c]
3240         Produces assembly code that works with the unixware assembler.
3242 Wed Dec 20 22:22:29 +0100 1995  Morten Welinder <terra@diku.dk>
3244         * [miscemu/instr.c]
3245         INSTR_GetOperandAddr: 16-bit addresses should be masked to 16 bits.
3247         * [misc/dos_fs.c]
3248         DOS_readdir should always return directories, even if they don't
3249         match the file name mask.
3251 Tue Dec 19 18:00:00 1995  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de>
3252         
3253         * [misc/exec.c]
3254         Give arguments to winhelp.
3256         * [miscemu/int21.c]
3257         Implemented Interrupt 21 AX=6C00 EXTENDED OPEN/CREATE.
3258         Created function ExtendedOpenCreateFile.
3259         Give for some Windows95 interrupts the return value 'not
3260         implemented'.
3262 Sun Dec 17 16:51:56 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
3264         * [include/kernel32.h] [include/windows.h]
3265         Moved the typedefs for SYSTEMTIME and LPSYSTEMTIME from
3266         include/kernel32.h to include/windows.h and declared the new Win32
3267         API functions Sleep(), GetLocalTime(), and GetSystemTime().
3268         Redefined INFINITE as 0xFFFFFFFF if WINELIB32.
3270         * [rc/rc (new file)]
3271         Created the shell script 'rc', which should simplify resource
3272         compilation.
3274         * [win32/environment.c]
3275         Kludged around an undefined reference to wine_files.  This change
3276         should be fixed some time.
3278         * [win32/time.c] [if1632/kernel32.spec]
3279         Added the functions GetSystemTime(), and Sleep().
3281         * [miscemu/int21.c]
3282         Renamed static function GetSystemTime to INT21_GetSystemTime to
3283         avoid conflicts with the API function of the same name.
3285         * [include/wintypes.h]
3286         Added the SPFMT definition for printf statements.
3288         * [misc/shell.c] [include/shell.h]
3289         Changed ERROR_* defines to SHELL_ERROR_*, as they were conflicting
3290         with the ones in include/winerror.h.  They should probably use the
3291         versions in winerror.h, but I'm not certain, and that can be done
3292         later.
3294         * [windows/mdi.c]
3295         Translated WM_MDIACTIVATE(?,(LOhwnd,HIhwnd)) messages to
3296         WM_MDIACTIVATE(HIhwnd,LOhwnd) for WINELIB32.  The ? parameter
3297         (boolean) was discarded with this translation.  Translated handler
3298         of WM_MDISETMENU(ref,(loHMENU,hiHMENU)) to handle
3299         WM_MDISETMENU(loHMENU, hiHMENU) messages in WINELIB32 (ref assumed
3300         false, call DrawMenuBar() if desired).
3302         * [*/*]
3303         General explicit casts and more rigid typing to remove warnings.
3305         * [include/winpos.h] [windows/winpos.c]
3306         Changed return type of WINPOS_ChangeActiveWindow to BOOL.
3308         * [include/commdlg.h] [misc/commdlg.c]
3309         Added prototypes for ChooseColor(), CommDlgExtendedError(),
3310         FindText() GetFileTitle(), GetOpenFileName(), GetSaveFileName(),
3311         PrintDlg, and ReplaceText().
3312         Renamed the CommDlgExtendError() function to CommDlgExtendedError().
3313         Made GetFileTitle return a short, as per the API definition.
3315         * [Makefile.in]
3316         Added line to clean and distclean that removes temporaries from
3317         the include directory.
3319 Sat Dec 16 19:39:14 MET 1995  Steffen Moeller <smoe0024@rz.uni-hildesheim.de>
3321         * [controls/edit.c]
3322         Almost rewrote EDIT_GetLineMsg.
3324 Sat Dec 16 13:51:48 MST 1995  Andrew Taylor <andrew@riscan.com>
3326         * [windows/mdi.c]
3327         Fixed MDITile() bug that occurs when 0 windows are present or all
3328         windows are minimized.
3330 Wed Dec 12 23:30:00 1995  Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de>
3332         * [misc/profile.c]
3333         Try harder to find files, especially in the working directory.
3334         Look in $HOME/.wine too and create it there if it isn't found.
3336 ----------------------------------------------------------------------
3337 Mon Dec 11 19:08:55 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
3339         * [misc/lstr.c]
3340         Replaced wine_strncpy() by a 32-bit version of lstrcpyn(), since
3341         they do the same job.
3343         * [tools/build.c]
3344         Fixed __attribute__((stdcall)) to make it compile with gcc
3345         versions under 2.7. Doesn't mean it will run OK though...
3347 Sat Dec 09 13:22:58 1995  Cameron Heide  <heide@ee.ualberta.ca>
3349         * [include/kernel32.h] [include/winerror.h]
3350         Added file attribute definitions and more error codes.
3352         * [win32/error.c]
3353         Added some rudimentary errno-to-Win32 error conversion
3354         code.
3356         * [win32/file.c]
3357         Added to GetFileInformationByHandle, filled in some known
3358         error codes, and switched to dprintf_win32.
3360         * [win32/time.c]
3361         Added GetLocalTime.
3363 Fri Dec  8 14:37:39 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
3365         * [controls/combo.c]
3366         Converted functions of the type LONG _(HWND,WORD,LONG) to the type
3367         LRESULT _(HWND,WPARAM,LPARAM) where needed.
3369         * [include/libres.h]
3370         Restructured libres prototypes to closer match the windows API.
3372         * [include/windows.h]
3373         Changed several API prototypes' parameter types from 'short' to INT,
3374         which is #defined as short in the emulator, but is a normal int in
3375         WINELIB32.  Also changed SEGPTR from DWORD to void* when WINELIB32.
3376         (This creates a lot of warnings at library-compile time, but less
3377         warnings at app-compile time.  I'll remove the warnings soon.)
3379         * [loader/resource.c]
3380         Fixed parameter mismatch in call to LIBRES_FindResource().  Changed
3381         various implementations of the LIBRES_* API functions.
3383         * [loader/signal.c]
3384         Deleted local 'i' from win_fault(), since it was unused.
3386         * [objects/bitblt.c]
3387         Mirrored changes to include/windows.h mentioned above.
3389         * [toolkit/hello3.c]
3390         Changed LoadMenuIndirect() call to LoadMenu() to test the new
3391         resource registration technique.
3393         * [toolkit/libres.c]
3394         Removed definition of 'struct resource' and fixed bugs in the resource
3395         implementation.  Implemented LIBRES_FindResource.
3397         * [windows/graphics.c]
3398         Mirrored changes to include/windows.h mentioned above.
3400 Thu Dec  7 23:15:56 1995     Martin von Loewis <loewis@informatik.hu-berlin.de>
3402         * [controls/edit.c]
3403         LOCAL_HeapExists: Changed parameter to HANDLE. For WineLib, return true
3405         * [controls/listbox.c]
3406         CreateListBoxStruct: Initialize HeapSel to 0 for WineLib
3408         * [include/listbox.h]
3409         change HeapSel from WORD to HANDLE
3411         * [include/resource.h][rc/winerc.c]
3412         struct ResourceTable: removed
3413         struct resource: moved to header file
3414         autoregister resources if supported by compiler
3416         * [memory/local.h]
3417         LOCAL_GetHeap: expect HANDLE rather than WORD
3418         
3419         * [toolkit/Makefile.in]
3420         Add ALLCFLAGS to make hello3
3422         * [toolkit/heap.c]
3423         LocalFree, HEAP_Free: handle 0 parameter gracefully
3425 Wed Dec 06 15:34:23 1995  Greg Cooper <cooper@ima-inc.com>
3427         * [misc/winsocket.c]
3428         Fixed the msgsnd and msgrcv errors that winsock programs get.
3430 Wed Dec 06 12:47:23 MET 1995 Sven Verdoolaege <skimo@dns.ufsia.ac.be>
3431         
3432         * [if1632/kernel.spec]
3433         Fixed _hread and _hwrite return type
3435         * [if1632/relay32.c] [loader/pe_image.c]
3436         Hacked loading of PE-dll's in
3438         * [win32/advapi.c]
3439         Added stubs for RegCreateKeyEx, RegSetValueEx, RegQueryValueEx
3441         * [win32/file.c]
3442         Added stubs for OpenFileMapping, CreateFileMapping, MapViewOfFileEx
3444         * [win32/process.c]
3445         Added stubs for CreateMutexA, ReleaseMutex, CreateEventA,
3446         WaitForSingleObject, DuplicateHandle, GetCurrentProcess
3447         
3448 Mon Dec 04 13:06:37 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3450         * [include/wine.h] [misc/lstr.c]
3451         Define wine_strncpy(). This function does not pad the buffer with 
3452         zeroes like GNU strncpy(), which might break some Windows programs
3453         that pass bogus size arguments.
3455         * [loader/module.c]: GetModuleFileName(),
3456         [misc/commdlg.c]: GetFileTitle(),
3457         [misc/keyboard.c], [misc/lstr.c]: lstrcpyn(),
3458         [misc/ole2nls.c], [misc/profile.c], [multimedia/mcistring.c],
3459         [multimedia/mmsystem.c], [objects/font.c]:
3460         Use wine_strncpy() where strings are returned to Windows programs.
3461         
3462         * [objects/metafile.c]
3463         PlayMetafile(): Clear the handle table before using it.
3465         * [misc/shell.c] [misc/main.c]
3466         Rename SHELL_RegCheckForRoot() to SHELL_Init() and call it from main().
3467         
3468         * [misc/profile.c]
3469         load(): Need to handle comments.
3470         
3471         * [toolkit/libres.c]
3472         Make it compile.
3473         
3474         * [windows/nonclient.c]
3475         Use MAKE_SEGPTR macro in two places where a user heap block used
3476         to be allocated instead.
3478 Sat Dec 02 16:43:43 1995 Ramon Garcia <ramon@ie3.clubs.etsit.upm.es>
3480         * [windows/winpos.c]
3481         In function SetWindowPos: do not redraw the parent of
3482         a window if the specified window is placed on the top.
3483         This avoids that ShowWindow(hwnd,1) hides hwnd instead
3484         of showing it.
3486 Sat Dec 02 11:00:00 1995 Alex Korobka <alex@phm30.pharm.sunysb.edu>
3488         * [windows/scroll.c]
3489         Now it can scroll children along with the client region of parent 
3490         window. Tried to optimize update region calculation. 
3492         * [windows/mdi.c]
3493         ScrollChildren function, more other features added. Basically
3494         a rewrite.
3496         * [windows/winpos.c] [windows/focus.c]
3497         Reimplemented window activation and focus handling.
3499         * [windows/nonclient.c]
3500         Added new flag WIN_NCACTIVATED.
3502         * [windows/message.c] [loader/task.c]
3503         Small changes (to maintain linked list of message queues).
3505 Wed Nov 29 15:51:48 1995  Daniel Schepler  <daniel@shep13.wustl.edu>
3507         * [include/options.h] [misc/main.c] [windows/defwnd.c]
3508           [windows/event.c] [windows/nonclient.c] [windows/win.c] [Wine.man]
3509         Implemented a -managed option to replace the standard Windows
3510         frame of top-level windows with the window manager's decorations.
3511         If a top-level window makes its own frame, this will still show
3512         up, inside the window manager decorations (I believe ctl3dv2.dll
3513         would do this, although I can't test this).
3515 ----------------------------------------------------------------------
3516 Tue Nov 21 18:49:10 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
3518         * [configure.in] [Makefile] [misc/dos_fs.c]
3519         Got rid of autoconf.h file.
3521         * [debugger/dbg.y]
3522         More logical behavior upon syntax errors.
3524         * [include/hook.h] [windows/hook.c]
3525         Changed hook structure and rewrote most of the hook functions for
3526         better compatibility, based on investigations by Alex Korobka.
3528         * [include/message.h] [windows/message.c]
3529         Added hooks to message queue structure and made the structure
3530         layout Windows-compatible.
3531         Added support for WH_MOUSE, WH_KEYBOARD, WH_HARDWARE and
3532         WH_JOURNALRECORD hooks.
3534         * [misc/main.c]
3535         Added command-line option for changing the language at run-time
3536         (not implemented yet), based on a suggestion from Michael Patra.
3538         * [objects/cursoricon.c]
3539         Fixed silly SEGPTR bug in DumpIcon().
3541 Mon Nov 20 22:22:22 1995  Alex Korobka <alex@phm30.pharm.sunysb.edu>
3543         * [controls/listbox.c] [controls/combo.c] [include/listbox.h]
3544         Partial implementaion of LBS_EXTENDEDSEL style,
3545         yet more updates for drag & drop support. Now works.
3547         * [windows/defwnd.c]
3548         More message handlers.
3550         * [windows/win.c]
3551         DragObject, DragDetect, AnyPopup functions. 
3553         * [controls/listbox.c]
3554         More kludgy fixes (WM_...TOITEM, etc.).
3556         * [objects/cursoricon.c] [objects/oembitmap.c]
3557         IconToCursor skeleton, patch for OBM_LoadCursorIcon to handle new
3558         cursor.
3560         * [include/bitmaps/ocr*]
3561         New OEM cursors.
3563 Mon Nov 20 11:05:20 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
3565         * [toolkit/heap.c]
3566         Swapped flags and size arguments to LocalRealloc as per changes in
3567         memory/local.c by William Magro in previous release.
3569         * [include/wintypes.h]
3570         Reinstated the #define's for 'min' and 'max', since they're part of
3571         the Windows API.  I really don't think it's a wise idea, so I put
3572         a '#ifndef DONT_DEFINE_min_AND_max' around them.  I think the actual
3573         WINE code should never use these (it should use 'MIN' and 'MAX'
3574         instead).
3576         * [loader/*]
3577         Put '#ifndef WINELIB' around many things that WINElib should not need.
3579         * [controls/edit.c]
3580         Took out many '#if defined(WINELIB)' sections with the associated
3581         comment 'temporary fix, until Local memory is correctly implemented in
3582         WINELIB', since the effective translations are now in 
3583         toolkit/miscstubs.c.
3584         Took out the #ifndef's I put in EDIT_ClearText.  Whoever modified this
3585         file fixed (or at least postponed) the bug I had encountered.
3587         * [loader/task.c]
3588         Put an #ifdef in TASK_CreateTask() that hardwires the current drive to
3589         C:  This will probably cause a lot of trouble if this change is
3590         forgotten in the future, but it will let things like the OpenFileName
3591         dialog work for now.
3593         * [toolkit/libres.c] [toolkit/Makefile.in] [toolkit/Makefile]
3594           [include/libres.h]
3595         Made new libres.c file, which will contain functions for supporting
3596         accessing resources by name in WINElib.  'winerc' will need to be
3597         changed.
3599         * [toolkit/heap.c]
3600         Refined memory routines to allow for differences between LocalAlloc
3601         and GlobalAlloc and between LocalSize and GlobalSize.
3603         * [windows/message.c] [include/windows.h]
3604         Defined the GetCurrentTime routine in windows/message.c, and removed
3605         the #define in windows.h.
3607 Mon Nov 20 00:36:42 MET 1995 Sven Verdoolaege <skimo@dns.ufsia.ac.be>
3609         * [*/*]
3610         Added new debugging type DEBUG_WIN32 and DEBUG_ENV.
3612         * [loader/module.c]
3613         Added undocumented GetExpWinVer.
3615         * [tools/build.c]
3616         Previous code didn't pop possibly changed %esi, %edi and %edx
3617         from the stack.
3618         
3619         * [win32/advapi.c]
3620         Added GetUserNameA.
3622         * [win32/code_page.c]
3623         Added stub for MultiByteToWideChar.
3625         * [win32/console.c]
3626         Added SetConsoleCtrlHandler stub.
3628         * [win32/file.c]
3629         Added ReadFile CreateFileA GetFileInformationByHandle stubs.
3630         Added CloseHandle.
3632         * [win32/memory.c]
3633         Changed VirtualAlloc and VirtualFree.
3635         * [win32/process.c]
3636         Added ExitProcess.
3638 Sun Nov 19 17:54:42 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
3640         * [include/windows.h]
3641         Fixed a few broken structure definitions.
3643         * [loader/resource.c]
3644         FindResource(): Need to check for '#xxx' strings here.
3646         * [miscemu/int21.c]
3647         FindNext(): Return MS-DOS filenames uppercase.
3649         * [objects/cursoricon.c]
3650         CreateIcon(), CreateCursor(): Added missing element to CURSORICONINFO
3651         initializers.
3652         
3653         * [misc/file.c]
3654         _lopen(): Files opened in OF_WRITE mode are truncated.
3655         OpenFile(): Ignore OF_READ/OF_WRITE/OF_READWRITE when files are
3656         created; use read/write mode.
3657         
3658         * [misc/profile.c]
3659         load(): Rewritten.
3660         
3661         * [misc/commdlg.c]
3662         Fixed bad call to strncpy() that smashed the stack.
3664         * [controls/combo.c] [windows/winpos.c] [memory/selector.c]
3665         Operator precedence fixes. People who use gcc 2.7.1 don't need a
3666         debugger :-)
3667         
3668         * [if1632/gdi.spec] [objects/palette.c]
3669         Add ResizePalette() and AnimatePalette() stubs. They don't do anything,
3670         but sometimes that's good enough.
3672 Fri Nov 17 09:10:35 GMT 1995  John Harvey <john@division.co.uk>
3674         * [include/wine.h] [include/registers.h] [include/winsock.h]
3675         Added definitions for Unixware.
3677         * [loader/signal.c] [misc/comm.c] [misc/winsocket.c]
3678         Misc. fixes for Unixware.
3680         * [loader/task.c]
3681         Made assignemts to context in InitTask for registers use the macros
3682         from registers.h to make them more portable. (Needed for Unixware)
3684         * [tools/build.c]
3685         Fixed register acces routines to work on Unixware. Bit grubby but
3686         it seems to work.
3688         * [controls/edit.c]
3689         EDIT_WM_NCCreate allocates local heap if hasn't been previously
3690         allocated.
3691         
3692         * [miscemu/int21.c]
3693         mkdir now creates directory with permission to access it.
3695         * [misc/dos_fs.c]
3696         mkdir now creates directory with permission to access it.
3697         DOS_opendir now uses linked list of dirents to avoid problems with 
3698         realloc changing address of malloced memory.
3700 Thu Nov 16 12:47:13 1995  Michael Patra  <patra@itp1.Physik.TU-Berlin.DE>
3702         * [controls/menu.c]
3703         MENU_CalcItemSize(): Fixed handling of empty menu items.
3705 Sat Nov 11 21:46:54 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
3707         * [misc/file.c]
3708         In OpenFile, unlink should be done on the unix filename.
3710 Sat Nov 11 16:43:29 1995  Cameron Heide  (heide@ee.ualberta.ca)
3712         * [include/handle32.h]
3713         New header file containing internal Win32 kernel handle
3714         information.
3716         * [win32/file.c]
3717         Added ReadFile, CreateFile, and CloseFileHandle, and did
3718         some reorganizing to match the new handle allocation scheme.
3720         * [win32/init.c]
3721         Added CloseHandle and the creation of standard I/O handles.
3723         * [win32/object_mgt.c]
3724         New module for allocating and freeing Win32 kernel handles.
3726 ----------------------------------------------------------------------
3727 Fri Nov  3 20:08:17 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
3729         * [configure.in]
3730         Attempt to check for -li386 on NetBSD. Please test this.
3732 Mon Oct 30 12:40:32 EST 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
3734         * [*/*]
3735         Eliminated various warnings with either explicit casts or more
3736         accurate variable/parameter declarations (e.g. INT instead of short
3737         or WORD).
3738         Changed macros 'min' and 'max' to 'MIN' and 'MAX', since they're
3739         macros.
3741         * [controls/edit.c] [windows/defdlg.c]
3742         Added '#ifdef SUPERFLUOUS_FUNCTIONS' wrappers around function
3743         definition of EDIT_KeyVScrollDoc, EDIT_TextLineNumber, and
3744         DEFDLG_FindDefButton to avoid warnings.
3746         * [controls/button.c] [controls/scroll.c] [windows/defwnd.c]
3747           [windows/message.c] [windows/nonclient.c]
3748         Converted MAKEPOINT macro call to manual conversion.
3750         * [include/windows.h]
3751         For WINELIB32, structures POINT, SIZE, and RECT have LONG members
3752         instead of INT.  This also invalidates the macro MAKEPOINT(), which
3753         is not supported in Win32.  Also defined the POINTS structure (SHORT
3754         members) and the MAKEPOINTS macro.
3756         * [misc/commdlg.c]
3757         Changed a lot of 'strcpy' calls to 'strncpy' calls.  I'm desperate to
3758         find this memory bug, and this should be done anyway.
3760         * [controls/edit.c]
3761         Well, the alteration mentioned above didn't do it, but #ifdef'ing out
3762         a few lines in EDIT_ClearText did.  This leads to bugs, but for now,
3763         it's better than bizzare memory troubles.
3765         * [toolkit/miscstubs.c]
3766         Removed warning messages in GLOBAL_CreateBlock(), GLOBAL_FreeBlock(),
3767         and RELAY32_GetEntryPoint().  These are the most popular warnings, and
3768         their current implementation seems fine.
3770 Sat Oct 28 09:39:18 1995  Jochen Karrer <cip307@wpax01.Physik.Uni-Wuerzburg.DE>
3772         * [objects/cursoricon.c]
3773         Fix for "broken" X servers that invert masked cursor colors.
3775 Fri Oct 27 19:27:21 1995  Alex Korobka  <alex@phm6.pharm.sunysb.edu>
3777         * [windows/dialog.c] [windows/nonclient.c]
3778         Remove unnecessary items from the system menu.
3780 Thu Oct 26 05:03:03 MET 1995  Philippe De Muyter <phdm@info.ucl.ac.be>
3782         * [objects/color.c] [objects/palette.c]
3783         Make GetNearestColor return a RGB value instead of a pixel value.
3785 Wed Oct 25 23:33:39 1995    Martin von Loewis <loewis@informatik.hu-berlin.de>
3787         * [controls/desktop.c][controls/menu.c][include/menu.h]
3788         Changed WORD parameters to UINT parameters.
3790         * [include/wintypes.h]
3791         Made UINT 32bit for WINELIB.
3793         * [loader/main.c]
3794         Disabled RELAY32_Init and MODULE_Init for WINELIB.
3796         * [misc/main.c]
3797         Assume CPU386 for WINELIB.
3799         * [rc/winerc]
3800         add_popup: set MF_POPUP flag on menu item.
3802         * [toolkit/Makefile.in][toolkit/hello3.c][toolkit/hello3res.c]
3803         Add resource demo hello3 for WINELIB.
3804         New file README.resources.
3806         * [toolkit/miscstubs.c]
3807         Add a case for 17.
3809 Tue Oct 17 15:13:10 IST 1995  Itai Nahshon <nahshon@vnet.ibm.com>
3811         * [loader/module.c]
3812         Do not append .exe if the file name already has an extension.
3814         * [misc/profile.c]
3815         Avoid creating a file with a junk name if a .ini file does not
3816         exist.
3818         * [if1632/gdi.spec] [if1632/user.spec] [if1632/dummy.c]
3819         Added a lot of dummy stubs for Windows Hebrew version.
3821 Tue Oct 17 01:03:24 1995 William Magro <wmagro@tc.cornell.edu>
3823         * [controls/button.c]
3824         Fix for buttons with no label.
3826         * [controls/combo.c][controls/listbox.c]
3827         Fixes for scrollbar positioning.  Now disappears correctly
3828         for short lists.
3830         * [controls/edit.c]
3831         Handle memory allocation differently when building as library.
3833         * [controls/static]
3834         Don't destroy old icon before drawing new icon. (Fixes landscape/
3835         portrait toggle icon in print dialog.)
3837         * [if1632/gdi.spec]
3838         New functions SetMetaFileBits and GetMetaFileBits
3840         * [include/sysmetrics.h] [windows/sysmetrics.c]
3841         Add support for GetSystemMetrics(SM_CMETRICS) == SM_CMETRICS
3843         * [include/windows.h]
3844         META_EXTTEXTOUT, not META_SETTEXTOUT
3845         define GetCurrentTime as GetTickCount (for wine library)
3847         * [loader/main.c]
3848         Don't initialize built-in modules in wine library
3850         * [memory/local.c]
3851         LocalReAlloc was defined incorrectly. Swap flags and size arguments.
3853         * [misc/main.c]
3854         Always report CPUTYPE=4 to wine library.
3856         * [objects/dib.c]
3857         RLE8 images were missing top line when decompressed.
3859         * [objects/metafile.c]
3860         SetMetaFileBits and GetMetaFileBits implemented.  Works when called
3861         from winhelp.  More testing needed.  Various memory leaks plugged.
3862         Various other bug fixes.  New metafile operations added in
3863         PlayMetaFileRecord: CreatePalette, SetTextAlign, SelectPalette,
3864         SetMapperFlags, RealizePalette, ExtTextOut, Escape.  Testing needed.
3866         * [toolkit/heap.c]
3867         LocalUnLock changed to LocalUnlock
3869 Sun Oct 15 21:55:33 1995  Anand Kumria <akumria@ozemail.com.au>
3870         
3871         * [misc/winsock.c] 
3872         Return the correct error number, for host lookup operations.
3873         Also, correct the problem with send_message.
3875 Fri Oct 13 19:04:35 1995  Morten Welinder  <terra@diku.dk>
3877         * [Makefile.in]
3878         Using nm's built-in sorting.
3880         * [*/*.c]
3881         Use xmalloc for malloc and xrealloc for realloc in all ungarded
3882         cases.
3884         * [debugger/dbg.y]
3885         Handle C-like expressions.  Clean-up.
3887         * [debugger/debug.l]
3888         Lots of new tokens for expressions.
3890         * [debugger/info.c]
3891         Implement "list" command for disassembling.
3893         * [misc/ole2nls.c]
3894         Implement more Danish stuff.
3896 Fri Oct  6 10:39:39 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
3898         * [loader/module.c]
3899         Updated self-loading modules to support for new 32 bit 
3900         stack frames.
3902 ----------------------------------------------------------------------
3903 Sun Oct  1 15:48:34 1995  Alexandre Julliard  <julliard@sunsite.unc>
3905         * [controls/menu.c]
3906         Fixed GetMenuString() for non-string items.
3908         * [debugger/*.c]
3909         First attempt to check validity of pointers before memory
3910         accesses. For now only segmented pointers are checked.
3912         * [debugger/dbg.y] [memory/ldt.c]
3913         Added possibility to dump only one segment with 'info segment'.
3915         * [include/bitmaps/ocr_*]
3916         Added all OEM cursors as XPM bitmaps.
3918         * [include/cursoricon.h] [objects/cursoricon.c]
3919         Rewrote all cursor and icon management to use the same memory
3920         layout as Windows, and to factor common code between icons and
3921         cursors. Implemented icon directory lookup to find the best
3922         matching icon (i.e. the color one).
3923         Implemented CopyCursor() and DumpIcon().
3925         * [loader/module.c]
3926         For disabled built-in modules, we now try to load the Windows DLL
3927         first, and if this fails we fall back to using the built-in module
3928         anyway.
3930         * [memory/global.c]
3931         Fixed GlobalHandle() to return the correct selector in the high
3932         word even if we are passed a handle in the first place.
3934         * [miscemu/instr.c]
3935         Take into account the size of the operand and of the stack segment
3936         when incrementing the stack pointer.
3937         Avoid referencing FS_reg and GS_reg on *BSD.
3939         * [objects/dib.c]
3940         All DIB functions now accept a BITMAPCOREHEADER format bitmap.
3941         Monochrome DIBs are created as monochrome bitmap iff they are
3942         black and white.
3944         * [objects/oembitmap.c]
3945         Added support for OEM cursors, changed OBM_LoadIcon to use the new
3946         icon memory layout.
3948         * [rc/sysres_Fr.rc]
3949         Added French [Fr] language support.
3951         * [win32/environment.c]
3952         Fixed GetCommandLineA() to use current PDB.
3954         * [windows/event.c] [windows/winpos.c]
3955         Simulate a mouse motion event upon SetWindowPos() to force the
3956         cursor to be set correctly.
3958 Sat Sep 30 17:49:32  Cameron Heide  (heide@ee.ualberta.ca)
3960         * [win32/*]
3961         New Win32 kernel functions: GetACP, GetCPInfo,
3962         GetEnvironmentVariableA, GetFileType, GetLastError, GetOEMCP,
3963         GetStartupInfoA, GetTimeZoneInformation, SetEnvironmentVariable,
3964         SetFilePointer, SetLastError, VirtualAlloc, VirtualFree,
3965         WriteFile.  Completed implementations of GetCommandLineA.
3967         * [include/kernel32.h]
3968         New file.
3970         * [loader/main.c]
3971         Call initialization function for Win32 data (doesn't currently do
3972         anything).
3974         * [misc/main.c]
3975         Implemented GetEnvironmentVariableA, SetEnvironmentVariableA.
3977 Sat Sep 30 00:26:56 1995  Niels de Carpentier  <niels@cindy.et.tudelft.nl>
3979         * [windows/winpos.c][miscemu/emulate.c][loader/module.c]
3980           [misc/commdlg.c]
3981         Misc. bug fixes
3983 Fri Sep 29 16:16:13 1995  Jim Peterson <jspeter@birch.ee.vt.edu>
3985         * [*/*]
3986         For Winelib, explicit casts have been placed where warnings were
3987         usually generated.
3988         printf formats which give the format for printing a handle as
3989         "%04x" or something similar have been changed to use the NPFMT
3990         macro defined in include/wintypes.h.  Some times, explicit casts
3991         were also necessary.
3992         Parameter, field, and variable declarations have been made more
3993         exact, such as converting 'WORD wParam' to 'WPARAM wParam' or
3994         'WORD hFont' to 'HFONT hFont'.
3995         Any call of the form GetWindowWord(hwnd,GWW_HINSTANCE) has been
3996         replaced with a call to WIN_GetWindowInstance(hwnd).
3998         * [controls/combo.c]
3999         Added WINELIB32 support in CLBoxGetCombo().
4001         * [include/dialog.h]
4002         Commented out the '#ifndef WINELIB' around the '#pragma pack(1)'.
4003         winelib needs the packing as well (e.g. when accessing resources
4004         like sysres_DIALOG_SHELL_ABOUT_MSGBOX).
4006         * [include/windows.h]
4007         Got rid of the F[a-k] macros, which were cluttering up the global
4008         namespace.
4010         * [include/windows.h] [windows/defwnd.c]
4011         Added Win32 messages WM_CTLCOLOR*.
4013         * [include/wintypes.h]
4014         Put in preprocessor '#define WINELIB32' if appropriate and changed
4015         the types of some typedefs (WPARAM, HANDLE) based on this.
4016         
4017         * [loader/module.c] [toolkit/miscstubs.c]
4018         Added #ifdef'd portion in LoadModule to handle loading a WINElib
4019         module (already loaded, just init values).  '#ifdef'ed out the
4020         definition for GetWndProcEntry16 and added a new version to
4021         toolkit/miscstubs.c.
4023         * [misc/shell.c]
4024         Adjusted the lengths of AppName and AppMisc from 512,512 to 128,906.
4025         Same amount of total storage, but much more reasonable.  Also, changed
4026         calls to strcpy() in ShellAbout() to calls to strncpy() instead.
4027         This was a difficult bug to track down, but the AppMisc field was
4028         being initialized with the contributers text, which was much larger
4029         than 512 characters.
4031         * [toolkit/atom.c]
4032         New file for atom-handling functions.  Copied from memory/atom.c and
4033         then heavily modified.  Right now, it's just a linked list of atoms.
4034         Consider it as a hash table with just one entry.  It's easily changed
4035         later.
4037         * [toolkit/heap.c]
4038         Commented out the heap functions with a "#ifdef WINELIB16" and put in
4039         a Win32 version (which is basically a modified copy).
4041         * [toolkit/sup.c] [toolkit/miscstubs.c]
4042         Moved the stuff I put in toolkit/sup.c into toolkit/miscstubs.c and
4043         added quite a few more stubs.
4045         * [toolkit/winmain.c]
4046         Rearranged startup code in _WinMain.  I think this will work.
4048         * [toolkit/Makefile.in]
4049         Added targets for 'hello' and 'hello2' in case anyone cares to try
4050         out the sample programs.
4052 Wed Sep 27 23:13:43 1995  Anand Kumria <akumria@ozemail.com.au>
4053         
4054         * [miscemu/int2f.c] [miscemu/vxd.c] [if1632/winprocs.spec]
4055         First attempt at support for some VxDs. Comm, Shell and Pagefile.
4057 Tue Sep 26 21:34:45 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
4059         * [misc/dos_fs.c]
4060         DOS_SimplifyPath: Also remove "/./" from path. (Happens when
4061         starting applications like 'wine ./excel.exe')
4063 Sat Sep 23 23:32:40 1995  Morten Welinder  <terra@diku.dk>
4065         * [configure.in]
4066         Avoid relative path for wine.ini.
4068         * [rc/sysres_Da.rc]
4069         Support for Danish [Da] language.
4071         * [misc/main.c] [miscemu/cpu.c]
4072         Return the processor we're running on correctly.
4074         * [miscemu/int2f.c]
4075         Minor stuff in int 0x2f, function 0x16.
4077 Sat Sep 23 1995 17:58:04  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4079         * [misc/shell.c] [misc/main.c]
4080         Implement saving and loading of the registry database (needed for
4081         OLE). Very experimental. Fixed ShellExecute().
4082         
4083         * [miscemu/int21.c]
4084         EEXIST is not a critical error condition for mkdir().
4086 Fri Sep 22 01:33:34 1995  Alex Korobka  <alex@phm6.pharm.sunysb.edu>
4088         * [include/shell.h] [misc/shell.c]
4089         Implemented 4 drag/drop functions with documented functionality.
4091         * [multimedia/time.c]
4092         "Fixed" MMSysTimeCallback kludge so Excel5 loads up without crashing.
4094         * [*/*] 
4095         Added new files, more message definitions, structures, debug info,
4096         etc.  Rewrote message logging functions to produce output similar
4097         to WinSight.  Check out -debugmsg +message option.
4099         * [misc/file.c]
4100         Fixed GetDriveType return value.  
4102         * [windows/message.c] 
4103         Hooks are invoked in normal order.
4105         * [miscemu/*]
4106         Added some functions and interrupts.
4108         * [misc/shell.c]
4109         Implemented Drag... functions.
4111 Thu Sep 21 23:50:12 1995  Jukka Iivonen <iivonen@cc.helsinki.fi>
4113         * [rc/sysres_Fi.rc] [rc/sysres.rc]
4114         First attempt at Finnish [Fi] language support.
4116 ----------------------------------------------------------------------------
4117 Sun Sep 17 16:47:49 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
4119         * [configure.in] [*/Makefile.in] [Make.rules.in]
4120         Cleaned up makefiles, added configuration option for Winelib,
4121         grouped common make rules in Make.rules.in.
4123         * [Configure]
4124         Renamed to 'Configure.old'; please use 'configure' instead.
4126         * [controls/menu.c]
4127         Fixed DestroyMenu() to avoid deleting the same menu twice.
4128         More fixes to WM_MENUSELECT, and added WM_INITMENU.
4130         * [if1632/relay.c]
4131         Fixed wrong register values displayed by RELAY_DebugCall32().
4133         * [memory/local.c]
4134         Fixed LocalLock() and LocalUnlock() to increment/decrement the
4135         lock count for moveable blocks.
4137         * [misc/commdlg.c] [misc/shell.c] [rc/winerc.c]
4138         Modified the generated C file so that the resource information
4139         (size, etc.) is also exported.
4140         Modified common dialogs to use the new informations.
4142         * [misc/main.c] [ANNOUNCE]
4143         Update the list of contributors. Please let me know if I forgot
4144         someone.
4146         * [rc/sysres.rc] [rc/sysres_En.rc]
4147         Moved English resources to sysres_En.rc.
4148         Changed ids from numeric to symbolic for dialogs.
4150         * [windows/dialog.c]
4151         Modified template parsing to be able to pass segmented pointers to
4152         CreateWindow().
4154         * [windows/win.c]
4155         CreateWindow() now takes segmented pointers for class and window
4156         names.
4157         Maxmimize or minimize the window upon creation if the WS_MAXIMIZE
4158         or WS_MINIMIZE bits are set.
4160 Thu Sep 14 17:19:57 1995  Paul Wilhelm  <paul@paul.accessone.com>
4162         * [controls/scroll.c]
4163         Fixed scroll-bar bugs for non-client windows.
4165 Thu Sep 14 14:04:14 MET DST 1995 Jochen Hoenicke <Jochen.Hoenicke@arbi.Informatik.Uni-Oldenburg.de>
4167         * [include/cursor.h] [windows/cursor.c]
4168         Cursor is not mirrored any more and the hotspot is set right.
4170 Wed Sep 13 14:22:31 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4172         * [ole.h]
4173         Misc small fixes.
4175 Mon Sep  4 00:01:23 1995  Jon Tombs <jon@gte.esi.us.es>
4177         * [rc/sysres_Es.rc]
4178         First attempt at Spanish [Es] language support.
4180 Sun Sep  3 13:22:33 1995     Martin von Loewis <loewis@informatik.hu-berlin.de>
4182         * [include/alias.h][windows/alias.c][include/relay32.h]
4183         New files
4185         * [controls/widgets.c]
4186         WIDGETS_Init: register alias window procedures
4188         * [if1632/callback.c]
4189         CallWndProc: Call alias functions if necessary
4191         * [if1632/gdi32.spec]
4192         GetStockObject, TextOutA: new relays
4194         * [misc/user32.c][if1632/user32.spec][misc/Makefile.in][misc/Imakefile]
4195         user32.c: new file
4196         BeginPaint,CreateWindowExA,DefWindowProcA,DispatchMessage,EndPaint,
4197         GetMessageA,RegisterClassA,ShowWindow,UpdateWindow: new relays
4199         * [if1632/winprocs32.spec][loader/pe_image.c][loader/module.c]
4200         PE_Win32CallToStart: new function
4201         MODULE_CreateInstance: removed static attribute
4202         LoadModule: Try loading PE image on error 21
4203         PE_LoadModule: new function
4204         PE_LoadImage: initialize pe_data with 0
4205         
4206         * [include/dlls.h][include/peexe.h]
4207         moved pe_data and w_files to peexe.h
4208         
4209         * [misc/shell.c]
4210         ShellAbout: Register AboutWndProc aliases
4212         * [miscemu/int21.c]
4213         handle 0x440A and 0xDC
4215         * [miscemu/int2f.c]
4216         handle 0x84
4218         * [objects/dib.c]
4219         CreateDIBitmap: complain if BITMAPINFOHEADER is of wrong size
4221         * [tools/build.c]
4222         include windows.h and relay32.h into generated Win32 relays,
4223         don't declare the implementation as int (*)();
4224         limit in WIN32_builtin was off by one
4226         * [windows/caret.c]
4227         CARET_Initialize: new function, call on strategic places
4229         * [windows/messagebox.c]
4230         MessageBox: register message box proc aliases
4232         * [if1632/advapi32.spec][if1632/comdlg32.spec]
4233         New files
4235         * [if1632/Makefile.in][if1632/Imakefile][if1632/relay32.c]
4236         added new spec files
4237         RELAY32_GetBuiltinDLL: perform lookup case insensitive
4238         RELAY32_GetEntryPoint: start name search at 0
4240         * [if1632/user.spec][if1632/kernel.spec][if1632/gdi.spec]
4241         Added stubs for new Win95 API
4243 Sat Sep 2 1995  Martin Roy
4245         * [misc/commdlg.c]
4246         In WM_INITDIALOG, current filter must reflect lpofn->nFilterIndex.
4247         When process IDOK button in FILEDLG_WMCommand(),
4248         lpofn->nFilterIndex should be updated to current selection.
4250 Thu Aug 31 15:00:00 1995 Ram'on Garc'ia <ramon@ie3.clubs.etsit.upm.es>
4252         * [loader/module.c] [loader/ne_image.c]
4253         Added support of self-loading modules.
4255 ---------------------------------------------------------------------
4256 Thu Aug 31 17:19:57 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
4258         * [Configure]
4259         Added compile-time option for IPC.
4261         * [configure.in]
4262         Added command-line options for language, IPC and malloc
4263         debugging.
4265         * [controls/menu.c]
4266         WM_MENUSELECT was sometimes sent to the wrong window.
4268         * [debugger/break.c]
4269         For the 'next' command, only step over instruction that require
4270         it. This allows 'next' to do the right thing with jmp and ret
4271         instructions.
4273         * [ipc/*.c] [memory/atom.c] [memory/global.c]
4274         IPC can now be configured out at compile-time.
4276         * [loader/task.c]
4277         Bug fix in TASK_Reschedule() that could cause a task to be deleted
4278         twice.
4280         * [miscemu/dosmem.c] (New file)
4281         Partial emulation of the BIOS data segment.
4283         * [miscemu/instr.c]
4284         Trap attempts to access selector 0x40 and remap the access to
4285         segment __0040H.
4287         * [tools/build.c]
4288         Fixed bug in CallTo32_LargeStack() that caused problems when
4289         compiling Wine with the -fomit-frame-pointer option.
4291         * [windows/message.c]
4292         Fixed bug in hardware event handling that could cause some events
4293         to get ignored.
4295 Sat Aug 26 13:12:59 IST 1995 Michael Veksler <mveksler@vnet.ibm.com>
4297         * [ipc/README] [ipc/dde.tex]
4298         LaTeX documentation for the ipc and DDE stuff.
4300 Wed Aug 23 22:01:23 GMT 1995 Michael Veksler <mveksler@vnet.ibm.com>
4302         * [ipc/Imakefile] [ipc/wine_test_stub.c]
4303         Fixed IPC testing. Now it can be compiled with "make tests"
4305 Wed Aug 23 21:04:14 1995  Fons Botman  <botman@wab-tis.rabobank.nl>
4307         * [if1632/kernel.spec] [include/windows.h] [misc/main.c]
4308         Added GetWinDebugInfo/SetWinDebugInfo stub for player.exe
4310 Sun Aug  20 13:49:42 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4312         * [miscemu/int21.c]
4313         Misc fix to int21,ah=40 (write) to match _lwrite().
4314         AX=0x440A (check if handle is remote) added.
4316         * [multimedia/mmsystem.c]
4317         Moved mciSendString to mcistring.c.
4319         * [multimedia/mcistring.c]
4320         New file, string interface for MCI (not complete, not thoroughly
4321         tested).
4323         * [multimedia/audio.c]
4324         IOCTL prints errors; one paranoid check disabled.
4326         * [misc/file.c]
4327         Misc operator precedence fixes.
4329         * [if1632/gdi.spec] [objects/bitblt.c]
4330         Stub for FastWindowFrame (parameters not correct).
4332 Sat Aug 19 01:31:23 1995  Graham Menhennitt <gfm@werple.mira.net.au>
4334         * [loader/ne_image.c]
4335         Preliminary support for iterated segments.
4337 Sat Aug 19 00:43:04 1995  Andrew Taylor  (andrew@riscan.com)
4339         * [windows/mapping.c]
4340         In function MAPPING_FixIsotropic(), VportExt[XY] is multiplied by
4341         the absolute value of (ydim / xdim) or (xdim / ydim).
4343 Thu Aug 15 23:00:16  Gregory Trubetskoy  <grisha@mira.com>
4345         * [objects/oembitmap.c]
4346         Added some includes for Windows 95.
4348         * [include/sysmetrics.h]
4349         Added some sysmetrics for Windows 95.
4351         * [include/bitmaps/*95]
4352         New files: obm_close_95, obm_closed_95, obm_reduce_95, obm_reduced_95
4353         obm_zoom_95, obm_zoomd_95 - these are some pixmaps for Windows 95.
4355 Thu Aug 10 12:00:00 1995  Jan Willamowius  (jan@janhh.shnet.org)
4357         * [misc/shell.c] [rc/sysres*.rc]
4358         The caption of the ShellAbout dialog box is language specific and
4359         should be defined in the resources.
4361 ----------------------------------------------------------------------
4362 Thu Aug 17 19:30:14 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
4364         * [*/Makefile.in]
4365         Removed winelibclean target, as it doesn't work anyway.
4367         * [controls/button.c]
4368         Avoid drawing the focus rectangle outside of the button.
4370         * [controls/widgets.c]
4371         Fixed bug with the size of the reserved bytes for the Edit
4372         control (caused Eudora to crash).
4374         * [debugger/*] [include/debugger.h]
4375         Unified debugger address handling. Segmented and linear addresses
4376         are no grouped in a single type DBG_ADDR.
4377         All commands now accept seg:off addresses.
4378         Module entry points are now loaded upon first entry to the
4379         debugger, so that entry points of the loaded executable also
4380         appear in the symbol table.
4382         * [include/registers.h] [miscemu/*.c]
4383         Register macros are now of the form 'AX_reg(context)' instead of 'AX'.
4384         This makes code less readable, but will prevent a lot of name
4385         clashes with other definitions. It also avoids a hidden reference
4386         to the 'context' variable.
4388         * [ipc/dde_atom.c] [misc/atom.c]
4389         All *AddAtom and *FindAtom functions now take a SEGPTR parameter,
4390         to allow supporting integer atoms.
4391         Moved atom.c to memory/ directory.
4393         * [loader/task.c]
4394         Fixed environment allocation to compute the size dynamically.
4395         Added 'windir' environment variable.
4396         Fixed GetDOSEnvironment() to return the current task environment.
4398         * [windows/message.c]
4399         Fixed bug in MSG_GetWindowForEvent().
4401 Wed Aug  9 11:40:43 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4403         * [include/ole.h]
4404         Added a lot of structures  from my Borland Manual. Neither complete,
4405         nor 100% right (check please)
4406         
4407         * [misc/shell.c]
4408         Fixed some of the Reg* functions.
4409         Enhanced ShellExecute.
4410         Please test: wine "regedit.exe /v" mplayer.exe soundrec.exe
4411         Do YOU know the format of \WINDOWS\REG.DAT? Mail me please :)
4413         * [misc/dos_fs.c]
4414         Make umsdos mounted windows dirs work again.
4416         * [miscemu/emulate.c]
4417         Added some comments, preimplementation of subfunction 7.
4419         * [multimedia/mmsystem.c]
4420         Implemented mciSendString. not complete, not clean, not
4421         necessarily working (only checked with a program which uses
4422         'cdaudio' (one working program is cool.exe, a shareware waveditor
4423         with cdaudio play facilities.)
4425         * [multimedia/mcicda.c]
4426         Segptr fixes in DriverProc
4427         Default cdrom drive in Linux is /dev/cdrom ... usually a symbolic
4428         link to your real cdrom device.
4430 Tue Aug  8 19:41:50 CDT 1995 Daniel Schepler <dks2@cec.wustl.edu>
4432         * [loader/resource.c]
4433         Don't crash in a LoadString to NULL
4435         * [loader/resource.c]
4436         Fixed accelerators to work with modifiers.  (ALT-x modifiers still
4437         won't work unless the ALT keypress exited the menu.)
4439         * [misc/file.c]
4440         Expand a file to the current offset with an _lwrite of size zero.
4442         * [misc/file.c]
4443         Set a newly created file to read-write instead of write-only.
4444         
4445 Sun Aug  6 20:28:35 1995  Anand Kumria <akumria@ozemail.com.au>
4447         * [misc/main.c] [include/msdos.h]
4448         Fixed to return DOS version 6.22, and the correct byte order
4449         for Windows programs.
4451 Wed Aug  2 12:36:33 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4453         * [include/options.h] [memory/global.c] [misc/main.c]
4454         Make the new IPC run-time selectible, disabling it by default.
4455         (I think it's only useful for libwine, anyway.)
4457         * [loader/task.c] [memory/selector.c]
4458         In FreeSelector(), walk up the stack and fix the frames.
4460         * [objects/dib.c]
4461         Missing break statement in DIB_SetImageBits_RLE8().
4462         In GetDIBits(), set the compression flag in the bitmap info to zero.
4464         * [windows/dialog.c]
4465         GetNextDlgGroupItem() needs to treat the first child as if it had
4466         an implicit WS_GROUP bit set.
4468 Mon Jul 31 15:44:47 EDT 1995 Louis-D. Dubeau <ldd@step.polymtl.ca>
4470         * [misc/dos_fs.c]
4471         Quick'n dirty fix for the initialisation of the Z: information
4472         structure.
4474 ----------------------------------------------------------------------
4475 Sat Jul 22 22:39:09 IDT 1995 Michael Veksler <e1678223@tochnapc2.technion.ac.il>
4477         * [ipc/*]
4478         New directory. This directory contains the new inter-wine
4479         communications support. It enables DDE protocols between two wine
4480         instances.  Currently it is limited to DDE, but can be enhanced to
4481         support OLE between 2 different wine instances.  This is very
4482         important for libwine.a DDE/OLE support.
4484         * [tools/ipcl]
4485         A script to delete garbage IPC handles (shared memory, semaphores
4486         and message queues).  The current inter-wine communication is not
4487         perfect, and sometimes leaves garbage behind.
4489         * [if1632/relay.c] [include/atom.h] [include/global.h]
4490         [loader/selector.c] [loader/task.c] [loader/module.c]
4491         [loader/signal.c] [memory/global.c] [misc/atom.c]
4492         [windows/class.c] [windows/message.c] [windows/win.c]
4493         [Imakefile]
4494         Hooks for inter-wine DDE support, current Global.*Atom functions
4495         renamed to Local.*Atom since Global.*Atom are used for Inter-Wine
4496         DDE communication. (The first call to these functions sets up the
4497         IPC structures - which otherwise cause unneeded overhead.
4499 Mon Jul 17 19:55:21 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
4501         * [controls/menu.c]
4502         Don't crash if a NULL string is passed to menu functions.
4504         * [memory/selector.c]
4505         We now use a bit in ldt_flags_copy to indicate free LDT entries.
4506         Fixed a bug in SELECTOR_ReallocBlock that could cause it to
4507         overwrite valid LDT entries when growing a block.
4509         * [miscemu/instr.c]
4510         Emulate int xx instruction by storing the interrupt vector in
4511         CS:IP and returning directly. This allows a program to install an
4512         interrupt vector.
4514         * [windows/win.c]
4515         Added function WIN_GetTopParent to get the top-level parent of a
4516         window.
4518 Sun Jul  16 18:17:17 1995  Gregory Trubetskoy <grisha@mira.com>
4520         * [loader/resource.c]
4521         Added LoadIconHandler. It doesn't do anything yet, but now you
4522         can use borland help files with winhelp.exe.
4524 Sun Jul 16 11:58:45 1995 Anand Kumria <akumria@ozemail.com.au>
4526         * [misc/main.c]
4527         Fixed to return 386 Enhanced mode correctly. Also return the same
4528         type of CPU, for both Enhanced and Standard mode, namely a 386.
4530 Sun Jul 16 00:02:04 1995    Martin von Loewis <loewis@informatik.hu-berlin.de>
4532         * [Configure] [include/options.h] [include/wineopts.h]
4533           [misc/main.c][misc/spy.c]
4534           Removed support of spy file. Redirected spy messages to stddeb.
4535           Removed -spy option. Added -debugmsg +spy option.
4537         * [debugger/dbg.y][debugger/debug.l]
4538         Enabled segmented addresses (seg:offs) for break and x commands.
4540         * [if1632/gdi.spec] [objects/region.c] [windows/graphics.c]
4541           [include/region.h]
4542         FrameRgn, REGION_FrameRgn: New functions
4544         * [if1632/kernel.spec]
4545         IsWinOldApTask: Return false
4547         * [if1632/mouse.spec]
4548         CplApplet: Removed
4550         * [if1632/user.spec] [windows/win.c]
4551         ShowOwnedPopups: New function
4553         * [if1632/winsock.spec] [misc/winsocket.c]
4554         inet_addr, select: New prototypes in relay code
4555         Fixed memory layout for netdb functions (getXbyY).
4556         WINSOCK_ioctlsocket: Translated FIONREAD, FIONBIO, and FIOASYNC
4558         * [objects/clipping.c]
4559         RectVisible: Fixed call to LPToDP
4561         * [rc/winerc.c]
4562         main: Removed extra argument to getopt for Linux.
4564 Tue Jul 11 00:14:41 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4566         * [controls/listbox.c]
4567         Yet another fix for ListBoxDirectory().
4568         
4569         * [loader/module.c] [if1632/kernel.spec]
4570         Make GetModuleHandle() accept instance handles as parameter.
4572         * [if1632/relay.c] [loader/task.c]
4573         Put a magic cookie at the bottom of the 32 bit stack, and check on
4574         each return from a 32 bit function whether it's still there. Complain
4575         if it's not.
4577         * [if1632/user.spec]
4578         Wrong entry for CloseDriver().
4580         * [misc/dos_fs.c] [loader/task.c] [include/dos_fs.h] [misc/file.c]
4581         [miscemu/int21.c]
4582         Large parts of dos_fs.c simplified. Changed it to use one
4583         current drive/directory per task, which is set to the module path on
4584         task creation.
4585         Prevent CorelPaint from closing stdin.
4586         open() with O_CREAT set must be passed three parameters.
4587         DOS FindFirst()/FindNext() could crash when FA_LABEL was set. Fixed,
4588         it's in DOS_readdir() now.
4590         * [misc/profile.c]
4591         Some badly written software (Lotus Freelance Graphics) passes a bogus
4592         size parameter that caused Wine to write off the end of a segment.
4593         Fixed. (It's probably too paranoid now.)
4594         
4595         * [multimedia/mmsystem.c] [multimedia/time.c] [multimedia/joystick.c]
4596         [multimedia/Imakefile] [if1632/winprocs.spec]
4597         16 bit entry point for MMSysTimeCallback.
4598         Split off time.c and joystick.c from mmsystem.c.
4599         
4600         * [objects/dib.c]
4601         GetDIBits(): call XGetImage() via CallTo32_LargeStack.
4603         * [windows/cursor.c]
4604         DestroyCursor(): do nothing for builtin cursors.
4605         
4606         * [windows/mdi.c]
4607         Half of WM_MDISETMENU implemented.
4608         
4609         * [windows/win.c]
4610         EnumWindows() and EnumTaskWindows() never enumerated any windows.
4611         Fixed.
4613         * [windows/*.c]
4614         Fixed GetParent() to return correct values for owned windows.
4616         * [windows/message.c]
4617         Don't try to activate disabled top-level windows.
4619         * [windows/nonclient.c]
4620         Work around a bug in gcc-2.7.0.
4621         
4622         * [tools/build.c] [include/stackframe.h] [memory/global.c] 
4623         [loader/task.c] [memory/selector.c]
4624         Some Visual Basic programs (and possibly others, too) expect ES to be 
4625         preserved by a call to an API function, so we have to save it.
4626         In GlobalFree() and FreeSelector(), we must clear CURRENT_STACK16->es 
4627         to prevent segfaults if ES contained the selector to be freed.
4629 Sun Jul  9 20:21:20 1995  Jon Tombs  <jon@gtex02.us.es>
4631         * [*/*]
4632         Added missing prototypes to header files and relevant includes
4633         to reduce compile time warnings.
4635 Sun Jul  9 18:32:56 1995  Michael Patra  <micky@marie.physik.tu-berlin.de>
4637         * [configure.in] [include/config.h] [*/Makefile.in]
4638         New configuration scheme based on autoconf.
4640 Sat Jul  8 14:12:45 1995  Morten Welinder  <terra+@cs.cmu.edu>
4642         * [miscemu/ioports.c]
4643         Revamp to have only one in- and one out- variant, both really
4644         implemented.
4646         * [miscemu/instr.c]
4647         INSTR_EmulateInstruction: Use new ioport interface.  Implement
4648         string io.  Correct instruction pointer for 32-bit code.
4650         * [include/miscemu.h]
4651         Update port function prototypes.
4653         * [include/registers.h]
4654         Defined FS and GS.
4656 Sat Jul  8 13:38:54 1995  Hans de Graaff  <graaff@twi72.twi.tudelft.nl>
4658         * [misc/dos_fs.c]
4659         ChopOffSlash(): A path consisting off a single slash is left
4660         intact, and multiple slashes are all removed.
4662 ----------------------------------------------------------------------
4663 Wed Jul  5 19:06:35 1995  Alexandre Julliard  <julliard@sunsite.unc.edu>
4665         * [controls/scroll.c]
4666         Fixed drawing bug that caused part of a non-client scroll bar
4667         to be painted even when the scroll-bar was hidden.
4669         * [debugger/break.c] [debugger/dbg.y]
4670         Rewrote breakpoint handling to work in 16-bit mode.
4671         Implemented single-stepping ('step' and 'next' instructions).
4673         * [debugger/debug.l]
4674         Format specifier is now a separate token.
4675         Entering an empty line at the debugger prompt causes the previous
4676         command to be repeated, like under gdb.
4677         
4678         * [debugger/debug.l] [debugger/registers.c]
4679         Differentiate 16-bit and 32-bit registers without taking current
4680         mode into account ($eax is always 32-bit, $ax always 16-bit).
4682         * [debugger/stack.c]
4683         Fixed stack information routines to differentiate between 16-bit
4684         and 32-bit stacks.
4686         * [loader/task.c]
4687         Option -debug now sets a breakpoint at the first instruction of
4688         every loaded task.
4690         * [miscemu/instr.c]
4691         Added handling of lock, repe and repne prefixes.
4693         * [objects/dib.c]
4694         Changed StretchDIBits() to do the correct thing, even if it's still
4695         not really optimal.
4697         * [windows/graphics.c]
4698         Fixes in RoundRect(), thanks to Babak Masalehdan.
4700         * [windows/message.c]
4701         Tried to fix mouse event handling with respect to disabled
4702         windows.
4704         * [windows/painting.c]
4705         Clear WIN_NEEDS_NCPAINT flag before sending WM_NCPAINT to avoid
4706         infinite loops.
4708         * [windows/win.c]
4709         Fixed IsWindowVisible() to return FALSE when one of the parent
4710         windows is hidden.
4712 Sat Jul  1 22:08:21 1995   Martin von Loewis <loewis@informatik.hu-berlin.de>
4714         * [if1632/compobj.spec][misc/compobj.c]
4715         CoGetMalloc: New function
4716         Added relay entries for COMPOBJ ordinals above 100
4717         CoInitialize: Changed parameter to DWORD
4719         * [if1632/ole2.spec]
4720         Exported implementation of OleBuildVersion
4722         * [if1632/ole2disp.spec][misc/ole2disp.c][misc/Imakefile]
4723         ole2disp.c: New file
4724         SysAllocString, SysReallocString, SysAllocStringLen,
4725         SysReAllocStringLen, SysFreeString, SysStringLen: new functions
4727         * [if1632/ole2nls.spec][include/winnls.h][misc/ole2nls.c]
4728         CompareStringA: New function
4730 Thu Jun 29 19:42:02 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4731         * [objects/font.c] [if1632/gdi.spec]
4732         New stubs for CreateScalableFontResource, GetGlyphOutline.
4734 Thu Jun 29 13:47:08 GMT 1995  Göran Thyni  (goran@norrsken.bildbasen.se)
4736         * [misc/commdlg.c]
4737         Extensive changes and bug fixes to FileDialog handling,
4738         behaves more like native Windows.
4740 Wed Jun 28 13:04:44 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4742         * [controls/listbox.c] [controls/combo.c]
4743         Some minor optimizations.
4744         
4745         * [memory/local.c]
4746         LOCAL_FindFreeBlock(): Never use the last one.
4747         
4748         * [memory/global.c]
4749         GlobalReAlloc(): GMEM_MODIFY must not be ignored when size==0.
4750         
4751         * [misc/file.c]
4752         read() returns an error when length==0. This is not what Windows
4753         programs expect, so pay attention to this in _lread(). Changed this
4754         in _lwrite(), _hread(), _hwrite(), too.
4756         * [loader/resource.c]
4757         LoadIcon(): Ignore bih->biSizeImage, some icons have wrong values in
4758         there.
4759         
4760         * [if1632/shell.spec] [misc/shell.c]
4761         Wrong spec file entries caused havoc: HKEY has 32 bit, not 16.
4762         Accept some more combinations of parameters in the Reg..() functions.
4763         
4764         * [if1632/toolhelp.spec]
4765         Make InterruptRegister() and InterruptUnregister() return false.
4767         * [windows/hook.c]
4768         CallNextHookEx() used to crash when called with a null hhook. Fixed.
4770 Wed Jun 28 10:14:34 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
4772         * [include/neexe.h][loader/ne_image.c]
4773         NE_LoadSegment: Detect iterated segments
4775         * [misc/ole2nls.c]
4776         LOCALE_SLONGDATE: fixed typo
4778         * [miscemu/int5c.c]
4779         Reordered include files to avoid conflicts with Linux libc.5.1
4781         * [rc/winerc.c]
4782         Added -b option to process binary resource files into C arrays
4784         * [include/callback.h]
4785         CallWndProc: Added dummy ds parameter for libwine
4787         * [include/gdi.h][include/user.h]
4788         USER_HEAP_ALLOC, GDI_HEAP_ALLOC: dropped flags parameter
4790         * [include/ldt.h][include/stackframe.h]
4791         defined segment conversion macros for libwine
4793         * [misc/atom.c]
4794         Defined USER_HeapSel for libwine
4796         * [misc/main.c]
4797         Disable -dll option for libwine
4799         * [misc/user.c]
4800         removed GetFreeSystemResources, SystemHeapInfo from libwine for now
4802         * [toolkit/heap.c]
4803         fixed LocalLock prototype
4805         * [toolkit/sup.c]
4806         sync'ed load_mz_header, load_ne_header with structures
4808         * [toolkit/winmain.c]
4809         Disabled resource DLLs for libwine for now
4811 Mon Jun 26 19:30:24 1995  Hans de Graaff  (graaff@twi72.twi.tudelft.nl)
4813         * [misc/main.c]
4814         Fixed -enhanced option to report a 386 CPU instead of a 286.
4816 Fri Jun 23 23:18:25 1995  Marcus Meissner  <msmeissn@faui01.informatik.uni-erlangen.de>
4818         * [misc/dos_fs.c]
4819         Remove maximum open dosdirent limit (fixing the winfile.exe
4820         problem) by using telldir()/seekdir().
4821         
4822 Fri Jun 23 13:42:25 1995  Hans de Graaff  (graaff@twi72.twi.tudelft.nl)
4824         * [misc/profile.c]
4825         Fixed problem parsing empty lines within sections in .ini files.
4827 ----------------------------------------------------------------------
4828 Mon Jun 19 20:29:50 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
4830         * [debugger/*.c]
4831         Modified debugger to use segmented pointers everywhere.
4833         * [if1632/shell.spec] [if1632/sound.spec] [if1632/user.spec]
4834         Declared all functions that return only 16-bit as 'pascal16'.
4836         * [include/ldt.h] [memory/ldt.c]
4837         Export LDT_EntryToBytes (new) and LDT_BytesToEntry for DPMI.
4838         Maintain a copy of the selector flags, removing the need to make a
4839         system call to retrieve an LDT entry.
4841         * [loader/module.c]
4842         Fixed bug with module file handle cache.
4844         * [loader/ne_resource.c]
4845         Fixed file name bug in NE_AccessResource().
4847         * [loader/resource.c]
4848         Fixed bug in LoadIcon() that caused wrong colors to be used for
4849         the icon mask.
4851         * [loader/signal.c]
4852         Moved instruction emulation to miscemu/instr.c.
4854         * [misc/dos_fs.c] [miscemu/int21.c]
4855         Lots of small fixes, thanks to Morten Welinder.
4857         * [miscemu/dpmi.c]
4858         More complete DPMI emulation.
4860         * [miscemu/instr.c]
4861         Added support for prefixes in instructions to emulate.
4863         * [miscemu/int2f.c]
4864         Use register macros instead of destroying the high part of 32-bit
4865         registers.
4867         * [objects/dc.c]
4868         Fixed bug in GetDCState() that failed to clear the new DC.
4870         * [rc/sysres.rc]
4871         Removed dialogs 11 and 12 that were never used.
4873         * [tools/build.c]
4874         'pascal16' generated functions did not save %dx.
4875         Removed use of %fs to access the stack.
4876         %ds is no longer initialized before calling a 16-bit routine.
4878         * [windows/defwnd.c]
4879         Accept a NULL pointer as window title.
4881         * [windows/mdi.c]
4882         MDICascade: skip iconic windows.
4883         Implemented CalcChildScroll().
4884         
4885         * [windows/utility.c]
4886         Fixed MulDiv() for illegal values.
4888         * [windows/win.c]
4889         Fixed X error in CreateWindowEx() when WM_NCCALCSIZE returned
4890         a zero width or height.
4892 Sun Jun 18 22:22:30 MET DST 1995  Fons Botman  (botman@inter.nl.net)
4894         * [controls/edit.c]
4895         Fixed "uninitalized" message which -Wall couldnt see to be ok
4896         in EDIT_WriteText.
4898         * [include/debug.h]
4899         Added define for extra checks in API definitions during debugging.
4901         * [loader/ne_image.c]
4902         Added newline in NE_FixupPrologs to avoid long lines.
4904         * [misc/dos_fs.c]
4905         Added extra safety check in DOS_ValidDrive.
4907         * [misc/exec.c]
4908         Fixed definition of ExitWindows.
4909         
4910 Sun Jun 18 21:16:08 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
4912         * [controls/edit.c]
4913         Some fixes, mostly for memory management, but also for text selection
4914         and tab postitions. General cleanup. Notepad.exe now works.
4916         * [controls/combo.c]
4917         Fix: the hwnd field of the DRAWITEMSTRUCT should always be that of
4918         the combo box, not the ComboLBox that belongs to it.
4920         * [controls/listbox.c]
4921         Handle itemID field correctly throughout.
4923         * [memory/local.c]
4924         Implemented flag LMEM_ZEROINIT.
4925         LocalReAlloc() could trash the heap. Fixed.
4927         * [objects/font.c]
4928         FONT_MatchFont(): don't get confused by negative widths.
4929         Fixed a segfault in EnumFonts().
4931         * [objects/text.c]
4932         DrawText(): DT_CALCRECT implies DT_NOCLIP.
4934         * [objects/dcvalues.c]
4935         MAKELONG was used with bad parameters in DC_GET_X_Y.
4937         * [windows/dialog.c]
4938         Don't show the dialog if WS_VISIBLE isn't set in the template.
4940         * [windows/utility.c]
4941         UTILITY_convertArgs(): Never pass an expression containing ++ into a
4942         macro...
4944         * [windows/win.c]
4945         SetParent() should unlink the window before changing the parent.
4947         * [windows/message.c]
4948         Don't call timer functions via CallWindowProc(), since it checks
4949         whether hwnd==0 and does not call the function in that case.
4951         * [miscemu/instr.c]
4952         Ignore interrupt 0x3D, for VBRUN300.DLL.
4954         * [misc/commdlg.c]
4955         Don't rely on the itemData field of the DRAWITEMSTRUCT to contain a
4956         pointer to the item text.
4958         * [if1632/relay.c]
4959         Disable OLE and DDEML DLLs by default, since they contain nothing but
4960         stubs anyway. SHELL, COMMDLG and WIN87EM are left enabled, although
4961         some programs may work better without them.
4962         
4963         * [multimedia/*.c] [include/multimedia.h] [include/driver.h]
4964         Begun cleaning things up a little. Replaced printfs with dprintf_
4965         macros, made functions static where possible, and some other minor
4966         changes.
4968 Sun Jun 11 23:19:10 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
4970         * [debugger/dbg.y][debugger/dbg.l]
4971         Removed special handling for FILE_IDENTIFER, because it caused
4972         problems with x/<format> statements.
4974         * [debugger/info.c]
4975         Use SC_ESP instead of SC_EIP for stack dump.
4977         * [misc/compobj.c][if1632/compobj.spec]
4978         CoBuildVersion, CoInitialize, CoUninitialize: new functions
4980         * [misc/ole2.c][if1632/ole2.spec][misc/Imakefile][include/ole2.h]
4981         New files ole2.c, ole2.h
4982         OleBuildVersion, OleInitialize, OleUninitialize: new functions
4984         * [if1632/ole2disp.spec]
4985         Added missing ordinals above 109
4987         * [misc/ole2nls.c][if1632/ole2nls.spec][include/winnls.h]
4988         New file winnls.h
4989         GetLocaleInfoA: new function
4991         * [if1632/shell.spec]
4992         Added FindEnvironmentString as stub
4994         * [misc/olecli.c][if1632/olecli.spec]
4995         OleIsDcMeta: New function
4997         * [objects/font][misc/gdi.spec]
4998         GetKerningPairs: new function
5000         * [misc/shell.c]
5001         ShellExecute: Implemented support for starting programs
5003         * [if1632/user.spec]
5004         Inserted missing relay to GetClipCursor
5006 Sun Jun 11 20:34:47 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5007         
5008         * [controls/edit.c]
5009         Fix a problem with the local heap.
5011         * [include/wintypes.h]
5012         Fixed wrong declarations of CATCHBUF and LPCATCHBUF.
5013         
5014         * [include/mdi.h] [windows/mdi.c]
5015         This code still assumed segmented address==linear address. Fixed.
5017         * [include/msdos.h] [misc/dos_fs.c]
5018         The filemask field of the dosdirent structure could be overrun. Fixed.
5019         If you had a file called foobar and a file called foo, trying to 
5020         FindFile(foo) could accidentally find file foobar instead. Fixed.
5021         
5022         * [misc/file.c]
5023         OpenFile(): Always return the full pathname in ofs->szPathName. This 
5024         also fixes GetModuleFilename().
5025         Prevent _lclose() from closing stderr or stdout.
5027         * [misc/profile.c]
5028         Search for .ini files in the path of the current module as well.
5029         (Needed by Lotus Organizer.)
5031         * [loader/task.c] [loader/ne_image.c] [loader/module.c]
5032         [memory/local.c]
5033         Local heaps are now initialized by InitTask() for executables. DLLs
5034         have to call LocalInit() themselves, LocalInit() has to put the
5035         heap at the end of the segment when called with start==0. We no longer
5036         allocate the DGROUP with 64k on startup, but grow the local heap
5037         in LOCAL_GetBlock() when necessary.
5039         * [loader/module.c]
5040         LoadLibrary() should call LoadModule() in all cases, even if the
5041         DLL is already loaded, to ensure that the reference count is correct.
5043         * [loader/ne_image.c]
5044         Some changes to function prolog fixup. Does anyone know exactly how
5045         this is supposed to work? I am only guessing here.
5046         In NE_InitializeDLLs(), initialize the DLLs a module refers to before
5047         the module itself.
5048         
5049         * [loader/task.c]
5050         Initialize instance data at the beginning of the DGROUP in InitTask().
5052         * [memory/local.c]
5053         Some fixes for moveable blocks.
5055         * [memory/selector.c]
5056         All the IsBad*Pointer() functions returned exactly the wrong boolean
5057         value in all cases!
5058         
5059         * [objects/bitblt.c]
5060         Fixed another null pointer dereference in debugging output.
5061         
5062         * [objects/font.c]
5063         Some more recovery possibilities for FONT_MatchFont() if a specified
5064         font does not exist.
5065         
5066         * [windows/win.c]
5067         The dialog code may call CreateWindowEx with an integer in windowName.
5068         This happens for static icon controls that expect a resource ID as
5069         the window name. CreateWindowEx() used to crash. Fixed.
5070         
5071         * [windows/class.c] [windows/win.c]
5072         Window classes are owned by modules, not instances. Changed
5073         RegisterClass(), UnregisterClass(), GetClassInfo() and CreateWindowEx()
5074         accordingly.
5076 Sat Jun 10 16:10:53 1995  Olaf Flebbe <o.flebbe@science-computing.uni-tuebingen.de>
5078         * [miscemu/int21.c]
5079           clock.exe was displaying incorrect year.
5081 Fri Jun 9 20:36:56 1995  Victor Schneider <tailor@crl.com>
5083         * [include/cursor.h] [windows/cursor.c]
5084         Implemented CreateCursorIconIndirect().
5086 ----------------------------------------------------------------------
5087 Tue Jun  6 12:11:41 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5089         * [controls/menu.c]
5090         Fixed bug with drawing multi-column menus with vertical separator.
5092         * [debugger/debug.l]
5093         Fixed NULL-pointer reference after readline().
5095         * [if1632/winprocs.spec] [miscemu/int21.c] [miscemu/interrupts.c]
5096         Added interrupt vector emulation. Allows to retrieve an interrupt
5097         vector and jump to it without crashing.
5099         * [loader/ldt.c]
5100         Moved ldt.c to memory directory.
5102         * [loader/task.c]
5103         Implemented LockCurrentTask() and GetInstanceData().
5105         * [objects/bitblt.c]
5106         Fixed a bug that caused StretchBlt() to use wrong colors when
5107         stretching a monochrome bitmap to a color display.
5109         * [objects/bitmap.c]
5110         Fixed a segmented pointer bug in CreateBitmapIndirect().
5112         * [tools/build.c]
5113         Added possibility to have arguments for register functions; used
5114         by interrupt vectors to remove the flags from the stack.
5115         Generate a new function CallTo32_LargeStack(), that allows calling
5116         a 32-bit function using the original 32-bit stack, for functions
5117         that need more that 64k of stack.
5119 Tue May 30 10:29:56 1995  Martin von Loewis  <martin@informatik.hu-berlin.de>
5121         * [if1632/shell.spec] [misc/shell.c]
5122         DoEnvironmentSubst: fixed prototype
5124         * [if1632/gdi.spec] [objects/palette.c]
5125         SetSystemPaletteUse: new function
5127         * [if1632/kernel.spec] [loader/resource.c]
5128         DirectResAlloc: new function
5130         * [if1632/user.spec] [windows/keyboard.c]
5131         SetKeyboardState: new function
5133 Mon May 29 12:58:28 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5134         
5135         * [tools/build.c]
5136         Prevent interrupts from destroying the args for a 32 bit function
5137         by loading the correct value into %esp directly after %ss.
5139         * [loader/ne_image.c] [loader/module.c]
5140         The new instance must be created earlier in LoadModule(), so that
5141         fixups referencing it will be handled correctly.
5142         Initialize the local heap for a DGROUP in NE_LoadSegment().
5143         
5144         * [objects/dib.c]
5145         Like RLE8 bitmaps, RLE4 bitmaps don't always end with a proper code.
5146         This used to crash Wine. Fixed.
5148         * [objects/text.c]
5149         Fix possible null pointer dereference in debugging output.
5150         
5151         * [misc/commdlg.c]
5152         Handle user input in the edit control better. Some bugs fixed.
5153         
5154         * [memory/local.c]
5155         Started implementing moveable blocks. This is unfinished (!), but
5156         at least it does not seem to break things.
5158 Wed May 24 13:26:36 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5159         
5160         * [loader/module.c]
5161         LoadModule(): DLLs occasionally have a data segment, and they work
5162         much better if it is loaded :-)
5163         LoadLibrary(): pass HMODULE instead of HINSTANCE to NE_InitializeDLLs.
5164         FindModule(): also strip off the last backslash of the pathnames
5165         (Winhelp tried to load C:\WINDOWS\SYSTEM\COMMDLG.DLL).
5166         GetModuleHandle(): just call MODULE_FindModule, it does the same job,
5167         only better.
5168         
5169         * [loader/ne_image.c]
5170         LocalInit() the heap of a DLL in NE_InitDLL. (This is probably
5171         not really correct, it seems that all programs and DLLs try to do
5172         this themselves. But they pass weird parameters.)
5173         NE_InitializeDLLs should also call NE_InitDLL for the passed hModule.
5174         
5175         * [loader/task.c] [misc/user.c]
5176         Finish global initializations in InitTask instead of InitApp, or
5177         all the DLLs will be initialized in InitTask without any available
5178         window classes!
5180 ----------------------------------------------------------------------
5181 Sun May 21 12:30:30 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5183         * [debugger/hash.c] [debugger/info.c]
5184         Added support for symbolic segmented addresses. Add symbols for all
5185         built-in API entry points.
5187         * [if1632/relay.c] [include/dlls.h]
5188         Removed dll_table structure, as we now use the built-in module
5189         structures.
5191         * [if1632/relay.c] [loader/main.c]
5192         Removed winestat option, as it was no longer very meaningful.
5194         * [include/stackframe.h]
5195         New macro MAKE_SEGPTR that creates a segmented pointer to a local
5196         variable on the 32-bit stack.
5198         * [loader/module.c]
5199         Added support for multiple instances of an application.
5200         Implemented LoadModule() and FreeModule().
5202         * [loader/ne_image.c] [loader/task.c]
5203         Moved initialisation of built-in DLLs to InitTask().
5205         * [memory/global.c]
5206         Implemented discardable blocks.
5208         * [misc/file.c]
5209         Search path of current executable in OpenFile().
5210         Fixed bug with searching in Windows path.
5212         * [misc/lstr.c]
5213         Hard-coded translation tables for Ansi<->Oem.
5215         * [misc/user.c]
5216         Moved some global initializations to InitApp(), because they need
5217         a task context to be performed.
5219         * [objects/dc.c]
5220         Handle R2_BLACK and R2_WHITE specially so that they work correctly
5221         with palette displays.
5223         * [tools/build.c]
5224         Suppressed generation of the C file for DLL specs, because it's no
5225         longer needed. Output all the assembly code directly to stdout.
5226         Some changes to integrate Win32 support from Martin von Loewis. 
5228         * [windows/msgbox.c]
5229         Moved message box code from misc/ to windows/.
5231 Mon May 15 23:40:04 1995  Martin Ayotte (wine@trgcorp.mksinfo.qc.ca)
5233         * [misc/audio.c] [misc/mcicda.c] [misc/mcianim.c] [misc/midi.c]
5234           [misc/mmaux.c] [misc/mmsystem.c]
5235         Modify code & use pointers conversion macros.
5236         Make cdaudio & wave devices work again (only using some applets).
5238         * [misc/profile.c]
5239         Change getc() to fgetc() where needed.
5241 Mon May 15 22:10:56 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
5243         * [if1632/Imakefile]
5244         added entries for the new files gdi32.spec, kernel32.spec,
5245         user32.spec, shell32.spec and winprocs32.spec.
5247         * [if1632/commdlg.spec][if1632/kernel.spec][if1632/shell.spec]
5248           [if1632/storage.spec][if1632/system.spec][if1632/user.spec]
5249         ChooseFont, RESERVED5, InternalExtractIcon: Marked as stubs
5250         ExtractAssociatedIcon, DoEnvironmentSubst, DumpIcon:
5251                 stub implementations provided 
5252         marked storage.dll,storege.sys functions as stubs
5254         * [include/pe_image.h]
5255         Added structures WIN32_builtin and  WIN32_function
5257         * [include/peexe.h]
5258         PE_Import_Directory: renamed reserved fields to 
5259                 TimeDate, Forwarder, Thunk_List
5261         * [include/winerror.h]
5262         New file.
5264         * [loader/main.c]
5265         called RELAY32_Init
5267         * [loader/pe_image.c]
5268         xmmap: map BSS anonymous
5269         dump_imports: renamed to fixup_imports, do the fixup of imported
5270                       symbols
5271         PE_LoadImage: pass raw data size to xmmap
5273         * [loader/resource.c]
5274         DumpIcon: new function
5276         * [misc/kernel32.c]
5277         New file.
5279         * [misc/main.c]
5280         make stdout and stderr unbuffered
5282         * [misc/shell.c]
5283         DoEnvironmentSubst: new function
5285         * [objects/font.c]
5286         FONT_MatchFont: try oblique if there is no italic
5288         * [rc/Imakefile][rc/parser.l]
5289         yywrap: new function
5290         Don't link with libfl.a on Linux
5292         * [tools/build.c]
5293         Added keywords stdcall, subsystem, base
5294         GenerateForWin32: new function
5295         BuildSpecFiles: call GenerateForWin32 if subsystem is win32
5297 Mon May 15 10:38:14 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5298         
5299         * [controls/listbox.c] [controls/combo.c] [windows/defwnd.c]
5300         Minor fixes.
5301         
5302         * [misc/message.c] [misc/main.c] [rc/sysres*.rc] [include/texts.h]
5303         Rewrote message box handling.
5304         
5305         * [windows/dialog.c]
5306         Dialogs should be invisible until after WM_INITDIALOG is seent.
5307         Don't switch to invisible dialog items on a TAB keypress.
5308         
5309         * [windows/mdi.c]
5310         Send WM_NCPAINT message in MDIRestoreChild().
5311         
5312         * [windows/painting.c]
5313         Fixed typo (&& -> &).
5314         
5315         * [windows/message.c] [if1632/user.spec]
5316         Implemented PostAppMessage().
5317         
5318         * [windows/event.c]
5319         SetCapture(0) should act like ReleaseCapture().
5321 Tue May  9 11:55:52 1995     Eddie C. Dost             (ecd@dressler.de)
5323         * [Imakefile]
5324         Changed CDEBUGFLAGS for systems running __ELF__ (temporarily)
5325         Added ASFLAGS to exported variables.
5327         * [debugger/readline/Imakefile]
5328         Moved defines for libreadline from DEFINES to EXTRA_DEFINES
5330         * [memory/local.c] [miscemu/int21.c]
5331         Added some more debugging outputs.
5333 Mon May  8 00:55:27 MET DST 1995          Dag Asheim (dash@ifi.uio.no)
5335         * [misc/message.c]
5336         Fixed a "FIXME" concerning norwegian translation.
5338 Sun May  7 23:25:23 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5339         
5340         * [*/*]
5341         Removed warnings in a couple of files and deleted some obsolete code.
5343         * [controls/listbox.c]
5344         Cleanup, speed improvements & lots of bug fixes.
5346         * [controls/combo.c]
5347         Mostly rewritten. This is still very buggy, but not quite as bad as 
5348         before.
5350         * [include/commdlg.h] [misc/commdlg.c]
5351         Removed the need for sysres.dll. Small bug fixes.
5352         
5353         * [objects/oembitmap.c] [include/bitmaps/<many>] [include/windows.h]
5354           [loader/library.c] [loader/main.c] [rc/sysres*.rc]
5355         Removed sysres.dll and replaced the remaining bitmaps/icons with
5356         XPM equivalents.
5358         * [misc/message.c] [windows/nonclient.c] [misc/main.c]
5359           [if1632/winprocs.spec]
5360         "About Wine..." now brings up a standard ShellAbout() window with
5361         the Wine icon and the list of contributors.
5362         
5363         * [misc/shell.c]
5364         Fixed ShellAbout()/AboutDialogProc() to show the right icon.
5366         * [windows/event.c]
5367         Small hack for non-alphanumeric keys: Dont't send the ascii value in
5368         the WM_KEYDOWN message, but some unused code instead. Should be done
5369         properly by sending different codes for each key. The edit control
5370         used to get a VK_DELETE message each time the user typed '.'.
5372         * [windows/class.c]
5373         Removed a check for CS_GLOBALCLASS in CLASS_FindClassByName().
5374         This used to be no problem, but breaks Resource Workshop in 950403.
5375         
5376         * [objects/dib.c]
5377         New diagnostic for a bug I've been encountering. If it shows up,
5378         please report it.
5380 Sun May  7 23:11:18 EDT 1995  William Magro (wmagro@tc.cornell.edu)
5382         * [objects/color.c]
5383         Handle situation when 'dc' exists, but palette mapping
5384         does not.  (Fixes kidpix2 demo.)
5386 Sun May  7 03:32:00 1995  Charles M. Hannum  (mycroft@mit.edu)
5388         * [loader/ldt.c]
5389         LDT_Print: Only show the number of entries that the kernel
5390         returned. Make this work for NetBSD.
5392 Fri May  5 02:53:26 1995  Charles M. Hannum  (mycroft@mit.edu)
5394         * [debugger/dbg.y] [include/wine.h] [loader/signal.c]
5395         Modify cs and ds selector values for NetBSD-current.
5397         * [debugger/debug.l]
5398         $sp, $esp: Use RN_ESP_AT_SIGNAL rather than RN_ESP.
5400         * [debugger/regpos.h]
5401         Modify sigcontext format for NetBSD-current.
5402         SC_ESP: Use RN_ESP_AT_SIGNAL rather than RN_ESP.
5404         * [include/ldt.h]
5405         SELECTOR_TO_ENTRY: Explicitly clear the top half of the selector
5406         value, since only 16 bits of it may have been saved.
5408         * [misc/winsocket.c]
5409         Set structure packing with `#pragma pack' to accomodate
5410         other/older compilers.
5412 Tue May  2 18:15:01 1995 Paal Beyer (beyer@idt.unit.no)
5413         
5414         * [misc/commdlg.c]
5415         Fixed path-names so when changing directory the listboxes
5416         changes too.
5417         
5418         * [debugger/dbg.y debugger/debug.l wine.ini]
5419         Added SymbolTableFile to wine.ini so symbols can be read
5420         without standing in the directory containing wine.sym.
5421         Added the possibility to specify full name of wine.sym from
5422         the debugger prompt.
5424 ----------------------------------------------------------------------
5425 Sat Apr 29 20:42:01 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5427         * [controls/static.c]
5428         Fixed painting of SS_*FRAME controls.
5430         * [if1632/callback.c]
5431         Pass the window instance as DS to the 16-bit window procedure.
5432         Rewrote Catch() and Throw() to make them work with multiple tasks.
5434         * [loader/main.c]
5435         New function MAIN_Init() to perform initializations before the
5436         first task is started instead of doing them in InitApp().
5437         Temporary hack to command-line parsing to load one program per
5438         command-line argument, to make testing task-switching easier.
5440         * [loader/*.c]
5441         Reimplemented modules to use a Windows-compatible layout and to
5442         allow multiple tasks and multiple module instances. Not really
5443         finished yet.
5445         * [loader/task.c] [misc/exec.c]
5446         Reimplemented tasks to use a common address space, and implemented
5447         preliminary task-switching capabilities.
5449         * [memory/global.c]
5450         Fixed bug in GlobalNext().
5452         * [misc/main.c]
5453         Updated the list of contributors. Let me know if I forgot someone.
5455         * [miscemu/int21.c]
5456         Use one DTA per task instead of a global one.
5458         * [objects/bitblt.c]
5459         Fixed bug in BitBlt() that could cause BadMatch errors.
5461         * [tools/build.c]
5462         Added new function type 'stub', that makes possible to export an
5463         unimplemented function by name as well as by ordinal. This will
5464         avoid loading errors for unimplemented functions.
5465         Generate an in-memory module layout for built-in DLLs so that the
5466         same code can be used for built-in and loaded modules.
5467         Changed relay code to make it unnecessary to save the value of the
5468         BP register.
5470         * [windows/message.c]
5471         Implemented multiple message queues and preliminary task-switching
5472         capabilities. Inter-task SendMessage() calls are not implemented
5473         yet and will probably cause crashes if used.
5475         * [windows/property.c]
5476         Reimplemented properties and allocate them on the USER heap.
5478         * [windows/win.c]
5479         Fixed bug in SetWindowWord().
5480         Reimplemented EnumWindows() and EnumTaskWindows().
5482 Tue Apr 18 09:48:38 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5483         
5484         * [misc/main.c]
5485         GetSystemParametersInfo(): Additional action SPI_GETICONTITLEFONT.
5486         
5487         * [loader/resource.c]
5488         Removed the check for NE_SEGFLAGS_EXECUTEONLY, since it broke
5489         control.exe.
5490         Fixed icon loading.
5491         
5492         * [objects/font.c] [include/windows.h]
5493         Fixed a bug in InitFontsList() and worked on the EnumFonts()
5494         functions to make them comprehensible.
5496         * [controls/button.c]
5497         Fixed my previous patch to handle LBUTTONUP messages.
5499 Fri Apr 14 11:41:28 1995  Cameron Heide  (heide@ee.ualberta.ca)
5501         * [misc/network.c, misc/dos_fs.c]
5502         Implemented WNetGetConnection.  All that is currently
5503         supported are drives, for which the remote name is simply
5504         the redirected UNIX directory name.
5506         * [miscemu/int2?.c]
5507         More drive number validity checking.
5509 Wed Apr 12 11:28:37 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5510         
5511         * [controls/listbox.c]
5512         Oops, my previous change to ListBoxDirectory broke the Borland
5513         file open dialog. Fixed.
5515 Mon Apr 10 23:17:12 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
5517         * [if1632/ole2nls.spec] [misc/ole2nls.c] [misc/Imakefile]
5518         New file ole2nls.c. Added stubs for GetUserDefaultLCID, 
5519         GetSystemDefaultLCID, GetUserDefaultLangID, GetSystemDefaultLangID.
5521 Mon Apr 10 10:05:18 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5522         
5523         * [memory/global.c] [memory/local.c] [include/windows.h]
5524         GlobalReAlloc(): If GMEM_MODIFY is set, don't resize the block.
5525         LocalReAlloc(): Same for LMEM_MODIFY.
5526         
5527         * [controls/listbox.c]
5528         Fixed a bug in ListBoxDirectory that prevented commdlg from working.
5529         Check for errors in some more places.
5531         * [if1632/gdi.spec] [if1632/user.spec]
5532         16 bit callback functions should be passed as segptrs.
5533         
5534         * [include/dlls.h] [loader/ne_image.c] [loader/selector.c]
5535         [loader/library.c]
5536         Prevent a DLL from being initialized twice (Borlands Resource
5537         Workshop used to do this).
5538         Provide an additional flag for each w_file that indicates whether
5539         it's an EXE or a DLL, for combinations like pbrush.exe/.dll.
5540         
5541         * [controls/button.c]
5542         Handle LBUTTONUP messages even if the button no longer has the
5543         capture (for WinHelp).
5544         
5545         * [include/wintypes.h]
5546         FARPROC is now a segptr for the emulator and a function
5547         pointer for the library.
5548         
5549         * [misc/commdlg.c] [misc/commdlg.h]
5550         Cleaned the file dialogs up a little. They now work reasonably well,
5551         although there are still some problems (e.g. files are initially
5552         invisible).
5554         * [windows/class.c] [if1632/user.spec] [include/windows.h]
5555         GetClassInfo() must take a segptr, as it checks whether the
5556         highword is zero.
5557         GetClassName() called the wrong atom function. No surprise it didn't
5558         find anything.
5560         * [misc/lstr.c]
5561         AnsiToOem() and OemToAnsi() didn't terminate the strings. Fixed.
5562         Removed some warnings.
5564         * [if1632/relay.c] [if1632/ddeml.spec] [include/dlls.h]
5565         New spec file for the 3.1 DDEML DDL. 
5567         * [controls/menu.c]
5568         Small fix to ChangeMenu - mask out the obsolete flags
5569         (MF_APPEND == MF_OWNERDRAW, this led to problems). It also had
5570         problems with the MF_BYPOSITION flag.
5572         * [windows/message.c]
5573         SendMessage(): call the WH_CALLWNDPROC hook function. This is rather
5574         ugly, I'm afraid. Windows probably passes a pointer to the 16 bit
5575         stack for speed reasons.
5576         
5577         * [windows/hook.c] [include/windows.h]
5578         Set/HookWindowsHook() shouldn't just call their *Ex counterparts, as
5579         they have slightly different semantics.
5580         MS Hearts now works somewhat, if you disable the new builtin DDEML.
5581         The graphics are completely messed up, though.
5583 ----------------------------------------------------------------------
5584 Sun Apr  2 18:31:12 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5586         * [Configure] [if1632/Imakefile]
5587         Removed new build and short names options.
5589         * [if1632/*.c] [tools/build.c]
5590         Implemented compiled call-back functions for better performance;
5591         all the relay code is now done in assembly code generated by the
5592         build program.
5593         Relay code is no longer dependent on being loaded below 64K.
5595         * [loader/resource.c]
5596         Fixed memory leak in LoadString(). A fix will also be needed for
5597         other resources.
5599         * [memory/global.c]
5600         Implemented global heap arenas, so we can store informations about
5601         global blocks, like lock counts or owner handle.
5602         Implemented FarGetOwner() and FarSetOwner().
5603         Implemented global heap TOOLHELP functions.
5605         * [memory/selector.c]
5606         Bug fix: it was not possible to re-use a free selector.
5608 Sun Apr 2 01:34:52 1995 Constantine Sapuntzakis  (csapuntz@mit.edu)
5610         *  [controls/listbox.c]
5611         Major work on listbox code
5612          - Many bugs fixed (still many bugs)
5613          - More messages supported
5614          - Code simplified
5616 Fri Mar 31 03:27:16 EST 1995 William Magro (wmagro@tc.cornell.edu)
5618         * [controls/edit.c]
5619         Lots of bug fixes related to diappearing text, lost carets,
5620         highlighting, segmentation faults, occurance of random
5621         characters, insertion of characters over selection, misplaced
5622         caret location, display corruption, end of line behavior, etc.
5624         * [controls/widgets.c]
5625         EDIT class doesn't want to use CS_PARENTDC flag.
5627 Thu Mar 30 20:58:25 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5628         
5629         * [loader/selector.c]
5630           FixupFunctionPrologs() should also handle multiple data modules.
5631           (this bug only became visible because MakeProcInstance() was fixed
5632           in 950319)
5633         
5634         * [misc/dosfs.c]
5635           Simplified DOS_SimplifyPath.
5636           Small fix to DOS_opendir to reuse an entry if an open directory
5637           is opened again, to prevent "too many open directories" messages.
5639 Thu Mar 30 12:05:05 1995 Martin von Loewis  <loewis@informatik.hu-berlin.de>
5641         * [if1632/compobj.spec][include/compobj.h][misc/compobj.c]
5642         CoDisconnectObject: new stub function
5644         * [include/msdos.h]
5645         fix DOSVERSION
5647         * [loader/ne_image.c]
5648         NE_FixupSegment: Be more generous on additive fixups
5650         * [if1632/user.spec][misc/network.c]
5651         Add more WNet* stubs
5653 Wed Mar 29 11:47:22 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5655         * [controls/listbox.c]
5656           DlgDirList(): send segptr instead of linear pointer 
5657           in message to static control
5658         * [controls/menu.c]
5659           Tried to implement ownerdrawn menuitems. Doesn't work.
5660         * [if1632/gdi.spec] [include/windows.h] [objects/font.c]
5661           Provide a stub for GetRasterizerCaps()
5662         * [loader/selector.c]
5663           Pass end address instead of length to LocalInit() in 
5664           CreateSelectors()
5665         * [memory/local.c]
5666           LocalInit(): If there's already a local heap in the segment, do
5667           nothing and return TRUE
5668         * [objects/linedda.c]
5669           Replaced buggy LineDDA() with a Bresenham algorithm. Should work
5670           now.
5671         * [windows/cursor.c]
5672           LoadCursor()/CreateCursor(): Cleaned up the mess. Needs some
5673           more work still.
5675 Tue Mar 21 17:54:43 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5677         * [if1632/relay.c] [if1632/callback.c] [include/dlls.h]
5678           [if1632/winprocs.spec] [if1632/winprocs.c] [include/winprocs.h]
5679           [controls/widgets.c] [misc/shell.c] [misc/commdlg.c]
5680           [windows/nonclient.c] [misc/message.c]
5681           Added a new builtin DLL that provides 16 bit entry points for all
5682           the Def*Procs (DefDlgProc, ButtonProc etc.). OWL programs work
5683           again.
5684         * [misc/shell.c]
5685           RegOpenKey()/RegCreateKey() bugs fixed.
5686         * [loader/ne_image.c]
5687           Skipping the initialization of a DLL when CS == 0 was broken.
5689 ----------------------------------------------------------------------
5690 Sun Mar 19 16:30:20 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5692         * [*/*]
5693         Implemented a new memory mapping scheme. There's no longer a
5694         one-to-one mapping between 16-bit and 32-bit pointers. Please see
5695         file DEVELOPERS-HINTS for technical details.
5697         * [controls/scroll.c]
5698         Fixed bug when dragging mouse in horizontal scrollbars.
5700         * [tools/build.c] [if1632/*.spec]
5701         Removed support for C callback functions and for re-ordering
5702         of the 32-bit arguments, as these were never used. This should
5703         allow a more efficient callback scheme to be implemented.
5705         * [if1632/olecli.spec]
5706         Reduced the number of entries to make the 16-bit code fit in 64k.
5707         This limitation will soon be removed.
5709         * [loader/ldt.c]
5710         Rewrote LDT manipulation functions and implemented LDT_GetEntry().
5712         * [memory/global.c]
5713         Rewrote Global*() routines to use the new selector allocation
5714         mechanism.
5716         * [memory/local.c]
5717         Rewrote local heap handling to use a Windows-compatible layout
5718         (not really finished yet).
5719         Implemented TOOLHELP heap-walking routines.
5721         * [memory/selector.c]
5722         Implemented LDT manipulation API functions.
5724 Tue Mar 14 19:50:28 EST 1995 William Magro (wmagro@tc.cornell.edu)
5726         * [windows/defdlg.c]
5727         Fixed problem where dialogs closed using the System menu 
5728         ('Close' item or double click on close box) would
5729         hang Wine.
5731 Sun Mar 12 14:28:13 1995  Michael Patra <micky@marie.physik.TU-Berlin.DE>
5733         * [controls/listbox.c]
5734         Removed most of the statements for sending a notification message
5735         ListBoxDirectory(), DlgDirSelect(), DlgDirList(): Improved the
5736         code; Borland's standard file open dialog will work now.
5737         
5738         * [misc/main.c], [misc/file.c], [miscemu/int21.c]
5739         Added support for new command line option "-allowreadonly". If set
5740         an attempt to open a read only file in write mode will be converted 
5741         to opening it read only (many programs try to open all files in 
5742         read/write mode even if they only intend to read it - this might 
5743         cause a few under problems under an unix-like environment where most 
5744         files are read only for a "normal" user)
5746         * [loader/selector.c]
5747         GetMemoryReference(): Added support for __AHIncr and __AHShift
5749         * [misc/dos_fs.c]
5750         DOS_SimplifyPath(): This routine simplifies path names ( e.g., it
5751         will change "/usr///local/bin/../lib//a" to "/usr/local/lib/a" )
5752         match(): rewritten
5753         
5754         * [objects/text.c]
5755         TEXT_NextLine(): Removed a bug in the handling of LF's
5757         * [miscemu/int21.c]
5758         GetFileDateTime(): Fixed. SetFileDateTime() is still broken.
5760 Sat Mar 11 19:46:19 1995  Martin von Loewis  <loewis@informatik.hu-berlin.de>
5762         * [controls/menu.c]
5763         ChangeMenu: defaults to MF_INSERT
5764         InsertMenu: allow insertion even if position is one after last item
5766         * [if1632/Imakefile] [if1632/compobj.spec] [if1632/relay.c]
5767           [if1632/storage.spec] [include/dlls.h]
5768         Added stubs for STORAGE.DLL and COMPOBJ.DLL
5770         * [if1632/user.spec] [windows/message.c]
5771         InSendMessage: new function
5773         * [include/neexe.h][include/ne_image.c]
5774         NE_FixupSegment: fixed handling of additive records
5776         * [loader/selector.c]
5777         GetEntryDLLName: return NULL instead of pointer to DLL.0 if not found
5779         * [loader/signal.c]
5780         win_fault: Enter debugger on SIGFPE, too
5782 Wed Mar  1 21:47:42 1995  Cameron Heide  (heide@ee.ualberta.ca)
5784         * [miscemu/int*.c]
5785         Various minor modifications to the clock tick counter,
5786         FindFirst/FindNext funcs, and DPB handling.
5788 ----------------------------------------------------------------------
5789 Thu Mar  2 17:44:32 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5791         * [loader/resource.c] [objects/oembitmap.c]
5792         Removed sysres bitmap code; you need libXpm to compile now.
5793         Implemented LoadIcon() for OEM icons.
5795         * [include/bitmaps/oic_*]
5796         Added OEM icons in XPM format.
5798         * [objects/dib.c]
5799         Bug fix in DrawIcon().
5801         * [rc/sysresbm.rc]
5802         Removed; all bitmaps are stored in XPM format now.
5804 Tue Feb 28 18:54:28 1995  Tomi Leppikangas  (tomilepp@paju.oulu.fi)
5806         * [controls/edit.c]
5807         Small patch to fix edit-control when it's created with text.
5809 Sun Feb 26 20:22:15 1995  Michael Veksler  (e1678223@tochnapc2.technion.ac.il)
5811         * [tools/make_debug]
5812         The created macros won't have side effects anymore when used in
5813         an "if-else" structure. No more warnings from the compiler when
5814         compiled without defining DEBUG_RUNTIME.
5816 Sun Feb 26 20:20:49 1995  Michael Patra <micky@marie.physik.TU-Berlin.DE>
5818         * [controls/listbox.c]
5819         ListBoxDeleteString(): Fixed
5821         * [loader/selector.c]
5822         GetMemoryReference(): When special segments are referenced by
5823         pseudo-functions like __0040H, a reference to a "normal" segment
5824         will be returned preventing the program from crashing as soon
5825         as the referenced segment is actually accessed.
5827 Sun Feb 26 15:55:14 MET 1995  Martin von Loewis (loewis@informatik.hu-berlin.de)
5829         * [Configure]
5830         Ask for OLE stubs and malloc debugging
5832         * [Imakefile]
5833         link with libmcheck.a if necessary
5835         * [if1632/relay.c][include/dll.h][if1632/Imakefile]
5836         Add OLE stubs, increase number of builtins
5837         dll_name_table_entry_s: new field dll_is_used
5839         * [loader/library.c]
5840         GetModuleHandle,ModuleNext: Check dll_is_used
5842         * [loader/ne_image.c]
5843         Bark on unsupported NE_RADDR_LOWBYTE flag (what is it supposed
5844         to mean, anyway?)
5846         * [misc/olecli.c][misc/olesvr.c]
5847         New files. Add to misc/Imakefile
5849         * [misc/dos_fs.c]
5850         DOS_GetUnixFileName: make a copy of the input parameter to 
5851         prevent overwriting
5853         * [misc/main.c]
5854         MAIN_ParseDLLOptions: new function
5855         MAIN_ParseOptions: treat -dll command line flag
5856         main: add support for malloc debugging
5858 Fri Feb 24 12:43:27 1995  Erik Svendsen  <z3esv@kmd-ac.dk>
5860         * [loader/signal.c]
5861         Small patch for people using FreeBSD-2.1.0.
5863 Fri Feb 17 22:49:18 1995  Miguel de Icaza (miguel@roxanne.nuclecu.unam.mx)
5865         * [toolkit/sup.c]
5866         Added return values to the Call* routines
5868         * [toolkit/winmain.c]
5869         Load the resource file properly for WineLib applications.
5871 ----------------------------------------------------------------------
5872 Thu Feb 16 18:57:31 1995  Alexandre Julliard  (julliard@sunsite.unc.edu)
5874         * [if1632/call.S]
5875         Only save the lower 16-bits of SP and BP.
5877         * [if1632/callback.c]
5878         When calling to 16-bit code, restore DS from its previous value on
5879         entry to the 32-bit code, instead of from the code segment owner.
5881         * [if1632/relay.c] [include/stackframe.h]
5882         Use a structure to represent the 16-bit stack frame layout
5883         instead of hard-coded offsets.
5884         
5885         * [rc/Imakefile]
5886         Use y.tab.c for bison output file for compatibility with yacc.
5888         * [tools/build.c]
5889         Small optimization for calls to 32-bit code.
5891 Sun Feb 12 03:19:47 1995  Michael Veksler (s1678223@t2.technion.ac.il)
5893         * [tools/build.c]
5894         Fixed bug (inflicted by previous change) - SEGV on ZMAGIC file format.
5896 Sun Feb 11 20:00:00 1995  Göran Thyni  (goran@norrsken.bildbasen.se)
5898         * [debugger/dbg.y]
5899         Remove unnecessary sym-table loading when stopped in 16-bit mode.
5901         * [include/segmem.h] [loader/selector.c]
5902         Added dynamic alloction of selectors.
5903         Fixed some problems with large programs SIGSEGV-ing while
5904         running out of selectors.
5906         * [include/segmem.h] [loader/selector.c] [if1632/callback.c] 
5907           [memory/global.c] [memory/heap.c] [memory/linear.c]
5908         Use __AHSHIFT and __AHINCR instead of 3 and 8.
5910 Mon Feb  6 18:07:38 1995  Cameron Heide  (heide@ee.ualberta.ca)
5912         * [misc/dos_fs.c]
5913         Better relative path handling when converting filenames between
5914         dos and unix, allowing '.' to be used in the Windows path.
5915         Startup working dir is now based on current working dir.
5917 Sat Feb  4 21:21:13 1995  Michael Veksler (s1678223@t2.technion.ac.il)
5919         * [if1632/relay.c] [include/dlls.h] [tools/build.c]
5920         Squeezed data structure that references internal dll's (mostly
5921         "struct dll_table_entry_s"). Caused 20% reduction in executable
5922         code size.
5924 Fri Feb  3 18:53:15 1995  Martin v. Loewis  (loewis@marie)
5926         * [Imakefile]
5927         make wine.sym only when making emulator
5929         * [misc/file.c]
5930         OpenFile(): report as not implemented for WINELIB
5932         * [misc/winsock.c]
5933         Fix CONVERT_HOSTENT and friends for use with WINELIB
5935         * [rc/Imakefile][rc/rc.y][rc/parser.c]
5936         Rename rc.y to parser.y
5937         Use flex and bison on Sun
5939         * [toolkit/sup.c]
5940         CallWindowProc: fix parameter type
5942         * [windows/event.c]
5943         Commented #ifdef sparc
5945 ----------------------------------------------------------------------
5946 Wed Feb  1 19:27:55 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
5948         * [windows/nonclient.c] [windows/winpos.c]
5949         Implemented maximized windows.
5950         Implemented icon positioning and ArrangeIconicWindows().
5951         Bug fixes in SetWindowPos().
5953         * [windows/painting.c]
5954         Implemented GetControlBrush().
5955         Window frame is no longer contained in the update region.
5957         * [windows/win.c]
5958         Destroy owned windows upon DestroyWindow().
5960 Sun Jan 29 16:17:22 1995  David Metcalfe <david@prism.demon.co.uk>
5962         * [controls/edit.c]
5963         Changed line terminator to \r\n to be compatible with
5964         Windows.  Fixed bug in text selection.
5966 Sun Jan 29 14:10:22 1995   Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
5968        * [misc/shell.c]
5969        Rewrote RegCreateKey and RegOpenKey, since they were completely broken.
5970        Fixed a bug in RegQueryKeyValue. Implemented RegEnumKey
5971        These functions now work somewhat more the way Windows programs expect
5972        them to work.
5974 ----------------------------------------------------------------------
5975 Sun Jan 22 18:55:33 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
5977         * [loader/resource.c] [objects/dib.c]
5978         Fixed icon loading and drawing, now that BitBlt() works correctly.
5979         
5980         * [objects/clipping.c] [objects/region.c]
5981         Implemented elliptic regions with a set of rectangle. This greatly
5982         simplifies the region code and should boost clipping performance.
5984         * [objects/color.c]
5985         Fixed bug that caused seg-fault on 24bpp displays.
5987         * [objects/bitblt.c]
5988         Fixed bug when shrinking a bitmap to more than half its size.
5990         * [windows/graphics.c]
5991         Fixed bugs in PaintRgn() and Polyline().
5993         * [windows/nonclient.c] [windows/painting.c] [windows/winpos.c]
5994         Fixed some problems with window background painting.
5996 Thu Jan 12 12:20:25 PST 1995 Ross Biro (biro@yggdrasil.com)
5998        * [tools/build.c]
5999        * [tools/newbuild.c]
6000        * [Imakefile]
6001        * [include/wine.h]
6002        * [loader/call.S]
6003        * [loader/selector.c]
6004        * [include/segmem.h]
6005        * [misc/main.c]
6006        Changed selector code and 16/32 bit xfer code so that wine
6007        no longer has to be loaded low in memory.  Changed wine
6008        to work with ELF binary formats under Linux.
6009        
6010 Sat Sep 17 11:08:49 1994  Eric Youngdale  (eric@esp22)
6012         * [debugger/db_disasm.c]
6013         New instruction disassembler - borrowed from Mach kernel.  Has a
6014         BSD style of license as opposed to the gdb code we were previously
6015         using which was under the GPL.
6017 ----------------------------------------------------------------------
6018 Mon Jan  9 18:27:11 1995  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6020         * [Imakefile]
6021         Compiling with -Wall flag.
6023         * [*/*]
6024         Fixes to minimize the number of compilation warnings.
6026         * [objects/bitblt.c]
6027         Fixed BitBlt() and used the same code to rewrite PatBlt() and
6028         StretchBlt(). The three *Blt() functions should now be correct in
6029         every case (famous last words).
6031         * [objects/brush.c] [objects/dither.c]
6032         Merged the two files into brush.c
6034         * [objects/dc.c]
6035         Fixed bug when the Windows programs forget to re-select the
6036         original bitmap in a memory DC.
6038         * [objects/font.c]
6039         Tty to use 'fixed' font when the system font can't be found.
6041         * [windows/dialog.c]
6042         Tentative fix to make dialogs look better when using fixed-width
6043         fonts.
6045         * [windows/graphics.c]
6046         Partially implemented the PS_INSIDEFRAME pen style.
6048         * [windows/nonclient.c]
6049         Fix for windows that have the WS_EX_DLGMODALFRAME style bit
6050         without the WS_DLGFRAME style.
6052 Thu Jan  5 13:37:42 1995  Cameron Heide  (heide@ee.ualberta.ca)
6054         * [memory/global.c]
6055         GlobalCompact should now return the correct value when the
6056         largest run of free blocks includes the last block.
6058         * [windows/mdi.c]
6059         Tiling and cascading windows without any MDI children should
6060         no longer crash (assuming no-op is the correct thing to do).
6062 Sun Jan  1 23:30:25 1995  Fons Botman  <botman@rabo.nl>
6064         * [objects/font.c]
6065         GetTextExtentPoint: fixed debug output, str is counted string, not
6066         zero terminated.
6068         * [if1632/relay.c]
6069         DLLRelay: when debugging_stack got segv, added upper bound for
6070         stack dump.
6072 ----------------------------------------------------------------------
6073 Tue Dec 27 13:35:16 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6075         * [*/Imakefile]
6076         All objects files are now kept in their respective directory.
6078         * [README]
6079         Rewrote most of it.
6081         * [objects/bitblt.c]
6082         Rewrote BitBlt() to look right in every case, while minimizing
6083         the impact on performance. Not really finished yet.
6085         * [objects/bitmap.c] [objects/dc.c]
6086         Fixed bug with pattern brushes.
6088         * [objects/clipping.c] [windows/painting.c]
6089         Fixes for logical coordinates.
6091         * [objects/color.c] [windows/graphics.c]
6092         Fixed GetPixel() to return the correct color, and made it faster.
6094         * [objects/region.c]
6095         Fixed bug in CombineRgn() when one of the region is empty.
6097 Fri Dec 22 01:42:57 MET 1994              Dag Asheim (dash@ifi.uio.no)
6099         * [Configure]
6100         Don't assume that expr handles '==', use '=' instead.
6101         Give a (hopefully informative) message if imake fails.
6103 ----------------------------------------------------------------------
6104 Wed Dec  7 14:52:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6106         * [controls/listbox.c]
6107         Fixed problems due to new scroll-bar code.
6109         * [loader/signal.c] [miscemu/ioports.c]
6110         Handle I/O opcodes that use an absolute address.
6112         * [objects/text.c]
6113         Implemented TabbedTextOut().
6115 Sat Dec  3 18:53:08 1994  Kenneth MacDonald  <K.MacDonald@ed.ac.uk>
6117         * [objects/metafile.c]
6118         Implemented GetMetafile().
6119         Fixed bug in PlayMetaFile() when reading disc based metafile records.
6120         Added META_POLYPOLYGON, META_DELETEOBJECT and META_EOF to 
6121         PlayMetaFileRecord().
6122         
6123 Wed Nov 30 06:32:25 1994  Martin von Loewis  (martin@cs.csufresno.edu)
6125         * [Imakefile]
6126         wine.sym: Remove gcc2_compiled and friends
6128         * [controls/listbox.c][if1632/relay.c][if1632/relay.c]
6129           [loader/resource.c][memory/heap.c][objects/dib.c][windows/dialog.c]
6130         Replace #ifdef DEBUG_XXX with if(debugging_xxx){
6132         * [if1632/call.S]
6133         CallToLibMain: New function
6135         * [if1632/relay.c][include/options.h][misc/main.c]
6136           [miscemu/int1a.c][miscemu/int21.c][miscemu/kernel.c]
6137         removed Options.relay_debug
6139         * [include/heap.h]
6140         HEAP_OWNER: Use ds instead of cs:ip
6142         * [loader/ne_image.c]
6143         LoadNEImage: Remember current exe, handle nodata dlls
6144         InitNEDLL: handle nodata dlls, call CallToLibMain
6146         * [loader/selector.c]
6147         CreateSelectors: Initialize auto_data_sel with 0
6149         * [memory/heap.c]
6150         HEAP_CheckHeap: Check prev
6151         HEAP_CheckLocalHeaps: new function
6153         * [misc/profile]
6154         Remember and dump only changed profiles
6156         * [tools/makedebug]
6157         Introduce debugging_xxx flags
6159 Sun Nov 27 23:13:22 MET 1994    <erik@xs4all.nl>
6161         * [clipboard.h color.h dc.h dos_fs.h event.h font.h graphics.h
6162         if1632.h kernel.h library.h miscemu.h ne_image.h nonclient.h 
6163         pe_image.h selectors.h wintypes.h]
6164         Added.
6166         * [*/*]
6167         - Commented all 'static char copyright statements', see misc/main.c
6168         - moved prototypes to headers files, fixed wrong prototypes.
6169         - *please* add a header file for each .c if you need to export
6170           things.
6172         * [misc/main.c]
6173         Added one static string which list the names of the contributors.
6175 Fri Nov 25 16:24:27 MET 1994              Dag Asheim (dash@ifi.uio.no)
6177         * [Configure]
6178         Made the support for multiple languages more automatic.  Added
6179         a [fonts] section to the wine.conf file.  Made the defaults
6180         better.  Generally cleaned it up.
6182         * [rc/sysres_No.rc] [rc/sysres_De.rc] [rc/sysres.c]
6183         Norwegian resources and small fixes to the german resources.
6185 Wed Nov 23 20:28:59 1994  Martin von Loewis  (martin@cs.csufresno.edu)
6187         * [debugger/break.c]
6188         bark(), toggle_next(), should_continue(): New functions
6189         insert_break(): Fixed, adds write access to page before writing
6190         wine_bp.next_addr: new structure field
6192         * [debugger/dbg.y]
6193         Changed symbol's value to be it's value instead of the value
6194         pointed to by the symbol.
6195         Changed SIGTRAP handling to allow continuation after break point
6197         * [misc/shell.c]
6198         ShellAbout(): Load resource from memory
6200 ----------------------------------------------------------------------
6201 Sun Nov 20 18:30:06 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6203         * [controls/scroll.c] [include/scroll.h]
6204         Rewritten most of scroll-bar code for better Windows look & feel.
6205         Implemented EnableScrollBar().
6206         Preliminary keyboard support.
6208         * [objects/bitblt.c]
6209         Fixed BadMatch error for BitBlt() and StretchBlt() when reading
6210         bits from outside the visible region.
6212         * [objects/oembitmap.c] [include/bitmaps/obm_*]
6213         Use XPM symbolic colors to load bitmaps. This allows the colors
6214         of the bitmaps to depend on the system colors.
6216         * [tools/make_debug]
6217         Made the make_debug script more robust.
6219         * [windows/dialog.c]
6220         Fixed CheckRadioButton().
6222         * [windows/nonclient.c]
6223         A few changes to scroll-bar drawing and tracking.
6225         * [windows/winpos.c]
6226         Renamed NextWindowFromPoint() to WINPOS_NextWindowFromPoint() to
6227         avoid confusion, and optimized it somewhat.
6229 Nov 19, 94 Martin Ayotte (wine@trgcorp.mksinfo.qc.ca)
6231         * [misc/audio.c]
6232         * [misc/mcianim.c]
6233         more coding but nothing spectacular.
6235         * [misc/mmaux.c]
6236         some coding to access '/dev/mixer'.
6238         * [misc/midi.c]
6239         some coding to read .MID files, but it's not playing yet.
6241 Sun Nov 13 19:31:03 1994    James Youngman (mbcstjy@afs.man.ac.uk)
6243         * [objects/dib.c]
6244         Reimplemented DIB_SetImageBits_RLE8() so that it would cope with
6245         bitmaps which don't end 0x00, 0x02 (previously it blew up).  This
6246         includes some bitmaps output by Paint Shop Pro.  Implementation is
6247         possibly now too lax.  Please see the notes on the function about
6248         why.
6250         * [controls/desktop.c]
6251         The desktop pattern should be painted if the wallpaper doesn't
6252         cover the whole screen width OR the whole screen height.
6254 Sun Nov 13 00:07:11 MET 1994    Erik Bos        <erik@xs4all.nl>
6256         * [objects/dib.c]
6257         Small bug in DIB_SetImageBits() fixed, bitmaps in 16,24 bpp
6258         now work.
6260         * [loader/ne_resource.c] [include/resource.h]
6261         Some cleanup.
6263 Thu Nov 10 20:44:58 1994  Martin von Loewis  (martin@cs.csufresno.edu)
6265         * [Configure]
6266           [rc/sysres.rc]
6267         Primitive compile-time support for multiple languages
6269         * [rc/sysres_De.rc]
6270         New file
6272         * [loader/resource.c]
6273         LoadBitmap: Recognize end of sysresbm properly
6275         * [rc/Imakefile]
6276         Rules to compile resources simplified, dependencies changed
6278         * [rc/sysresbm.rc]
6279         Don't use sysresbm if using XPM
6281         * [windows/dialog.c]
6282         CreateDialogIndirectParam: Reverse Z-order of controls
6284         * [windows/message.c]
6285         MSG_TranslateMouseMsg: Fix HTTRANSPARENT handling
6287         * [windows/winpos.c]
6288         NextWindowFromPoint: New function
6290         * [controls/button.c]
6291         WM_NCHITTEST: Group Box is HTTRANSPARENT
6292         BUTTON_CheckAutoRadioButton: New function
6293         BM_SETCHECK: Added call to BUTTON_CheckAutoRadioButton
6295 Mon Nov  7 11:20:26 1994  Paul Falstad  (pf@zoof.cts.com)
6297         * [objects/text.c]
6298         Fix hang when using DrawText(..., DT_WORDBREAK) with a word that
6299         is too long to break.
6301         * [objects/font.c]
6302         Don't assume helvetica if there is no font family; let the other
6303         font attributes decide what font to use.
6305         * [controls/widgets.c]
6306         Listboxes and combo boxes need to be notified of double-clicks.
6308         * [controls/listbox.c]
6309           [include/listbox.h]
6311         scrolling to bottom of list box should display last item at the
6312         bottom, not at the top.
6313         
6314         list boxes need to allocate a separate heap for their item data,
6315         rather than using the user heap.  Otherwise, it's very easy to run
6316         out of memory for list box items.
6318         removed redundant code in ListBoxAddString().  Implemented simple
6319         version of LBS_SORT.
6321         Don't put [.] in the list box when using DDL_DIRECTORY.
6323         * [controls/combo.c]
6324         Combos should pass CBS_SORT onto their list box.
6326         * [windows/win.c]
6327         If window creation is aborted, remove the window from the
6328         linked lists.
6330         * [controls/static.c]
6331         static controls with SS_ICON were always returning 0 from
6332         WM_NCCREATE.
6334         Make sure static controls have text to draw before drawing it.
6336 ----------------------------------------------------------------------
6337 Sun Nov  6 18:52:04 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6339         * [objects/oembitmap.c]  (New file)
6340         Added possibility to use .xpm files for OEM bitmaps.
6342         * [include/bitmaps/obm*]  (New files)
6343         Redrawn all OEM bitmaps in xpm format.
6345         * [objects/font.c]
6346         Add space for internal leading when using a negative font height.
6347         Stubs for AddFontResource() and RemoveFontResource().
6348         Fix in FONT_Init() for uninitialised default font.
6350         * [windows/dialog.c]
6351         Make font height negative as it is really a point size and not a
6352         pixel size; dialogs using 8-point fonts look better now.
6354         * [windows/graphics.c]
6355         Fixed the fix :-) for Pie() to make it work for Arc() and Chord() also.
6357         * [windows/nonclient.c]
6358         A few changes for new OEM bitmaps.
6360 Sun Nov  6 18:22:18 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
6362         * [windows/class.c]
6363         The names of local classes have to be stored using GlobalAtom*.
6364         Otherwise they couldn't be accessed from other modules (e.g. BWCC) 
6366         * [if1632/call.S]
6367         CallTo16(cx): It's possible to set the contents of the cx-register.
6369         * [loader/ne_image.c]
6370         InitNEDLL(): The size of the local heap is now passed in the cx-
6371         register when initializing a DLL.
6373         * [memory/heap.c]
6374         LocalInit(): The case start==0 is now handled in the way it should.
6376         * [windows/win.c]
6377         GetWindowLong(): If the adress of the windows function is requested
6378         it's no longer returned if it's within the Wine code (and therefore
6379         unreachable by a windows program). This makes Borland's OWL happy.
6381         * [controls/edit.c]
6382         EDIT_GetStr(): Added handling for off<0.
6384 Sun Nov  6 17:37:14 1994  Chris Jones  <chrisj@ichips.intel.com>
6386         * [loader/library.c]
6387         Fixed infinite loop bug when two DLLs refer to each other (fixes
6388         hangup of Quicken during loading).
6390 Thu Nov 04 12:00:00 1994  Jan Willamowius  (jan@janhh.sh.sub.de)
6392         * [misc/dos_fs.c]
6393         Bug fix: The size of a disk an the available space
6394         is now returned in bytes instead of (incorrectly)
6395         KBytes.
6397 Thu Nov 03 12:00:00 1994  Jan Willamowius  (jan@janhh.sh.sub.de)
6399         * [windows/graphics.c]
6400         Bug fix: Pie segments are now filled with correct brush.
6402 Thu Nov  3 10:40:09 1994  Martin von Loewis  (martin@cs.csufresno.edu)
6404         * [Imakefile]
6405         generate rc.o before loader.o
6407         * [controls/menu.c]
6408         CopySysMenu: generate SYSMENU on the fly, eliminate hSysMenu
6410         * [include/resource.h]
6411         Add struct ResourceTable
6413         * [loader/bitmap.h]
6414         Load system bitmaps from sysresbmTable
6416         * [misc/clipboard.c]
6417           [windows/event.c]
6418         IsClipboardFormatAvailable,EVENT_SelectionRequest: bug fixes
6419         
6420         * [rc/Imakefile]
6421         generate rc.o from sysres.o and sysresbm.o. Added -lfl
6423         * [rc/rc.y]
6424         change style handling to allow ( S1 | S2 ) | S3
6426         * [rc/sysres.rc]
6427           [rc/sysresbm.rc]
6428         Put bitmaps and icons to sysresbm, everything else to sysres
6430         * [rc/winerc.c]
6431           [rc/winerc.h]
6432         Added -o, -c flags. New function set_out_file. Output to files.
6434         * [windows/dialog.c]
6435         DialogBoxIndirectPtr, DialogBoxIndirectParamPtr: New functions 
6437         * [windows/nonclient.c]
6438         Create AboutWine dialog from template pointer
6440 ----------------------------------------------------------------------
6441 Sun Oct 30 13:01:18 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6443         * [controls/static.c]
6444         Bug fix for SS_ICON controls.
6446         * [if1632/Imakefile]
6447         Fixed call.o dependencies.
6449         * [objects/clipping.c] [objects/dc.c]
6450         Fixed visible region handling. hVisRgn is always non-null now.
6452         * [windows/dce.c]
6453         Bug fix in GetDCEx for CS_OWNDC windows.
6455         * [windows/nonclient.c] [windows/painting.c]
6456         Fixes to icon window drawing.
6458         * [windows/winpos.c]
6459         A few fixes in SetWindowPos().
6461 Sun Oct 30 12:50:24 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
6463         * [objects/bitblt.c]
6464         BitBlt(): BitBlt is now able to handle any raster operation. If
6465         the request can't be passed to XWindows directly, it's quite
6466         slow, though.
6468         * [*/*.c]
6469           [misc/main.c]
6470         Improvements of the system for handling debug messages. Options are
6471         now also loaded from /usr/lib/X11/app-defaults/Wine (insert
6472         *debugoptions: +xxx there if you want to have turn messages xxx on).
6474         * [controls/menu.c]
6475         DestroyMenu(): The whole window won't be destroyed as a sideeffect
6476         any longer.
6478         * [misc/file.c]
6479         OpenFile(): Fixed bug in searching in system/window-directory.
6481 Sun Oct 30 12:25:53 1994  Jimmy Tirtawangsa <j0t2527@tam2000.tamu.edu>
6483         * [include/windows.h]
6484         Bug fix for window related structures.
6485         DCB and COMSTAT are affected. They must be packed.
6487         * [misc/comm.c]
6488         Bug fix for COM ports:
6489         Dial and dialog window in terminal.exe now works.
6490         Non sequential COM assignments in wine.conf should not break now.
6491         Baudrate can be specified in wine.conf to overcome baudrate limitation
6492         in mswindow. See sample wine.ini
6494         * [include/comm.h]
6495         add baudrate field to DosDeviceStructre
6497         * [object/font.c]
6498         Bug fix for font assignment.
6499         Use pairs of foundry and family fontnames in X11 to correspond with
6500         window's fonts.
6501         Put font assignment ini wine.ini.
6503         * [wine.ini]
6504         Adding optional baudrate after port name in "serialports" section
6505         Add new section, "fonts".
6506         "default" is special key in "fonts" to match any unmatch window font.
6508 Oct 29, 94 (new address) wine@trgcorp.mksinfo.qc.ca (Martin Ayotte)
6510         * [if1632/relay.c]
6511         * [if1632/commdlg.spec]         New file.
6512         * [misc/commdlg.c]                      New file.
6513         * [include/commdlg.h]           New file.
6514         Begin of an emulated COMMDLG DLL, built-in for now.
6515         (BTW, if you want to switch between built-in & 16bits CommDlg, only 
6516         thing you need to do is to put the real/dummy name in file relay.c)
6518         * [controls/scroll.c]
6519         * [controls/combo.c]
6520         * [controls/listbox.c]
6521         Few bug fixes and/or cosmetic.
6523         * [misc/audio.c]
6524         * [misc/mmaux.c]
6525         bug fixes and flags returned to emulate SB16.
6527         * [misc/midi.c]                         New file.
6528         skeleton for 'Midi' MMSYSTEM & MCI driver.
6530         * [misc/mcianim.c]                      New file.
6531         skeleton for 'Animation1' MCI driver.
6533         * [windows/win.c]
6534         Add new stub for GetLastActiveWindow().
6536 Tue Oct 25 09:17:25 1994  Olaf Flebbe  (flebbe@tat.physik.uni-tuebingen.de)
6538         * [if1632/call.S] [tools/build.c]
6539            Support for ELF format. (Not complete)
6541 Sun Oct 23 00:51:50 1994  Paul Falstad  (pf@zoof)
6543         * [if1632/user.spec]
6544         Add stubs for ArrangeIconicWindows(), etc.
6546         * [if1632/kernel.spec]
6547         Add IsBad*Ptr() functions.
6549         * [loader/signal.c]
6550         Add test_memory(), for use with IsBad*Ptr().
6552         * [windows/winpos.c]
6553         Add stubs for TileChildWindows(), etc.
6555         * [windows/win.c]
6556         IsWindow() shouldn't crash if it's given a bad handle.
6557         Add stub for GetLastActivePopup().
6559         * [memory/global.c]
6560         Implement the IsBad*Ptr() functions.
6562         * [controls/listbox.c]
6563         Return the full longword of the item data in LB_GETITEMDATA.
6565         * [controls/edit.c]
6566         Don't let the user select an area past the end of the text.
6568         * [objects/text.c]
6569         In DrawText(), the code to delete crlfs also removed multiple
6570         consecutive newlines.  Also, using DT_CALCRECT didn't return
6571         the right height, and the width wasn't returned at all.
6572         This caused MessageBoxes to be missing much of their text.
6574         * [windows/scroll.c]
6575         ScrollWindow[Ex] didn't work right with null LPRECT arguments.
6577 Fri Oct 21 21:47:19 1994  Paul Falstad  (pf@zoof.cts.com)
6579         * [miscemu/int21.c]
6580         Fixed int21 0x42 handler to properly assemble 32-bit seek ptr.
6582         * [misc/property.c]
6583         Fixed inverted logic in EnumProps(), and changed CallBack16()
6584         call to use new arg format.
6586         * [windows/win.c]
6587         Fixed CallBack16() call in Enum[Child]Windows to use new arg
6588         format; this fixes crashes in enum procedures.
6590 Wed Oct 19 21:30:00 PDT 1994            martin@cs.csufresno.edu
6592         * [misc/clipboard.c]
6593           [windows/event.c]
6594           [windows/message.c]
6595         Added cut and paste between Wine and other X clients via
6596         the PRIMARY selection. Text only this time.
6598         * [controls/edit.c]
6599         EDIT_LineLength, EDIT_TextLine return 0 for lines after last one.
6601         * [windows/defwnd.c]
6602         Send WM_SYSCOMMAND to overlapped ancestor window, 
6603         not the receiver of WM_SYSKEYDOWN
6605 Sat Oct 22 15:01:02 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
6607         * [controls/edit.c]
6608         ClientWidth()/ClientHeight() macros: return 0 if size would
6609         be negative
6610         EDIT_StrLength(): takes unsigned char* instead of char*
6612         * [controls/listbox.c]
6613         ListBoxWndProc(): in "case WM_MOUSEMOVE" - set lphl at start of
6614         case instead of in each place required (it was omitted in
6615         some places causing problems!)
6617         * [controls/menu.c]
6618         MENU_CalcItemSize(): don't try to find size of a text item
6619         if the pointer is NULL
6621         * [include/heap.h]
6622         added definition of HEAP_LocalInit()
6624         * [include/msdos.h]
6625         removed buggy pointer() macro (use SAFEMAKEPTR() from segmem.h
6626         instead)
6628         * [loader/selector.c]
6629         IPCCopySelector(): added missing flags to shmget() call
6630         ? does this break linux - I added these flags in a previous
6631         patch but they were missing in the corresponding release ?
6633         * [loader/signal.c]
6634         win_fault(): added missing definitions of i, dump for those
6635         not running NetBSD or linux
6637         * [misc/dos_fs.c]
6638         DOS_GetCurrentDir(): made temp[] static so it can be safely
6639         returned
6641         * [miscemu/int21.c,int25.c,int26.c]
6642         Changed all invocations of pointer() to SAFEMAKEPTR(). Included
6643         segmem.h where necessary.
6645         * [windows/dialog.c]
6646         CreateDialogIndirectParam(): Changed HEAP_Init() call to 
6647         HEAP_LocalInit(), removed redundant variables
6649 Sat Oct 22 00:29:41 MET 1994              Dag Asheim (dash@ifi.uio.no)
6651         * [loader/library.c] [loader/main.c] [loader/ne_image.c]
6652           [misc/exec.c] [miscemu/int10.c] [miscemu/int21.c]
6653           [objects/bitblt.c] [objects/metafile.c]
6654         Rewritten more printf's to use the new debugging system, and
6655         made wine less verbose per default. Use "-debugmsg +module"
6656         to get (almost) the same behavior as before.
6658 ----------------------------------------------------------------------
6659 Sun Oct 16 13:29:07 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6661         * [controls/button.c]
6662         Implemented WM_GETDLGCODE, WM_SETFONT, BM_SETSTYLE, BM_SETCHECK,
6663         BM_SETSTATE.
6664         Implemented default button painting.
6665         Optimised redrawing.
6666         Fixed owner-draw buttons.
6668         * [controls/static.c]
6669         Implemented WM_SETFONT.
6670         A few optimisations in painting code.
6671         Bug fix for SS_SIMPLE controls.
6673         * [if1632/callback.c]
6674         Preliminary GetCodeHandle().
6676         * [if1632/gdi.spec]
6677         Changed 'pascal' to 'pascal16' everywhere it's needed.
6679         * [include/windows.h]
6680         Fixed a few data structures.
6682         * [memory/heap.c]
6683         Bug fix in HEAP_ReAlloc().
6685         * [misc/cursor.c]
6686         Fixed SetCursor().
6688         * [objects/bitblt.c]
6689         Fixed PatBlt() when using BLACKNESS or WHITENESS codes.
6691         * [objects/font.c]
6692         Better font mapping code.
6693         Implemented GetTextFace().
6695         * [objects/region.c]
6696         Bug fix in REGION_MakePixmap().
6697         Faster region copying.
6699         * [objects/text.c]
6700         Implemented ExtTextOut().
6701         Implemented DT_NOCLIP style for DrawText().
6703         * [windows/dc.c]
6704         Free the bitmap when deleting a memory DC.
6706         * [windows/dce.c]
6707         Added support for windows that have no associated X window.
6708         Implemented DCX_CLIPSIBLINGS and DCX_PARENTCLIP in GetDCEx().
6710         * [windows/defdlg.c]
6711         Implemented default push button handling and DM_SETDEFID.
6712         Implemented WM_NEXTDLGCTL.
6714         * [windows/dialog.c]
6715         Implemented default push button handling.
6716         Beginning of a keyboard interface in dialogs
6717         (does not really work yet).
6718         Fixed dialogs that use a special font.
6720         * [windows/event.c] [windows/focus.c]
6721         Added support for non-X windows.
6723         * [windows/graphics.c]
6724         Rewritten FloodFill() and implemented ExtFloodFill().
6726         * [windows/message.c]
6727         Cleaner hardware messages and X events handling.
6729         * [windows/defwnd.c] [windows/painting.c]
6730         Implemented WM_SETREDRAW.
6732         * [windows/win.c]
6733         Only create an X window for top-level windows, or for the desktop.
6734         Child windows now use their parent's drawable.
6736         * [windows/winpos.c]
6737         Beginning of support for non-X windows (still somewhat broken).
6738         Implemented *DeferWindowPos().
6740         * [*/Imakefile]
6741         Cleaned up some Imakefiles.
6742         Moved dc.c from windows/ to objects/.
6743         Moved cursor.c from misc/ to windows/.
6745 Sun Oct 16 12:21:52 1994  Michael Patra <micky@marie.physik.tu-berlin.d400.de>
6747         * [include/debug.h]
6748           [include/stddebug.h]
6749           [*/*.c]
6750         Rewritten all the calls to printf for displaying debug-information
6751         (messages like "LoadImage: loading SOL (SOL.EXE)" etc.) 
6752         Added option "-debugmsg" to Wine. Example: "-debugmsg +all" will turn
6753         all these messages on, "-debugmsg -dll" will turn all messages 
6754         concerning DLLs off.
6756         * [controls/combo.c]
6757         Added some handling for combo controls with ownerdraw-styles
6758         (just creating and passing the necessary messages to the 
6759         corresponding listbox control; the edit-control needs to be
6760         replaced with something else).
6762         * [controls/edit.c]
6763           [windows/dialog.c]
6764         Added support for use of global heap memory in dialogs with 
6765         edit controls.
6767         * [controls/listbox.c]
6768         Added support for item data.
6769         ListBoxInsertString(): Fixed bug for elements which are not inserted
6770         after the currently last element.
6771         
6772         * [misc/dos_fs.c]
6773           [miscemu/int21.c]
6774         DOS_ValidDirectory(): Checks whether a given string is in fact the
6775         valid name of a directory.
6777 Sat Oct 15 17:35:00 PDT 1994            <martin@cs.csufresno.edu>
6779         * [Imakefile]
6780         generate wine.sym after creating wine
6782         * [debugger/dbg.y]
6783         load "wine.sym" when entering debugger
6785         * [debugger/info.c]
6786         symbolic backtrace for 32-bit stack. Breaks 16-bit bt.
6788 Sun Sep  25 12:00:00 PDT 1994   <martin@osiris.cs.csufresno.edu>
6790         * [rc/rc.y] [rc/rc.h] [rc/rc.l] [rc/winerc.c]
6791         Files created
6793 Sun Sep 18 11:04:45 MET DST 1994          Dag Asheim (dash@ifi.uio.no)
6795         * [misc/spy.c]
6796         Exclude and Include no longer requires a terminating ';' to
6797         register the last component.
6799 Thu Sep 15 23:10:09 MET DST 1994          Dag Asheim (dash@ifi.uio.no)
6801         * [Configure]
6802         Rewrote much of it.  Added capability to generate a wine.ini
6803         file.  Commented out the processor emulator options until that
6804         becomes interesting.  Gives a warning if it sees any *.rej
6805         files.  I hope I haven't assumed to much about the shell/OS so
6806         that it breaks under *BSD.
6808         * [misc/dos_fs.c]
6809         Removed/changed calls to ToUnix() (which calls tolower()) so
6810         that the part of the pathname which correspond with the drive
6811         letter on DOS no longer will be mapped to lowercase.  This
6812         means that it should be possible to have uppercase letters in
6813         the [drives] section of wine.ini.
6815         * [LICENSE]
6816         Cosmetic changes so that it displays better in the window you
6817         get from pressing "Credit_License" in the "About WINE" window.
6819 Sun Aug 21 21:12:06 MET DST 1994        <erik@xs4all.nl>
6821         * [controls/menu.c]
6822         LoadMenu() moved to loader/resource.c.
6824         * [misc/main.c]
6825         Added stub for FileCDR().
6827         * [include/peexe.h]
6828         Added, from Eric's pe-test.
6830         * [include/resource.h]
6831         Added.
6833         * [loader/resources.c]
6834         Removed duplicated code in *Resource() functions.
6835         Moved NE-program specific functions into ne_image.c.
6836         Moved NE-fileformat functions to ne_resource.c.
6838         * [pe_image.c] [pe_resource.c]
6839         Added. Nothing implemented to run PE-executables, resource
6840         loading only.
6842         * [misc/file.c]
6843         Changed OpenFile() to use macros.
6845         * [misc/shell.c]
6846         Added NULL-ptr checks to ShellAbout().
6848         * [miscemu/int21.c]
6849         Fixed a few typos.
6851         * [miscemu/kernel.c]
6852         Added _DI = _DS, to put the caller's instance in DI. Doesn't
6853         work properly if caller changed DS :-(
6855 ----------------------------------------------------------------------
6856 Thu Aug 25 15:24:36 EDT 1994            <jrichard@cs.uml.edu>
6858         * [include/win.h]
6859         Removed seperate X window for icon, added icon width,height.
6861         * [include/windows.h]
6862         Commented out the old SW_xxx emum and added defines since
6863         they aren't enumerated.
6865         * [windows/dce.c]
6866         Removed some older IsIconic checks from GetDCEx(), functionality
6867         is now in nonclient and generic wine window handling code.
6868         Lots of thanks to Alexandre Julliard all the hints and
6869         help...
6871         * [windows/defwnd.c]
6872         Removed call to NC_HandleNCPaintIcon() under case WM_PAINTICON,
6873         WM_PAINTICON now calls NC_HandleNCPaint.  
6875         * [windows/event.c]
6876         Removed IsIconic checks.
6878         * [windows/icon.c]
6879         Removed everything in this file for now... could be used later.
6880         Icon functionality is now handled by the generic wine windows
6881         handling functions.
6882         
6883         * [windows/mdi.c]
6884         Added a ShowWindow in MDIRestoreChild().  MDI child windows now
6885         show up when deiconified.  Removed IsIconic checks.
6887         * [windows/message.c]
6888         Removed old icon routines from hardware_event().
6890         * [windows/nonclient.c]
6891         Changed NC_HandleNCCalcSize() so it doesn't change the size
6892         of an icon window.  Made NC_InternalNCHitTest() on an Iconic
6893         window always return HTCAPTION.  Made NC_HandleNCLButtonDblClk()
6894         on an Iconic window always send a SC_RESTORE message.
6896         * [windows/painting.c]
6897         Changed RedrawWindow() so it doesn't redraw an iconic window
6898         unless it has to (no icon for this class).
6899         
6900         * [windows/win.c]
6901         Removed creation of seperate icon window from CreateWindowEx().
6902         
6903         * [windows/winpos.c]
6904         Added saving and restoring of window rectangle during
6905         iconification/deiconification to ShowWindow().  Added
6906         functions to recursively hide and show children... called
6907         by ShowWindow during iconification/deiconification.
6909 Sat, 27 Aug 1994 18:47:34 +0100 (MET DST)  micky@marie.physik.tu-berlin.de (Michael Patra)
6911         * [windows/message.c]
6912         WaitMessage(): Fixed handling of wm_timer-messages
6914         * [miscemu/int21.c]
6915         FindNextFCB(): Rewritten to support other functions than just
6916         returning the volume label
6918         * [misc/file.c]
6919         OpenFile(): Fix in handling of OF_CREATE
6921 Wed Aug 24 19:40:42 PDT 1994  Andrew Lagodzinski  (andrew@netcom.com)
6923         * [if1632/user.spec]
6924         Added SetParent.
6926         * [windows/win.c]
6927         Added SetParent.
6929 Fri Aug 19 16:37:00 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
6931         * [loader/selector.c]
6932         Many changes throughout file to correct handling of shared memory
6933         function return codes. FreeBSD and SunOS shm functions return
6934         -1 not 0 on error. If Linux is different, these changes
6935         will have to be backed out.
6936         CleanupSelectors(): this is a new (internal) call to free
6937         up all selectors (and shm handles/memory) for use on exit.
6939         * [include/segmem.h]
6940         Change comment to reflect new use of shm_key
6942         * [misc/main.c]
6943         called_at_exit(): add call to CleanupSelectors()
6945 Mon Aug 22 18:19:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
6947         * [controls/button.c]
6948         Use OBM_CHECKBOXES to draw check boxes with correct colors.
6949         Fixed bug with WM_SETTEXT handling.
6950         A few drawing optimisations.
6952         * [controls/menu.c]
6953         Implemented correct \t and \a handling in menu items.
6954         Implemented help items (flush right) on menu bar.
6955         Added WM_ENTERMENULOOP and WM_EXITMENULOOP messages.
6957         * [controls/static.c]
6958         Fixed SS_ICON controls and implemented STM_SETICON message
6959         handling.
6961         * [controls/widget.c]
6962         Set cursor to IDC_ARROW for built-in classes.
6964         * [include/options.h] [misc/main.c]
6965         Backing store is now off by default.
6967         * [objects/region.c]
6968         Use X regions for rectangle and polygon regions: *major* speed
6969         improvement.
6971         * [windows/dialog.c]
6972         Fixed the fix for integer ids in controls. SS_ICON controls in
6973         dialogs should work now.
6974         Implemented DS_ABSALIGN style.
6976         * [windows/graphics.c]
6977         Implemented InvertRgn().
6978         New internal function GRAPH_DrawBitmap() to draw bitmaps faster
6979         than with CreateCompatibleDC() + BitBlt().
6981         * [windows/message.c]
6982         Determining the window for a mouse message is now done at
6983         GetMessage() time.
6984         Modified PeekMessage() handling to avoid needlessly flushing the
6985         output queue.
6987         * [windows/timer.c]
6988         Check for restart of a timer (SetTimer call with the same hwnd and
6989         id than an existing timer).
6991 ----------------------------------------------------------------------
6992 Tue Aug  9 23:58:29 MET DST 1994        <erik@hacktic.nl>
6994         * [misc/file.c]
6995         OpenFile(): Completly rewritten.
6997         * [miscemu/int21.c]
6998         CreateFile(): Fixed wrong mode in call to open.
6999         OpenExistingFile(): Implemented file sharing.
7000         FindNext(): Fixed.
7001         CreateNewFile(): Fixed wrong mode in call to open.
7002         fLock(): Added to handle record locking.
7003         GetFileAttribute(): Added.
7004         As a result, AH = 0x5c, 0x09, and 0x0b were changed.
7006         * [miscemu/int2f.c]
7007         AH = 0x10: SHARE installation check
7009         * [loader/resource.c]
7010         AccessResource(): Fixed. A new file descriptor will be returned by
7011         every call to AccessResource().
7013         * [windows/utility.c]
7014         wvsprintf(): Fixed.
7016         * [controls/menu.c]
7017         FindMenuItem(): Fixed (handling for nPos == -1 added).  
7019         * [windows/win.c]
7020         CreateWindowEx(): Added call to WINPOS_GetMinMaxInfo.
7022         * [Configure]
7023         Added two options for a processor emulator that might be
7024         plugged in later..
7026         * [loader/task.c] [include/toolhelp.h] [if1632/toolhelp.spec]
7027         CreateNewTask() stores real modulename instead of 'TASKxxxx'.
7028         Added TaskFirst(), TaskNext(), TaskFindHandle().
7030         * [memory/global.c]
7031         Added stub for MemManInfo().
7033         * [objects/text.c]
7034         Added stub for GetTabbedTextExt().
7036         * [miscemu/*]
7037         Changed all references to registers. Please don't access
7038         the context structure.
7039         fix for GetSystemTime() by <jspeter@birch.ee.vt.edu> added.
7041         * [misc/lstr.c]
7042         Fixed bug in AnsiUpper() & AnsiLower().
7044         * [misc/winsocket.c]
7045         bugfix in getsockopt()/setsockopt(): winsock uses different values
7046         than unix.
7048         * [objects/dib.c]
7049         Added DIB_SetImageBits_RLE[48] to support compressed bitmaps.
7051 Mon Aug  8 21:12:33 1994  David Metcalfe <david@prism.demon.co.uk>
7053         * [controls/edit.c]
7054         Added support for WM_COPY, WM_CUT and WM_PASTE messages.
7056         * [windows/dialog.c] [windows/defdlg.c] [include/dialog.h]
7057         Modified dialog code to create new heap for edit controls
7058         unless DS_LOCALEDIT style is set.
7060 Thu Aug  4 18:50:56 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
7062         * [controls/button.c] [controls/edit.c] [controls/static.c]
7063         Removed unneeded GlobalUnlock() calls.
7065         * [controls/menu.c] [include/menu.h]
7066         Lots of changes, fixed a lot of old bugs and introduced a lot of
7067         new ones :-)
7068         - Changed message loop to use MSG_GetInternalMessage().
7069         - Fixed a bug that caused the main window to lose activation when
7070           displaying a menu.
7071         - Correctly send initialisation messages (WM_INITMENUPOPUP).
7072         - Implemented EndMenu() and LookupMenuHandle().
7073         - Changed internal structures to be as compatible as possible with
7074           MS-Windows.
7075         - Allocated everything on the USER heap instead of the global heap.
7076         - Prefixed all internal function names with MENU_ and declared
7077           them static.
7078         - Moved "About Wine..." handling to NC_HandleSysCommand().
7079         - Multi-line menus should now work correctly.
7081         * [loader/resource.c] [objects/bitmap.c]
7082         Added the possibility to create OEM bitmaps directly as X bitmaps.
7084         * [objects/dcvalues.c] [windows/dc.c]
7085         Fixed GetDCOrg() to return screen coordinates.
7087         * [windows/message.c]
7088         Fixed double-click checks when the message is not removed from the
7089         queue.
7090         Fixed MSG_GetInternalMessage() to send WM_ENTERIDLE messages.
7092         * [windows/nonclient.c]
7093         Bug fix in system menu hit-test calculation.
7094         A few changes for new menu functions.
7096 Thu Aug 11 17:51:02 1994  Thomas Sandford <t.d.g.sandford@bradford.ac.uk>
7098         * [controls/edit.c]
7099         Bug fix in Edit_NCCreateMessage
7100         es->textlen was being used before being set
7102         * [controls/menu.c]
7103         Bug fix in MENU_DrawMenuItem
7104         don't try to write text if NULL pointer passed
7106 ----------------------------------------------------------------------
7107 Thu Aug  4 07:18:02 1994  Michael Patra  <micky@marie.physik.tu-berlin.de>
7109         * [windows/message.c]
7110         Implemented WaitMessage() (USER.112).
7112         * [if1632/user.spec]
7113         Added WaitMessage.
7115         * [windows/defwnd.c]
7116         WM_ERASEBKGND: Added support for hbrBackground=COLOR_xxx.
7118         * [miscemu/int{13,21,2a}.c]
7119         * [miscemu/Imakefile]
7120         * [signal/loader.c]
7121         Added a few basic disk information and diagnostic functions to
7122         prevent programs using this function from crashing. All drives
7123         are claimed to be remote ones, so direct I/O isn't allowed.
7125         * [controls/edit.c]
7126         EDIT_WriteText(): Added code to correctly erase the remaining space
7127         of the edit-control if the size of the control has changed sinced it's
7128         creation.
7130 Tue Jul 26 22:05:54 MET DST 1994 Erik Bos <erik@hacktic.nl>
7132         * [if1632/mouse.spec]
7133         Added mouse.dll entry, no functions.
7135         * [loader/resource.c]
7136         Bug fix in AccessResource(). 
7138         * [misc/keyboard.c], added [include/keyboard.h]
7139         Changed functions to return more useful values.
7141         * [windows/dialog.c]
7142         Hacked DIALOG_GetControl() to support resources which
7143         have 0xff00 - 0xffff as id. ** Needs to be done properly by
7144         someone who knows the NE fileformat **
7146 Jul 29, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7148         * [windows/event.c]
7149         Add new stub for EnableHGardwareInput() function.
7151         * [windows/message.c]
7152         Add coding for HWND_BROADCAST in PostMessage().
7154         * [misc/file.c]
7155         Add coding for OpenFile() also search in WindowPaths.
7157         * [misc/mmsystem.c]
7158         * [misc/audio.c]
7159         * [misc/mmaux.c]
7160         * [misc/mcicda.c]
7161         Change #include "linux/soundcard.h" by #include "sys/soundcard.h"
7162         Add coding in MMIO functions. Now, mmioDescend() can find WAV chunks.
7163         SndPlaySound & MCI_ELEMENT now use MMIO and adjust to proper formats.
7164 ----------------------------------------------------------------------
7165 Mon Jul 18 23:55:13 MET DST 1994
7167         * [if1632/call.S]
7168         CallTo16(): added `mov %eax,%edx' just before lcall,
7169         to make sure that DX contain the DLL's hinstance when
7170         initialised.
7172         CallTo32_16() added, equal to CallTo32() except for
7173         one thing: it saves DX and 
7175         * [tools/build.c]
7176         Added some code to support 16 and 32 bit return values.
7178         * [1632/{kernel,user}.spec]
7179         Changed most of the `pascal' style to pascal_16 when
7180         function returned a 16bit value.
7182 Tue Jul 19 18:40:25 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
7184         * [controls/menu.c]
7185         Reorganized sizing and drawing code to implement multi-line menus.
7186         Implemented MENUBREAK style.
7187         Use system colors to draw menus.
7189         * [objects/color.c]
7190         Bug fix in COLOR_IsSolid().
7192         * [objects/font.c]
7193         Bug fix in FONT_GetMetrics(): calculate average character width
7194         only on existing chars (dialogs look much better).
7196         * [objects/text.c]
7197         Bug fix in DrawText(): use text color to underline mnemonic.
7199         * [windows/nonclient.c]
7200         Changed WM_NCHITTEST handling to cope with multi-line menu bars.
7202         * [windows/syscolor.c]
7203         Added system objects for menu colors.
7205 Mon Jul 18 19:32:08 PDT 1994  Andrew Lagodzinski  (andrew@netcom.com)
7207         * [controls/menu.c]
7208         Fixed bug in SelectPrevItem that caused seperators to not be
7209         skipped when using the up arrow key.
7211 ----------------------------------------------------------------------
7212 Thu Jul 14 17:50:45 1994  Bob Amstadt  (bob@pooh)
7214         * [Configure]
7215         Autodetects Linux version (if running Linux).
7217         * [loader/signal.c]
7218         New signals for Linux.
7220         * [loader/ldtlib.c]
7221         New structure field in sys call.
7223 Sun Jul 10 19:31:34 1994  Olaf Flebbe  (olaf@dragon)
7225         * [load/resource.c] 
7226           fixed Memory (Resource) Leak.
7228         * [load/main.c] 
7229           fixed a printf.
7231 Tue Jul 12 18:50:34 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
7233         * [controls/desktop.c]
7234         Implemented desktop wallpaper (only 16 colors for now).
7236         * [controls/menu.c] [windows/nonclient.c]
7237         Preliminary work to allow multi-line menus.
7239         * [misc/main.c]
7240         No backing store on desktop window (not useful).
7242         * [objects/text.c]
7243         A few fixes to DrawText() to make underlines under mnemonic
7244         letters to look better.
7246         * [windows/graphics.c]
7247         More fixes to GRAPH_DrawArc(), and some fixes to Polygon().
7248         Implemented PolyPolygon() (partially working).
7250         * [windows/winpos.c]
7251         New function WINPOS_SendNCCalcSize().
7252         Cleaned up SetWindowPos() and added preliminary support for
7253         multi-line menus.
7255 Mon Jul 11 19:15:51 1994  Miguel de Icaza  (miguel@sphinx)
7257         * [controls/edit.c]
7258         Changes to work as a library.
7260         * [if1632/callback.c] 
7261         Ifdefed module.
7263         * [if1632/relay.c]
7264         Changes to allow linking with WineLib.
7266         * [include/windows.h]
7267         Added macro WINELIB_UNIMP
7269         * [loader/library.c]
7270         When compiling WineLib, GetProcAddress is not implemented yet.
7272         * [loader/main.c]
7273         Added empty InitDLL when using WineLib.
7275         * [loader/ne_image.c]
7276         Some parts of the loader are needed for WineLib, ifdefed correctly
7278         * [misc/{audio.c,mcicda.c,mmaux.c,mmsystem.c]
7279         Disable compilation of module when compiling WineLib.
7281         * [toolkit/heap.c]
7282         Fixed small bug.  When passed an invalid handle WineLib would
7283         crash, now return NULL.
7285         * [toolkit/winmain.c]
7286         Call CreateNewTask in _WinMain.
7288 Sun Jul 10 09:08:02 1994  David Metcalfe <david@prism.demon.co.uk>
7290         * [controls/edit.c] [controls/widget.c]
7291         More changes to improve compatibility with Windows' edit
7292         control.  Finished off tab stop support.
7294 Mon Jul 11 21:05:02 MET DST 1994  Erik Bos <erik@hacktic.nl>
7296         * [if1632/relay.c]
7297         # of ordinals in shell.dll changed to 103.
7299         * [loader/signal.c]
7300         sti, cli will now be ignored.
7302         * [objects/brush.c]
7303         Added stub for GetSysColorBrush().
7305 ----------------------------------------------------------------------
7306 Sun, 3 Jul 1994 20:15:56 +0100 (BST)  David Metcalfe <david@prism.demon.co.uk>
7308         * [controls/edit.c]
7309         Bug fixes and tidying up.  Preliminary tab stop support
7310         (doesn't work yet).
7312         * [windows/dialog.c]
7313         Reversed order of buttons in CheckRadioButtons so that all
7314         buttons are now displayed.
7316 Tue Jul  5 18:30:24 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
7318         * [include/options.h] [misc/main.c] [windows/win.c]
7319         Removed nosaveunders option, replaced by handling
7320         the CS_SAVEBITS flag.
7322         * [windows/class.c]
7323         Modified the fix for negative size in class extra bytes to
7324         avoid modifying the caller's data.
7326         * [windows/dc.c]
7327         Bug fix: system font must be a proportional font.
7328         Fixed a bug that caused the default pen to not be selected
7329         correctly in a DC.
7331         * [windows/graphics.c]
7332         Bug fix in GRAPH_DrawArc(). Thanks to Adriano Azevedo for
7333         noticing it.
7335         * [windows/painting.c]
7336         Removed incorrect selecting of default objects in BeginPaint()
7337         (no longer needed because of the fix in dc.c).
7339 Jul 4, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7341         * [misc/mmsystem.c]
7342         * [misc/audio.c]
7343         Add more code to interface '/dev/dsp'.
7345         * New file [misc/mcicda.c]
7346         Create an MCI_DEVTYPE_CD_AUDIO driver connected to '/dev/sbpcd'.
7348         * New file [misc/mmaux.c]
7349         Stubs to make a future driver connected to '/dev/mixer'.
7351         * [windows/win.c]
7352         Temporary patch to CreateWindowEx() for reseting negative
7353         coordinates to 0,0 ; because 'soundrec.exe' give negative values
7354         and I need it to work on MMSYSTEM ... :-)
7356         * [miscemu/int2f.c]
7357         add a stub 'do_int2f_16' (function 0x16) for DMPI server.
7359 Mon Jun 20 10:08:40 BST 1994  William Smith (wos@dcs.warwick.ac.uk)
7361         * include/comm.h
7362         New file -- some definitions that were in comm.c now need to
7363         be shared with misc/dos_fs.c
7365         * misc/comm.c
7366         Some definitions moved into include/comm.h
7368         * misc/dos_fs.c (DOS_GetEquipment):
7369         Fixed error in equipment -- bitwise or of two values should
7370         be used instead of logical or.  Also added code to correctly
7371         report the number of serial and parallel devices.
7373 ----------------------------------------------------------------------
7374 Mon Jun 20 14:26:41 1994  Bob Amstadt  (bob@pooh)
7376         * [objects/bitmap.c]
7377         Allow negative bitmap sizes.
7379 Sun Jun 19 12:00:04 1994  David Metcalfe <david@prism.demon.co.uk>
7381         * [controls/edit.c]
7382         Improved selection display.  Added processing for WM_SETFONT,
7383         EM_REPLACESEL, EM_LINELENGTH, EM_UNDO, EM_EMPTYUNDOBUFFER,
7384         EM_GETHANDLE, EM_SETHANDLE messages.  Text buffer now stored on 
7385         application's local heap.
7387         * [windows/graphics.c]
7388         Corrected bug in Rectangle().  XFillRectangle has the same
7389         width as Rectangle, but XDrawRectangle is one pixel wider
7390         for the same co-ordinates.
7392         * [memory/heap.c] [include/heap.h]
7393         Added HEAP_LocalSize function.
7395         * [windows/event.c] [windows/keyboard.c]
7396         Improvements to KeyStateTable and addition of AsyncKeyStateTable.
7397         Added supporting code to GetKeyState and GetAsyncKeyState and
7398         merged mouse button states into GetKeyboardState.
7400         * [loader/resource.c] [include/accel.h]
7401         Added recognition of SHIFT, CONTROL and ALT keys to
7402         TranslateAccelerator.
7404         * [objects/metafile.c] [objects/font.c] [objects/bitblt.c]
7405         A bit more metafile support.
7407 Sun Jun 19 17:29:00 MET DST 1994  Erik Bos (erik@hacktic.nl)
7409         * [loader/resource.c]
7410         SizeofResource() and AllocResource() added, AccessResource() updated.
7412         * [if1632/kernel.spec]
7413         FreeLibrary() used for FreeModule().
7415         * [windows/graphics.c]
7416         Rectangle(): swap left & right corners when right < left,
7417         swap top & bottom when botton < top.
7419 Jun 19, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7421         * [controls/combo.c]
7422         Fix bug in window style of the associated listbox.
7424         * [controls/menu.c]
7425         Skip separators in keyboard navigation by using new internal 
7426                 functions SelectPrevItem() & SelectNextItem(),
7428         * [misc/profile.c]
7429         Bug fix in GetPrivateProfileInt(), was limited to 4 digit,
7430                 IntBuf must be alloc to (5+1)=6. char instead of 5.
7432         * [misc/main.c]
7433         Put code in functions SetEnvironment() & GetEnvironment().
7435         * [misc/shell.c]
7436         Start putting some code in ExtractIcon() function.
7438         * [misc/mmsystem.c]
7439         Some code for MMTimer functions & timers list.
7441         * [miscemu/int31.c]
7442         Few stubs for DPMI interrupt calls. Nothing work yet.
7444 Mon Jun 20 07:37:43 EDT 1994    John Richardson (jrichard@cs.uml.edu)
7446         * include/win.h (tagWND):
7447         Added icon fields icon, hIcon and rectClientSave to 
7448         the tagWND struct.
7450         * windows/Imakefile
7451         Added icon.c to the list of files to compile
7453         * windows/dce.c (GetDCEx):
7454         Added some checks for iconic mode and pass icon window as drawable,
7455         not the real window.
7457         * windows/defwnd.c (DefWindowProc)
7458         Added PAINTICON default windows procedure.
7460         * windows/event.c (EVENT_Expose)
7461         Added check for iconic window expose. If iconic window is exposed
7462         send a WM_PAINTICON message
7464         * windows/icon.c 
7465         New file.  ICON_Iconify, ICON_findIconFromPoint, ICON_Deiconify.
7467         * windows/mdi.c (DefMDIChildProc)
7468         Test for IsIconic during a SC_RESTORE, this doesn't work yet.
7470         * windows/message.c (hardware_event)
7471         Looks for icon as well as window now.
7473         * windows/nonclient.c (NC_HandleSysCommand, NC_DoNCPaintIcon)
7474         Added iconify/deiconify in NC_HandleSysCommand, new function
7475         NC_DoNCPaintIcon which paints an icon.
7477         * windows/painting.c (BeginPaint)
7478         Made a BeginPaint select the STOCK_BLACK_PEN, STOCK_WHITE_BRUSH,
7479         and STOCK_SYSTEM_FONT objects since this is (hopefully) default
7480         windows behavior.
7482         * windows/win.h (CreateWindowEx)
7483         Set the default background color of a window to be white.
7484         Create icon window, turn off MINIMIZE if it is on, since
7485         I don't know what to do with it as of yet... register
7486         the icon with the hwnd of its window so we can identify where
7487         icon messages are coming from.
7489 Mon Jun 20 10:15:59 1994  Miguel de Icaza  (miguel@sphinx)
7491         * windows/event.c: Added a hack to define XPointer when using
7492         X11R4. 
7494         * toolkit/hello.c: Test application for WineLib. To compile you'll
7495         need: gcc -Iinclude -DWINELIB -g hello.c -c, and to link you'll
7496         need: gcc hello.o libwine.a -lX11 -L/usr/openwin/lib -lm 
7498         * toolkit/heap.c: Extended the size of the block size per chunk.
7500         * misc/stress.c (GetFreeFileHandles): Fixed typo.
7502         * misc/main.c (main): Changes to allow compilation under SunOS. 
7504         * loader/library.c: Changed some ifdefs to compile WineLib.
7506 ----------------------------------------------------------------------
7507 Tue Jun 14 08:09:14 1994  Bob Amstadt  (bob@pooh)
7509         * loader/selector.c (GetCurrentPDB): 
7510         Added trivial function GetCurrentPDB() which returns the program
7511         segment prefix selector.
7513         * memory/heap.c (HEAP_Free): 
7514         If free list is empty, make the freed block the free list.
7516 Fri Jun 10 07:56:49 1994  Bob Amstadt  (bob@pooh)
7518         * controls/edit.c (EDIT_SetTextMsg): 
7519         Do not append a newline at the end of the last line.
7521         * windows/event.c (SetCapture): 
7522         Set winHasCursor if mouse capture succeeds.
7524 Jun 13, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7526         * [controls/listbox.c]
7527         Fix bug in listbox : InsertString should call AddString if -1.
7529         * [controls/menu.c]
7530         New function GetMenuState().
7532         * [controls/scroll.c] [windows/nonclient.c]
7533         Try to make ShowScrollBar() recalc NC_ regions. Not finished !
7535         * [objects/text.c]
7536         Add Stub for TabbedTextOut(), which temporarely call Textout().
7538         * [windows/keyboard.c] [windows/event.c]
7539         New function GetKeyBoardState() with an KeyStateTable array
7540                 & associated handling in function EVENT_key().
7542 Mon Jun 13 16:45:24 MET DST 1994 (erik@hacktic.nl)
7544         * [controls/menu.c]
7545         IsMenu() added.
7547         * [loader/library.c]
7548         ModuleFirst(), ModuleNext(), ModuleFindName(), ModuleFindHandle()
7549         added.
7551         * [object/gdiobj.c]
7552         IsGDIObject() added.
7554         * [miscemu/int2[56].c]
7555         bugfix: both didn't leave flags pushed on 16bit-stack.
7556         (winfile gets a bit further)
7558         * [miscemu/int16.c]
7559         Added (empty).
7561 Sat Jun 11 22:56:48 1994 Jon Tombs (jon@esix2.us.es)
7562         * windows/event.c:
7563         Added code to drop redundant motion Events in the XEvent queue.
7565 Thu Jun  9 10:55:55 MET DST 1994  Jochen Hein ( Hein@Student.TU-Clausthal.de )
7567         * [misc/main.c misc/message.c include/texts.h]
7568         Removed the text-constants from message.c into variables
7569         which may be changed from X-resources.
7571         * [misc/main.c misc/message.c]
7572         added <locale.h> and setlocale() to main.c, used toupper() in message.c
7574 Mon, 13 Jun 94 09:41:16 -0500 Paul Bramel <paulbr@comm.mot.com>
7576         * controls/button.c ( [CR]B_LButton* ) 
7577         left rc.right at full window width so click on label also 
7578         activates the control (MSWin behavior)
7580 Sat Jun 11 19:05:40 1994  Olaf Flebbe  (flebbe@tat.physik.uni-tuebingen.de)
7582         * include/windows.h:
7583           functions pointers can not be packed.
7584           (annoying warnings with forthcomming gcc-2.6.x)
7585         
7586         * loader/main.c (InitDLL): 
7587           Fixed a printf statement. (for control.exe) 
7589           (InitializeLoadedDLLs): 
7590           deleted shadow definition of  *wpnt.
7591           (Breaks many programs, because now COMMDLG will be
7592            initialized :-(
7594         * windows/win.c (SetWindowText): 
7595           added missing breaks; (PENSATE starts) 
7597         * windows/graphics.c (FloodFill): 
7598           Proper boundarys. (BANGBANG starts) FloodFile_rec should
7599           be rewritten.
7601         * objects/font.c (FONT_GetMetrics): 
7602           TYPO: use font->perchar only if it is defined. (WRITE starts)
7604 Sun June 12, Peter Broadhurst (pbr@ua.nwl.ac.uk)
7605         controls/scroll.c:
7606         Fixes for improved behaviour when dragging thumb;
7607         Added SB_THUMBPOSITION message when thumb is released.
7609 ----------------------------------------------------------------------
7610 Tue Jun  7 08:41:27 1994  Bob Amstadt  (bob@pooh)
7612         * loader/selector.c (FixupFunctionPrologs): 
7613         New function to fixup loaded DLL function prologs.  It replaces the
7614         do nothing code with code that loads DS with the appropriate data
7615         segment for the DLL.
7617         * misc/cursor.c (LoadCursor): 
7618         Disabled cursor loading from .EXE or .DLL.  The code needs to handle
7619         the possibility of multiple cursors in a single directory.  Also,
7620         it should check to see if the cursor is the right size.
7622         * objects/font.c (EnumFonts): 
7623         Checked for lpLogFontList[i] == NULL
7625         * objects/gdiobj.c (SetObjectOwner): 
7626         Removed stub.  Replaced with simple return in gdi.spec.  This
7627         function is not defined for the retail version of Windows.
7629         * memory/heap.c (WIN16_LocalHandleDelta): 
7630         New function.  This is really a dummy that imitates the proper
7631         return values.
7633         * loader/library.c (GetProcAddress): 
7634         Fixed definition of IS_BUILTIN_DLL() macro.
7636 Mon Jun  6 18:15:40 1994  Bob Amstadt  (bob@pooh)
7638         * miscemu/int21.c (SeekFile): 
7639         Needed to return current position in DX:AX.
7641         * windows/utility.c (windows_wsprintf): 
7642         Added support for '#' in format, and fixed bug with "ptr" being
7643         incremented too many times.
7645         * miscemu/int21.c (OpenExistingFile): 
7646         Add code to handle opening files read-only and write-only.
7648         * loader/wine.c:
7649         Segment fixups now done in LoadImage instead of _WinMain.  This
7650         is necessary to support LoadLibrary().
7652 Sun Jun  5 17:34:24 1994  Erik Bos (erik@hacktic.nl)
7654         * [loader/*]
7655                 - fixed: GetModuleHandle() sometimes returned
7656                   a wrong handle.
7657                 - don't init dlls when cs == 0 (lzexpand, doesn't
7658                   seem to have a init function)
7659                 - LoadLibrary & LoadImage now return error instead
7660                   of stopping wine.
7661                 - moved most of NE-functions into one file.
7662                 - LoadLibrary() uses w_files list instead of its
7663                   own list.
7664                 - NE exectables are now fixed-up and initialised when
7665                   loaded instead of only once before calling InitTask.
7667         * [miscemu/int15.c] [miscemu/int31.c]
7668         Added.  
7670         * [loader/selector.c]
7671         Stubs added for {Get|Set}SelectorLimit(), {Get|Set}SelectorBase().
7673         * [misc/main.c]
7674         Stub added for IsRomModule().
7676         * [miscemu/int21.c]
7677         Some cleanup, added heap for returning data.
7679 Jun 6, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7681         * [tools/build.c]
7682         Change MAX_ORDINALS     define to higher value, 1299 entries.
7683         (MMSYSTEM doesn't have succesive numbers, some are around 1200).
7685         * [windows/utility.c]
7686         Bug fix in windows_wsprintf(), (twice increments ...).
7688         * [windows/winpos.c]
7689         Bug fix in SetWindowPos(), redraw was done if flag
7690                 was set to SWP_NOREDRAW while SWP_SHOWWINDOW).
7692         * [misc/message.c] [controls/combo.c]
7693         Add an InvalidateRect() in WM_SHOWWINDOW to statisfy the new 'saveunder'.
7695         * [windows/win.c]
7696         In CreateWindowEx(), do SetMenu() calls after window creation,
7697                 just before sending to WM_NCCALCSIZE.
7699         * [controls/menu.c]
7700         In function SetMenu(), now use SetWindowPos() with 
7701                 flags SWP_FRAMECHANGED to readjust menu area.
7702         Function MenuBarCalcSize() redone.
7704 Sun May 29 11:08:24 1994  David B. Thomas  (dt@yenta.abq.nm.us)
7706         * [objects/text.c]
7707         Fixed problems associated with DT_WORDBREAK flag.  String length
7708         was not being properly decremented when lines were folded, and
7709         wrapping was not performed when DT_NOCLIP and DT_NOPREFIX were
7710         both on in addition to DT_WORDBREAK.  Windows does wrapping in
7711         this case, and now so does wine.
7713 Sun Jun  5 19:17:49 1994  Olaf Flebbe  (olaf@dragon)
7715         * [edit.c]
7716         cp1 was uninitialized iff lineno == 0
7718         *  FindFile tests for existance of file even if a full
7719            filename was supplied. What about unix file names?
7721         * [controls/listbox ]
7722         wndPtr was uninitialized for LB_SETTOPINDEX
7724         * [misc/property.c]     
7725         Do not free lpProp. Is it really allocated by malloc?
7726         {edited by Bob Amstadt: changed free() to GlobalFree()}
7728 ----------------------------------------------------------------------
7729 Sat May 28 12:03:23 1994  Bob Amstadt  (bob@pooh)
7731         * miscemu/int21.c (OpenExistingFile): 
7732         OpenExistingFile needed to return handle in AX register instead
7733         of the BX register.
7735         * miscemu/int21.c (ioctlGetDeviceInfo): 
7736         Added a little code to give a fake result for normal files.
7738 Wed May 25 21:55:38 1994  Bob Amstadt  (bob@pooh)
7740         * [memory/global.c]
7741         return value from GlobalSize was completely wrong.
7743         * [miscemu/int21.h]
7744         fixed bug in FindFirst.  Directory pointer (dp) was not placed in
7745         dta correctly.
7747         * [tools/build.c]
7748         fixed creation of pop.h to guarantee that flags are restored correctly.
7750         * [misc/comm.c]
7751         changed all occurance of strncmp() to strncasecmp().
7752         BuildCommDCB() should not require that OpenComm() be called first.
7754         * [loader/selector.c]
7755         Heap initialized to size of full segment less stack size and 
7756         automatic data size.
7758 Sat May 28 09:14:33 1994  Rick Sladkey  (jrs@world.std.com)
7760         * [controls/listbox.c]
7761         Correct typos in ListBoxResetContent where lpls variable is
7762         used where lsls2 variable is meant.  Don't call USER_HEAP_FREE
7763         twice on the same handle if hData and hMem are the same.
7765         * [debugger/opcodes/i386-dis.c]
7766         Add new name array names_rmw for table driven decoding of the
7767         16-bit mod/rm field.  Omit large case statement in OP_E and
7768         replace with array reference to match existing coding style.
7769         Add new static variable machine with value 286 or 386 to
7770         correctly decode mod/rm field in either 16 or 32 bit modes.
7771         Set it in print_insn_i{2,3}86.  In OP_E use it to decide how
7772         to decode mod/rm.  While the code was correct for 16 bit code,
7773         it was improperly decoding mod/rm fields on word prefixed
7774         32 bit instructions.
7776         * [debugger/debug.l]
7777         Recognize new token ABORT.   Recognize single letters 'p'
7778         and 'q' as tokens.
7780         * [debugger/dbg.y]
7781         Add new token ABORT.  Allow print command to be invoked by
7782         'p' and quit command by 'q', ala GDB.  Change lots of '};'
7783         to just '}'.  Add static dummy_regs to wine_debug so that
7784         wine_debug(0, NULL) doesn't core dump with qmagic.
7786         * [debugger/info.c]
7787         Correct syntax of break command in helptext and omit former
7788         comment about probable bugginess of the disassembly since it
7789         is now correct.  Change fprintf of first backtrace stack
7790         frame to match that of the second and subsequent frames.
7792         * [loader/selector.c]
7793         Change construction of command line in CreatePSP from creating
7794         a string that looks like "arg1 arg2 \r" to "arg1 arg2".  A DOS
7795         PSP command line looks like " arg1 arg2\r" with the length not
7796         including the trailing "\r" but that is not how Windows does it.
7798         * [loader/library.c]
7799         Change uses of %s to print strings in GetModuleHandle to %x so
7800         that string IDs don't cause a core dump with qmagic.  Handle
7801         converting a string id to a literal module handle.  For
7802         example, GetModuleHandle((LPSTR) 0x57) now returns 0x57 if
7803         it is a real module handle.
7805         * [misc/message.c]
7806         In MessageBox, translate a NULL title argument to the string "Error".
7808         * [misc/profile.c]
7809         In GetSetProfile translate a NULL Default argument to "".  Any
7810         caller whose Default argument is NULL is buggy, but CHARMAP does it
7811         anyway.
7813         * [objects/font.c]
7814         Add NULL pointer checks in EnumFontFamilies to prevent core dumps.
7816 Sat May 28 20:01:51 1994 Jon Tombs (jon@gtex02.us.es) 
7818         * New options/resourses nosaveunders and nobackingstore.  By 
7819         default backingstore and saveunders are now enabled, these use 
7820         more memory but avoids those slow (sometimes multiple) redraws 
7821         caused be exposure events.
7823 May 30, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7825         * [misc/driver.c] New file
7826         Skeleton for 'Installable Wine Drivers' functions. :-)
7827         * [misc/audio.c] New file
7828         Skeleton for basic 'Audio Driver' functions.
7829         * [misc/network.c] New file
7830         Stubs for few networking functions.
7832         * [misc/mmsystem.c]
7833         More coding ... a dust in a galaxy ...
7834         * [misc/shell.c]
7835         Some coding for 'RegXXX' functions ... a dust in the wind ...
7837         * [misc/profile.c]
7838         Bug fix in GetSetProfile(), bad enumeration if KeyName == NULL.
7840         * [objects/gdi.c]
7841         New function CreateDiscardableBitmap(), it just calling 
7842         CreateCompatibleBitmap() for now. It's get 'clock.exe' running ! :-)
7844         * [controls/listbox.c]
7845         * [controls/combo.c]
7846         New font member assigned to SYSTEM_FONT as default.
7847         Added processing for WM_SETFONT message;
7850 Tue May 31 20:34:25 EDT 1994  John Richardson <jrichard@cs.uml.edu>
7852         * [windows/event.c]
7853         Added AsyncMouseButtonsStates array for GetAsyncKeyState.
7855         * [windows/keyboard.c]
7856         Implemented beginning of GetAsyncKeyState.
7858 Wed May 25 23:35:03 1994  David Metcalfe <david@prism.demon.co.uk>
7860         * [objects/metafile.c] [include/metafile.h]
7861           [windows/mapping.c] [objects/clipping.c] [objects/bitblt.c]
7862           [windows/dc.c]
7863         Further metafile support.
7865 ----------------------------------------------------------------------
7866 Mon May 23 15:07:36 1994  Bob Amstadt  (bob@pooh)
7868         * [loader/selector.c]
7869         Allocate heap and stack segments as 64k.
7871 Sat May 21 01:15:49 1994  Rick Sladkey  (jrs@world.std.com)
7873         * [loader/selector.c]
7874         Correct typos where memcpy is used instead of memset.
7876         * [loader/resource.c]
7877         Allow for legitimate cases where biSizeImage is 0 in LoadIcon
7878         by calculating the value when the bitmap is not compressed.
7880         * [miscemu/int21.c]
7881         Fix NULL dereference caused by superfluous DOS_closedir in FindNext.
7883         * [loader/resource.c]
7884         New function type_match to handle string resource types as
7885         well as IDs.  In addition, compare only low 4 bits of type_id
7886         when both numbers are IDs so that 0x0002 matches 0x8002.
7887         In FindResourceByNumber and FindResourceByName use type_match
7888         instead of comparing numbers.  In FindResource handle the
7889         "#number" syntax and empty strings in both the resource and
7890         type names.
7892 Mon May 23 00:48:25 1994  Rick Sladkey  (jrs@world.std.com)
7894         * [windows/dialog.c]
7895         Fix inadvertent printing of string IDs as strings.
7897 May 23, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7899         * [controls/menu.c]
7900         New functions GetMenuItemCount(), GetMenuItemID().
7901                 GetMenuString() & HiliteMenuItem().
7902         Bug fix in CheckMenuItem().
7903         Function SetMenu() now make client area recalc if menu removed.
7905         * [windows/winpos.c]
7906         Bug fix in SetWindowPos(), no more XMapping or XConfiguring     of
7907                 windows with initial width or height equal zero.
7909         * [objects/gdiobj.c]
7910         New function EnumObjects(), using new lpPenBrushList buildup
7911                 from calls to new function GDI_AppendToPenBrushList().
7912                 ('pbrush.exe' don't show its face yet ! ... :-( )
7913         New EMPTY STUB for function SetObjectOwner(),
7914                 ('mplayer.exe' call it via GetProcAddress() ...)
7916         * [objects/font.c]
7917         New internal functions ParseFontParms() & InitFontsList().
7918         EnumFonts() & EnumFontFamilies() enumerates fonts (no more dummies).
7919         FONT_MatchFont now make retries to find closest-smallest font.
7920                 ('charmap.exe' can now show the differents fonts available)
7922         * [windows/nonclient.c]
7923         Use small dos OBM_OLD_CLOSE button for MDI windows.
7925         * [windows/graphics.c] [objects/bitmap.c]
7926         Start to remove obsolete globals such XT_screen ...
7928         * [loader/library.c]
7929         Make function GetProcAddress() working also with builtin DLLs.
7931 Tue May 24 20:18:02 1994  Erik Bos (erik@hacktic.nl)
7933         * [if1632/system.spec] [if1632/toolhelp.spec]
7934         system.dll & toolhelp.dll added.
7936         * [loader/library.c]
7937         Modified GetModuleFileName() to return the full
7938         filename.
7939         Added a check to LoadLibrary() to prevent loading
7940         built in dlls. (eg. user.exe)
7941         Added a check to FreeLibrary() to prevent built-in
7942         dlls from being freed.
7943         Modified GetProcAddress() to support builtin dlls.
7945         * [loader/signal.c] [miscemu/int2f.c]
7946         Added => pifedit runs.
7948         * [misc/dos_fs.c]
7949         Added a NULL-ptr check to DOS_closedir().
7951 ----------------------------------------------------------------------
7952 Tue May 17 23:03:16 1994  Bob Amstadt  (bob@pooh)
7954         * [windows/dce.c]
7955         Fixed bug with dce initialization that was causing dialog boxes to not
7956         be displayed.
7958         * [if1632/callback.c]
7959         Better fix for bug found by Martin.
7961 Sat May 14 19:48:39 1994  Rick Sladkey  (jrs@world.std.com)
7963         * [ memory/heap.c ]
7964         Redirect HEAP_ReAlloc calls with NULL argument to HEAP_Alloc.
7966 May 16, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
7968         * [objects/font.c]
7969         Make EnumFonts() calling a callback with dummy fonts ... :-)
7971         * [objects/text.c]
7972         Add Empty Stub for ExtTextOut(), which temporarely call Textout().
7974         * [if1632/callback.c]
7975         Temporarely go around bug in CallWindowProc(), you will see printfs.
7977         * [controls/edit.c]
7978         Make EDIT controls focused by a mouse click.
7980         * [misc/property.c]
7981         Bug Fix in function EnumProps(), better use of CallBack16().
7983         * [misc/mmsystem.c]
7984         Basic Skelton's for MCI messages dispatching function.
7986 Sun May 15 16:15:17 1994  Erik Bos (erik@hacktic.nl)
7988         * [windows/utility.c]
7989         Added windows_wsprintf() for the emulator, wsprintf() is
7990         for libwine.
7992 Sat May 14 22:16:40 1994  Rick Sladkey  (jrs@world.std.com)
7994         * [misc/cursor.c]
7995         Fix pointer problems in LoadCursor leading to heap corruption.
7997         *  [ controls/menu.c ]
7998         Fix two NULL dereferencing bugs.
8000 Sun May 15 20:07:48 1994  Rick Sladkey  (jrs@world.std.com)
8002         * [objects/font.c]
8003         Fix NULL pointer dereferencing bug in GetCharWidth.
8005         * [loader/resource.c]
8006         Fix under-allocation of memory in LoadAccelerators.
8008         * [windows/class.c]
8009         Ignore negative sizes for extra fields in RegisterClass.
8011 Sun May 15 06:35:03 1994  David Metcalfe <david@prism.demon.co.uk>
8013         * [objects/metafile.c] [include/metafile.h] [include/windows.h]
8014           [objects/gdiobj.c] [objects/brush.c] [objects/pen.c]
8015           [objects/text.c] [objects/dcvalues.c] [windows/graphics.c]
8016           [windows/dc.c] [windows/mapping.c]
8017         Beginnings of metafile support.
8019         * [misc/file.c]
8020         Corrected spelling of _lcreat.
8022         * [controls/edit.c]
8023         Minor bug fixes.
8024 ----------------------------------------------------------------------
8025 May 9, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8027         * [controls/scroll.c]
8028         Make thumbtrack button disappear if scroll box ratio < 3:1.
8029         Make arrow buttons rectangular if scroll box ratio < 2:1.
8030         Add code for SBS_TOPALIGN, SBS_BOTTOMALIGN, 
8031                                 SBS_LEFTALIGN & SBS_RIGHTALIGN.
8032         Bug fix in NC_CreateScrollBars(), no more bigbutt in calendar.exe... :-)
8034         * [loader/library.c] [loader/task.c] [misc/exec.c]
8035         Continue playing around trying to get a second task running.
8037         * [windows/mdi.c]
8038         Change OBM_CLOSE for OBM_OLD_CLOSE, a smaller dot button when maximized.
8040         * [everywhere]
8041         Adding previous works of the Apr 25, 94.
8043 Tue May 10 18:09:14 1994 Erik Bos (erik@trashcan.hacktic.nl)
8045         * [if1632/mmsystem.spec] [misc/mmsystem.c] [include/mmsystem.h]
8046         Added Martin's mmsystem.dll stubs.
8048         * [misc/sound.c]
8049         Added remaining stubs for sound.dll.
8051         * [if1632/shell.spec] [misc/shell.c]
8052         Fixed prototypes (I found them in BC 4) and added ShellAbout()
8053         and AboutDlgProc().
8055 ----------------------------------------------------------------------
8056 May 1, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8058         * [loader/signal.c]
8059         Add XUngrabPointer() & XUngrabServer() in wine_fault().
8061 Fri Apr 22 19:30:08 1994  Erik Bos (erik@trashcan.hacktic.nl)
8063         * [objects/bitblt.c]
8064         color_stretch() rewritten to use ints only. *fast!*
8065         BLACKONWHITE & WHITEONBLACK stretchmodes redirected to
8066         use color_stretch().
8068 Mon May  2 21:39:43 1994  Erik Bos (erik@trashcan.hacktic.nl)
8070         * [controls/menu.c]
8071         SetSysMenu() added.
8073         * [misc/cursor.c]
8074         GetCursor() added.
8076         * [misc/main.c]
8077         SwapMouseButton() added, (NOP).
8079         * [windows/win.c]
8080         GetDesktopHwnd() added.
8082         * [if1632/*spec]
8083         Added not implemented functions defs as comment.
8085         * [misc/winsocket.c]
8086         Change WSAGetXbyY() functions to non-blocking ones,
8087         Added WSAAsyncSelect(). 
8088         (WSA functions can't be canceled yet).
8090 Wed Apr 20 23:58:58 1994  Scott A. Laird  (scott@curly)
8092         * misc/profile.c: Fixed bug with GetIniFileName returning wrong
8093         path when given a simple file name.  Fixed GetSetProfile to allow
8094         enumerating all key names when KeyName is null.
8096 Apr 25, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8098         * [objects/bitblt.c]
8099         Add protection to BitBlt() & StretchBlt() for width or height = 0.
8101         * [windows/nonclient.c]
8102         Avoid painting in NC_DoNCPaint() if IsWindowVisible().
8103         Simplify NC_TrackMouseMenuBar() because code moved to MenuFocusLoop().
8105         * [windows/win.c]
8106         CreateWindowEx() & DestroyWindow() now call respectively
8107                 AddWindowToTask() & RemoveWindowFromTask().
8108         New empty stub for function AnyPopup().
8110         * [loader/library.c]
8111         Bug Fix : GetModuleFileName() now return full path filename.
8113         * [include/menu.h] [controls/menu.c]
8114         Add hText handle and remove obsolete MENUITEM struct members.
8115         Add a ReleaseCapture() in SetMenu() when menubar changed while captured.
8116         Add MenuMouseMove() MenuButtonUp() in function MenuFocusLoop().
8118         * [misc/file.c]
8119         GetTempFilename() now create a file.
8120         _lcreate() use unix open (name, mode, perm), with perm=O666.
8122         * [if1632/relay.c]
8123         Remove temporarly builtin SHELL.DLL, Add MMSYSTEM.DLL in builtin list.
8125         * New file [misc/mmsystem.c]
8126         * New file [include/mmsystem.h]
8127         * New file [if1632/mmsystem.spec]
8128         Many, many empty stubs ... :-)
8130 ----------------------------------------------------------------------
8132 Wed Apr 20 14:53:35 1994  Bob Amstadt  (bob@pooh)
8134         * [tools/build.c] [if1632/call.S] [if1632/Imakefile]
8135         Fixed bug for non-Linux systems.
8137 Apr 18, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8139         * [windows/win.c]
8140         Bug fixed in CreateWindowEx() : Now use SetMenu() for menubar setup.
8141         New empty stub for function SetSysModalWindow().
8143         * [misc/exec.c]
8144         New empty stub for function ExitWindows().
8146         * [objects/font.c]
8147         New empty stub for function EnumFonts().
8149         * New file [misc/property.c]
8150         New functions RemoveProp(), GetProp(), SetProp() & EnumProps().
8152         * New file [misc/shell.c]
8153         New empty stubs for function RegisterShellProc(), 
8154                         ShellExecute() & ShellProc().
8156         * New files [loader/task.c] & [include/task.h]
8157         Move functions GetWindowTask(), GetNumTask(), EnumTaskWindows()
8158                 from 'loader/library.c'.
8160         * [if1632/user.c] [if1632/kernel.c]
8161         Put Atoms functions entries.
8163         * [controls/combo.c]
8164         New functions DirDlgSelectComboBox() & DirDlgListComboBox().
8166         * [controls/listbox.c]
8167         New functions DirDlgSelect() & DirDlgList().
8169 Sun Apr 17 20:57:59 1994  Erik Bos (erik@trashcan.hacktic.nl)
8171         * [objects/test.c]
8172         GrayString() added.
8174         * [if1632/callback.c]
8175         CallGrayStringProc() added.
8177         * [if1632/relay.c] [if1632/mmsystem.spec]
8178         Added.
8180         * [if1632/kernel.spec] [if1632/user.spec]
8181         Added forgotten specs for atom functions.
8183 ----------------------------------------------------------------------
8184 Tue Apr 12 00:05:31 1994  Bob Amstadt  (bob@pooh)
8186         * misc/spy.c (SpyInit): Added more message types
8188         * [windows/mdi.c] [include/mdi.h]
8189         Maximizing and restoring child windows.
8190         Tiling of child windows.
8192 Mon Apr 11 20:48:28 1994  Alexandre Julliard  (julliard@lamisun.epfl.ch)
8194         * [windows/winpos.c]
8195         Revert focus and activation to previous window when hiding a window.
8197         * [windows/syscolor.c]
8198         Implemented system color objects (brushes and pens created at
8199         SetSysColor() time for better performance).
8201         * [windows/graphics.c] [windows/nonclient.c] [controls/button.c]
8202         Changed painting code to use system color objects.
8204         * [windows/message.c]
8205         New function MSG_InternalGetMessage() for internal messages
8206         loops (e.g. for dialogs or menus).
8208         * [windows/hook.c] [include/hook.h]  (New files)
8209         Beginning of the window hooks implementation.
8211         * [windows/dialog.c]
8212         Use new function MSG_InternalGetMessage() in DialogBox().
8214         * [if1632/callback.c]
8215         Added function CallHookProc().
8217 Apr 11, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8219         * [windows/event.c]
8220         Bug fix : WM_CHARs are sent to focused window like WM_KEY???.
8222         * [misc/exec.c]
8223         Nothing much more than a stub for LoadModule(), I saw there a lot
8224                 to be done in that corner, I will come back later ...
8226         * [loader/library.c]
8227         New functions GetWindowTask(), GetNumTask(), EnumTaskWindows() 
8228                         and associated modules & tasks linked-lists.
8229         (it's only an 'emerging bud', more to come next weeks).
8231         * [loader/wine.c]
8232         Use LoadLibrary() instead of LoadImage() for 'sysres.dll'.
8234         * [control/menu.c]
8235         You can now click outside menu region without problem.
8236         Keyboard navig more smootly, even if a child has the focus.
8237         Bug fix in InsertItem(), (bad linklist when insert point not found).
8238         change Realloc for Free & Alloc in ModifyItem().
8239         MF_STRING now set BLACK_PEN to fix bug of bad color of the underscores 
8240                 done by DrawText(), (maybe it should done in DrawText() itself ?).
8242 Sun Apr 10 14:06:08 1994  Erik Bos (erik@trashcan.hacktic.nl)
8244         * [misc/profile.c]
8245         .INI files will now be stored in / loaded from the windows dir
8246         if no path is supplied.
8248         * [if1632/kernel.spec]
8249         Fixed GetDriveType's prototype.
8251         * [if1632/winsock.spec] [include/winsock.h] [misc/winsocket.c]
8252         Fixed prototypes: winsock uses a word as socket handle not an int.
8254         * [misc/winsocket.c]
8255         Added heap allocation for returned structures.
8256         Added non-blocking WSAAsyncGetXbyY() functions as blocking ones.
8258         * [loader/wine.c]
8259         Added IsDLLLoaded(), used in LoadImage() to prevent loading
8260         a dll multiple times.
8261         Directory is added to wine's path when a fullpath is supplied when
8262         starting wine.
8263         LoadImage(): DLL filename used instead DLL's own internal name,
8264         fixes 'Bad DLL name' errors.
8266 Sat Apr  9 08:26:03 1994  David Metcalfe <david@prism.demon.co.uk>
8268         * [controls/edit.c] [controls/widgets.c]
8269         First release of edit control.
8271 ----------------------------------------------------------------------
8272 Tue Apr  5 14:36:59 1994  Bob Amstadt  (bob@pooh)
8274         * [include/mdi.h] [windows/mdi.c]
8275         Use WM_PARENTNOTIFY messages to activate children.
8276         Generate WM_CHILDACTIVATE messages.
8277         Beginnings handler for maxmized child window.
8278         Clean up when children are destroyed.
8280         * [windows/message.c] [windows/nonclient.c] [windows/winpos.c]
8281         Removed code add 94/03/26.
8283 Apr 4, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8285         * [control/menu.c]
8286         Make mouse menu navigation working again. :-))
8287         (be carefull, clicking outside menus (ie.: clientrect) 
8288         not resolved yet)
8290         * [windows/nonclient.c]  [controls/scroll.c]
8291         Bugs fix in NCTrackScrollBars().
8293         * [misc/dos_fs.c]
8294         Bug fix in 'ToDos()' in conversion for '/',
8295                 (example: '/window/' was translated to 'WINDOWs').
8297         * [miscemu/int21.c]
8298         Function ChangeDir() extract possible drive before DOS_ChangeDir().
8300         * [loader/library.c]  [loader/wine.c]
8301         Playing around moving function GetProcAddress() and put some code in.
8303 Mon Apr  4 21:39:07 1994  Alexandre Julliard (julliard@lamisun.epfl.ch)
8305         * [misc/main.c]
8306         Better explanation of command-line options.
8308         * [objects/dib.c]
8309         Implemented SetDIBitsToDevice().
8311         * [windows/dc.c]
8312         Bug fix in SetDCState().
8314         * [windows/event.c]
8315         Removed WS_DISABLED handling (now done in message.c).
8317         * [windows/message.c]
8318         Added sending a WM_PARENTNOTIFY message in MSG_TranslateMouseMsg().
8319         Use WindowFromPoint() to find the window for mouse events, taking
8320         into account disabled windows.
8322         * [windows/painting.c]
8323         Bug fix in BeginPaint() to allow calling it at other times than
8324         on WM_PAINT (Solitaire needs it...)
8326         * [windows/win.c]
8327         Implemented FindWindow().
8328         Rewritten EnableWindow() to behave more like Windows.
8330         * [windows/winpos.c]
8331         Rewritten WindowFromPoint() to also search child windows.
8333 Mon Apr  4 17:36:32 1994  Erik Bos (erik@trashcan.hacktic.nl)
8335         * [include/int21.h] -> [msdos.h]
8336         renamed.
8338         * [miscemu/int10.h] [miscemu/int25.h] [miscemu/int26.h] 
8339         new, added for int 10, 25 and 26.
8341         * [miscemu/ioports.c]
8342         new, added to allow win apps to use ioports.
8344         * [loader/signal.c]
8345         Added support for in, inb, out, outb instructions.
8347 ----------------------------------------------------------------------
8348 Sun Mar 27 13:40:25 1994  Bob Amstadt  (bob@pooh)
8350         * controls/menu.c (InsertMenu): Changed to use FindMenuItem().
8352 Sat Mar 26 21:23:55 1994  Bob Amstadt  (bob@pooh)
8354         * [windows/mdi.c]
8355         Window list properly updated.
8357         * [windows/message.c]
8358         Call WINPOS_ChildActivate() when mouse pressed.
8360         * [windows/nonclient.c]
8361         Use WINPOS_IsAnActiveWindow() instead of GetActiveWindow() in
8362         NC_HandleNCPaint().
8364         * [windows/winpos.c]
8365         Created functions WINPOS_IsAnActiveWindow() and WINPOS_ActivateChild()
8367 Thu Mar 24 14:49:17 1994  Bob Amstadt  (bob@pooh)
8369         * controls/menu.c (DeleteMenu): Changed to use FindMenuItem
8370         (DeleteMenu): Many bug fixes.
8372         * [controls/menu.c]
8373         Created function FindMenuItem().
8375 Thu Mar 24 14:17:24 1994  Bob Amstadt  (bob@pooh)
8377         * [windows/win.c]
8378         Removed incorrect MDI handling code from CreateWindowEx().
8380         * [controls/menu.c]
8381         MF_STRING items needed to allocate a private copy of string.
8383         * [controls/menu.c]
8384         Fixed buggy calls to GlobalFree().
8386         * [memory/global.c]
8387         Eliminated some redundant code with function call.
8389 Wed Mar 23 1994 Pentti Moilanen (pentti.moilanen@ntc.nokia.com)
8391         * [windows/timer.c]
8392         timer list pointers looped in InsertTimer
8394 Tue Mar 29 13:32:08 MET DST 1994  julliard@di.epfl.ch (Alexandre Julliard)
8396         * [misc/cursor.c]
8397         A few changes for desktop window support.
8399         * [misc/main.c]
8400         Added -depth option.
8402         * [misc/rect.c]
8403         Yet another bug fix in SubtractRect().
8405         * [objects/bitmap.c]
8406         Changes to use only one depth (specified with -depth)
8407         for color bitmaps.
8409         * [objects/brush.c]
8410         Added support for dithered solid brushes.
8412         * [objects/color.c]
8413         Use the same 20 system colors as in Windows.
8414         System palette initialisation now done in COLOR_InitPalette().
8415         Added support for a color mapping table to map logical color
8416         indexes to X colormap entries.
8417         Implemented GetNearestColor() and RealizeDefaultPalette().
8419         * [objects/dib.c]
8420         Added support for color mapping table.
8422         * [objects/dither.c]  (New file)
8423         Implemented solid color dithering.
8425         * [objects/palette.c]
8426         Implemented GetSystemPaletteEntries() and SelectPalette().
8428         * [windows/class.c]
8429         Make a copy of the menu name in RegisterClass().
8431         * [windows/dc.c]
8432         Fixed device caps when using a desktop window.
8433         Added support for the color mapping table in DCs.
8435         * [windows/event.c]
8436         Added ConfigureNotify handler on desktop window.
8438         * [windows/message.c]
8439         Removed call to XTranslateCoordinates() on every mouse motion
8440         New function MSG_Synchronize() to synchronize with the X server.
8442         * [windows/syscolor.c]
8443         Rewritten SYSCOLOR_Init() to read the system colors from WIN.INI.
8445         * [windows/winpos.c]
8446         Added synchronization on window mapping. Solves the double redraw
8447         problem when starting Solitaire.
8449 Mar 27, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8451         * [control/menu.c]      * [windows/defwnd.c]
8452         Make keyboard navigation working with menubar,
8453         but temporarely inserted a bug in menubar mouse handling ... :-((
8454         (it will be fix next week !)
8456         * [windows/defwnd.c]
8457         Connect VK_MENU to menubar navigation.
8459         * [loader/library.c]
8460         GetModuleHandle() return 'fictive 0xF000+ handles' for built-in DLLs.
8462 Sun Mar 20 22:32:13 1994 Erik Bos (erik@trashcan.hacktic.nl)
8464         * [misc/main.c]
8465         Added Copy(). Added a check for `-h' to show usage.
8467         * [misc/dos_fs.c]
8468         Fixed bug in FindFile(), to load directories as dlls.
8470         * [misc/dos_fs.c]
8471         Fixed ToUnix() and ToDos() again, as my previous patch
8472         didn't make it.
8474         * [misc/dos_fs.c] [miscemu/int21.c]
8475         Bug fixes, should be able to handle all winfile and progman int21
8476         requests now except for a few small things.
8478 Tue Mar 29 06:25:54 1994  crw@harris.mlb.semi.harris.com (Carl Williams)
8480         * [memory/heap.c]
8481         Implemented GetFreeSystemResources().
8483 ----------------------------------------------------------------------
8484 Mon Mar 21 17:32:25 1994  Bob Amstadt  (bob@pooh)
8486         * controls/menu.c (GetSubMenu): Function did not return correct value
8488         * [windows/mdi.c]
8489         Beginnings of menu handling.
8491 Thu Mar 10 11:32:06 1994  Stefan (SAM) Muenzel  (muenzel@tat.physik.uni-tuebingen.de)
8493         * [objects/font.c]
8494         if font.width equals zero use asterix instead.
8496 Mon Mar 21 17:23:37 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8498         * [objects/bitmap.c]
8499         Rewritten bitmap code to use exclusively X pixmaps; *much* faster.
8501         * [objects/brush.c]
8502         Some changes with pattern brushes because of the new bitmap code.
8504         * [objects/color.c]
8505         Added function COLOR_ToPhysical for better color mapping.
8507         * [objects/dib.c]
8508         Heavily optimized SetDIBits().
8510         * [windows/dc.c]
8511         Opimized SetDCState() and DC_SetupGC*() functions.
8512         Added stub for CreateIC().
8514 Mar 20, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8516         * [misc/message.c]
8517         Call SetFocus() after closing box to give back focus to previous owner.
8519         * [misc/files.c]
8520         Small bug fix in GetTempFilename() : replace a '\' to '\\'.
8522         * [control/scroll.c]
8523         Calls to BitBlt() replace by StretchBlt().
8525         * [control/menu.c]
8526         Call SetFocus() to previous owner after closing Popups. 
8527         Fill stub DeleteMenu().
8529         * [control/listbox.c]
8530         * [control/combo.c]
8531         Use SetFocus() in WM_LBUTTONDOWN.
8532         Close ComboBox List upon WM_KILLFOCUS.
8533         Early development of WM_MEASUREITEM mecanism.
8535         * [windows/defwnd.c]
8536         Early development of WM_MEASUREITEM mecanism.
8538 Tue Mar 22 10:44:57 1994  Miguel de Icaza  (miguel@xochitl)
8540         * [misc/atom.c]
8541         Fixed sintaxis problem when building the library.
8543 ----------------------------------------------------------------------
8544 Tue Mar 15 13:11:56 1994  Bob Amstadt  (bob@pooh)
8546         * [include/windows.h]
8547         Added message types and structures for MDI
8549         * [include/mdi.h]
8550         Created internal structures for handling MDI
8552         * [windows/mdi.c]
8553         Began creating MDI support
8555 Thu Mar 10 16:51:46 1994  Bob Amstadt  (bob@pooh)
8557         * [loader/wine.c] [include/wine.h]
8558         Added new field to "struct w_files" to hold the "name table"
8559         resource for Windows 3.0 programs
8561         * [loader/resource.c]
8562         Added code to handle programs with a "name table" resource.
8563         LoadResourceByName() modified to check for the existence of
8564         this resource.
8566 Mon Mar 14 22:31:42 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8568         * [objects/color.c]
8569         Added installing the private colormap on the desktop window.
8571         * [windows/event.c]
8572         Cleaned up focus event handling (see focus.c).
8573         Use GetFocus() to direct key events to the correct window.
8575         * [windows/focus.c]
8576         Rewritten SetFocus() to:
8577         - only set X focus on top-level windows
8578         - send WM_SETFOCUS and WM_KILLFOCUS messages (was done in event.c)
8579         - prevent setting focus to disabled windows
8580         - install private colormap so -privatemap option works again
8582         * [windows/message.c] [windows/timer.c]
8583         Changed timer management to no longer use PostMessage(), but
8584         to generate timer messages on the fly. Also fixed a related bug
8585         in GetMessage() which could cause busy-waiting.
8587         * [windows/win.c]
8588         Only select focus events on top-level windows.
8590         * [windows/winpos.c]
8591         Added some sanity checks for desktop window.
8593 Fri Mar  4 20:42:01 1994  Erik Bos (erik@trashcan.hacktic.nl)
8595         * [misc/dos_fs.c]
8596         bug fixes in ToUnix(), WinIniFileName(), GetUnixFileName(). 
8597         Support for tilde symbol added for rootdirectories in [drives]
8598         section of wine's configfile.
8600         * [misc/file.c]
8601         hread(), hwrite() added.
8603         * [misc/main.c]
8604         hmemcpy() added.
8606         * [if1632/stress.spec] [include/stress.h] [misc/stress.c]
8607         Added STRESS.DLL, an useless dll used to stress a windows system.
8609         * [*/*]
8610         Added missing #includes, fixed prototypes for prototype checking.
8612         * [include/prototypes.h]
8614         Added prototypes for loader/*c, if1632/*c.
8616 ----------------------------------------------------------------------
8617 Tue Mar  8 09:54:34 1994  Bob Amstadt  (bob@pooh)
8619         * [Configure]
8620         Added reminder to set WINEPATH, if it is not set.
8622         * [Imakefile]
8623         Removed #elif's
8625         * [controls/button.c]
8626         Added BN_CLICKED notification for owner-draw buttons.
8628         * [if1632/kernel.spec] [memory/heap.c]
8629         Changed Local* functions to WIN16_Local* to prevent unconcious use
8630         of these functions.
8632         * [if1632/relay.c]
8633         Push old Stack16Frame on stack before setting.
8635         * [include/atom.h] [misc/atom.c] [include/heap.h] [memory/local.c]
8636         Added multiple local heap handling in Atom* functions.
8638         * [include/regfunc.h] [miscemu/int21.c]
8639         Rewrote DOS3Call() use context frame that is already on the stack.
8641         * [misc/profile.c]
8642         Fixed to allow leading ";" to mark comments.
8644         * [misc/spy.c]
8645         Fixed bugs and added support for "include" and "exclude" filters.
8647         * [misc/user.c]
8648         Rearranged calls in InitApp().
8650         * [misc/font.c]
8651         Fixed font handling to create system fonts, if they are used.
8653         * [windows/dc.c]
8654         If text drawn on window with no font specified, then default the
8655         font to the system font.
8657 Mon Mar  7 20:32:09 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8659         * [controls/desktop.c]
8660         Added handling of WM_NCCREATE and WM_ERASEBKGND functions.
8661         Implemented SetDeskPattern().
8663         * [misc/main.c]
8664         Added -desktop option to get a large desktop window with
8665         everything inside it.
8666         Added -name option.
8668         * [misc/rect.c]
8669         Bug fix in SubtractRect().
8671         * [objects/*.c]
8672         Replaced the DefaultRootWindow() macro by the rootWindow variable.
8674         * [windows/event.c] [windows/message.c]
8675           [windows/nonclient.c] [windows/win.c]
8676         A few changes to accomodate the new desktop window.
8678  Tue Mar  8 11:13:03 1994  Miguel de Icaza  (miguel@xochitl.nuclecu.unam.mx)
8680         * [toolkit/arch.c] --New file-- 
8681         Routines for converting little endian data structures to
8682         big-endian data structures, currently only BITMAP structures are 
8683         converted.
8685         * [misc/atom.c]
8686         When used as part of the WineLib, the code is much simpler.
8687         Doesn't depend on alignement.
8689         * [loader/wine.c]
8690         Ifdefed Emulator dependent code if compiling WineLib.
8692         * [loader/resource.c]
8693         Moved misc/resource.c to loader/resource.c.
8695         * [loader/dump.c,ldt.c,ldtlib.c,library,c,selector.c,signal.c]
8696         Ifdefed whole code if compiling WINELIB.
8698         * [include/winsock.h]
8699         Added compilation define to allow compilation on SunOS.
8701         * [include/wine.h]
8702         Removed load_typeinfo and load_nameinfo prototypes, they belong
8703         to neexe.h
8705         * [include/neexe.h]
8706         Added load_typeinfo and load_nameinfo prototypes.
8708         * [include/arch.h]
8709         Fixed some bugs in the conversion routines.
8710         Added macros for Bitmap loading.
8712 Tue Mar  8 12:52:05 1994  crw@maniac.mlb.semi.harris.com (Carl Williams)
8713         
8714         * [if1632/kernel.spec] [memory/global.c]
8715         Implemented GetFreeSpace()
8717         * [if1632/user.spec] [loader/resource.c]
8718         Implemented CreateIcon()
8720 ----------------------------------------------------------------------
8721 Tue Mar  1 11:30:21 1994  Bob Amstadt  (bob@pooh)
8723         * [Configure] [*/Imakefile]
8724         Created configure script to handle different types of Wine builds.
8726         * [Configure] [tools/build.c] [if1632/Imakefile] [Wine.tmpl]
8727         Added ability to compile Wine on systems with 14-char filename limit.
8729         * [if1632/relay.c] [include/options.h] [misc/main.c]
8730         Added -relaydbg option to command line if DEBUG_RELAY is defined.
8732         * [loader/selector.c]
8733         Fixed bug in GetEntryDLLName() that caused Wine to seg fault.
8735         * [memory/heap.c]
8736         Fixed LocalInit() to work correctly.
8738         * [misc/user.c]
8739         Added code to call loaded DLLs' initialization routines.
8741 Tue Mar  1 01:01:17 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8743         * [windows/dce.c]
8744         Added clipping of child windows by their parent's client area.
8746         * [windows/nonclient.c]
8747         Bug fix in NC_DoNCPaint().
8749         * [windows/painting.c]
8750         Bug fix in RedrawWindow().
8752 Feb 27, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8754         * [mem/atom.c]
8755         Bug fix again in ATOM_DeleteAtom() : 
8756                 change LocalFree() by USER_HEAP_FREE().
8757         (Previous patch done Feb 13th had been lost)
8759         * [controls/scroll.c]
8760         Move bitmaps loading in AllocScrollBar() instead of in WM_CREATE.
8762         * [windows/class.c] (sorry Alex ...)
8763         There was no bug there "in RegisterClass() : 
8764                 WNDCLASS->lpszClassName was reset to NULL."
8765                               ^^^^^
8767         * [misc/clipboard.c]    --- New File ---
8768         New function EnumClipboardFormats().
8769         New function OpenClipboard().
8770         New function CloseClipboard().
8771         New function EmptyClipboard().
8772         New function GetClipboardOwner().
8773         New function GetClipboardViewer().
8774         New function CountClipboardFormats().
8775         New function IsClipboardFormatAvailable().
8776         New function OpenClipboard().
8777         New function GetClipboardData().
8778         New function SetClipboardViewer().
8779         New function EnumClipboardFormats().
8780         New function RegisterClipboardFormat().
8781         New function ChangeClipboardChain().
8782         New function SetClipboardData().
8783         New function GetOpenClipboardWindow().
8784         New function GetPriorityClipboardFormat().
8785         New function GetClipboardFormatName().
8787 Tue Mar  1 20:15:45 1994  Erik Bos <erik@trashcan.hacktic.nl>
8789         * [misc/comm.c]
8790         bugfix in OpenComm().
8792 ----------------------------------------------------------------------
8793 Tue Feb 22 18:04:02 1994  Jeffrey Hsu <hsu@freefall.cdrom.com>
8795         * [include/winsock.h]
8796         The sockproto struct is already defined in <sys/socket.h>
8798         * [misc/winsock.c]
8799         Need to include <netinet/in.h> for struct in-addr.
8800         Use sys_errlist[] instead of strerror[].
8802         *[toolkit/heap.c]
8803         ANSI C specifies that the malloc functions are defined in stdlib.h,
8804           so we don't need to include malloc.h.
8806         *[loader/ldtlib.c]
8807         Print informative error message about probable cause of i386_set_ldt()
8808           failure and then exit.
8810         *[Imakefile]
8811         For systems that don't use gmake by default, set the MAKE variable
8812           to gmake and propagate it on recursive makes.
8813         Take out -li386 for FreeBSD systems and define __FreeBSD__ so Wine
8814           can be built with the FreeBSD 1.0.2 compiler.
8816 Tue Feb 22 02:52:19 EST 1994    jrichard@cs.uml.edu (John Richardson)
8818         * [objects/bitblt.c]
8819         Added in three functions to do stretching and compression
8820         for WHITEONBLACK, BLACKONWHITE, and color copies.
8822 Tue Feb 22 15:01:31 EST 1994    jrichard@cs.uml.edu (John Richardson)
8824         * [windows/graphics.c]
8825         Added FloodFill and FloodFill_rec.  FloodFill_rec is pretty
8826         inefficent, but should suffice for now.
8828         * [include/windows.h]
8829         Changed the x,y paramaters for the FloodFill prototype 
8830         from ints to shorts
8832 Tue Feb 22 00:58:28 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8834         * [windows/widgets.c]
8835         Added desktop window class.
8837         * [windows/painting.c]
8838         Bug fix in RedrawWindow().
8839         Implemented ExcludeUpdateRgn().
8841         * [windows/win.c] [windows/winpos.c]
8842         Implemented desktop window.
8844         * [controls/desktop.c]
8845         Preliminary desktop window procedure.
8847 Feb 20, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8849         * [controls/menu.c]
8850         New function LoadMenuIndirect().
8851         New function GetMenuCheckMarkDimensions().
8853         * [if1632/user.spec]
8854         Entry for DefDlgProc().
8856         * [windows/class.c]
8857         Fix bug in RegisterClass() : 
8858                 WNDCLASS->lpszMenuName was reset to NULL.
8860         * [windows/win.c]
8861         In CreateWindowEx(), if hMenu == 0 then use 
8862                 wndclass->lpszMenuName to load Menu from resource;
8864 Mon Feb 21 22:38:28 1994 Erik Bos (erik@trashcan.hacktic.nl)
8866         * [loader/library.c] [loader/wine.c]
8867         Fixed runing DLL's as main executable problem.
8869         * [misc/dos_fs.c]
8870         Added wildcard support in DOS_readdir().
8872         * [misc/winsocket.c]
8873         Added proper error handling of BSD winsocket functions.
8875         * [miscemu/int21.c]
8876         KERNEL_DOS3Call renamed to DOS3Call and modified to use do_int21().
8878         * [main/main.c]
8879         Added functions for GetVersion, GetWinFlags and GetTimerResolution
8880         for libwine.a, SystemParametersInfo() partly implemented.
8882 Tue Feb 22 19:00:02 1994  Miguel de Icaza  (miguel@xochitl.nuclecu.unam.mx)
8884         * [toolkit/winmain.c]
8885         Added _WinMain function. Setups the library (calls USER_InitApp).
8887         * [toolkit/sup.c]
8888         Added load_mz_header, load_ne_header, load_type_info and
8889         load_name_info functions.
8891         * [toolkit/heap.c] 
8892         Code cleanup. 
8894         * [misc/user.c]
8895         Moved from loader/misc.c. I hope to put back all the loader
8896         functions in the ~loader subdirectory in the future. CUrrently is
8897         needed since it has USER_InitApp.
8899         * [misc/resource.c]
8900         Since WineLib will probably need DLLs (currently it needs
8901         Sysres.dll). WineLib will be using much code of the loader again.
8902         So I removed some ifdefs that were used by WineLib.
8904         Added load_typeinfo and load_nameinfo (and the corresponding
8905         functions in [toolkit/sup.c]
8907         Added integer convertion functions in the needed places.
8909         Added very ugly patch (includes wine.c). In the next release I
8910         plan to move back all the loader routines to ~/loader. In the
8911         meantime I needed this patch. It doesn't affect any of the
8912         emulator code (its ifdefed for WineLib).
8914         * [misc/main.c]
8915         Cleaned up call to WinMain (now uses [toolkit/winmain.c]
8916         Ifdefed argument number checking when compiling the library.
8918         * [loader/wine.c]
8919         Modified to use load_(mz|ne)_header instead of doing a direct
8920         read.  When compiling the emulator it still uses the direct read
8921         for performance. 
8923         * [include/wine.h]
8924         Prototypes for loading routines.
8926         * [include/class.h]
8927         Added WINE_PACKED macro instead of __attribute__ ((packed))
8929         * [include/arch.h]
8930         Macros for converting integers (Little endian to big-endian).
8931         Needed in the Sun to allow loading of DLL files.
8933 ----------------------------------------------------------------------
8934 Mon Feb 14 23:48:09 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
8936         * [windows/clipping.c]
8937         Moved everything into windows/painting.c and removed this file.
8939         * [windows/message.c]
8940         Removed calls to memmove() in MSG_RemoveMsg().
8942         * [windows/nonclient.c]
8943         Added WM_GETMINMAXINFO support for window resizing.
8945         * [windows/painting.c]
8946         Implemented RedrawWindow().
8948         * [windows/scroll.c]
8949         Bug fix in ScrollWindowEx().
8951         * [windows/win.c]
8952         Moved UpdateWindow() to windows/painting.c.
8954 Fri Feb 11 12:41:28 1994  Erik Bos (erik@trashcan.hacktic.nl)
8955         
8956         * [loader/wine.c] [misc/dos_fs.c]
8957         getenv() eq NULL bugfixes.
8959         * [misc/comm.c]
8960         cfmakeraw changed for SunOS.
8962 Feb 13, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
8964         * [mem/atom.c]
8965         Bug fix in ATOM_DeleteAtom() : 
8966                 change LocalFree() by USER_HEAP_FREE().
8968         * [misc/message.c]
8969         New function FatalAppExit().
8971         * [objects/font.c]
8972         New empty stub SetMapperFlags().
8974         * [controls/menu.c]
8975         Better CheckMark & other bitmaps placement.
8977         * [windows/graphics.c]
8978         New function RoundRect() : calc.exe now working...
8980 Tue Feb 15 14:29:37 1994  John Richardson
8982         * [objects/bitblt.c]
8983         Fixed StretchBlt so it works quicker and faster.  It still doesn't
8984         use the StretchMode bits for bitmap compression, but that will
8985         come soon.
8987 Mon Feb 14 13:21:04 1994  Miguel de Icaza  (miguel@roxanne.nuclecu.unam.mx)
8989         * [include/windows.h,dialog.h,gdi.h]
8990         Changed __atribute__ ((packed)) for WINE_PACKED. 
8991         When compiling the library this is defined as nothing. This gets
8992         rid with all the problems compiling under SunOS. Also 
8994         * [windows/utility.c]
8995         Added DebugPrintString.
8997         * [toolkit/sup.c]
8998         Added hSysRes = 1 definition to resolve externals.
8999         Added CallLineDDAProc function (toolkit version).
9000         Added toy, and hi ineficient memmove until code in message.c get
9001         rewritten.
9003         * [objects/gdiobj.c]
9004         Ifdefed linux/emulator-dependent code to allow compilation of
9005         WineLib.
9007         * [misc/winsocket.c]
9008         Added ifdef to allow compilation under SunOS.
9010         * [misc/resource.c]
9011         When compiling the library, the resource file is expected to be in
9012         a file called $argv[0].Res. Also the information of the resource
9013         is expected to be at offset 0 of the .Res file.
9015         * [misc/main.c]
9016         Call WinMain with arguments if compiling WineLib.
9017         Call shutdown functions (Comm_DeInit, DOS_DeInitFS).
9018         Call sync_profiles to preserve changes to .INI files.
9020         * [misc/comm.c,dos_fs.c]
9021         removed call to atexit(Comm_DeInit)
9022         removed call to atexit(DOS_DeInitFS)
9023         Shutdown functions are now called from the return of WinMain
9025         * removed memorylib subdirectory
9027         * moved memory/atom.c    to misc/atom.c
9028           moved memorylib/heap.c to toolkit/heap.c
9030         * [loader/wine.c]
9031         Moved DebugPrintString to windows/utility.c
9033         * [include/winsock.h]
9034         Define SO_DONTLINGER only if it has not been previously defined.
9036         * [include/windows.h]
9037         added definition for DLGPROC.
9038         added definition for LMEM_WINE_ALIGN and other LMEM_* constants.
9039         When compiling WineLib WNDPROC is defined with all the parameters
9040         to avoid compilation problems.
9042         * [include/user.h]
9043         When compiling WineLib USER_HEAP_(ALLOC|REALLOC|ADDR|FREE) the
9044         calls are translated to the library allocation routines.
9046         * [include/gdi.h,user.h]
9047         When compiling WineLib GDI_HEAP_(ALLOC|ADDR|FREE) the calls are
9048         translated to the library allocation routines.
9050         * [include/atom.h]
9051         Defined LocalAlign. When compiling the emulator it's translated as
9052         a call to LocalAlloc (the original code), when compiling WineLib
9053         as a call to LocalAlloc with a WINE-flag called LMEM_WINE_ALIGN
9054         (atom.c needs aligned data on a 4 byte boundary).
9056         * [misc/file.c]
9057         Renamed KERNEL_* functions and fixed prototypes.
9059         * [if1632/kernel.spec]
9060         Renamed KERNEL_* functions in order to be used by applications
9061         using Wine as a library (OpeFile, _lclose, _lread, _lcreate,
9062         _llseek, _lopen, _lwrite).
9064         * [Makefile]
9065         Create library instead of executable when building target
9066         libwine.a 
9068 ----------------------------------------------------------------------
9069 Tue Feb  8 13:52:11 1994  Miguel de Icaza  (miguel@roxanne)
9071         * [Makefiles]
9072         Use $(CC) instead of cc.
9073         Added libwine target.
9075         * [include/prototypes]
9076         #ifdefed section for WineLib
9078         * moved loader/cursor.c   to misc/cursor.c
9079           moved loader/resource.c to misc/resource.c
9080           moved misc/emulate.c    to miscemu/emulate.c
9081           moved misc/int1a.c      to miscemu/int1a.c
9082           moved misc/int21.c      to miscemu/int21.c
9083           moved misc/kernel.c     to miscemu/kernel.c
9084           moved misc/user.c       to miscemu/user.c
9086         * [memorylib/heap.c]
9087         Heap management for WineLib
9089         * [misc/comm.c]
9090         Modified to allow compilation under SunOS (#include errno, SunOS
9091         doesn't have atexit ()).
9093         * [misc/dos_fs.c]
9094         Modified to allow compilation under SunOS (#include vfs.h)
9096         * [misc/file.c]
9097         Modified to allow compilation under SunOS (OPEN_MAX constant,
9098         #include unistd.h)
9100         * [objects/palette.c]
9101         Modified to allow compilation under SunOS (#include limits)
9103         * [toolkit/sup.c]
9104         WineLib version of CallWindowProc.
9106         * [windows/event.c]
9107         Typedef XPointer under X11R4 (OpenWindows).
9109         * [windows/win.c]
9110         When compiling WineLib, use direct callbacks instead of the
9111         windows supplied callbacks.
9113 Mon Feb  7 22:37:34 MET 1994  julliard@di.epfl.ch (Alexandre Julliard)
9115         * [loader/cursor.c]
9116         New function CURSOR_SetWinCursor(), for internal use, to set
9117         the cursor of a specific window more reliably than with SetCursor().
9119         * [windows/nonclient.c]
9120         Better window management. Moving and resizing from the system
9121         menu should work now.
9122         Added scroll-bar mouse tracking.
9124         * [windows/win.c]
9125         Moved scroll-bar creation and destruction to defwnd.c.
9127 Feb 5, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9129         * [windows/nonclient.c]
9130         Call to StdDrawMenuBar() during NC's drawing.
9131         New NC_TrackMouseMenuBar() function which call 
9132                 MenuButtonDown(), MenuButtonUp() & MenuMouseMove().
9134         * [controls/menu.c]
9135         New ChangeMenu() function.
9136         Remove permanently old Xt menu code.
9137         Make common functions MenuButtonDown(), MenuButtonUp()
9138                 & MenuMouseMove() for both popups & menubar.
9139         
9140         * [controls/combo.c]
9141         Paint OBM_COMBO directly in combo client.
9143         * [controls/listbox.c]
9144         Fix bug in multicolumns calculations.
9146         * [controls/Makefile]
9147         Remove rules for old file 'caption.c'.
9149         * [misc/kernel.c]
9150         Remove empty stub GetModuleFileName().
9152         * [loader/library.c]
9153         New GetModuleHandle() function.
9154         New GetModuleUsage() function.
9155         New GetModuleFileName() function.
9157         * [loader/resource.c]
9158         Try to find the bug a missing menu loading ... Not found yet !
9160         * [windows/win.c]
9161         Remove old menubar creation.
9163 Thu Feb  3 22:30:11 1994  Erik Bos (erik@trashcan.hacktic.nl)
9165         * [misc/winsocket.c]
9166         More functions added.
9168         * [if1632/winsock.spec] [misc/winsocket.c]
9169         Added John Brezak's winsock.dll stuff.
9171 ----------------------------------------------------------------------
9172 Tue Feb  1 21:14:47 1994  Bob Amstadt  (bob@pooh)
9174         * [loader/selector.c]
9175         Added function CreateNewSegments().  Modified IPCCopySelector
9176         to allow aliasing to any arbitrary memory space.
9178         * [memory/global.c]
9179         Fixed potential bug in GlobalGetFreeSegments().
9181         * [memory/linear.c]
9182         Created functions GlobalLinearLock() and GlobalLinearUnlock().
9184 Tue Feb  1 05:51:43 1994  julliard@di.epfl.ch (Alexandre Julliard)
9186         * [controls/widgets.c]
9187         Removed CAPTION window class.
9189         * [loader/cursor.c]
9190         Bug fix in LoadCursor(): don't allocate memory every time for
9191         built-in cursors.
9193         * [windows/clipping.c]
9194         Invalidate child windows in InvalidateRgn().
9196         * [windows/defwnd.c]
9197         Added repaint of the caption when changing window text.
9199         * [windows/event.c]
9200         Modified SetCapture() to allow keyboard events while capturing.
9202         * [windows/message.c]
9203         New function MSG_GetHardwareMessage(), to do mouse tracking
9204         without returning control to the Windows program.
9206         * [windows/nonclient.c]
9207         A couple of changes in frame drawing for DLGMODALFRAME windows.
9208         Rewritten window moving code, to use MSG_GetHardwareMessage()
9209         instead of non-client mouse events (this is the way Windows
9210         does it), and to send WM_ENTERSIZEMOVE messages.
9211         Removed WM_NCBUTTONUP and WM_NCMOUSEMOVE handlers.
9213         * [windows/win.c]
9214         Allocate temporary structures on the USER heap instead of
9215         using GlobalAlloc().
9217         * [windows/winpos.c]
9218         Added function WINPOS_GetMinMaxInfo() to get sizing informations.
9220 Jan 31, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9222         * [windows/nonclient.c]
9223         Call to StdDrawScrollBar() during NC's drawing.
9224         Call to NC_ScrollBarButtonDown() on NC mouse events WM_LBUTTONDOWN.
9225         Call to NC_ScrollBarButtonUp() on NC mouse events WM_LBUTTONUP.
9226         Call to NC_ScrollBarMouseMove() on NC mouse events WM_MOUSEMOVE.
9228         * [controls/menu.c]
9229         New GetSubMenu() function.
9230         Move GetMenu() & SetMenu() functions from 'windows/win.c'.
9232         * [controls/listbox.c]
9233         Start changes to satisfy recent changes in scrollbars/windows.
9235         * [loader/resource.c]
9236         Put some code in LoadAccelerators() stub.
9237         New TranslateAccelerator() function.
9239         * [windows/win.c]
9240         Remove GetMenu() & SetMenu() functions.
9241         Call to NC_CreateScrollBars() if required by CreateWindow().
9243 ----------------------------------------------------------------------
9244 Mon Jan 24 10:40:10 EST 1994 John Richardson (jrichard@cs.uml.edu)
9246         * [window/win.c]
9247         Added functions EnumWindows, EnumChildWindows, and helper
9248         WIN_EnumChildWin.  EnumWindows won't list all wine windows
9249         because GetDesktopWindow isn't complete.  However, the code
9250         is in place for it to work correctly and only needs 
9251         GetDesktopWindow to do so.  
9253 Tue Jan 25 05:51:47 1994  julliard@di.epfl.ch (Alexandre Julliard)
9255         * [windows/defwnd.c]
9256         Added handling of activation messages (WM_ACTIVATE,
9257         WM_NCACTIVATE, WM_MOUSEACTIVATE)
9259         * [windows/event.c]
9260         De-activate the window when losing input focus.
9262         * [windows/focus.c]
9263         Bug fix in SetFocus().
9265         * [windows/message.c]
9266         Added activation of the window on mouse-clicks.
9268         * [windows/nonclient.c]
9269         Changed non-client area painting to use the correct colors
9270         depending upon the activation state.
9271         Added WM_NCACTIVATE message handling.
9272         Fixed a couple of bugs in window moving and resizing.
9274         * [windows/winpos.c]
9275         Implemented Get/SetActiveWindow().
9276         Implemented SWP_NOACTIVATE flag in SetWindowPos().
9278 Jan 17, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9280         * [misc/message.c]
9281         MessageBox has a CaptionBar for his title except for
9282                 MB_SYSTEMMODAL with MB_ICONHAND.
9284         * [windows/nonclient.c]
9285         Call to NC_TrackSysMenu on SysMenu button mouse click.
9287         * [windows/defwnd.c]
9288         Call to NC_TrackSysMenu on Alt key (VK_MENU).
9290         * [controls/menu.c]
9291         New GetSystemMenu() function.
9292         New CopySystemMenu() internal function.
9293         New NC_TrackSysMenu() internal function.
9295         * [include/windows.h]
9296         New WM_INITMENU, WM_INITMENUPOPUP, WM_MENUSELECT & WM_MENUCHAR defines.
9298 ----------------------------------------------------------------------
9299 Thu Jan 13 11:45:13 1994  John Richardson <jrichard@cs.uml.edu>
9301         * [window/win.c]
9302         Added functions EnableWindow, IsWindowEnabled, and helper 
9303         WIN_SetSensitive.
9304         
9305         * [window/event.c]
9306         Added checks for WS_DISABLED windows in EVENT_key, EVENT_MotionNotify,
9307         EVENT_ButtonPress, EVENT_ButtonRelease, EVENT_ConfigureNotify,
9308         EVENT_FocusIn, EVENT_FocusOut, and EVENT_EnterNotify.  Key and 
9309         button presses beep for a disabled window.  
9310         If anyone finds better places for these checks, please tell me.
9312 Jan 17, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9314         * [misc/message.c]
9315         Cleanup on buttons answer value returned.
9317         * [control/combo.c]
9318         Now use OBM_COMBO bitmap dropdown button.
9320 Mon Jan 17 21:56:45 1994  Erik Bos (erik@trashcan.hacktic.nl)
9322         * [misc/comm/c]
9323         A few bugfixes.
9325 Tue Jan 18 06:36:48 1994  julliard@di.epfl.ch (Alexandre Julliard)
9327         * [loader/cursor.c]
9328         Added X cursor for IDC_SIZENS and IDC_SIZEWE.
9330         * [include/options.h] [misc/main.c]  (New files)
9331         Rewrote main() function to get rid of Xt application context,
9332         and added command-line option parsing.
9334         * [objects/color.c]
9335         Use of a private map now configurable with command-line option.
9337         * [windows/defwnd.c]
9338         Added WM_SYSCOMMAND handling, and better WM_SETCURSOR handling.
9340         * [windows/event.c]
9341         Removed ConfigureNotify event handler (no longer needed).
9343         * [windows/message.c]
9344         Send WM_SETCURSOR message on mouse events.
9346         * [windows/nonclient.c]
9347         Use OEM bitmaps for the drawing of the non-client area.
9348         Added caption bar buttons handling, and moving and resizing of
9349         the window via the window frame (bypassing the window manager).
9351         * [windows/painting.c]
9352         Bug fix in BeginPaint().
9354         * [windows/win.c]
9355         Set the override_redirect flag for windows (to bypass window
9356         manager).
9358         * [windows/winpos.c]
9359         Implemented WindowFromPoint(), ChildWindowFromPoint(),
9360         BringWindowToTop(), Get/SetInternalWindowPos(),
9361         Get/SetWindowPlacement().
9363 Mon Jan 17 20:48:24 1994  Bob Amstadt  (bob@pooh)
9365         * [memory/heap.c]
9366         Added support for multiple local heaps.
9368 ----------------------------------------------------------------------
9369 Tue Jan  4 13:01:33 1994  David Metcalfe <david@prism.demon.co.uk>
9371         * [window/caret.c]
9372         Modified code to use system timer.
9374 Jan 9, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9376         * [windows/win.c]
9377         Windows create if required new XLIB MenuBar & CaptionBar.
9379         * [windows/defwnd.c]
9380         WM_CALCSIZE Move & Resize caption, menubar & scrollbars.
9381         (I'm not sure it's the good place for it, but it work...)
9383         * [loader/resource.c]
9384         optimize in FindResourceByNumber, make lseek() if next type ...
9386         * [controls/scroll.c]
9387         scrollbar buttons are now using system resources bitmaps.
9389         * [controls/caption.c] - new file ...
9390         captionbar showing title, close button with SysMenu,
9391         and other buttons using system resources bitmaps.
9393         * [controls/menu.c]
9394         New functions: SetMenuItemBitmaps() with 'glues',
9395         Make new version of LoadMenu() & ParseMenu(),
9396         ( put #define USE_POPUPMENU ).
9397         Implementation of MenuBar functions.
9398         
9399         * [sysres.dll]
9400         New bitmaps for system such OBM_CLOSE, OBM_MINIMIZE, OBM_UPARROWI.
9401         New SYSMENU menu, it don't work yet ! :-((
9403 Tue Jan 11 05:27:45 1994  julliard@di.epfl.ch (Alexandre Julliard
9405         * [memory/atom.c]
9406         Fixed a bug that could cause atoms to be case-sensitive.
9408         * [misc/rect.c]
9409         Bug fix in SubtractRect().
9411         * [objects/clipping.c]
9412         Bug fix when setting the clip mask to an empty region.
9414         * [windows/dce.c]
9415         Bug fix in ReleaseDC().
9417         * [windows/dialog.c]
9418         Call AdjustWindowRectEx() before creating the dialog window.
9419         Added support for DS_MODALFRAME style.
9421         * [windows/event.c]
9422         Cleaned up event handling and removed old Xt stuff.
9423         Moved double-click handling to windows/message.c
9425         * [windows/focus.c]
9426         Bug fix: only set the X focus when the window is viewable.
9428         * [windows/graphics.c]
9429         Rewritten DrawReliefRect() to use brush instead of pen, and
9430         to use the system colors.
9432         * [windows/message.c]
9433         Implemented WM_NCHITTEST message sending, and non-client
9434         mouse messages.
9435         Cleaned up double-click handling, and removed the Xt code.
9437         * [windows/nonclient.c]  (New file)
9438         Implemented AdjustWindowRect().
9439         Implemented WM_NCCALCSIZE, WM_NCHITTEST and WM_NCPAINT handling.
9441         * [windows/painting.c]
9442         Added sending of the WM_NCPAINT message in BeginPaint().
9444         * [windows/sysmetrics.c] [include/sysmetrics.h]  (New files)
9445         Implemented system metrics.
9447         * [windows/win.c]
9448         Bug fix in setting the parent and owner in CreateWindow().
9449         Removed the Xt code.
9451         * [windows/winpos.c]
9452         Added sending of the WM_NCPAINT message in SetWindowPos().
9453         Removed the Xt code.
9455 Sun Jan  2 12:38:53 1994  David Metcalfe <david@prism.demon.co.uk>
9457         * [windows/class.c]
9458         Implemented GetClassName and GetClassInfo.
9460         * [windows/caret.c]
9461         Various improvements to text caret code.
9463 Fri Dec 31 15:22:22 1993  John Brezak <brezak@apollo.hp.com>
9465         * [misc/comm.c]
9466         Patches to work with NetBSD.
9468 Thu Dec 30 12:11:55 1993  John Richardson <jrichard@cs.uml.edu>
9470         * [objects/bitblt.c] Added StretchBlt().
9472 Tue Jan  4 05:22:07 1994  julliard@di.epfl.ch (Alexandre Julliard)
9474         * [misc/user.c]
9475         Added creation of system message queue.
9477         * [objects/bitmap.c] [objects/dcvalues.c] [windows/dc.c]
9478         Added DC size fields into DC structure.         
9480         * [objects/clipping.c]
9481         Bug fix in CLIPPING_IntersectRect().
9483         * [windows/class.c]
9484         Allocate a DCE instead of a DC for CS_CLASSDC classes.
9486         * [windows/clipping.c]
9487         Fixed GetUpdateRect() and GetUpdateRgn() to clip to the client area.
9489         * [windows/dce.c]
9490         Implemented GetDCEx() and GetWindowDC().
9492         * [windows/defwnd.c]
9493         Implemented WM_WINDOWPOSCHANGED handling.
9495         * [windows/event.c]
9496         Preliminary support for Xlib event handling instead of Xt callbacks.
9497         Changed MSG_AddMsg() calls to hardware_event() or PostMessage().
9499         * [windows/message.c]
9500         Preliminary support for multiple message queues.
9501         Implemented hardware_event() to store messages into the system queue.
9502         Implemented Get/SetTaskQueue().
9503         Better WM_PAINT and WM_TIMER handling.
9504         Changes to use Xlib instead of Xt for events.
9506         * [windows/painting.c]
9507         Use GetDCEx() to retrieve the DC, to get a correct visible region.
9509         * [windows/timer.c]
9510         Moved the timer procedure callback into DispatchMessage().
9511         Changed implementation to get rid of Xt timeouts.  Timer checking
9512         is now done inside GetMessage().
9514         * [windows/win.c]
9515         Allocate a DCE instead of a DC for CS_OWNDC windows.
9516         Replaced Xt calls with Xlib calls.
9517         Moved window positioning functions into windows/winpos.c
9519         * [windows/winpos.c]  (New file)
9520         Rewritten most of the window positioning functions.
9521         Implemented SetWindowPos() and MapWindowPoints().
9523 Jan 3, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9525         * [if1632/user.spec]
9526         Bad arguments description for function SetDlgItemText.
9528         * [objects/text.c]
9529         Function DrawText now handle DT_CALCRECT request.
9531         * [misc/message.c]
9532         Message boxes now use DrawText with DT_CALCRECT.
9534         * [windows/graphics.c]
9535         Bug fix in function FrameRect, (it was using PEN instead of BRUSH).
9537         * [windows/win.c]
9538         Bug fix for flags in function ShowWindow.
9539         More accurate WM_SIZE generated by function ShowWindow.
9541         * [controls/listbox.c]
9542         More code for LBS_MULTIPLESEL.
9543         More code for LBS_MULTICOLUMN.
9545         * [include/windows.h]
9546         Bad define for MF_SEPARATOR.
9548         * [controls/menu.c]
9549         New functions: PopMenuWndProc() with 'glues',
9550         CreatePopupMenu(), AppendMenu(), InsertMenu(), RemoveMenu(), 
9551         DeleteMenu(), ModifyMenu(), TrackPopupMenu().
9552         Code in stubs: CreateMenu(), DestroyMenu(). 
9554 Sat Jan  1 10:22:43 1994  Bob Amstadt  (bob@pooh)
9556         * loader/wine.c: Added support for relocation types 5 and 6.
9558 Mon Dec 27 11:06:03 1993  Erik Bos (erik@trashcan.hacktic.nl)
9560         * [misc/comm.c]
9561         new functions: BuildCommDCB(), OpenComm(), CloseComm(),
9562         SetCommBreak(), ClearCommBreak(), EscapeCommFunction(), FlushComm(),
9563         GetCommError(), SetCommEventMask(), GetCommEventMask(),
9564         SetCommState(), GetCommState(), TransmitCommChar(), ReadComm(), 
9565         WriteComm().
9567 Wed Dec 22 13:00:15 1993  David Metcalfe <david@prism.demon.co.uk>
9569         * [windows/caret.c]
9570         Implemented text caret functions.
9572 Tue Dec 21 06:13:58 1993  julliard@di.epfl.ch (Alexandre Julliard)
9574         * [loader/wine.c]
9575         Bug fix in LoadImage().
9577         * [objects/bitblt.c] [objects/clipping.c] [objects/text.c]
9578           [windows/dc.c] [windows/dce.c] [windows/graphics.c]
9579         Modified graphics calls to take into account the DC origin.
9581         * [windows/defwnd.c]
9582         Added preliminary WM_NCCALCSIZE handling.
9584         * [windows/event.c]
9585         Send WM_NCCALCSIZE message on resize event.
9587         * [windows/win.c]
9588         Send WM_NCCALCSIZE message in CreateWindow().
9589         Realize widgets at creation time (should prevent problems with
9590         unrealized widgets).
9592 Dec 19, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9594         * [controls/static.c]
9595         Send mouse & keyboard message received to its parent.
9597         * [controls/scroll.c]
9598         Send keyboard message received to its parent.
9600         * [controls/listbox.c]
9601         Add Navigation keys .
9602         ListBox now use VSCROLL & HSCROLL instead of children.
9603         Alpha version of LBS_MULTIPLESEL.
9604         Alpha version of LBS_MULTICOLUMN.
9606         * [controls/combo.c]
9607         Add Navigation keys on closed ComboBox.
9608         Remove useless 'COMBOBOX_CreateComboBox' function.
9610 Mon Dec 19 20:39:34 1993  Erik Bos (erik@trashcan.hacktic.nl)
9612         * [loader/wine.
9613         LoadImage() modified to use FindFile().
9615         * [misc/file.c]
9616         SetErrorMode added
9618         * [misc/dos_fs.c]
9619         bug fixes.
9621 Dec 13, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9623         * [memory/global.c]
9624         bug fix in GlobalGetFreeSegment : good ptr in 'g_prev'.
9626         * [sysres.dll]
9627         preliminary version of a 'glass of wine' bitmap
9629         * [windows/event.c]
9630         New function 'GetCapture'.
9632         * [controls/scroll.c]
9633         Remove useless 'SCROLLBAR_CreateScrollBar' function.
9635         * [controls/listbox.c]
9636         Remove useless 'LISTBOX_CreateListBox' function.
9638 Mon Dec 13 13:51:00 1993  David Metcalfe <david@prism.demon.co.uk>
9640         * [objects/font.c]
9641         Corrected bugs in GetCharWidth().
9643         * [windows/event.c]
9644         Modified EVENT_key to send Windows virtual key codes for
9645         WM_KEYDOWN and WM_KEYUP messages, and a WM_CHAR message
9646         for printable characters.
9648 Wed Dec 08 19:20:00 1993  Karl Guenter Wuensch (hn324wu@unidui.uni-duisburg.de)
9650         * [windows/graphics.c]
9651         Added Polyline and Polygon
9653 Mon Dec 13 14:51:54 1993  Erik Bos (erik@trashcan.hacktic.nl)
9655         * [controls/listbox.c]
9656         ListBoxDirectory() modified to use dos_fs.c's functions to
9657         access files&|drives.
9659 Sat Dec 04 17:04:23 1993  Erik Bos (erik@trashcan.hacktic.nl)
9661         * [misc/dos_fs.c]
9662         Added FindFile() to search a file in a dos/unix style path.
9663         
9664         * [misc/file.c]
9665         New Win31 functions: OpenFile, _lcreate, _llseek, GetTempDrive,
9666         GetTempFileName, GetWindowsDirectory, GetSystemDirectory,
9667         GetDriveType.                      
9669         * [misc/int21.c]
9670         Modified.
9672 Wed Dec  1 16:20:45 1993  Miguel de Icaza  (miguel@roxanne.nuclecu.unam.mx)
9674         * [misc/profile.c]
9675         The Profile functions now return the correct values. They now
9676         implement all the features described in the SDK.
9678 Tue Nov 30 13:55:27 1993  Bob Amstadt  (bob at amscons)
9680         * [loader/selector.c]
9681         Rewrote selector aliasing routines to use System V IPC
9682         routine to alias memory segments.
9684 Nov 28, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9686         * [controls/listbox.c]
9687         More consistency in functions using wIndexes
9689         * [controls/scroll.c]
9690         New function : ShowScrollBar().
9692         * [loader/cursor.c] ... New file
9693         Move cursor functions from [loader/resource.c].
9694         New function : ClipCursor().
9695         New function : GetClipCursor().
9696         New function : CreateCursor().
9697         SetCursor() now working using gloabal variable 'winHasCursor'.
9699         *[object/palette.c]
9700         New stub only : SelectPalette().
9701         New stub only : RealizePalette().
9703         *[win/event.c]
9704         New function : EVENT_enter_notify(),
9705                 update 'winHasCursor' and send WM_SETCURSOR.
9707         *[win/defwnd.c]
9708         Add processing of WM_SETCURSOR message.
9710         *[win/win.c]
9711         New members in WND structure : hCursor, hWndVScroll & hWndHScroll. 
9712         CreateWindowEx() now create children for WM_HSCROLL & WM_VSCROLL.
9713         New function ClientToScreen().
9714         New function ScreenToClient().
9716 Mon Nov 25 18:25:40 1993  Erik Bos (erik@trashcan.hacktic.nl)
9718         * [files.h / regfunc.h / misc/dos.c]
9719         Removed.
9721         * [misc/dos_fs.c]
9722         Added support for loading dosdrive cfg from wine.ini.
9724         * [misc/int21.c]
9725         Modified.
9728 Wed Nov 24 11:37:33 1993  julliard@disuns2.epfl.ch (Alexandre Julliard)
9730         * [include/atom.h] [memory/atom.c]
9731         Implemented atoms.
9733         * [windows/class.c]
9734         Modified RegisterClass() to use atoms.
9735         Implemented CS_GLOBALCLASS style.
9737         * [windows/message.c]
9738         Implemented RegisterWindowMessage().
9740         * [loader/resource.c]
9741         Bug fix in LoadResource().
9743         * [windows/dialog.c]
9744         Modified CreateDialogParam() to use Find/LoadResource().
9746 Mon Nov 22 13:58:56 1993  David Metcalfe <david@prism.demon.co.uk>
9748         * [windows/scroll.c]
9749         Preliminary implementations of ScrollWindow, ScrollDC and
9750         ScrollWindowEx.
9752 Nov 21, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9754         * [controls/listbox.c]
9755         Optimization of redraw during 'Add' or 'Insert'.
9757         * [controls/scroll.c]
9758         Optimization of WM_PAINT during 'thumbtracking'.
9760         * [controls/button.c]
9761         Add of beta implement of 'BS_OWNERDRAW'
9763         * [controls/static.c]
9764         Style 'SS_ICON' new supported.
9766         * [misc/message.c]
9767         Begin of implemantation of MB_XXX styles.
9769         * [loader/resource.c]
9770         Function LoadIcon() : now prepare transparency Bitmap mask.
9771         Function LoadCursor() : now prepare a 'X pixmapcursor'.
9772         New function SetCursor() : not finished.
9773         New function ShowCursor() : not finished.
9774         New function AccessResource() : stub.
9776         * [obj/dib.c]
9777         Function DrawIcon(): deugging phase of icon transparency mask.
9779         * [loader/library.c]
9780         new file for news functions LoadLibrary() & FreeLibrary().
9782         * [sysres.dll]
9783         Resources only 16bits DLL for System Resources, icons, etc...
9785 Sun Nov 14 14:39:06 1993  julliard@di.epfl.ch (Alexandre Julliard)
9787         * [include/dialog.h] [windows/dialog.c]
9788         Simplified dialog template parsing.
9789         Implemented DialogBoxIndirect().
9791         * [windows/win.c]
9792         Fixed bug in CreateWindow() when aborting window creation.
9793         Modified UpdateWindow() to only update visible windows.
9794         Implemented IsWindow().
9796 Nov 14, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9798         * [controls/listbox.c]
9799         Listbox control window : new messages.
9801         * [controls/combo.c]
9802         Combo box control window : new messages.
9804         * [misc/message.c]
9805         Moved stub MessageBox() to this new file.
9806         Implemented of a callback, now MessageBox show a window.
9808         * [loader/resource.c]
9809         New function DestroyIcon()
9810         New function DestroyCursor()
9811         Filled stub LoadIcon()
9812         Filled stub LoadCursor()
9813         Bug fixed in FindResourceByName() : missing lseek().
9815         * [obj/dib.c]
9816         New function DrawIcon()
9818         * [windows/win.c]
9819         New function CloseWindow()
9820         New function OpenIcon()
9821         New function IsIconic()
9822         New Function FindWindow()
9824 Sun Nov 14 08:27:19 1993  Karl Guenter Wuensch (hz225wu@unidui.uni-duisburg.de)
9826         * [loader/selector.c]
9827         Wrote AllocCStoDSAlias() and AllocDStoCSAlias()
9829 Sun Nov 14 08:27:19 1993  Bob Amstadt  (bob at amscons)
9831         * [loader/selector.c]
9832         Wrote AllocSelector() and PrestoChangoSelector().  YUK!
9834 Sat Nov 13 13:56:42 1993  Bob Amstadt  (bob at amscons)
9836         * [loader/resource.c]
9837         Wrote FindResource(), LoadResource(), LockResource(),
9838         and FreeResource()
9840         * [include/segmem.h] [loader/selector.c] [loader/signal.h]
9841         Changed selector allocation method.
9843 Sun Nov 10 08:27:19 1993  Karl Guenter Wuensch (hz225wu@unidui.uni-duisburg.de)
9845         * [if1632/callback.c if1632/call.S if1632/user.spec] 
9846         added Catch (KERNEL.55) and Throw (KERNEL.56)
9847         
9848 Nov 7, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9850         * [controls/scroll.c]
9851         Scroll bar control window
9852                 Bug resolved : Painting message before scroll visible.
9854         * [controls/listbox.c]
9855         Listbox control window
9856                 Destroy cleanup.
9858         * [controls/combo.c]
9859         Combo box control window
9860                 Destroy cleanup.
9862         * [controls/button.c]
9863                 GetCheck Message now return is state.
9865         * [windows/win.c]
9866         New function IsWindowVisible()
9868 Mon Nov  1 14:40:21 1993  julliard@di.epfl.ch (Alexandre Julliard)
9870         * [if1632/user.spec]
9871         Removed some duplicate entries.
9873         * [include/dialog.h] [windows/dialog.c]
9874         Implemented dialog units and fonts.
9875         Added preliminary loading of dialog resources.
9876         Preliminary implementation of DialogBox().
9877         Implemented Get/SetDlgItem* functions.
9879         * [windows/win.c]
9880         Implemented WM_PARENTNOTIFY message.
9881         Implemented CreateWindowEx() and GetWindow().
9882         Completed DestroyWindow().
9884 Mon Nov  1 18:19:34 1993  Erik Bos
9886         * [loader/signal.c]
9887         Added support for int 0x11 & 0x12.
9889         * [loader/int21.c]
9890         Improved function handling.
9892 Sun Oct 31 12:38:09 1993  David Metcalfe <david@prism.demon.co.uk>
9894         * [objects/font.c]
9895         Implemented GetCharWidth().
9897 Wed Oct 27 09:56:06 1993  John Brezak <brezak@ch.hp.com>
9899         * [Makefile]
9900         Use GNU malloc.
9902         * [include/int21.h include/wine.h]
9903         Change sc_eflags to sc_efl .
9905         * [include/wine.h]
9906         Fix misplaced #endif
9907         Include <signal.h> for NetBSD
9909         * [loader/int21.c]
9910         Don't include <sys/vfs.h> in NetBSD
9911         Do include <sys/mount.h> in NetBSD
9912         Cleanup some lint.
9914 Mon Oct 26 17:59:01 1993  Erik Bos
9916         * [include/int21.h]
9917         Added.
9919         * [loader/int21.c]
9920         Added support for many dos ints.
9922         * [misc/file.c] [include/files.h]
9923         Moved OPEN_MAX and DosDriveStruct to files.h.
9925 Sun Oct 24 13:36:50 1993  David Metcalfe <david@prism.demon.co.uk>
9927         * [controls/button.c]
9928         Implemented CHECKBOX, AUTOCHECKBOX, 3STATE, AUTO3STATE,
9929         RADIOBUTTON, AUTORADIOBUTTON, GROUPBOX controls, together with
9930         a preliminary USERBUTTON control.
9932         * [objects/text.c]
9933         Corrected bugs in TEXT_NextLine() and added handling of prefix
9934         character.
9936         * [controls/button.c]
9937         Disabled focus handling by commenting out SetFocus() calls until
9938         serious bug can be found.
9940 Oct  20, 93 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte)
9942         * [controls/listbox.c]
9943         Listbox control window
9944                 Painting cleanup, new messages processed.
9946         * [controls/scroll.c]
9947         Scroll bar control window
9948                 Painting cleanup.
9950         * [controls/combo.c]
9951         Combo box control window
9952                 Painting cleanup.
9954 Tue Oct 12 17:50:11 1993  julliard@di.epfl.ch (Alexandre Julliard)
9956         * [objects/color.c] [objects/palette.c] [windows/syscolor.c]
9957         Better support for the private color map.
9958         Using a private map is now the default.
9960         * [windows/win.c]
9961         Bug fix.
9963         * [include/dialog.h] [windows/dialog.c]
9964         Implemented CreateDialog*() and IsDialogMessage().
9966         * [misc/xt.c] [windows/defwnd.c]
9967         Moved DefWindowProc() to defwnd.c.
9968         Added WM_NCCREATE, WM_NCDESTROY and WM_CTLCOLOR handling.
9970         * [windows/defdlg.c]
9971         Started the implementation of DefDlgProc().
9973         * [windows/win.c]
9974         Added WM_NCCREATE and WM_NCDESTROY messages.
9975         Implemented IsChild().
9977 Tue Oct 12 17:50:20 1993  David Metcalfe <david@prism.demon.co.uk>
9979         * [windows/focus.c]
9980         Implemented GetFocus() and SetFocus().
9982         * [windows/event.c]
9983         Added processing of FocusIn and FocusOut events.
9985         * [windows/graphics.c]
9986         Added DrawFocusRect().
9988 Sat Oct  9 14:36:57 1993  Erik Bos
9990         * [loader/int1a.c]
9991         Added more function handling.
9993 Wed Oct  6 12:21:22 1993  Erik Bos
9995         * [loader/signal.c]
9996         Split signal.c into int1a.c, int21.c and signal.c.
9998 Tue Oct  5 22:12:40 1993  David Metcalfe
10000         * [controls/static.c] [control/widgets.c]
10001         Static control class.
10003         * [objects/text.c]
10004         Added processing of additional DT_ flags to DrawText().
10006         * [windows/win.c] [misc/xt.c]
10007         Added SetWindowText() and WM_SETTEXT processing.
10009 Tue Oct  5 22:12:40 1993  Martin Ayotte
10011         * [controls/listbox.c]
10012         Listbox control window
10014         * [controls/scroll.c]
10015         Scroll bar control window
10017         * [controls/combo.c]
10018         Combo box control window
10020         * [include/combo.h]
10021         Combo box definitions
10023         * [include/listbox.h]
10024         Listbox definitions
10026         * [include/scroll.h]
10027         Scroll bar definitions
10029 Sat Oct  2 09:35:54 1993  Bob Amstadt  (bob at pooh)
10031         * [if1632/callback.c]
10032         Fixed bug in MakeProcInstance().
10034         * [debugger/info.c]
10035         Changed x/w and x/b to display in hex.
10037         * [debugger/i386-pinsn.c]
10038         Added code to properly unassemble 16-bit indexing.
10040 Fri Oct  1 08:29:05 1993  Bob Amstadt  (bob at pooh)
10042         * [loader/files.c] [misc/profile.c]
10043         System initialization file is now called "wine.ini" and can
10044         be located in the current directory, the user's home directory,
10045         or any directories specified in the WINEPATH environment variable.
10047         * [tools/build.c] [if1632/call.S] [include/regfunc.h]
10048         Changed register function stack to match sigcontext structure.
10050 Thu Sep 30 22:30:21 1993  Bob Amstadt  (bob at pooh)
10052         * [loader/files.c]
10053         Created function to search a path for files to load.
10055         * [loader/wine.c]
10056         Modified exe and dll file loading to search through path
10057         specified by the environment variable WINEPATH.
10059 Thu Sep 30 22:30:21 1993  Eric Youngdale
10061         * [loader/signal.c]
10062         Bug fix.
10064 Thu Sep 30 22:30:21 1993  John Brezak
10066         * [debugger/dbg.y] [debugger/debug.l] [debugger/dtest.c] 
10067           [debugger/obstack.h]
10068         Updates to allow debugger to function under NetBSD.
10070 Tue Sep 28 19:59:21 1993  David Metcalfe
10072         * [windows/win.c]
10073         Implemented support for windows with no borders.  Added
10074         GetParent(), GetDlgCtrlID(), GetWindowText() and
10075         GetWindowTextLength() functions.
10077         * [misc/xt.c]
10078         Added processing of WM_GETTEXT and WM_GETTEXTLENGTH messages
10079         to DefWindowProc and Implemented MessageBeep().
10081         * [windows/syscolor.c]
10082         Added preliminary system color support.
10084         * [controls/button1.c]
10085         Mods to new button control and integration with Wine.
10087 Tue Sep 28 19:59:21 1993  Johannes Ruscheinski
10089         * [controls/button1.c]
10090         New button control using GDI functions.
10091         
10092 Tue Sep 28 19:59:21 1993  Eric Youngdale
10094         * [debugger/*]
10095         Added debugging capabilities to Wine
10097 Sat Sep 25 13:22:50 1993  Alexandre Julliard  (julliard@di.epfl.ch)
10099         * [objects/region.c]
10100         Bug fix
10102 Fri Sep 24 07:35:11 1993  Bob Amstadt  (bob at pooh)
10104         * [tools/build.c]
10105         Changed the entry point code to reduce the standard entry
10106         point size from 22 bytes to 10 bytes.  This leaves about
10107         4000 free entry points instead of the 800 in version 0.4.2.
10109         * [loader/resource.c]
10110         Rewrote functions to allow loading of resources from any
10111         DLL.
10113         * [loader/wine.c] [include/wine.h]
10114         Added functions GetFilenameFromInstance() and GetFileInfo()
10115         to search for a loaded file based on its instance handle.
10116         Added a field in struct w_files to make searching by an instance
10117         handle faster.
10119 Tue Sep 21 09:57:01 1993  miguel@roxanne.nuclecu.unam.mx (Miguel de Icaza)
10121         * [misc/profile.c]
10122         Implementation of .INI file handling
10124 Mon Sep 20 10:54:32 1993  David Metcalfe
10126         * [misc/profile.c.old]
10127         Implementation of .INI file handling
10129 Mon Sep 20 10:54:32 1993  John Brezak
10131         * [controls/WinButton.c]
10132         Bug fix with call to XtVaSetValues.
10134 Mon Sep 20 10:54:32 1993  Alexandre Julliard
10136         * [windows/win.c]
10137         Quick patch to get colormaps to work with button widget.
10139 Mon Sep 20 02:42:54 1993    (yngvi@hafro.is)
10141         * misc/keyboard.c: 
10142         Ifdefed out some bogus Ansi<->Oem conversion functions
10144         * misc/lstr.c: 
10145         New file with string functions like lstr* IsChar* *Ansi* 
10147 Wed Sep 15 20:35:10 1993  John Brezak
10149         * [loader/signal.c]
10150         Additional changes to support NetBSD.
10152 Wed Sep 15 22:19:22 1993  Martin Ayotte
10154         * [windows/graphics.c]
10155         Added FrameRect function
10157 Tue Sep 14 13:54:45 1993  Alexandre Julliard
10159         * [objects/color.c] [objects/palette.c]
10160         Preliminary support for private color map.
10162         * [windows/class.c]
10163         Implemented CS_CLASSDC style.
10165         * [windows/dce.c]
10166         Moved DCEs to USER heap.
10167         Implemented class and window DCs.
10169         * [windows/event.c]
10170         Implemented CS_DBLCLKS style.
10172         * [windows/graphics.c]
10173         Bug fix in SetPixel().
10175         * [windows/win.c]       
10176         Implemented CS_OWNDC style.
10177         Implemented Get/SetWindowLong().
10179         * [controls/menu.c] [windows/class.c] [windows/clipping.c] 
10180           [windows/dce.c] [windows/message.c] [windows/win.c]   
10181         Moved windows from global heap to USER heap.
10183 Mon Sep 13 05:00:11 1993  Eric Youngdale
10185         * [Makefile] [if1632/relay.c] [include/dlls.h] [selector.c]
10186           [loader/wine.c] [tools/build.c]
10187         Added ability to generate missing functions statistics.
10189 Mon Sep 13 12:09:47 1993  Scott A. Laird  (scott@curly)
10191         * [WIN31-APPLETS]
10192         Added new file.
10194         * [if1632/kernel.spec]
10195         Added definitions for GetProfile{Int,String} and SetHandleCount.
10197         * [if1632/keyboard.spec]
10198         Created interface specification for Keyboard driver DLL.
10200         * [if1632/relay.c]
10201         Added keyboard.dll to list of included DLLs.
10203         * [if1632/user.spec]
10204         Added LoadAccelerators definition.
10206         * [loader/resource.c]
10207         Added LoadAccelerators stub.
10209         * [misc/file.c]
10210         Changed OpenFile, and added SetHandleCount (for winfile.exe)
10212         * [misc/keyboard.c]
10213         Added keyboard code.
10215         * [misc/profile.c] [misc/xt.c]
10216         Moved GetPrivateProfile* commands here, and added GetProfile*
10217         commands.
10219 Mon Sep 13 10:24:37 1993  Andrew Bulhak
10221         * [windows/utility.c]
10222         Implemented MulDiv(), OutputDebugString() and wvsprintf()
10224 Fri Sep 10 09:13:30 1993  John Brezak
10226         * [*/Makefile]
10227         Created patch to allow BSD make to build wine.
10229         * [windows/win.c]
10230         Fixed NULL pointer reference.
10232         * [windows/message.c] [misc/xt.c]
10233         Defined HZ to handle system specific timing.
10235         * [windows/graphics.c]
10236         Use M_PI is PI
10238         * [objects/pallete.c]
10239         NetBSD does not have /usr/include/values.h and MAXINT is INT_MAX.
10241         * [dump.c] [ldt.c] [wine.c]
10242         ifdef'ed linux headers for linux compile.
10244         * [loader/ldtlib.c]
10245         Add NetBSD system calls when compiled on that system.
10247         * [loader/selector.c]
10248         Use mmap(MAP_ANON, ...) for NetBSD.
10250         * [if1632/call.S]
10251         Fixed selector assumptions.
10253 Thu Sep 9 20:01:37 1993  David Metcalfe
10255         * [controls/WinButton*] [controls/button.c] [controls/widget.c]
10256           [windows/win.c] [windows/class.c]
10257         Added 3D button control and tied into CreateWindow()
10259 Thu Sep  9 07:35:24 1993  Scott Laird
10261         * [if1632/sound.spec]
10262         Created interface specification for SOUND DLL.
10264         * [if1632/win87em.spec]
10265         Added more functions to the WIN87EM DLL interface specification
10267         * [misc/emulate.c]
10268         Created stubs for the new math emulation functions.
10270         * [misc/sound.c]
10271         Created stubs for the SOUND DLL.
10273 Sun Sep  5 21:02:10 1993  John Burton
10275         * [if1632/kernel.spec]
10276         Added interface specifications for OpenFile, _lclose, _lread, _lopen,
10277         and _lwrite.
10279         * [include/windows.h]
10280         Added OF_ macros
10282         * [misc/file.c]
10283         Implemented OpenFile, _lclose, _lread, _lopen and _lwrite.
10285 Fri Sep  3 18:47:03 1993  Alexandre Julliard
10287         * [windows/dc.c]
10288         Bug fix
10290         * [objects/text.c]
10291         Bug fix
10293 Fri Sep  3 18:47:03 1993  Bob Amstadt
10295         * [objects/linedda.c]
10296         Finished LineDDA().
10298 Fri Sep  3 11:52:18 1993  Bob Amstadt
10300         * [windows/timer.c]
10301         Changed to use CallWindowProc() rather directly calling callback.
10303         * [windows/event.c]
10304         Implemented SetCapture() and ReleaseCapture()
10306         * [windows/keyboard.c]
10307         Created stub for GetKeyState()
10309         * [objects/linedda.c]
10310         Created stub for LineDDA()
10312         * [if1632/callback.c]
10313         Created callback handler for LineDDA callback procedure.
10315         * [if1632/callback.c]
10316         Created FreeProcInstance()
10318 Fri Sep  3 08:36:52 1993  David Metcalfe
10320         * [loader/signal.c]
10321         Patch to and code for INT 1A
10323 Thu Sep  2 00:31:54 1993  Alexandre Julliard
10325         * [objects/font.c] [objects/text.c]
10326         More text support: implemented justification and underlining.
10328         * [windows/clipping.c] [objects/clipping.c]
10329         Moved low-level clipping functions to objects/clipping.c.
10331         * [windows/clipping.c] [windows/event.c] [windows/message.c]
10332         Implemented window update regions.
10334         * [windows/dc.c] [objects/dcvalues.c]
10335         Moved some device-independent DC functions to objects/dcvalues.c.
10337         * [windows/graphics.c]
10338         Implemented InvertRect() and GetPixel().
10340 Sat Aug 28 08:40:23 1993  Eric Youngdale
10342         * [include/neexe.h] [loader/wine.c]
10343         Added code to handle relocation type 4.
10345         * [loader/signal.h] [loader/wine.c] [loader/selector.c]
10346         Added support for dos interrupts.
10348 Thu 26 Aug 19:15:00 1993  Eric Youngdale
10350         * [loader/selector.c]
10351         Fixed bug dealing with loading DLLs.
10353 Thu Aug 26 19:22:40 1993  Alexandre Julliard
10355         * [include/gdi.h] [objects/font.c] [windows/dc.c]
10356         Beginning of real font support.
10358         * [windows/graphics.c]
10359         Implemented PatBlt().
10361         * [memory/global.c]
10362         Corrected a bug with linked list handling in GlobalAlloc().
10364         * [objects/bitmap.c]
10365         Corrected a bug in BITMAP_SelectObject().
10367 Tue Aug 24 19:22:40 1993  David Metcalfe
10369         * [controls/Command*] [controls/Label*] [controls[MenuButto*]
10370           [controls/SmeMenuButt*]
10371         Change code to support & as a special character in menu item text.
10373 Tue Aug 24 19:22:40 1993  Alexandre Julliard
10375         * [include/gdi.h] [windows/dc.c]
10376         Heavily modified the DC structure for better device-independence.
10378         * [objects/bitmap.c]
10379         Implemented bitmap dimensions.
10381         * [windows/dc.c] [windows/dce.c]
10382         Implemented DC state saving and restoring.
10384         * [windows/dc.c]
10385         Implemented ROP mode.
10387         * [windows/graphics.c]
10388         Implemented FillRect().
10390 Mon Aug 23 22:08:34 1993  Bob Amstadt  (bob at pooh)
10392         * [misc/xt.c]
10393         Fixed bug in InvalidateRect().  Solitaire attempted to
10394         clear window before it was realized.
10396         * [loader/resource.c]
10397         Began rewrite of LoadBitmap().
10399         * [loader/wine.c]
10400         Fixed code which set Argv and Argc global variables.
10402         * [loader/selector.c]
10403         Added code to set up command line arguments.
10405         * [include/neexe.h]
10406         Fixed error in PSP structure.
10408 Tue Aug 17 20:41:12 1993  Alexandre Julliard
10410         * [include/gdi.h] [windows/dc.c]
10411         Implemented device capabilities.
10413         * [objects/region.c]
10414         Implemented EqualRgn() and CombineRgn().
10416         * [windows/clipping.c]
10417         Implemented Save/RestoreVisRgn().
10419         * [windows/graphics.c]
10420         Implemented PaintRgn() and FillRgn().
10422         * [windows/mapping.c]
10423         Implemented mapping modes.
10425 Tue Aug 10 14:07:38 1993  Alexandre Julliard
10427         * [if1632/user.spec] [misc/rect.c]
10428         Implemented rectangle API functions.
10430         * [if1632/gdi.spec] [include/gdi.h] [objects/region.c]
10431         Implemented regions.
10433         * [windows/class.c]
10434         Corrected a typo in UnregisterClass().
10436         * [windows/clipping.c] [windows/dc.c]
10437         Implemented DC clipping and visible region.
10439 Tue Aug 10 20:57:56 1993  Bob Amstadt  (bob at pooh)
10441         * [controls/menu.c] [windows/win.c]
10442         SetMenu(), GetMenu(), CheckMenuItem() implemented
10444 Thu Aug  5 22:33:22 1993  Bob Amstadt  (bob at pooh)
10446         * [controls/menu.c] [windows/win.c]
10447         Many improvements menus.  LoadMenu() should work.
10449 Wed Aug  4 14:55:36 1993  Alexandre Julliard
10451         * [objects/dib.c]
10452         Started the implementation of device-independent bitmaps.
10454         * [objects/bitmap.c]
10455         Added support for multiple bitmap depths.
10457         * [objects/brush.c]
10458         Implemented pattern brushes.
10460         * [windows/dc.c] [windows/graphics.c]
10461         Implemented some GDI graphics primitives.
10463 Tue Aug  3 21:16:47 1993  Bob Amstadt  (bob at pooh)
10465         * [controls/menu.c] [windows/win.c] [include/menu.h]
10466         Code to load class menus from executable file.
10468         * [if1632/user.spec]
10469         Fixed specification of SendMessage() and PostMessage.
10471 Mon Jul 26 21:53:24 1993  Alexandre Julliard
10473         * [if1632/call.S]
10474         Corrected a bug in KERNEL_InitTask().
10476         * [include/windows.h]
10477         Added a lot of constants.
10479         * [loader/selector.c]
10480         Corrected a bug in segment allocation in CreateSelectors().
10482         * [objects/bitmap.c]
10483         Implemented SelectObject() for bitmaps.
10485         * [objects/brush.c]
10486         Implemented hatched brushes and SelectObject().
10488         * [objects/gdiobj.c]
10489         Removed linked list (not needed).
10491         * [objects/palette.c]
10492         Implemented system palette creation and misc. palette API functions.
10494         * [windows/timer.c]
10495         Implemented timers.
10497         * [windows/dc.c]
10498         Implemented memory device contexts.
10500 Tue Jul 20 10:38:59 1993  Bob Amstadt  (bob at pooh)
10502         * [dos.c]
10503         Split DOS3Call() out of kernel.c.  Added support for get date
10504         and time functions.
10506         * [call.S]
10507         Added function ReturnFromRegisterFunc() to allow DOS calls
10508         to return values in registers.
10510         * [regfunc.h]
10511         Macros to access registers saved on stack.
10513 Tue Jul 20 10:38:59 1993  Alexandre Julliard
10515         * [win.c]
10516         Corrected allocation of the WM_CREATE data structure.
10518         * [dce.c] [dce.h]
10519         Implemented DCE handling.
10521         * [bitmap.c] [brush.c] [dc.c] [font.c] [gdi.h] [gdi.spec] 
10522           [gdiobj.c] [palette.c] [pen.c]
10523         Implemented the GDI objects data structures and allocation.
10525         * [windows.h]
10526         Added several structures and constants for GDI objects.
10528 Mon Jul 19 12:51:10 1993  Bob Amstadt  (bob at pooh)
10530         * [ldtlib.c]
10531         Modified system calls to match Linus' new interface for
10532         the LDT modification.
10534         * [win.c]
10535         Fixed bug with WM_CREATE message.
10537         * [heap.c] [kernel.spec]
10538         Completed local heap allocation functions.
10540         * [global.c]
10541         Created function GlobalQuickAlloc() for easy allocation from DLLs
10543 Tue Jul 13 20:31:31 1993  Bob Amstadt  (bob at pooh)
10545         * [global.c]
10546         Completed global memory pool API
10548 Sun Jul 11 16:59:52 1993  Alexandre Julliard
10550         * [message.c] [user.c] [user.spec] [windows.h]
10551         Added emulation of Windows message queue.
10553 Thu Jul  8 19:29:27 1993  Bob Amstadt  (bob at pooh)
10555         * [build.c] Original by Bob Amstadt
10556         * [callback.c] Original by Bob Amstadt, updates by 
10557         Alexandre Julliard
10558         * [dump.c] Original by Bob Amstadt
10559         * [global.c] Original by Bob Amstadt
10560         * [heap.c] Original by Bob Amstadt
10561         * [kernel.c] Original by Bob Amstadt
10562         * [ldt.c] Original by Bob Amstadt
10563         * [ldtlib.c] Original by Bob Amstadt
10564         * [relay.c] Original by Bob Amstadt
10565         * [resource.c] Original by Bob Amstadt, updates by 
10566         Alexandre Juliard
10567         * [selector.c] Original by Bob Amstadt, updates by Eric Youngdale
10568         * [user.c] Original by Bob Amstadt
10569         * [wine.c] Original by Bob Amstadt, updates by Eric Youngdale and
10570         Alexandre Julliard
10571         * [wintcl.c] Original by Regents of the University of California,
10572         updates by Peter MacDonald and Alexandre Julliard
10573         * [callback.h] Original by Bob Amstadt
10574         * [dlls.h] Original by Bob Amstadt
10575         * [heap.h] Original by Bob Amstadt
10576         * [neexe.h] Original by Bob Amstadt
10577         * [prototypes.h] Original by Bob Amstadt, updates by 
10578         Eric Youngdale
10579         * [segmem.h] Original by Bob Amstadt
10580         * [tkInt.h] Original by Regents of the University of California
10581         * [windows.h] Original by Peter MacDonald, updates by 
10582         Alexandre Julliard and Bob Amstadt
10583         * [wine.h] Original by Eric Youngdale
10584         * [kernel.spec] Original by Bob Amstadt, updates by 
10585         Alexandre Julliard
10586         * [gdi.spec] Original by Bob Amstadt, updates by 
10587         Alexandre Julliard
10588         * [shell.spec] Original by Bob Amstadt
10589         * [unixlib.spec] Original by Bob Amstadt
10590         * [user.spec] Original by Bob Amstadt, updates by Alexandre Julliard
10591         * [win87em.spec] Original by Bob Amstadt
10592         * [Windows.tcl] Original by Peter MacDonald, updates by 
10593         Alexandre Julliard
10594         * [build-spec.txt] Original by Bob Amstadt
10595         * [if1632.S] Original by Bob Amstadt, updates by Eric Youngdale