 /* $Id: changelog,v 1.400 1999-11-02 23:03:14 hugh Exp $ */

 99-11-02  Markus Montkowski <mmontkowski@gmx.de>
                 Changed debug output to DDRAW: ...
                 Copied Framebuffer if in colorconversion mode for Normal Blits to
                  the primary surface. => Map Editor of Red Alert works.

 00-11-02: Achim Hasenmueller <achimha@innotek.de>
        - COMCTL32: Incorporated latest WINE 991031 updates
          Note: listview doesn't paint properly now. Will be fixed later.

 99-11-02: Markus Montkowski <mmontkowski@gmx.de>
	- DDRAW: Changed interface handling of Surfaces=> Quake 2 runs again!

 99-11-02: Patrick Haller <phaller@gmx.net>
	- SHELL32:	Up to current WINE level
	- SHLWAPI:	Created (in WINE it mostly links to SHELL32)

 99-11-02: Sander van Leeuwen <sandervl@xs4all.nl>
	- INCLUDE\odinwrap.h: 
                  fixed wrong define (_ODINWARP instead of _ODINWRAP)
                  Only check the heap for consistency when DEBUG_ODINHEAP is
                  defined.
	- USER32: Uncommented EDIT_NOTIFY_PARENT call in EDIT_WM_SetFocus
                  (yesterday's showwindow fix makes sure no WM_SETFOCUS msgs
                   arrive before the dialog received it's WM_INITDIALOG msg)
                  Fixed more FS corruption in dc.cpp.
	- SHELL32: Added extra exports for comdlg32
	- COMDLG32: Ported Wine file & find common dialogs (991031)
                    Find & Replace dialogs enabled, Wine code called for
                    file dialogs if the app supplies a dialog template.
                    NOTE: Disabled for now. Comctl32 isn't stable enough
                          for the Win95 style Wine comdlg dialogs.
                    Fixed check for find/replace dialog. Notepad uses 32 byte
                    buffer, so why does the wine code fail for < 80 bytes?
                    Fixed display of find/replace dialog -> if not hooked
                    show dialog!
	- makefiles: Added debugsmp/nodebuginfosmp/releasesmp options to
                     start two nmake process to build everything on two cpus.

 99-11-01: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Delete all process windows & classes in exitlist handler
                  Set hwndInsertBehind to HWND_BOTTOM for group boxes
                  (fixes problems when groupbox control is defined after
                   controls inside it in dialog template)
                  Mouse activate fix.
                  Don't activate child windows in ShowWindow.
	- WINMM: Return failure for waveOutGetDevCapsA/W when there's no
                 audio hardware present.


 99-11-01: Daniela Engert <dani@ngrt.de>
	- USER32: add WS_CLIPSIBLINGS to not-WS_GROUP style STATIC controls
		  (fixes missing text in WELCOME)

	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

	This is a hack!

	Dialog controls which contain/surround other controls *need* to be
	created with the WS_CLIPSIBLINGS style.

	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 99-10-31: Christoph Bratschi <cbratschi@datacomm.ch>
	- KERNEL32: Ported Wine time apis

 99-10-31: Daniela Engert <dani@ngrt.de>
	- USER32: add WS_CLIPSIBLINGS to BS_GROUPBOX style controls (fixes
		  missing buttons in SOL)

 99-10-31: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Remove CS_SYNCPAINT class flag -> fixes VPBuddy resize + paint
		  Put back methods that belong in the Win32Dialog class.
		  (MapDialogRect, DIALOG_Init, several x & y unit helpers)
		  -> fixes calc window controls.

 99-10-30: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: added button control text justification
		  GetNextDlgTabItem/GetNextDlgGroupItem must work with all windows
		  -> radiobuttons
		  fixed scrollbar timer handling
		  pmframe: fixed WM_ACTIVATE bug

 99-10-29  Markus Montkowski <mmontkowski@gmx.de>
	- GDI32:  Fixed bug in CreateDIBSection, only copy ptr when ptr. var not
		  NULL.
		  Added DIBSections to GetObject_A, so programms can query
		  a DIBSECTION for the obj.

 99-10-30: Daniela Engert <dani@ngrt.de>
	- USER32: Fixed missing repaints for transparent windows (VPBuddy!)

 99-10-30: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Ported Wine MapDialogRect -> fixes Calc dialogs

 99-10-30: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: Port Wine ascii <-> unicode message conversion for user32 controls
		  (Wine controls only support ascii msgs)

 99-10-30: Jens Wiessner <wiessnej@rfi.de>
	- MSVCRT: Fixed .def file

 99-10-29: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: rewrote scrollbar code
		  added static styles

 99-10-29: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Changed font size multiply factor, negated it and fixed
		  default dialog unit bug.
		  Fixed MDI destroy bug
		  WM_SETICON bugfix.

 99-10-29: Sander van Leeuwen <sandervl@xs4all.nl>
	   Rene Pronk<R.Pronk@twi.tudelft.nl>
	- USER32: Focus fixes. Activate a window when it receives a button click message.

 99-10-29  Markus Montkowski <mmontkowski@gmx.de>
	- DDRAW: Changed logging, loginfo now in odin32_x.log for the first time...

 99-10-28: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: LoadBitmapW fix
		  ModifyMenuW/InsertMenuW fixes.
		  Call CallWindowProcA/W in Send(Internal)MessageA/W
		  (in preparation of Wine unicode msg translation port)
		  Always call default window handler for WM_PAINT. Apparently
		  there are apps that return 0, but don't call BeginPaint.
		  Added extra messages for msg translation.

 99-10-28: Sander van Leeuwen <sandervl@xs4all.nl>
	- ADVAPI32: Fixed dprintf bugs in OpenSCManagerA/W (%s instead of %d)

	- makefiles: Added nodebuginfo build option to build debug binaries
		     without debug information. (for upcoming alpha release)

	- KERNEL32: GetVersion fix. Low byte = major version, high byte = minor version
		    Destroyed shared heap on dll unload (refcount == 0)
		    Shared heap fixes.
		    GetWindowsDirectory & GetSystemDirectory return string that don't end with
		    a backslash.
		    Fixed loading of dlls without .dll extension.
		    Fixed OSLibStripPath.

	- USER32: Fixed style conversion (use dwStyle, not cs->style, same for dwExStyle)
		  -> title bar in prof. minesweeper
		  Fixed bug in pmframe WM_WINDOWPOSCHANGED handler (didn't restore OS/2
		  selector before returning)
		  Don't delete global window classes.
		  Removed shared heap, use the one in kernel32 instead.
		  Fixed OSLibSetStyle & SetWindowLong for GWL_STYLE (wrong style used)
		  Fixed win32 to OS/2 style conversion (DLG frame)
		  Fix for timer messages in apps that use PeekMessage/DispatchMessage
		  instead of GetMessage/DispatchMessage.
		  Translation of extra messages.

 99-10-28: Jens Wiessner <wiessnej@rfi.de>
	- MSVCRT: Added stubs

 99-10-27: Patrick Haller <phaller@gmx.net>
	- KERNEL32:	Fix: console (unicode) updates, NT4'S CMD.EXE works.
			WARNING! lstrcpynAtoW has been modified, PLEASE VERIFY!

 99-10-27: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
	- WIN32K: It's working! At least on my testmachine running
		  the WSeB astrict UNI kernel and the Warp 4 astrict kernel.

 99-10-27: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: If dll can't be found, look in directory of kernel32 (PE loader)
		    Fixed iLoadLibrary (added .dll if it couldn't find this string in
		    the module name; now only does that if it can't find a '.')
		    Implemented WinExec using CreateProcessA.
		    Fixed file mapping view lookup bug. Views are now again stored
		    in per-process data segment.
		    Delete process memory maps in exitlist too.
	- KERNEL32: Fixed bug in icon conversion (rgb only for <= 8bpp)
		    Added support for color cursors (needs more testing but seems to work)
	- USER32: Added support for color cursors
		  Fix for class lookup in CreateWindowExA/W

 99-10-26: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Fixed bugs in menu apis (Append/InsertMenuA/W)
		  Fixed InsertMenuItemA/W.
		  Finished up Patrick's work -> regedit menus now correct
		  In winmenu call only ODIN_* menu apis; decreases amount of
		  logging and increases speed.

	- KERNEL32: Removed menu resource + non-used resource methods
		    Fixed FS selector corruption in GetLocaleInfoA/W (use
		    ODINFUNCTION wrapper as it calls a OS/2 unicode api that has no
		    FS wrapper)

	- PELDR:  Increased stack from 192k to 640k (Quake 2 ran out of stack)
	- DSOUND/DDRAW: Fixed FS selector corruption in logging procedures
	  ---> Quake 2 works again (Yeah! :) )
	  NOTE: Quake 2 3.20 only starts the first time. Seems to change something
		in the config.cfg file that crashes it the next time you run it.
		(workaround: save original config.sys and restore it afterwards)

 99-10-26: Patrick Haller <phaller@gmx.net>
	- USER32: Add: Ported Wine menu(ex) parser and integrated it into menu code
	- WINMM:  Fix: invalid callback check in dwaveout.cpp (Q2 makes noise again)

 99-10-25: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Removed SetFocus call in Edit control (WM_LBUTTONDOWN)
		  Virtual key translation table change (VK_RETURN (PM) -> 0x0A
		  VK_ENTER (PM_ -> 0x0A (VK_RETURN))
		  (fixes problems in edit control, but might not be a good fix)
		  Never call default window handler (PM) after WM_CHAR ->
		  PM sends the WM_CHAR to the owner window -> focus changes
		  in notepad.
	- USER32: (menus)
		  Rewrote LoadMenuIndirectA/W to use OS/2 apis
		  Implemented GetMenuInfo & SetMenuInfo (just store new info; nothing else done)
		  Implemented GetMenuContextHelpId/SetMenuContextHelpId
		  (based on Wine build 990815)
		  Partially implemented GetMenuItemInfo.
		  NOTE: Needs a complete rewrite.

	- INCLUDE\win\commctrl.h:
		  Changed back calling convention of callback handlers to CALLBACK.
		  -> fixes crashes in SHELL32 (DPASearch calls)

 99-10-25: Achim Hasenmueller <achimha@innotek.de>
	- KERNEL32: Added ReinitializeCriticalSection, ported WINE code
		    for this function and UninitializeCriticalSection

 99-10-25: Patrick Haller <phaller@gmx.net>
	- ODINWRAP: Fix: Bugfix + Heap Check embracing every wrapper function
	- NTDLL:    Add: functions by Jens Wiesner
	- KERNEL32: Fix: enable WIN32.DEBUGBREAK environment variable for DebugBreak() API
	- WSOCK32:  Fix: invalid structure alignment for asynchronous operations

 99-10-25: Markus Montkowski <mmontkowski@gmx.de>
	- DDRAW:  Fixed bug in Color conversion of surfaces DDEX1.EXE now works,
		  Get/ReleaseDC functions are working, but problem
		  with Bitmap orientation DDRAW surfaces are TopDown DCs Bmps are BottomUp
		  this neeeds to be solved (any way to create a TopDown DC Bmp?)

 99-10-24: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: MDI window fixes (mdi children correctly activated; menus inserted)
		  Bugfix in WM_GETTEXT of Edit control (wrong string length)
		  Only create global classes when CS_GLOBALCLASS flag specified
		  Create system classes only every first time user32 is loaded
		  and only unregister them when the last win32 app quits.
		  Converted all OS/2 bitmaps to windows format and put them in user32.rc
		  (deleted all bmp files)
	- USER32,
	  COMCTL32,
	  SHELL32: Don't check if control atom already exists, always register
		   control.
	     NOTE: Global classes have a global atom, but the class objects
		   are NOT shared! (so you must recreate them for every app)

	- KERNEL32: Implemented shared memory mapped files (SDK memory sample
		    works for shared memory; haven't tested files and it requires
		    more testing!)
		    Added shared heap code for memory mapped objects

 99-10-24: Daniela Engert <dani@ngrt.de>
	- KERNEL32: Fixed cursor in VPBuddy (invalid size)

 99-10-23: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: added more metrics for GetSystemMetrics
		  added WM_SYSTIMER support
		  several scrollbar bug fixes

 99-10-23: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Put back WM_ADJUSTWINDOWPOS/WINDOWPOSCHANGED into pmwindow.cpp
		  Put message logging procedure in wndmsg.cpp.
		  Don't log WM_KICKIDLE & WM_NCHITTEST messages. (sent too often)
		  Don't set capture to listbox window in comboboxes (after lbuttonup)
		  Use wrc to compile USER32 resources + added version resource
		  Fixed PMFRAME window position handlers and put them back.
		  (comboboxes now displayed properly)

	- KERNEL32: Write logfiles to directory of kernel32 if executable is on
		    readonly device.
		    Fixed CreateProcess.
		    Added support for GetVersionSize/GetVersionStruct for images
		    that aren't loaded. (LX or PE; PE not tested!)
	- DSOUND: Made it compile again. (always pretends there's no soundcard in the system)
	- SHELL32/COMCTL32: Changed file description in version resource

 99-10-22: Daniela Engert <dani@ngrt.de>
	- KERNEL32: fixed bad icon masks

 99-10-22: Sander van Leeuwen <sandervl@xs4all.nl>
	- WINMM: Fixes for waveout playback (don't use callback when there
		 were errors when opening the device; return the correct
		 number of devices present) (Pinball no longer crashes when
		 there's no soundcard (driver) in OS/2)
		 Disabled logging of timeGetTime
	- KERNEL32: Disabled logging for _lread (calls ReadFile which does it's own logging)
		    Return XCPT_CONTINUE_SEARCH for unhandled exceptions if
		    an OS/2 app uses the Odin32 api. (instead of killing the app)

	- COMCTL32: Fixed tab width bug. (GetTextExtentPoint32A used for unicode strings)
		    Use Wine resource compiled with wrc. Removed all Native* resource loading.
		    Added version resource.

	- USER32: Fixed corruption of OS/2 exception chain in dc.cpp & caret.cpp
		  (fixes dll loading after the exe has started; i.e. after clicking
		   on the Find tab in winhlp32's Search dialog)
		  Do not send WM_COMMAND messages to the window handler before
		  it has receive it's WM_CREATE msg.
		  Winhlp32 crashes when that's done before WM_INITDIALOG, but
		  VPBuddy no longer responds to buttons when you refuse to
		  send messages before WM_INITDIALOG. (TODO)
		  Send WM_WINDOWPOSCHANGING/CHANGED messages from frame handler.
		  Fixed MapWindowPoints.
	- INCLUDE\os2wrap.h: Fixed infinite recursion in GpiDestroyPS

 99-10-22: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: TrackPopupMenu(Ex) fixes (window handle translation)
	- KERNEL32: HeapReAlloc bugfix (copy min(oldsize, newsize) bytes)

 99-10-21: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Increase reference count for LX dlls. (RegisterLxDll)
		    Set memory protection flags to READONLY for PAGE_NOACCESS
	- USER32: Added support for SWP_NOSIZECHANGING to SetWindowPos
		  Fixed WM_ADJUSTWINDOWPOS (when position/size changed by app)
		  Combobox fixes (simple combobox works, more complex don't)
		  Don't check instance handle if handle == handle of exe for
		  class lookup.
	- GDI32: Fixed bug in DIBSection ctor (next ptr not initialized)

 99-10-20: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- GDI32: Implemented EnumFontFamiliesA/W

 99-10-20: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Added support for WM_WINDOWPOSCHANGING in default window handler
		  (ported from Wine 990815)
		  Convert back windowpos structure in WM_ADJUSTWINDOWPOS (NOT DONE)
		  Bugfixes for PM WM_WINDOWPOSCHANGED handling & OSLibMapSWPtoWINDOWPOS.
		  (Win32 WM_WINDOWPOSCHANGED now also sends window coordinates, not client)
		  Rewrote MapWindowPoints. (NOTE: Needs to be tested!)
		  Combobox bugfix (resizing listbox using old rectangle -> get current
		  one)

 99-10-20: Patrick Haller <phaller@gmx.net>
	- WSOCK32:  Partial rewrite of WSA async sockets completed.

 99-10-20: Christoph Bratschi <cbratschi@datacomm.ch>
	- KERNEL32: Ini file for Odin settings (i.e. windows & system dir)
		    Added Odin.ini.txt

 99-10-19: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: FindResource bugfix: "DIB" type is the same as "BITMAP"
		    (VPBuddy fix)
		    NOTE: Currently disabled. VPBuddy expects something other
			  than a pointer to the raw resource data for such
			  bitmaps. (TODO)
	- USER32: Windows without a parent have the desktop window as parent.
		  MDI additions.
		  Combobox bugfixes.
		  GetWindowTextA/W bugfixes (return 0 if there's no window name)

 99-10-19: Yuri Dario <mc6530@mclink.it>
	- USER32: Initialize MDI client variables before calling Win32BaseWindow
		  constructor

 99-10-19: Jens Wiessner <wiessnej@rfi.de>
	- RASAPI32: Added stubs

 99-10-19: Daniela Engert <dani@ngrt.de>
	- USER32: excessive background erases tamed

 99-10-18: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Set/clear WS_VISIBLE flag in ShowWindow
		  Fix for scrollbar redraw
		  Put back original Wine code for LISTBOX_UpdateScroll.
		  Rewrote EnumChildWindows (winzip works quite well now!)

 99-10-18: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- COMDLG32: Disable comdlg hooks for now. They don't work anyway.

 99-10-17: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Ported AdjustWindowRectEx from Wine (990815)
		  Changed GetClientRect to return rectangle stored in
		  window object.
		  Ported (Begin/End)DeferWindowPos from Wine (990815)
		  Ported GetWindow from Wine (990815)
		  Fixed dialog control creation bug (create ascii controls when
		  parent window is ascii)
		  Implemented SetWindowPlacement (not complete done)
		  Fixed GetWindowPlacement (handle translation), still
		  needs to be implemented though.
		  Don't change PM window style in WM_DESTROY handler -> crash in PMMERGE
		  Bugfixes for Enum(Thread/Child)Window (wrong call to get object ptr)
		  Fixed FindWindowEx method to map frame window to object ptr.
		  Fixed WM_WINDOWPOSCHANGED handler for scrollbars (set window &
		  client rectangle)
		  Fixed WM_MOUSEMOVE handler for scrollbars (return 1 to let
		  PM change the mouse cursor back to the default)
		  Fixed GetDlgItem. According to SDK docs this api should work
		  for any parent-child pair. (behaviour seen in VPBuddy)
		  Added MFC message support for message printfs

 99-10-17: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: replaced OS/2 scrollbars by WINE scrollbars
		  BUG: SCROLL_RefreshScrollBar doesn't work
		       GetDC returns a wrong DC, BeginPaint works as it should
		  Send as few WM_ENTERIDLE messages as possible -> low CPU usage
		  pmframe: removed WinFillRect
		  implemented: DrawIcon/DrawIconEx
		  fixed static icon size
		  pmframe: added PSF_CLIPSIBLINGS

 99-10-17: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
	- KERNEL32: Removed exception throwing from Pe2Lx classes.
		    Implemented TLS support in Pe2Lx classes.

 99-10-16: Yuri Dario <mc6530@mclink.it>
	- USER32: Button bugfix (BUTTON_CheckAutoRadioButton)
		  Win32dlg.cpp: cosmetic changes
	- include\os2wrap.h: define inline as _inline in C mode
	- include\win\winsock.h: Added prototypes
	- src\makefile: shell32 depends on ole32 & version, build it after those two dlls
	- SHELL32: Replaced full path with CPPMAIN for wrc parameters
	- win32k/makefile: replaced full path with macros
	- WSOCK32: Build export library (impdef to create correct .def)

 99-10-16: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Don't process size messages before sending WM_NCCREATE
		  message when creating a window. (can mess up our window
		  and client rectangle)
		  Erase background for buttons. (fixes groupbox redraw problems)
		  isFrameWindow bugfix + MDI creation & WM_NCCALCSIZE bugfix

 99-10-15: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: CBT Hook bugfix. Only respond to WM_NCCREATE msg to send
		  HCBT_CREATEWND.
		  Scrollbar bugfix. Pass all msgs we don't use to default
		  window handler. (used to do this only for > WM_USER -->
		  return value of 0 for WM_NCCREATE cancels window creation)
		  GetWindow bugfix. (related window can be frame window)
		  Fixed window & child destruction process.
	- KERNEL32: Fixed VirtualQuery bug.

 99-10-15: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: Basic message translation to fix problems in win apps
		  that wait for a specific message. (NOT COMPLETE)

 99-10-14: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Fixed WM_WINDOWPOSCHANGED (frame window rectangle)
		  Partly implemented CopyImage (only simple copies of icons
		  and cursors; FAR FROM COMPLETE!)
		  Removed FillRect during WM_PAINT in subclassed frame handler.
		  (still some redraw problems with i.e. button.exe; a little
		   worse than before)

 99-10-14: Patrick Haller <phaller@gmx.net>
	- KERNEL32:	Fix: threads might need more memory in debug mode (thread.cpp)
			Fix: a little cleanup (virtual.cpp)
			Fix: lstrcpyAW taking NULL parameters (broken WINE controls?) (heapstring.cpp)
	- ADVAPI32:	Fix: RegConnectRegistryA slightly improved

 99-10-14: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
	- PE2LX:    New implementation in src\win32k\pe2lx.
		    No resource conversion. I have tested it, but do expect to
		    find some bugs. And when you find, please give me a hint.
		    The new Pe2Lx uses much support code,(heap, printf..)
		    from win32k. It also uses the sub-system CRT library (as
		    win32k does). This way more of the win32k code will be
		    tested in Ring 3, so there'll simply be less bugs to track
		    down in Ring 0 and kernel debugger/ICAT.
	- KERNEL32: Win32???Pe2Lx classes is updated to match the new Pe2lX.
		    Note that TLS is not implemented yet - it's in the line.
		    Fix: Made a temporary fix in atom.cpp for some of the W
		    functions. The string isn't allways a string... I do a
		    permanent fix some other day.
	- WIN32K:   Compiles and links. But Not Tested!

 99-10-14: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: lstrcmpW: check for null pointers
		  RemovePropA SetPropA bugfixes (wrong wnd handle)

 99-10-14: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Fixed shrinking listbox in shell about dialog.
		  (add border size to size during window creation & SetWindowPos)
		  Support for WM_NCCALCSIZE. Not completely working yet.
		  Fixed crash in Winhlp32 (annotate creates multiline edit
		  control that received PM messages too early -> divide by 0)
		  -> Don't allow WM_WINDOWPOSCHANGED messages until after WM_NCCREATE.
		  Removed previous OSLibMapWINDOWPOStoSWP bugfix.
		  Default dialog xBaseUnit = 10, yBaseUnit = 20.
		  Only set FCF_TASKLIST bit when parent == desktop & window
		  has titlebar. (too many Opera windows in tasklist)
		  Clear unsupported frame styles (i.e. no titlebar & minimize/maximize button)
		  Fixed MapOS2ToWin32Rectl & GetWindowRect.
		  Removed code that adds bordersize during SetWindowPos & window
		  creation. Fixed listbox code instead. (use window rectangle
		  for SetWindowPos call, not client rectangle)

	- USER32: Rewrote window creation. All Odin windows are OS/2 frames.
		  2nd half of window/dialog creation carried out during OS/2
		  WM_CREATE message.
		  Don't call default frame handler during WM_ADJUSTWINDOWPOS
		  for child windows. Fixes incorrect position.
		  Probably needs to be fixed again.
	  NOTE: NOT WORKING CORRECTLY JUST YET!!

	- COMCTL32: Check infoPtr in toolbar during WM_ERASEBKGND
	- KERNEL32: Added wprocess.cpp dependency for include\win\thread.h
		    Bugfix for loading dlls in pe loader -> increase reference count
		    In iLoadLibrary first check if the dll has already been loaded.
		    Fixed console initalization for pe loader apps.
		    Fixed SetWin32TIB. Return current FS selector for Odin32 apps.
		    Removed generic.exe fix in OS2UnsetExceptionHandler.
		    (creates problems when loading multiple PE dlls with pe loader
		     and generic.exe still works fine now)
	- SHELL32: use wrc from tools directory

 99-10-13: Patrick Haller <phaller@gmx.net>
	- KERNEL32: Fix: XCPT_GUARD_PAGE_VIOLATION are now supported.
			 (helps PROGMAN.EXE)
	- USER32:   Fix: parameter checking in RedrawWindow
		    Fix: temp fix for MsgWaitForMultipleObjects

 99-10-12: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: DrawMenuBar & DrawCaptionTempA bugfix (window handle translation)
		  Added Win32ToOS2FrameHandle method
		  Set default mouse pointer back if app doesn't process WM_MOUSEMOVE
		  message.
		  Bugfix in button control -> return non-zero if WM_MOUSEMOVE
		  message doesn't change the cursor.
		  Same fix in edit & listbox control.
		  Looks like the same bug is in the scrollbar code.
		  Preliminary listbox fixes (scrollbar related)
		  Don't show scrollbars when window is created.

	- USER32: Added support for extra messages in default window handler.
		  Partial support for WM_SYSCOMMAND in default window handler.
		  MDI child bugfix (window now displayed correctly)
		  Only subclass frame when it has a 3d border OR *only* the
		  WS_BORDER borderstyle.
		  Fixed y mapping bug in OSLibMapWINDOWPOStoSWP (converted
		  twice (win32 -> os2 -> win32))
	- USER32: Set focus to edit control when receiving WM_LBUTTONDOWN

	- USER32: Don't send WM_COMMAND during WM_SETFOCUS in edit control when
		  dialog hasn't been completely created. (crashes VPBuddy; can't
		  find dialog control that hasn't been created yet)
		  NOTE: EXPERIMENTAL FIX. NEEDS TO BE CHANGED.

 99-10-11: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: pmframe finished

 99-10-11: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Disabling the desktop window is a very bad idea.
		  (desktop no longer responds to mouse clicks)
		  Enable method in desktop window class that does nothing.
		  Added support for extra messages in msg printf code
		  Ported almost all Wine code for CTLCOLOR messages.
		  Return -1 in DefWindowProc for WM_VKEYTOITEM & WM_CHARTOITEM
		  Fix for MDI child window. They're now displayed, but it's
		  still not right.
	- SHELL32: Fixed Shell32 about dialog.
		   Compile Wine resource with WRC and link with dll.
		   Added version resource
		   Call Wine dll entrypoint in initterm.cpp.
	- INCLUDE: Only include stdlib.h when wrc is not active
		   Extra definitions for compiling win32 apps in OS/2

 99-10-11: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- GDI32: GetTextFaceW bugfix
	- USER32: Init ownDC to 0
		  Create empty dialog in CreateWindowExA/W if class == dialog
		  Support for class atoms in CreateWindowExA/W
		  Win32Dialog::getNextDlgGroupItem() bugfix

 99-10-11: Christoph Bratschi <cbratschi@datacomm.ch>
	- GDI32: Bugfix for Pie Open32 api

 99-10-10: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: fixed radio buttons, disabled text output

 99-10-10: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Ported GetNextDlgGroupItem & GetDlgItemInt from Wine
		  Window handle translation fix for MessageBoxW
		  Don't create frame windows for windows with a 3d border.
		  (fixes crash in VPBuddy; don't know why)
	- COMDLG32: Fix for most unicode functions (window handle translation
		    missing as reported by Edgar Buerkle)

 99-10-10: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- KERNEL32: Bugfix for GetFullPathNameW (NULL ptr check)

 99-10-09: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Clipboard fixes (window handle translation)
		  Fixed button redraw when receiving a WM_ENABLE msg
		  Use the supported Open32 system colors and only use
		  those from Wine for the new (9x) colors
	- SHELL32: Moved old to current, current to old dir
	- KERNEL32: Don't switch FS selectors for Odin32 OS/2 apps (win32
		    apps compiled in OS/2).
		    Fixed reversed stack top & bottom in TEB structure.
	- KERNEL32  Added code to dispatch OS exceptions to win32 apps.
		    Doesn't seem to be necessary though, so it's inactive for now.
	- USER32:   Fixed resizing in winhlp32. Doesn't seem to break anything
		    else. (needs more testing though)
		    Only increase y position of window if it's initial y <> 0.
		    Fixed desktop window lookup (GetWindowFromHandle)
		    Set dummy desktop window handler;
		    Mdi client bugfix (reported by Yuri Dario)

 99-10-09: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Implemented functions; only 62 stubs left

 99-10-09: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: Enabled accelerator WM_COMMANDs
	- COMDLG32: Fix for GetOpenFileNameW (owner hwnd translation)

 99-10-08: Daniela Engert <dani@ngrt.de>
	- USER32: fix: miscoloured bitmaps

 99-10-08: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: added WM_STYLECHANGING/WM_STYLECHANGED.
		  button,combo: bitmap fix.
		  added frame to children with WS_* border flags
		  subclass frame windows
		  SendDlgItemMessageA/W fixed
		  CheckRadioButton fixed
		  merged controls with WINE 990923

 99-10-08: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- KERNEL32: Accelerator conversion fixes + changes

 99-10-08: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Bugfix for SetWindowPos; take frame size into account
		  Removed WM_MOVE notification class flag for Odin PM windows
		  Removed SetWindowPos frame size bugfix
		  Removed WM_WINDOWPOSCHANGED cy bugfix
		  Set WS_DISABLED window style bit when receiving PM WM_ENABLE
		  GetClassInfoA bugfix
		  Window property bugfixes (no handle translation)
		  Set last error when window creation fails.
		  In DefDlgProcA/W, call DefWindowProcA/W if window is not
		  a dialog. Fixed problems in VPBuddy.
		  Unknown if that's a bug in the app or something else goes wrong.
	- KERNEL32: Bugfix for loading winspool
		    Ported latest Wine exception code (RtlRaiseException/RtlUnwind)

 99-10-07: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: GetCaretPos() fix

 99-10-07: Achim Hasenmueller <achimha@innotek.de>
	- USER32: Corrected pageup/pagedown behavior

 99-10-07: Rene Pronk <R.Pronk@twi.tudelft.nl>
	- USER32: Fixed WM_WINDOWPOSCHANGED behavior so that
		  client windows are properly resized. This fixes
		  the Winhlp32 history resize problem

 99-10-07: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: Set window PM id for Odin windows.
		  Bugfix for WM_QUERYWINDOWPARAMS handler
		  Case insensitive string compare in CreateWindowExA/W for
		  mdi client class check.
		  Create ascii or unicode mdi child window based on mdi client
		  window type.

 99-10-07: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Includes all functions (added stubs and fully implemented functions)

 99-10-07: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Only display scrollbars when they need to be shown.
		  (also fixes redraw problems with inactive scrollbars)
		  Resize bugfix. Winhlp32 can now be resized without problems.
		  Whether this fix is correct is another matter.

 99-10-06: Daniela Engert <dani@ngrt.de>
	- USER32: fix: adjust caret position if window height changes.

 99-10-06: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Fixed memory leaks in SetWindowTextA/W window class methods
	- KERNEL32: Put back my changes (10/04/99) in winimgres.cpp

 99-10-06: Patrick Haller <phaller@gmx.net>
	- KERNEL32: Fix: DLLs without Resource Segment (pResDir == NULL)
		    Fix: VirtualFree not freeing memory fixed, WINHLP32 looks healthier :)

 99-10-05: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: rewrote color management

 99-10-05: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Set fs:0 to -1 in OS2UnsetExceptionHandler.
		    Prevents crash due to corrupted handler chain (see
		    comments in that function)
	- ODIN32API: Remove exception handler set & unset. Not necessary
		     as it's also done in the start method of an exe image.

 99-10-04: Patrick Haller <phaller@gmx.net>
	- SHELL32\NEW: Compilation fix (indirectly included win32type.h)
	- KERNEL32:    Support for DisableThreadLibraryCalls

 99-10-04: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- USER32: Fixes for window style update, mouse button messages,
		  WS_CAPTION style and apps with a dialog as their main window.
		  (set owner to desktop)
	- KERNEL32: Extra checks for valid heap pointers

 99-10-04: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Deleted dialog.cpp
		  Set last error to 0 if dialog creation succeeds.
		  Added flag to distinguish between messages sent by PM and
		  those sent by apps
		  Handle WM_SETTEXT messages passed to default window handler
		  (only if not sent by PM)
	- VERSION: Fix for string compares in VersionInfo32_FindChild (has
		   to be a lstrcmpniW)
	- SHELL32: Removed nameid.h include in she.cpp & sh.cpp. Fixed makefile
		   addition for export library (extra ".." for tool path)
	- DPLAY, MSACM32: Compilation fix (indirectly included win32type.h)
	- KERNEL32: Fixed getVersionStruct for PE & LX images (didn't copy
		    version data before)
		    Fixed module name lookup for win32 images executed by the PE
		    loader. (can't use OSLibQueryModuleHandle for those)
		    Added lstrcmpniW function
		    Set full path for LX images
		    Support for retrieving the first resource of a certain type
		    (version ids no longer hardcoded as id 1; just get the first one
		     present)

 99-10-04: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Implemented functions + added stubs
	- MSVCRT: More stubs + crtdll forwarders

 99-10-04: Yuri Dario <mc6530@mclink.it>
	- ddeml.h: new macros
	- mmsystem.h: changed sndPlaySound and mciCommand prototypes (as in MS sdk)
	- shlobh.h: added ifdef for direct inclusion
	- winbase.h: added UnlockResource macro
	- windef.h: changed return type (maybe also other functions are wrong)
	- windows.h: included ddeml.h
	- windowsx.h: added macros
	- wingdi.h: added win95 bitmap structures
	- winuser.h: few macros and changed DLGTEMPLATE prototypes as in MS sdk
	- crtdll.cpp: now includes libc/locale.h, so toolkit headers are included also for VA36
	- shell32/makefile: added code for library export.
	- shell32/new/makefile: added code for library export.
	- dialog.cpp: DLGTEMPLATE changes
	- windlg.cpp: DLGTEMPLATE changes.
	- win32k/makefile: corrected paths
	- win32k/include/pe2lx.h: this section should be included for VA36

 99-10-03: Daniela Engert <dani@ngrt.de>
	- USER32: WM_MOUSEMOVE bugfix (removed check for captured mouse)

 99-10-03: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Updated window class with isMDIClient method
		  Fixed DrawTextExA/W compile errors (different parameter types)

 99-10-02: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: DrawTextExA/W: implemented DT_END_ELLIPSIS
		  added DrawTextExA/W to header files

 99-10-02: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- VERSION: Allocation bugfix in VerQueryValueA
	- USER32: Added style changes for PM windows + don't clear WS_VISIBLE
		  flag when converting window styles. (fixes buttons in winhlp32)

 99-10-01: Sander van Leeuwen <sandervl@xs4all.nl>
	- DDRAW: ifdef'ed out code that causes crash (OS2Surface destructor)
		 Free original translation buffer, not the one aligned to qword
		 boundary.
	- USER32: Create frame window for windows with desktop as parent (i.e. WS_POPUP)
		  This makes sure WM_ACTIVATE messages are sent.
		  Scrollbar changes.
		  Call DestroyWindow when DefWndProc receives WM_CLOSE msg.
	- KERNEL32: Allocate memory from heap when HeapReAlloc is called with
		    a NULL memory pointer (WINE listbox control depends on this)
	- AVIFIL32: Compilation fix

 99-10-01: Edgar Buerkle <Edgar.Buerkle@gmx.net>
	- KERNEL32: Skip spaces in command line string
	- USER32: Fix for MessageBoxA (window handle conversion)
		  Fixes for combobox (handles null pointers)
	- GDI32: Added OSLibSetDIBitsToDevice

 99-10-01: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Implemented functions + added stubs
	- MSVCRT: More stubs + crtdll forwarders

 99-09-29: Daniela Engert <dani@ngrt.de>
	- USER32: improved timer handling for caret blinking.
		  recreate carets on focus change if needed.

 99-09-29: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Almost completed standard window scrollbars.
		  Fixed WM_ACTIVATE message, generate WM_ACTIVATEAPP message
		  when WM_ACTIVATE is received. (instead of WM_SETFOCUS)
		  NOTE: Still not working correctly. Too many WM_ACTIVATEAPP msgs generated.
		  Always send Odin window handles from pmwindow.cpp to win32wbase.cpp.
		  Send WM_CHILDACTIVATE msg to MDI child windows.

 99-09-28: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: Mouse input functions: SetCapture() fixed
		  SystemParametersInfo(): fonts fixed
		  GetSystemMetrics(): changed icon size to 32x32
		  Sorting and fixing user32.cpp

 99-09-28: David Raison <djr@lemur.co.uk>
	- KERNEL32: Fixed GetComputerNameA

 99-09-28: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Updated _except_handler2 + added Wine source changes
	- MSVCRT: Created. Forwards most apis to CRTDLL or NTDLL.

 99-09-28: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Only generate WM_CHAR when TranslateMessage is called for
		  WM_KEYDOWN. (TODO: WM_SYSCHAR)

 99-09-28: Daniela Engert <dani@ngrt.de>
	- USER32: Caret functions implemented
		  ScrollDC implemented
		  ScrollWindowEx implemented

 99-09-28: Patrick Haller <phaller@gmx.net>
	- KERNEL32:	Add: debug info for missing API imports (WinImagePeLdr)
			Fix: source cleanup, introduction of WIN32.DIR.SYSTEM and WIN32.DIR.WINDOWS
			     as overrides over the STUPID Open32 result. I don't want to have Win32 apps
			     messing up x:\OS2 ....

 99-09-26: Daniela Engert <dani@ngrt.de>
	- USER32: SetTimer/KillTimer work now.

 99-09-26: Achim Hasenmueller <achimha@innotek.de>
	- COMCTL32: Merged with WINE 990923 changes
		    (propsheet.c not fully done)

 99-09-26: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32:   Started with standard window scrollbar implementation
		    Rewrote ScrollWindow (seems to work ok)
		    Set text bugfix (crash in about dialog box of generic.exe)
		    Send WM_INITDLG after creation of dialog controls.
		    Set last error to 0 at end of BeginPaint/EndPaint.
		    Set last error when window not found (window.cpp/windlg.cpp)
		    WM_(SYS)KEYUP/DOWN bugfix (repeat cnt & scancode reversed)
		    Generate WM_CHAR message when TranslateMessage is called for
		    WM_CHAR (PM) message. (sent after WM_(SYS)KEYUP/DOWN)

 99-09-25: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: WS_EX_* 3D frame support for child windows
	- USER32: Double click handling changed

 99-09-25: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32:   Cursor fixes. Cursor shown correctly in winhlp32.
		    Don't call WinDefWindowProc for WM_MOUSEMOVE (resets
		    cursor to system default)
		    RedrawWindow: set window pointer to desktop window when hwnd == NULL
	- KERNEL32: Cursor & cursorgroup fixes
		    Fixes for thread local memory allocation (only done for thread 0)
		    Create TEB selector + memory for threads we don't create.
		    (i.e. DART threads in WINMM)
		    NOTE: Not tested.
	- USER32\OLD, KERNEL32\OLD: Fixed makefiles + changes to make them
				    work with new dlls.

 99-09-25: Daniela Engert <dani@ngrt.de>
	- USER32: ClientToScreen and ScreenToClient didn't work -> fixed.

 99-09-24: David Raison <djr@lemur.co.uk>
	- OLE32: Ported remaining files pertaining to OLE32 from WINE
	- OLEAUT32: Patched OaBuildVersion to level 0x1E...

 99-09-24: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Rewrote menu code to use Open32 (==PM) menu handles
		  Note: Uses mostly Open32 apis; they work fine, but maybe
			we should write our own someday.
		  Cursor fixes. Not working in winhlp32 yet though.
	- KERNEL32: Cursor & cursorgroup fixes

 99-09-23: Patrick Haller <phaller@gmx.net>
	- KERNEL32:	Fix: WinImgRes:findResourceW erroneously tried to free
			numerical resource IDs instead of translated Unicode
			strings.
	- USER32:	Fix: in USER32:HeapShared:getmoreShared()
			Fix: in USER32:WIN32WMDIClient:childActivate()
			Fix: in USER32:WinMenu:GetSubMenu
				now returns Win32MenuRes object instead of PM handle
			Fix: in USER32:WinMenu:GetSystemMenu
				now returns Win32MenuRes object instead of PM handle
			Fix: in USER32:Char:CharPrevW intermixed arguments

 99-09-23: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Added stubs, implemented some stubs
	- IMAGEHLP, IMM32, MSACM32, MSVFW32, OLEDLG,
	  OLECLI32, OLESVR32, PSAPI, RASPI32
		  Added dprintfs.

 99-09-23: Sander van Leeuwen <sandervl@xs4all.nl>
	- WINMM: Changed WinPostMsg calls into PostMessageA as win32 window
		 handles are not the same as PM handles anymore.
	- USER32: Adding desktop window class. When user32 is loaded, a desktop
		  window object is created.
		  GetDesktopWindow returns handle of this window.
		  Winhlp32 no longer crashes immediately, but briefly shows
		  it's window before quitting.
		  Create windows always with HWND_TOP. The if statement (hwndLinkAfter)
		  in the CreateWindowExA method of Win32BaseWindow class messes
		  up the Z-order of dialog controls (i.e. buttons in a group box)
	- COMDLG32: Fixed all common dialogs. (translate our handle to real PM handle)

 99-09-22: David Raison <djr@lemur.co.uk>
	- KERNEL32: Return "Service Pack 3" as CSD string in GetVersionExA/W

 99-09-22: Yuri Dario <mc6530@mclink.it>
	- MISC: Fixed WINELIB macro's in wingdi.h, added fixes to headers
		for VAC 3.6.5
	- ODINCRT: Also link with SOMLIB (VAC 3.6.5)
	- CRTDLL: Compilation fix for VAC 3.6.5
	- TOOLS\COMMON: Minor change to makefile
	- TOOLS\IMPDEF: Minor change to makefile
	- TOOLS\WRC: Makefile fixes

 99-09-22: Rene Pronk <R.Pronk@twi.tudelft.nl>
	- USER32: Changed WM_CHAR PM handling to generate WM_(SYS)KEYUP/DOWN
		  messages.
		  Note: Not complete as TranslateMessage doesn't translate
			ascii keys to WM_CHAR messages.

 99-09-22: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Removed GetDesktopWindow fix
		  Ported getNextDlgTabItem & getDlgItem

 99-09-21: Daniela Engert <dani@ngrt.de>
	- USER32:   background erasing/painting stuff hopefully finished.

 99-09-21: Patrick Haller <phaller@gmx.net>
	- KERNEL32: Add: GetFileAttributesExA/W implemented (ugly)

 99-09-21: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Fixed cursor group conversion
	- PELDR:    Committed my latest sources. (rewrite for new kernel32 image classes)

 99-09-21: Edgar Buerkle <100566.557@compuserve.com>
	- USER32:   Fixed GetDesktopWindow, added message handling for WM_TIMER
		    added code to choose best icon from icon group. (in OSLibWinCreateIcon)
	- KERNEL32: Fix for converting icons & icon groups

 99-09-19: David Raison <djr@lemur.co.uk>
	- OLE32: Added AntiMoniker,
		 Updated regsvr32 to use RegisterLxExe

 99-09-20: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Fix background of button, group & static text
		  NOTE: Changed default behaviour of WM_CTLCOLOR* handling.
			Don't know if this is correct, but it fixes problems
			in dialogs (text with white instead of gray background)

 99-09-20: Markus Montkowski
	- WNASPI32: full implementation via ASPIROUT$ device driver.

 99-09-19: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32: Increased font pointsize for dialog (multiplied by two)
		  (probably not the right way to do things, but it works for the
		   dialogs in Solitaire)
		  Activated MsgEraseBackground method again (pmwindow.cpp)
		  Dialogs don't receive those otherwise.
		  (may need to be changed back again)

 99-09-19: David Raison <djr@lemur.co.uk>
	- USER32: Partially implemented MessageBoxIndirectA/W (forwarded to MessageBox)

 99-09-18: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Added resource support for win32 apps compiled in OS/2
	- INCLUDE: Header file changes for win32 apps compiled in OS/2
	- VERSION: Create correct import lib
	- WINMM:   Create correct import lib
	- MSACM32: Link with winmm.lib, don't import apis from .def file
	- MSVFW32: Link with winmm.lib, don't import apis from .def file

 99-09-18: Przemyslaw Dobrowolski <dobrawka@asua.org.pl>
	- KERNEL32: Implemented lstrncmpiA

 99-09-18: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Added stubs
	- SHELL32(NEW)/MSACM32/MSFW32: Link with kernel32 for lstrncmpiA

 99-09-17: Daniela Engert <dani@ngrt.de>
	- USER32:   Fix: window focus management.
		    OSLIBWIN.H: the definitions of OSLIB_HWND_DESKTOP and
		    OSLIB_HWND_OBJECT were 1 off (with respect to the definition
		    in PMWIN.H)! So OSLIB_HWND_DESKTOP was in effect NULLHANDLE,
		    and OSLIB_HWND_OBJECT was HWND_DESKTOP.

 99-09-16: Daniela Engert <dani@ngrt.de>
	- USER32:   Fix: UpdateWindow
		    New: RedrawWindow (preliminary), InvalidateR*

 99-09-16: Patrick Haller <phaller@gmx.net>
	- USER32:   Fix: DIB_FixColorsToLoadflags - incr was not initialized
		    Fix: WINMENU::GetSystemMenu() was broken.

 99-09-15: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Moved old kernel32 code to kernel32\old
		    Rewritten win32 exe/dll classes.
		    There are now classes for the following exes/dlls:
		    Pe2lx images, win32 images loaded by the pe loader and
		    LX images (win32 apps compiled in OS/2 and system dlls)
		    Bugfixes for unicode resource apis.
		    Not completely tested yet, but works for most apps.
	  NOTE:     Resource handling for pe2lx & win32 apps compiled in OS/2
		    will be added in the near future. For now it's compatible
		    with the old pe2lx.
	  NOTE:     New kernel32 doesn't work with old user32
	  NOTE:     Win32Resource::lockResource not complete yet, but that part
		    will be removed after the pe2lx rewrite.
	- USER32:   Moved new user32 into user32 dir, old one to user32\old
	- ALL:	    Changed initterm.cpp to create LX dll object during initialization.
	  IMPORTANT NOTE: Version increased from 3 to 4. Complete recompilation
			  of everything is required!

 99-09-14: Patrick Haller <phaller@gmx.net>
	- AVIFIL32:   ported AVIFIL32 from WINE
	- DPLAY:      ported DPLAY from WINE
		      Note: DPLAYX is required and NOT ported yet.
			    Furthermore, DPLAY has still stubs.
	- DPLAYX:     ported DPLAY from WINE (incomplete)
		      Note: still problem with COM-inheritance-macro XCAST()
	- WNASPI32:   ported WNASPI32 from WINE
		      Note: someone should adapt it to OS/2's R3 ASPI router

 99-09-14: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Implemented Enum(Thread/Child)Windows based on Edgar
		      Buerkle's code with modifications for new user32 and
		      added some enhancements.

 99-09-13: Jens Wiessner <wiessnej@rfi.de>
	- NTDLL: Added CRT-functions.

 99-09-13: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: DC/related code: ReleaseDC, GetWindowDC, DC destruction,..

 99-09-13: Patrick Haller <phaller@gmx.net>
	- SHELL32\NEW:	updated to current wine level

 99-09-13: David Raison <djr@lemur.co.uk>
	- KERNEL32: Fixed MultiByteToWideChar. Return size of string including
		    0 terminator.

 99-09-13: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Added functions.

 99-09-08: David Raison <djr@lemur.co.uk>
	- OLEAUT32: Updated TypeLib code to find typelibs in EXE/DLL etc
		    NB Still need to fix typelib translation.

 99-09-12: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: DC/related code: GetDCEx implemented. Slightly enhanced
		      over Open32.

 99-09-12: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
	- WIN32K: An untested version is checked in. The new skeleton is
	  partially tested. PE2LX is not updated and will probably not be updated
	  before pe2lx is rewritten.

 99-09-09: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: begin new DC/related code. BeginPaint/EndPaint done.

 99-09-09: Patrick Haller <phaller@gmx.net>
	- SHELL32\NEW:	shell32 done, it compiles + links, no testing yet
	- USER32:	added stubs for GetMenuInfo + SetMenuInfo
	- USER32\NEW:	added stubs for GetMenuInfo + SetMenuInfo

 99-09-08: David Raison djr@lemur.co.uk
	- Src\OleAut32 Added stubs for undefined exports in OLEAut32

 99-09-08: Yuri Dario <mc6530@mclink.it>
	- INCLUDE\WIN: Changes to wingdi.h (more WINELIB_NAME defs) & winuser.h (mssing definitions)
		       Missing ';' in custcntl.h at line 106

 99-09-08: David Raison djr@lemur.co.uk
	- INCLUDE\WIN: Added DECIMAL definition to windef.h

 99-09-08: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
	- KERNEL32, USER32, USER32\NEW, GDI32, ADVAPI32: <dllname>exp.def is
	  now generated by a util called ImpDef. (source in tools\impdef).
	- INC: pdwin32.tools is updated with a IMPDEF macro. This requires
	  the macro PDWIN32_TOOLS too point to the tools\bin directory.
	- TOOLS: New directory tree for tools developed to aid us create odin32.
	  Create a subdirectory for each tool.
	  Currently database, impdef and omfdumper is placed here.
	- TOOLS\IMPDEF: generates the <dllname>exp.def files.
	- TOOLS\OMFDUMPER: source for the omfdumper use to create pmwinx.def.
	  Base source for a library converted used in win32k.
	- TOOLS\DATABASE: source for the odin32 API database and it's tools.
	  See the Odin32 API Database Design Document for more info.
	  Document will soon be placed in the 'Vault' of the win32-os2 group.
	- TOOLS\DATABASE\MYSQL: mysql headers and libraries.
	- TOOLS\DATABASE\GD: Gifdraw 1.2 - used to draw graphs.

 99-09-08: Patrick Haller <phaller@gmx.net>
	- OLE32: CLSIDFromStringA is needed in other modules, too. (SHELL32)

 99-09-08: Sander van Leeuwen <sandervl@xs4all.nl>
	- Removed /DNONAMELESSUNION from some makefiles (now defined in odin.h)
	- Minor changes to odin.h (nameless union allowed in VAC 3.6.5) & windowsx.h
	- USER32\NEW: Use fixed user32exp.def. Doesn't work for GetOS2Callback__15Win32WindowProcFv
		      (causes link failure for comdlg32)
	- TOOLS\WRC: Ported Wine wrc. Needs EMX+GCC

 99-09-07: Jens Wiessner <wiessnej@rfi.de>
	- CRTDLL: Created dll (Wine port)

 99-09-07: Patrick Haller <phaller@gmx.net>
	- OLE32: WINE_StringFromCLSID is needed in other modules, too. (SHELL32)
	- SHELL32\NEW:	improvement of shell32
	- KERNEL32: ToolHelp functions stubbed: Process32First, etc.

 99-09-05: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Dialog updates (not yet done)

 99-09-04: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: beginning with 'DAXifying' of our windows

 99-09-04: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Fixed icon- & cursorgroup conversion (Solitaire icon now correct again)
	- USER32\NEW: Started with Wine dialog code port. Dialog creation done,
		      but not tested.

 99-09-04: Jens Wiessner <wiessnej@rfi.de>
	- MSVFW32: Created stub (partly) dll (Based on Wine 990815)
	- PSAPI: Created stub dll (Based on Wine 990815)

 99-09-03: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: MDI child/client improvement (not all wine code has
		      been ported though)

 99-09-01: Patrick Haller <phaller@gmx.net>
	- *:	Cleanup of include files, some ICOM issues in particular,
		also fixes LONGLONG problem (now names LONGLONG_W)
	- SHELL32\NEW:	introduction of a straight port of WINE's SHELL32 implementation
		18 of 22 files are ported already

 99-09-01: Patrick Haller <phaller@gmx.net>
	- *:	Cleanup of include files. Warning: OS/2's BOOL is ULONG, WIN32 is INT.
		Causes C++ compilers to complain here and there. Plus many WINE prototypes
		are just plain wrong.
		This change should help porting shell32/new.


 99-09-01: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Fixed GetWindowDC (Freecell 'Cards Left' string drawn
		      at the right place)

 99-09-01: Jens Wiessner <wiessnej@rfi.de>
	- RASAPI32: Created stub dll
	- MSACM32: Created (partly) stub dll

 99-08-31: Patrick Haller <phaller@gmx.net>
	- WINMM:	revision of timer services (C&C RA)
	- KERNEL32:	temporary fix for DuplicateHandle for non-HandleManager handles
			little improvement in console properties
			incorrect anchor class for mutexes, events and semaphores
			fixed return codes for HMCreateFileMapping, HMOpenFileMapping
			Fix: FILE_MAP_ALL_ACCESS access flags for memory mapped files

 99-08-31: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Finished MDI class, but it's not working yet.
	- USER32\NEW: Fixed menu apis
	- KERNEL32\NEW: Changed makefile to generate response file (linker
			cmd line too long)
			Created resource class for menus (Win32MenuRes)
	- INC:	      Changed debug makefiles to include /dbgpack linker option
		      (compresses debug info)

 99-08-31: Rene Pronk <R.Pronk@twi.tudelft.nl>
	- USER32,USER32\NEW: Implemented ChildWindowFromPointEx

 99-08-30: Jens Wiessner <wiessnej@rfi.de>
	- OLEDLG: Created stub dll
	- INC\WIN: Update for ras.h

 99-08-30: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Redesign. Create base class for all window types
		      Delete Open32 class atoms before recreating them.
		      Added skeleton class for MDI client window.

 99-08-29: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Changed behaviour of mouse messages (send NC messages
		      when in non-client area + send WM_SETCURSOR msgs)
		      Don't send WM_MOUSEMOVE when mouse is captured.
		      Changed CreateMDIWindowA/W (don't call Open32 api anymore,
		      but post WM_MDICREATE msg)

	- KERNEL32 Interlock apis ported from Wine (with help of Patrick Haller)
	- INC: Removed Masm compatible flag for ALP and enabled debugging
	       info in debug build

 99-08-29: Jens Wiessner <wiessnej@rfi.de>
	- OLECLI32: Created stub dll
	- IMM32: Created stub dll
	- IMAGEHLP: Created (partly) stub dll

 99-08-28: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Use shared memory for window & class objects
		      Implemented FindWindow(Ex). Not yet tested
		      Fixed window names.
		      Created shared heap using VAC's _ucreate.
		      Separate window handle creation (in shared memory array)
		      PostMessage fixes (didn't work between two processes)
	- KERNEL32:   Fixed exception handling for kill signals & termination
		      Changed VMutex constructor (also allows creation of
		      shared mutex semaphores)
		      NOTE: This requires a complete recompile!!

 99-08-28: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: client windows get repositioned now when
		      the parent resizes

 99-08-28: Achim Hasenmueller <achimha@innotek.de>
	- COMCTL32: Merged with latest WINE updates (990815)

 99-08-28: Yuri Dario <mc6530@mclink.it>
	- INCLUDE\WIN: Added macros to windowsx.h

 99-08-27: Daniela Engert <dani@ngrt.de>
	- USER32\NEW: window creation, window relationship, window sizing and
		    positioning enhanced.
	- USER32\NEW: window and client rectangles are in sync with the WINE
		    structures now.

 99-08-27: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Rewrote memory mapped files for multiple views
		    Increased default nr of pages loaded so loading
		    large apps doesn't take forever to start in IPMD.
	- KERNEL32: Process dll exports before imports in order to support
		    circular dll dependencies.
	- KERNEL32: Replaced fopen/fclose calls in windll.cpp; they mess up FS.
		    Init full path of image during Init method.

 99-08-27: Patrick Haller <phaller@gmx.net>
	- KERNEL32: removed logging page faults if mmapped i/o

 99-08-26: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Cleaned up. (removed os2native.cpp & os2util.cpp and
		    replaced them with oslibdos.* & oslibmisc.*; put
		    Virtual* win32 apis in virtual.cpp)
	- KERNEL32: Added workaround for (what seems to be) an OS/2 bug.
		    Fixes crashes when reading from the memory mapped file.
		    (see comments in kernel32\mmap.cpp)
		    Bugfixes for VirtualProtect & VirtualQuery

 99-08-25: Jens Wiessner <wiessnej@rfi.de>
	- OLESVR32: Created stub dll

 99-08-25: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Use memory mapped files for PE loader
		    Readonly memory mapped files work. Read/Write has not
		    been tested yet. Shared mmaps don't work at this time.
	- KERNEL32: Set exception handler chain to -1 (not 0) in KillWin32Process
		    -> fixes large nr of exceptions
	- KERNEL32: Several changes for memory mapped files.
		    Put back handlemanager changes. (i.e. MapViewOfFile)
	- USER32\NEW: Deleted win32type.h
	- ADVAPI32: Fixed some incorrect definitions of security apis
	- INCLUDE\WIN: Changed WINE_NAME_AW definition (now you can use
		       apis without the 'A' or 'W' suffix)
	- INCLUDE: Added makefile for VAC 3.6.5
		   To compile use i.e.: nmake DEBUG=1 CCENV=VAC36
	- KERNEL32: Changed VIRTUAL_MapFileA/W
		    Changed OS2ImageInit from public to protected
	- KERNEL32: Added DuplicateHandle to Handle Manager (wasn't working before)
		    NOTE: Only works for file handles at this time!
			  The rest still needs to be implemented.
	- USER32\NEW: Changed loadres.cpp call to VIRTUAL_MapFileA

 99-08-24: Patrick Haller <phaller@gmx.net>
	- USER32:   added extended Open32 WinX control styles (OS2CTLWX)
	- KERNEL32: HandleManager support for memory mapped files
		    Added FindFirstFileW, FindNextFileW
		    Bugfix in ExitProcess / iConsoleWaitClose
		    Bugfix in OS2Heap::OS2Heap (Heap 0 always valid for NT programs?)

 99-08-24: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: One mutex per type of generic object + mutex protection
		      of linked list access in win32 classes
	- KERNEL32: Implemented VirtualQuery (not yet tested)
		    VirtualQueryEx calls VirtualQuery, VirtualProtectEx calls
		    VirtualProtect
	  NOTE: VirtualQueryEx & VirtualProtectEx can't handle addresses of other
		processes
	- KERNEL32: Added memory mapped file class (not hooked up to apis or
		    exception handler yet; just committing my preliminary code)

 99-08-23: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Dll load order bugfix (PE loader)
	- USER32\NEW: Added two dummy exports so comdlg32 will load
	  NOTE: This is a temporary hack and needs to be changed.
	- USER32\NEW: Fix for OSLibWinCreateIcon (supports single icons now)
	- KERNEL32: Logging change, now creates a unique logfile for each
		    process. (multiple win32 apps active -> multiple logfiles)

 99-08-23: Patrick Haller <phaller@gmx.net>
	- USER32/NEW: partial (not compiling yet) port of DIALOG.C
	- USER32:     fix: Win32Proc constructor crash (GetClassInfoA(of a Systemclass))


 99-08-22: Sander van Leeuwen <sandervl@xs4all.nl>
	- OLE32: Changes for updated WINE headers
	- OLEAUT32: Created (Wine port: Based on 990815 code)
	- KERNEL32: Export HEAP_* string functions in lib
	- KERNEL32: Fixed some PE resource dll load bugs
	- KERNEL32: Moved CloseLogFile call to after DestroyTIB (fixes crashes
		    as WriteLog was still called in DestroyTIB & WriteOutProfiles)
	- KERNEL32: Added exception handling code for each thread, entrypoint &
		    TLS callbach handler.
		    OS2ExceptionHandler (in exceptions.cpp) is registered as the
		    main exception handler.
		    NOTE: Still needs to call original win32 exception handler
			  from OS2ExceptionHandler.
	- USER32/NEW: Changed WM_ERASEBKGND handling. Fixes FreeCell background.
		      (but might not be completely correct)
	- INCLUDE\WIN: Added custcntl.h & fixed GetObject definition
	- INCLUDE\WIN, WIN\WINE: Added several files, updated OLE headers
	- NTDLL: Some changes to make it compile again

 99-08-21: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32\NEW: Fixed window class bug. Freecell menu now properly
		      loaded.
	- USER32\NEW: Changed LoadBitmapA/W to load bitmaps internally
		      (also ported some Wine code for that purpose)
		      Not correct yet: some of Solitaire's bitmaps look bad
	- KERNEL32:   Fixed name id lookup bug for PE loader resources
	- KERNEL32:   AllocFixedMemory bugfix + added Aurora flag to DosAllocMem
	- KERNEL32:   Close logfile in kernel32 exit list -> last log messages
		      before crash now properly saved
	- PELDR:      Corrected makefile

 99-08-21: Yuri Dario <mc6530@mclink.it>
	- Makefiles: Link with predefined VAC lib (RTLLIB(_O))
		     Needed for VAC 3.6.5

 99-08-20: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: PE resource loading fixes
	- USER32/NEW: Changes to Load* resource apis
	- USER32/NEW: Put back LoadBitmap for now
		      Rewrote LoadIconA/W & LoadCursorA/W + added
		      extra code to oslib.

 99-08-20: Patrick Haller <phaller@gmx.net>
	- ODINWRAP: fixed invalid macros

 99-08-19: Patrick Haller <phaller@gmx.net>
	- ODINWRAP: fixed invalid recursion in ODINFUNCTION0-Debug
	- WINMM:    odinwrap macros
	- TAPI32:   odinwrap macros
	- MPR:	    odinwrap macros
	- COMDLG32: odinwrap macros
	- WNETAP32: odinwrap macros
	- WINSPOOL: odinwrap macros

 99-08-19: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: PE loader resource fixes + ConvertNameId bugfix
		    Added pe2lx conversion code for menus, accelerators,
		    bitmaps, icons, cursors, icon & cursor groups.
		    Put back _CreateWin32Exe export in kernel32exp.def
	- KERNEL32: Used Odin wrappers for profile apis (mess up FS)
	- USER32 & USER32\NEW: Cleaned up icon code

 99-08-18: Patrick Haller <phaller@gmx.net>
	- NTDLL:    tons of new stubs and crt functions
	- WNETAP32: tons of new stubs

 99-08-18: Sander van Leeuwen <sandervl@xs4all.nl>
	- Put back version check in most dlls (except odincrt.dll & peldr.dll
	  we don't want a kernel32 dependency there)
	- PELDR/KERNEL32: Use reserved memory by peldr.dll to store win32 exe
			  sections. (now loads exes without fixups & low base address)
			  Added TLS support.
	- KERNEL32: Lots of changes for the ring 3 PE loader (not completed)
		    Store PE header at start of module in memory, module handle
		    set to image base of module.

 99-08-18: Przemyslaw Dobrowolski <dobrawka@asua.org.pl>
	- KERNEL32: Profile bugfix (line 506) && removed redundant '\r'
		    (except on line 199)

 99-08-17: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32/LZ32: Fixed compilation problems introduced by changes below
	- ODINCRT: Rewrote __threadid Clib function to get rid of crashes
		   (restores OS/2 FS selector before accessing PIB ptr and
		    puts back original FS selector afterwards)
	  NOTE: No longer necessary to use ODIN_FS_BEGIN/ODIN_FS_END macros
	- DDRAW: Removed ODIN_FS_BEGIN/ODIN_FS_END calls
		 Fixed bugs in divewrap.h. Incorrect wrappers called themselves
		 instead of the original Dive apis.

 99-08-17: Patrick Haller <phaller@gmx.net>
	- LZ32:    can't export LZCopy as ID0, changed to alphanumeric export

 99-08-16: Sander van Leeuwen <sandervl@xs4all.nl>
	- PE loader: Started with rewrite
	- ODINCRT: Changed compile & link options
	- ODINCRT: Don't export ctordtorInit/Term. These functions must exists
		   locally for each dll/exe. Fixes crashes in pe loader and
		   corrupt converted exes generated by pe2lx
	- ALL: Makefile changes & initterm.cpp no longer calls c/c++ library
	       init & termination functions (should only be done in odincrt.dll)

 99-08-16: Patrick Haller <phaller@gmx.net>
	- SHELL32: integrated Christoph Bratschis SHELL32 stubs
	- WSOCK32: odinwrap macros

 99-08-16: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32: uitools.cpp update

 99-08-15: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32\NEW: controls: wine-990731 update

 99-08-14: Christoph Bratschi <cbratschi@datacomm.ch>
	- COMCTL32: wine-990731 update

 99-08-14: Sander van Leeuwen <sandervl@xs4all.nl>
	- INCLUDE\win\windows.h: Include odin.h if __WIN32OS2__ is defined

 99-08-13: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Export heap functions by ordinal
	- src\makefile: compile lz32 before version (dependency)

 99-08-12: Patrick Haller <phaller@gmx.net>
	- VERSION: enhanced plus odinwrap macros

 99-08-11: Patrick Haller <phaller@gmx.net>
	- ODINCRT: ordinal exports
	- ADVAPI32:odinwrap macros (partially)
	- LZ32:    odinwrap macros

 99-08-10: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32/NEW: Fixed makefile (link with odincrt)

 99-08-10: Patrick Haller <phaller@gmx.net>
	- LZ32: added preliminary support for independend LZ32 library

 99-08-09: Patrick Haller <phaller@gmx.net>, Achim Hasenmueller <achimha@innotek.de>, Markus Montkowski
	- ODINCRT: providing a extensible wrapping layer for VAC++ runtime functions
		   change is non-intrusive for existing source.

 99-08-06: Patrick Haller <phaller@gmx.net>
	- USER32:    added stubs so NT4's WINFILE can load
	- SHELL32:   added stubs so NT4's WINFILE can load
	- NTDLL:     added stubs so NT4's WINFILE can load

 99-08-05: Patrick Haller <phaller@gmx.net>
	- KERNEL32:  interactive control over UnhandledExceptionFilter
	- KERNEL32:  FormatMessageAW fixed. Do not mix ODIN's heap functions with VAC heap functions
	- KERNEL32:  added WINE-style string functions in Heapstring.cpp
	- SHELL3232: RestartDialog @59 stub added. IE2 can load now with NT4's URL.DLL.

 99-08-05: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32:  Bitmap conversion bugfix; always recalculate bitmap size
		     (bitmap in donut.exe (ddraw sample) contains wrong size)

 99-08-04: Patrick Haller <phaller@gmx.net>
	- KERNEL32:  fix for filename handling in kernel32/profile
	- KERNEL32:  fix for PROFILE_CopyEntry in kernel32/profile

 99-08-04: Sander van Leeuwen <sandervl@xs4all.nl>
	- PE2LX: Bugfix for icon conversion (heap corruption for ra95.exe; as
		 reported by Patrick Haller)

 99-08-04: Patrick Haller <phaller@gmx.net>
	- KERNEL32: Heap modification
	- KERNEL32: Windows 3 style profile support ported from WINE (removes Open32)

 99-08-03: Rene Pronk <R.Pronk@twi.tudelft.nl>
	- USER32: Ported DrawTextExA/W & DrawStateA/W

 99-07-27: Przemysaw Dobrowolski <dobrawka@asua.org.pl>
	- KERNEL32: Implemented GetComputerNameA/W

 99-07-25: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32/NEW: Lots of changes; Solitaire displays cards correctly
		      Status bar correctly drawn
		      Mouse msg translation still wrong.
		      Paint not correct.

 99-07-25: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: GetLocateInfoA bugfix
	- USER32/NEW: Lots of changes; now Solitaire starts, but draws cards incorrectly

 99-07-23: Yuri Dario <mc6530@mclink.it>
	- misc: Changes for compilation with VAC 3.6.5

 99-07-23: Edgar Buerkle <100566.557@compuserve.com>
	- VERSION:  VerQueryValueA/W Wine implementation ported

 99-07-22: Przemysaw Dobrowolski <dobrawka@asua.org.pl>
	- KERNEL32: Complete implementation of GetLocaleInfoA/W

 99-07-22: Edgar Buerkle <100566.557@compuserve.com>
	- KERNEL32: Fix for OS2GetResource (os2util.cpp)
	- PE2LX: Use unique resource id for version resource.
	- USER32: MapOEMToRealKey fix

 99-07-22: Sander van Leeuwen <sandervl@xs4all.nl>
	- DDRAW: Now compiles
	- COMCTL32: Create library with correct api names

 99-07-21: Edgar Buerkle <100566.557@compuserve.com>
	- KERNEL32: Fix for LoadResource; should return pointer to resource data
		    LockResource just returns the pointer returned by LoadResource

 99-07-20: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32/NEW: Added support for window icons and accelerators.
		      Accelerators don't work yet.
	- PE2LX: Save icons in different format (BITMAPINFOHEADER2)

 99-07-19: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Added method for retrieving converted OS/2 resource
		    (which will be changed later on)
	- USER32/NEW: CreateWindowEx now works and menus are displayed

 99-07-17: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32: Exports for getting TEB & THDB added

 99-07-15: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32/NEW: Unicode & window handle translation bugfixes

 99-07-14: Christoph Bratschi <cbratschi@datacomm.ch>
	- USER32/NEW: several bugs fixed, compiles now
		      CreateWindow doesn't work yet

 99-07-13: Sander van Leeuwen <sandervl@xs4all.nl>
	- USER32/NEW: *VERY* preliminary/alpha code for Open32 replacement in user32
		      Compiles, but not tested at all.

 99-07-12: Patrick Haller <phaller@gmx.net>
       - KERNEL32: various console fixes

 99-07-10: Edgar Buerkle <100566.557@compuserve.com>
	- USER32: Fixes for CreateWindowExW and several unicode menu apis

 99-07-07: Sander van Leeuwen <sandervl@xs4all.nl>
	- KERNEL32/PE2LX: Added support for TLS sections
	- KERNEL32: Added thread attach/detach messages for dlls
		    Fixed some bugs, cleaned up code
	  NOTE: THIS CHANGE BREAKS ALL PREVIOUSLY CONVERTED APPLICATIONS
		RECOMPILE ALL DLLS AND CONVERT EVERYTHING AGAIN!!!!!!!!!
		THIS CHANGE ALSO BREAKS WIN32K!

 99-07-06: Patrick Haller <phaller@gmx.net>
	- KERNEL32: major enhancement of handlemanager

 99-07-06: Edgar Buerkle <100566.557@compuserve.com>
	- PE2LX: Finished support for codepages

 99-07-05: Patrick Haller <phaller@gmx.net>
	- SHELL32: SheSetCurDrive stub, ...

 99-07-05: Sander van Leeuwen <sandervl@xs4all.nl>
	- LIB\libconv.def: Added name with '_' appended. (or else Watcom won't
	  link pe2lx\misc.cpp properly)

 99-07-05: Edgar Buerkle <100566.557@compuserve.com>
	- PE2LX: Preliminary support for codepages

 99-07-05: Patrick Haller <phaller@gmx.net>
	- KERNEL32: HandleManager fixes as suggested by Edgar Buerkle

 99-07-04: Christoph Bratschi <cbratschi@datacomm.ch>
	- PE2LX/USER32: Dialog default font set to WarpSans + fixes

 99-07-02: Christoph Bratschi <cbratschi@datacomm.ch>
	- PE2LX/USER32: Dialog bugfix for entryfield strings

 99-06-30: Christoph Bratschi <cbratschi@datacomm.ch>
	- KERNEL32: Unicode changes (unicode.cpp)
		    lstrcpynA/W (kernel32.cpp
	- USER32: LoadStringA unicode conversion bugfix
	- USER32: Changed SystemParameterInfo for default font (now 9.WarpSans)

 99-06-30: Przemysaw Dobrowolski <dobrawka@asua.org.pl>
	- WINMM: Implemented remaining joystick apis + bugfixes

 99-06-29: Patrick Haller <phaller@gmx.net>
	- KERNEL32: GetLocaleInfoA bugfix (lang.cpp)

 99-06-29: Przemysaw Dobrowolski <dobrawka@asua.org.pl>
	- WINMM: Implemented most of the joystick apis

 99-06-28: Christoph Bratschi
	- USER32: AsciiToUnicodeN bugfix (unicode.cpp)

 99-06-28: Sander van Leeuwen
	- USER32: Get/SetWindowLongA bugfix for dialog controls

 99-06-27: Sander van Leeuwen
	- USER32: Message handler updates & lots of bugfixes
	- USER32: Fix for GetWindowLongA, if Open32 returns 0xffff it really
	  means 0xffffffff -> fixes Winhlp32 buttons.
	- USER32: Fixed bug when changing window procedures for dialog box
		  controls

 99-06-26: Sander van Leeuwen
	- USER32: Changes for message spy & several message handler changes
	- USER32: Restore win32 tib in window msg callback
	- KERNEL32/include: Restore OS/2 tib on entering Open32 or OS/2 apis
	- KERNEL32/lang.cpp: Bugfix for GetLocaleInfoA (if buf ptr == null,
	  only return size of memory block required to hold info)

 99-06-25: Achim Hasenmueller
	- Finally fixed changelog date format to be compliant with
	  the official EU date format :)

 99-06-25: Christoph Bratschi
	- USER32: GetSysColorPen bugfix (syscolor.cpp)

 99-06-24: Patrick Haller
	- SHELL32: partial port form WINE

 99-06-24: Edgar Buerkle
	- KERNEL32: Implemented GetLocaleInfoA/W

 99-06-24: Sander van Leeuwen
	- include\winos2def.h: Changed OS/2 apis to use wrappers
	  (FS save/restore) and added DosQueryCtryInfo

 99-06-23: Patrick Haller
	- Fixed date format in changlog .g.
	- NTDLL:    a dozen c runtime functions added
	- USER32:   IsHungAppWindow dummy added
	- SHELL32:  few more APIs added
	- KERNEL32: HandleManager, Console, fixes
	- COMDLG32: basic unicode support added, thou broken somehow
	- source code splitups and beautification ;-)

 99-06-23: Achim Hasenmueller
	- ported latest WINE fixes and additions for comctl32. Changes
	  involve better undoc. DSA APIs, right colors for the tab control,
	  many improvements for the listview...

 99-06-21: Achim Hasenmueller
	- ported latest WINE DrawEdge code and moved everything to the
	  new file src/user32/uitools.cpp

 99-06-21: Sander van Leeuwen
	- include\os2wrap.h, removed calling convention

 99-06-21: Christoph Bratschi
	- COMCTL32: Progress bar finished (progress.c, USER32 bugs to fix)
	- COMCTL32: Trackbar finished (trackbar.c)

 99-06-20: Sander van Leeuwen
	- KERNEL32: Call HMInitialize from initterm, not winexe object creation
	- KERNEL32: Added comctl to list of system dlls (windll.cpp)
	- KERNEL32: Fixed dll detach (windll.cpp) for converted win32 dlls
	- KERNEL32: Module name detection (windll.cpp)
	- KERNEL32: Activated Win32 TIB code; a selector + memory is allocated
		    for the main thread and every thread created.
		    When it's completed, it should fix several problems due to
		    differences between OS/2's TIB and Win32's TEB.
	- COMCTL32: Fixed crash on exit (moved unregister of class into exit list handler)
	- USER32: Changed bugfix (WS_CLIPCHILDREN) for winhlp32 (same as Wine now)
	- USER32: Fixed bug in wndproc.cpp (release build only)
	- USER32: Added preliminary support for parent notification

 99-06-19: Sander van Leeuwen
	- ALL (except dsound/ddraw): Include <os2wrap.h> instead of <os2.h>
	- KERNEL32: Changes for win32 TEB (not active)

 99-06-07: Sander van Leeuwen
	- Removed unecessary files
	- Modified os2win.h to save FS selector before calling Open32 api
	  and restoring it afterwards.
	- Renamed all .C files (except comctl32) to .CPP and fixed compiler errors
	- GDI32: Fixed SetDIBitsToDevice bugfix (palette size)
	- USER32: Fixed RegisterSystemClasses

 99-06-07: Achim Hasenmueller
	- Added comctl32, mostly untested includes all controls, some undocumented
	  APIs missing
	- Added internal GetSysColorPen() to user32 - handy API used in WINE
	  Modified syscolor.cpp to support new Win98 colors and create pens

 99-06-06: Sander van Leeuwen
	- Bugfixes in VirtualAlloc (KERNEL32), GetScrollPos & RegisterSystemClasses (USER32)
	  as reported on mailinglist by Edgar Buerkle.
	  Also FindResourceA/W.

 99-06-01: David Raison
	- OLE32: Changed everything to make it compile with the new headers
	- include/win/ole.2 - line 170
	- include/wine/win/obj_oleview.h - line 32 & 36

 99-05-23: Sander van Leeuwen
	- ADVAPI32: Fixed Open32 bugs in RegOpenKeyA (set return key to 0 when failed)
		    Fixed key definition conflict in convertkey.
	- KERNEL32: Fixed exception handler, don't continue after process termination
		    exception! (fixes annoying exitlist hangs)

 99-05-19: Sander van Leeuwen
	- KERNEL32: Corrected wrong export for HeapSize (reported by Vit Timchishin)

 99-05-15: Sander van Leeuwen
	- Fixed a number of bugs introduced during the Wine header update
	- KERNEL32: Added high/low fixup support for pe loader

 99-05-13: Sander van Leeuwen
	- Updated USER32
	- Fixed unicode apis in USER32
	- Added .def files for ADVAPI32, COMDLG32, GDI32, KERNEL32 & USER32 that
	  export all apis with the correct names. (_apiname@nrofparameterbytes)

 99-05-12: Sander van Leeuwen
	- Finished KERNEL32
	- Updated WINMM

 99-05-10: Vince Vielhaber
	- Rewrote WSOCK32 for Wine headers

 99-05-08: Sander van Leeuwen
	- Updated CAPI32, COMDLG32 & GDI32, MPR, NTDLL, TAPI32, WINSPOOL, WNETAP32
	  for new headers
	- Started with KERNEL32 changes (75% done)
	- Made basic changes to OLE32 for new headers, but still tons of errors
	- Fixed some unicode apis in GDI32

 99-05-04: Sander van Leeuwen
	- Stripped os2win.h and put it in include directory
	- WINE header files in include\win
	  (some modified for IBM VAC)
	- All Open32 apis have 'O32_' as prefix, Open32 specific declarations
	  are appended with _O32.

 99-05-01: Sander van Leeuwen
	- Changed makefile structure:
		nmake DEBUG=1	builds debug version
		nmake		builds release version

 99-04-11: Sander van Leeuwen
	- Everything except user32 & kernel32: copyrights added to most files
	  Moved a few header files in \include
	- Fixed import problem in peldr (include\winimage.h), SetFullPath must
	  be a virtual method.

 98-10-26: Sander van Leeuwen
	- OLE32: CoInitialize takes one parameter, not 0

 98-10-11: Sander van Leeuwen
	- KERNEL32: except.asm Wrong calling convention for SetExceptionChain
	- KERNEL32: exceptions.cpp/wprocess.cpp SetExceptionChain(-1) instead of SetExceptionChain(0)

 98-09-28: Sander van Leeuwen
	- PE2LX: icon.cpp: palette only for <= 8 bpp
	- PE2LX: icon.cpp: check if image size in bmp header is correct before using it

 98-09-25: Sander van Leeuwen
	- PE2LX: Don't fail if an exe/dll doesn't contain any imports (pe.cpp:ProcessImports)

********************************************************************************
***** Release 0.03/4
********************************************************************************
 98-09-15: KSO
	- WIN32K: pe2lx\misc.cpp changes

 98-09-13: Sander van Leeuwen
	- KERNEL32: windll.cpp: fixed bug with szModule not being initialized
	- PE2LX: pe.cpp: Only read first 1 MB for huge files. (as they are most
			 likely InstallShield archives; exe appended with
			 installation data)

 98-09-12: Sander van Leeuwen
	- WSOCK32: Changed fd_set to Wfd_set or else it won't compile over here
	- KERNEL32: Winimage.cpp, extra checks added
	- KERNEL32: OS2GetModuleFileName bugfix
	- INCLUDE/MISC.H: Error printf that prints to stdout (more reliable than
	  a logfile)
	- GDI32: GetDeviceCaps -> NT returns -1 when using 16 bits colors, NOT 65536!
	- GDI32: CreateDIBSection -> StarCraft uses bitmap with negative height ->
				     flip image when blitting
	- GDI32: DIBSection ctor: bug in BITMAPINFO2 malloc
	- GDI32: BitBlt: (dibsection) HDC == HPS (thank you, IBM!)

 98-09-02: Sander van Leeuwen
	- KERNEL32/USER32: Split up code
	- USER32 (/new): Started with new class & window managment code
			 (not compiled nor tested, so don't change it)

 98-09-01: Patrick Haller
	- WSOCK32: Circular linker dependency removed

 98-08-31: kso
	- KERNEL32: changed lfile.c to use OS2CreateFile,OS2CloseHandle,.... as
	  NT does. Notepad (W95) is now working better.
	- KERNEL32: fixed a open32 bug (or win32 feature) - WriteFile with
	  nrbytes = 0 is equal to a SetEndOfFile(..);

 98-08-17: Sander van Leeuwen
	- KERNEL32: Changed LoadLibraryA(W/ExA/ExW) to try to load the dll
		    directly first and if that fails, load it manually.

 98-08-15: Sander van Leeuwen
	- DDRAW: LOTS of changes,additions and fixes
		 (ddex1-ddex5 DirectX SDK samples work(ed) + Quake 2 in
		  DirectDraw mode)
	- DSOUND: Skeleton code extended

 98-08-13: Sander van Leeuwen
	- PE2LX: Replaced stack page removal code; (adjusted GetNrPages instead)

 98-08-13: KSO:
	- PE2LX: Borland bugfixes

 98-08-08: Sander van Leeuwen
	- pe2lx (pe.cpp), call SetNrOfExports(0) for dlls without exports
	  to set the module name in the resident name table
	  (otherwise converted dll will not load)
	- Version resource apis work now
	- LocalReAlloc bugfix, notepad assumes it returns the same
	  address when the new size is smaller than the old one.

 98-08-03 KSO:
	- pe.cpp:	line 600 - added OS2Exe to the parameterlist
	- bitmap.cpp: replace file - much.
	- bitmap.h: replace file - typo (BitMap to Bitmap)
	- icon.h: replace file	- #define BI_*

 98-07-23: Knut Osmundsen
	- PE2LX: Borland exe changes (import stuff)

 98-07-18: Sander van Leeuwen
	- KERNEL32/PE2LX: Changed version checks; version nr is put into the
			  converted exe/dll as a parameter to one of the kernel32
			  entry points
	- USER32: Changed class managment code
	- USER32: Removed all SYNCPAINT stuff as it breaks many apps
	- USER32: Removed in CreateWindowExA that checks for values of x, y, nHeight & nWidth
		  (this broke generic.exe, notepad.exe and probably many others)
	- USER32: Finished GetMenuStringW (MSPaint), not working right though
		  it should return 'Recent File', but returns 'Decent File'
		  Well, whatever.
	- VERSION/KERNEL32/PE2LX: Version resource API implemention started
	- PE2LX:  Increased some fixup limits to convert dynhgi35.dll
	- KERNEL32: AsciiToUnicode fixed (only terminate with one 0; doing
		    it twice corrupts the heap as our stuff allocates exactly
		    enough for string + 0 terminator)

 98-07-14: Sander van Leeuwen
	- KERNEL32: Changed OS2GetProcAddress to call the ordinal or name getApi
		    method

 98-07-13: Patrick Haller
	- USER32:   Unicode fix for wvsprintfW "%s" -> "%ls"
	- USER32:   fix in Win32WindowProc destructor when "window" becomes NULL
	- ADVAPI32: RegConnectRegistry for connection to local machine

 98-07-13: Patrick Haller
	- KERNEL32: Unicode fix that garbled CommandLineToArgv and others

 98-07-12: Patrick Haller
	- NTDLL:   new functions in NTDLL (-> critical sections)
	- SHELL32: few new stubs in SHELL32
	- GDI32:   fix in GDI32\DIBSECT\CreateDIBSection for M$ Backup
	- USER32:  experimental fix (CS_SYNCPAINT) for WinHlp32 to
		   display navigation buttons, but crashes SOL.EXE :(

 98-07-10: Patrick Haller
	- stubs for NETAPI32 100%

 98-07-09: Patrick Haller
	- stubs for Winspool 100%

 98-07-01 Joel Troster
	- KERNEL32: update to nameid.cpp

 98-06-07 Joel Troster
	- WINMM: WaveOpen bugfix

 98-06-07 Felix Maschek
	- CAPI32: bugfix

 98-06-15: Patrick Haller
	- GDI32:    stubs for all missing functions
	- ADVAPI32: stubs for all missing functions
	- USER32:   implementation of some real functions
		    some unknown functions stubbed (IDA/2)

 98-06-14: KSO
	- GDI32:    Stubs for Office 97
	- PE2LX:    Formatted output
	- ADVPI32:  Stubs for Office 97
	- VERSION:  Stubs for Office 97

 98-06-12: Patrick Haller
	- NTDLL:    ported over the NTDLL code from WINE, subject to the GNU Copyleft
		    some applications open this module explicitly
	- KERNEL32: few fixes to Unicode handling
	- KERNEL32: console window sizing (still buggy) and property fixes
	- KERNEL32: stubs for all missing functions
	- GDI32:    bugfix for DIB allocation (MS Paint)
	- WINMM:    functions for FOURCC handling
	- PE2LX:    CURSOR.CPP: hotspot.y is upside down (fixed for Winhlp32)
	- PE2LX:    DIALOG.CPP: combobox style translation CBS_ fixed
	- PE2LX:    DIALOG.CPP: style translation for WINES_MULTILINE
				causes MLE control to be generated.
				Experimental.
	- KERNEL32: WINDLL.CPP: fixed endless loop in Win32DLL::StripPath()

 98-05-25: Patrick Haller
	- KERNEL32: Added few NTDLL stubs, mainly for support of MSACM32/NT
	- KERNEL32: Resource fix

 98-05-03: Joel Troster
	- WINMM:    Stubbed most of the remaining mmedia apis

 98-04-28: Patrick Haller
	- KERNEL32: Console fixes
	- KERNEL32: Console properties (partially)
	- KERNEL32: Handlemanager fixes
	- KERNEL32: OS2iGetModuleName fixes

********************************************************************************
***** Release 0.02
********************************************************************************

 98-04-05: Patrick Haller
	- KERNEL32: Resource bugfix

 98-03-30: Joel Troster
	- WINMM: midiStream* stubs added

 98-03-30: Sander van Leeuwen
	- PE2LX: Set console flag when exe has no resources

 98-03-27: Joel Troster
	- WINMM: Midi changes/bugfixes, mci* api stubs added
	- GDI32: SetObjectOwner stub added

 25-03-98: Sander van Leeuwen
	- KERNEL32: Several changes in resource code

 19-03-98: Felix Maschek
	- KERNEL32: Comm stubs added

 19-03-98: Sander van Leeuwen
	- KERNEL32: Pop up a dialog box when a missing api is called
	- KERNEL32: dll bugfix
	- KERNEL32: CreateProcessA/W fix
	- KERNEL32: GetProcAddr completed for PE loader & PE2LX

 19-03-98: Peter Fitzsimmons
	- created include\version.h
	- changed pe2lx\lx.cpp	  (call SetVersion())
	- changed pe2lx\misc.cpp  (code for SetVersion(), setea())
	- changed pe2lx\misc.h	  (add prototypes)
	- changed pe2lx\pe.cpp	  (moved DosClose() up a few lines,  so DosSetPathInfo() could write to the file)
	- changed pe2lx\makefile       \
	- changed pe2lx\makefile.wat   / Build setver.exe, getver.exe.	I didn't copy
					 these exe's to ..\bin in purpose;  they
					 aren't supposed to go to end users.
	- Added one line ("..\server $@") to all makfiles

	- added getea() to kernel32\os2util.c
	- added a few lines in kernel32/wprocess.cpp/RegisterDll()

	- Edit all initterm.c's to remove that rand() crap (that is from a
	  sample project!).  Also added new version check to each.  Also #include "misc.h"

	- wsock32: edited makefile to remove reference to ..\kernel32\misc.obj and
		   replace with kernel32.dll.

	- src\makefile:  build kernel32 before wsock
	- src\kernel32\makefile:  remove reference to wsock32.lib
	- src\kernel32\network.cpp:  remove call to wsock32

 16-03-98: Joel Troster
	- GDI32: Added SetObjectOwner stub

 15-03-98: Joel Troster
	- WINMM: RTMIDI dependency removed

 15-03-98: Sander van Leeuwen
	- All dlls, C++ init+termination call added to initterm.c
	- KERNEL32: Icon conversion bugfix
	- KERNEL32: Removed reroute of exe reading
	- KERNEL32: Major rewrite of dll & exe handling including
		    LoadLibary(Ex)A/W, CreateProcessA/W, GetModuleFileNameA/W,
		    FreeLibrary & GetCommandLineA/W
	  Side effect: Crash at Quake 2 exit fixed

	- KERNEL32: Additional code for PE loader
	- PE: Created OS/2 ring 3 PE loader
	  syntax: pe win32exe commandline
	  Reads win32exe & all imported dlls, calls all dll entry points and
	  finally calls the exe entry point.
	  TODO: No fixups and low startup address
	  TODO: Resources
	  TODO: CreateProcess doesn't work right

 13-03-98: Sander van Leeuwen
	- KERNEL32: Dll unloading fixed

 13-03-98: Peter Fitzsimmons
	- KERNEL32: Fixed CompareStringA/W

 12-03-98: Joel Troster
	- WINMM: Stubbed all the mixer APIs and updated support for MidiMapper

 10-03-98: Sander van Leeuwen
	- WSOCK32:  WSAStartup fix and ioctl addition
		    (Quake 2 Multiplayer working)
	- KERNEL32: Resource lookup bug fixed

 10-03-98: Joel Troster
	- KERNEL32: SetThreadLocale added

 09-03-98: Patrick Haller
	- KERNEL32: Fix in GetStdHandle within HandleManager

	- KERNEL32: Console APIs completed, input and output is complete,
		    however not thoroughly tested, SHORT 0.98D is working.
		    Codepage support, Unicode support missing.
		    I'm working on cosmetics and properties dialog.

	- EXECHECK: tool to check executables for convertibility via pe2lx
		    and keeping track of our APIs, as well as imported/exported
		    functions of executables (PE import is currently implemented)

 09-03-98: Sander van Leeuwen
	- KERNEL32: Put dll & exe apis in wprocess.cpp
	- KERNEL32: Reroute file io from own exe to original

 08-03-98: Joel Troster
	- KERNEL32: Unicode changes (lstrcatW, lstrcmpW, lstrcpyW lstrcpynW)
	- WINMM: Unicode midi apis added to .def file

 08-03-98: Sander van Leeuwen
	- WINMM: Aux* apis implemented (not tested and not 100% correct)
	- include: added mmddk.h from win95 ddk

 07-03-98: Peter Fitzsimmons
	- Added KERNEL32.GetSystemDefaultLangID() -- I copied GetUserDefaultLangID, which
	  always returns "US ENGLISH".
	  (NOTE: Already added)
	- Added ADVAPI32.ReportEventA().  Stub.
	- Added ADVAPI32.OS2SetSecurityDescriptorDacl(). Stub that returns ERROR.
	- Added ADVAPI32.* a bunch more stubs.

 07-03-98: Sander van Leeuwen
	- KERNEL32: Implemented Local* memory apis with new heap
		    (in win32 you can mix Heap and Local apis)
	- KERNEL32: Corrected key mapping bugs for arrow, insert/del/home/end
		    page up/down keys.
		    Doesn't work 100% right yet. (strafing in Quake = alt-arrow)

 06-03-98: Sander van Leeuwen
	- WINMM: Added WaveOutGetNumDevs and corrected the calling
		 convention for several apis (WIN32API, not WINAPI)
	- KERNEL32: Added GetSystemDefaultLangID and moved several
		    language apis to lang.cpp
	- KERNEL32: Added EnumSystemLocalesA/W (US English only)
	- PE2LX: command line option change: pe2lx win32file > logfile
		 Now makes a backup copy of the win32 file and creates
		 an OS/2 version with the same name

 05-03-98: Joel Troster
	- KERNEL32: Use OS/2 unicode apis
	- USER32:   Use OS/2 unicode apis

 04-03-98: Sander van Leeuwen
	- KERNEL32: Use OS2gethostname (wsock32.dll) instead of gethostname

 03-03-98: Knut Osmundsen
	- KERNEL32: VirtualAlloc bugfixes & high memory support (SMP)

 03-03-98: Patrick Haller
	- PECHECK: Initial code for pecheck.exe

 03-03-98: Joel Troster
	- KERNEL32: Stubs added for Virtual(Un)Lock
	- WINMM: Unicode midi apis added, MIDIMAP faked, some bugs fixed

 03-03-98: Sander van Leeuwen
	- KERNEL32: Fixed logbuffer overflow with strlen WriteLogs
	- KERNEL32: Use tcp32dll instead of pmwsock
	- PE2LX: Fixed memory corruption in icon.cpp

 02-03-98: Sander van Leeuwen
	- KERNEL32: kernel32.c -> kernel32.cpp
	- KERNEL32: Merged exception logging with my latest code
	- include:  win32type.h
	- WSOCK32:  Removed pmwsock.lib from makefile

 01-03-98: Patrick Haller
	- KERNEL32: Extensions to the exception handler (logging)
	- KERNEL32: HandleManager for pseudo-devices (CONIN$,CONOUT$,etc)
	- KERNEL32: Hooks for HandleManager
	- KERNEL32: Very early console support for stdout is there ...
		    Console also has context menue.
********************************************************************************
***** Release 0.01
********************************************************************************
 28-02-98: Sander van Leeuwen
	- DDRAW: Initial work for Direct3D
	- KERNEL32/PE2LX, Changes for console applications (flag)
	- KERNEL32: Kill process when a fatal exception occurs
	  (prevents some kind of eternal loop in OS/2; probably due to
	   invalid exception records or difference in exception handler
	   calling convention)
	- KERNEL32: Added a try/catch statement around the dll exit list
		    processing in ExitProcess. Seems to cure the trap
		    at exit.

 27-02-98: Patrick haller
	- MPR: stubs for all documented MPR functions,
	       should be complete now

 26-02-98: Patrick haller
	- USER32: stubs for all documented USER32 functions,
		  should be complete now
	- USER32: Windows95's SHELL32.DLL requires a few undocumented functions

 24-02-98: Joel Troster
	- WINMM: Midi working

 24-02-98: Sander van Leeuwen
	- KERNEL32: Exit list changes; terminate all dlls right before
		    ExitProcess or in kernel32 exitlist in case of a trap
		    (prevents unkillable processes in most cases)

 23-02-98: Joel Troster
	- KERNEL32: PMPrintf version of WriteLog added

 22-02-98: Sander van Leeuwen
	- ALL DLLs: Call C/C++ lib cleanup proc in exit list
	- PE2LX: Use exit lists in converted win32 dlls to terminate them
	- WINMM: Remove test code in timer emulation (multiplied time by 10)
	- KERNEL32: Release winmod objects properly
	- KERNEL32: Call dll exit proc in FreeLibrary

 21-02-98: Sander van Leeuwen
	- KERNEL32: VirtualProtect size change to include all pages
		    referenced

 19-02-98: Sander van Leeuwen
	- PE2LX: Change order of dlls in import module name table
	- KERNEL32: Don't call the C/C++ lib cleanup procedure at
		    dll termination

 18-02-98: Joel Troster
	- WINMM: Midi changes, wave in/out stubs added

 16-02-98: Sander van Leeuwen
	- KERNEL32: Heap bugfix

 16-02-98: Joel Troster
	- WINMM: Midi updates

 15-02-98: Sander van Leeuwen
	- KERNEL32: Changed heap allocation again. (now uses malloc/free)
	- KERNEL32: QueryPerformanceFrequency/Counter uses DosTmrQueryTime/
		    DosTmrQueryFreq now, so the normal xf86sup.sys can
		    be used.

 11-02-98: Sander van Leeuwen
	- MPR: Changed/Corrected ordinals

Mon  98-02-09 Peter Fitzsimmons
	- lx.cpp -- put in check for MAX_SECTIONS (was bombing out in one
	  of "visio technical"'s dlls.
	- lx.cpp increase MAX_SECTIONS (lx.h) from 16 to 32 (where'd the
	  original value come from?).
	- kernel32.c: added stub for FlushInstructionCache()
	- kernel32.c: added stub for OS2GetPrivateProfileSectionA()

	- advapi32: GetUserNameA() stub.  Always says a person named
	  "USER" is logged on.

	- MPR: WNetGetConnection(). NEEDS PROPER ORDINAL IN *.def file.

 9-02-1998: Joel Troster
	- USER32: Added Set/GetDefaultMenuItem (stub)

 7-02-1998: Sander van Leeuwen
	- KERNEL32/WINMM: Added VMutex to KERNEL32 (imported by WINMM)
	- KERNEL32: New heap implementation (heap.cpp & os2heap.cpp)
	- KERNEL32: Replace exception handler for each new thread
	- KERNEL32: Set previous exception handler to 0 instead of -1
	  (fixes endless exception handler calls)
	- Added macro dprintf & dassert to include\misc.h (no more need
	  for #ifdef DEBUG's)

31-01-1998: Sander van Leeuwen
	- USER32: Fixed two bugs in CreateWindowExA/W
	- WINMM:  Fixed wave playback problem

18-01-1998: Sander van Leeuwen
	- GDI32: Changed GetDIBColor & SetDIBColor
	- GDI32: Fixed CreateDIBSection
	- Quake 2 working in a window!

17-01-1998: Sander van Leeuwen
	- WINMM: Waveout working, Quake 2 WITH sound now!
	- GDI32: Implemented GetDIBColor & SetDIBColor

11-01-1998: Sander van Leeuwen
	- KERNEL32: Exception handler fix
	- WINMM: Started with WaveOut implementation

11-01-1998: Felix Maschek
	- TAPI32: Fixes

10-01-1998: Sander van Leeuwen
	- Changes to makefile and wsock32.c to make it compile with VAC
	- VirtualAlloc bugfix (reserve)
	- Dialog fix (font name)
	- WINMM now uses mmsystem.h from win32 SDK

10-01-1998: Chris McKillop
	- New build tree

10-01-1998: Vince Vielhaber
	- Winsock32 changes

31-12-1997: Sander van Leeuwen
	- Remove all 'OS2' strings from imports/exports (dlls/pe2lx)

28-12-1997: Sander van Leeuwen
	- KERNEL32: Code to allow IO in ring 3 added (xf86sup.sys)
		    Set environment variable WIN32_IOPL2 to enable this

	- KERNEL32: Fixed GetStartupInfoA/W (WINE)
	- GDI32:    Added CreateDIBSection from Wine (not complete)
	- Lots of stubs added
	- Almost got Quake II running....

23-12-1997: Felix Maschek
	- CAPI2032: Complete implementation of CAPI

20-12-1997: Felix Maschek
	- TAPI32:   Stub dll

20-12-1997: Sander van Leeuwen
	- KERNEL32: Bug in winmod.cpp
	- KERNEL32: Added code for exception handling (not fool proof)
	- KERNEL32: Fixed HeapCreate (now reserves 32 MB instead of 64 kb)
	- KERNEL32: Catch FPU exception, mask fpu exceptions, fix stack and continue execution
	- PE2LX:    Removed stack size & base switch
	- WINMM:    Added joyGetPos stub

14-12-1997: Sander van Leeuwen
	- KERNEL32: Added QueryPerformanceFrequency, QueryPerformanceCounter
	- USER32:   Added some stubs
	- GDI32:    Added some stubs
	- WINMM:    Added some stubs
	- WNETAP32: New (NETAPI32)
	- PE2LX:    Change module import name NETAPI32 to WNETAP32 (name conflict with OS/2 NETAPI32)
	- PE2LX:    Cut long dll names to 8 chars
	- MPR:	    Added WNetGetUserA stub

31-11-1997: Sander van Leeuwen
	- KERNEL32: Fixed GetEnvironmentStringsW
	- KERNEL32: Added DeviceIOControl (devio.c, map.c, iccio.asm; last two from XFree86 driver src)
	- KERNEL32: Changed CreateFile to open an OS/2 driver if required
	- Last two changes for win32 Glide dll.

	- Fixed window creation (wndproc.cpp), Open32 isn't sending WM_NCCREATE msgs!
	- Filter out CBS_OWNERDRAWFIXED & CBS_OWNERDRAWVARIABLE combobox styles
	  in CreateWindowExA/W (not finished)
	- Added FormatMessageA/W from Wine (kernel32)
	- USER32:
	- Fixed GetSystemParameterInfoA/W, SPI_GETNONCLIENTMETRICS/SPI_SETNONCLIENTMETRICS
	  (ConvertFontAW/ConvertFontWA macros)
	- Progress comclt32 class working
	- ADVAPI32, fixed:
		- RegEnumKeyW
		- RegEnumKeyExW
		- RegEnumValueW
		- RegQueryInfoKeyW
		- RegQueryValueW

	- USER32:
	- Fixed DrawEdge		(borrowed from Wine)
	- Added ChangeMenuA/W		(borrowed from Wine)
	- Fixed some color problems
	- Trackbar win32 SDK example working (toolbar comctl32 class)
