Changeset 1625 for trunk/changelog


Ignore:
Timestamp:
Nov 5, 1999, 6:55:42 PM (26 years ago)
Author:
achimha
Message:

separate changelog entries to make file smaller

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/changelog

    r1623 r1625  
    1  /* $Id: changelog,v 1.418 1999-11-05 17:51:26 achimha Exp $ */
     1 /* $Id: changelog,v 1.419 1999-11-05 17:55:42 achimha Exp $ */
    22
    33 99-11-05: Achim Hasenmueller <achimha@innotek.de>
     
    135135
    136136        !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    137 
    138  99-10-31: Christoph Bratschi <cbratschi@datacomm.ch>
    139         - KERNEL32: Ported Wine time apis
    140 
    141  99-10-31: Daniela Engert <dani@ngrt.de>
    142         - USER32: add WS_CLIPSIBLINGS to BS_GROUPBOX style controls (fixes
    143                   missing buttons in SOL)
    144 
    145  99-10-31: Sander van Leeuwen <sandervl@xs4all.nl>
    146         - USER32: Remove CS_SYNCPAINT class flag -> fixes VPBuddy resize + paint
    147                   Put back methods that belong in the Win32Dialog class.
    148                   (MapDialogRect, DIALOG_Init, several x & y unit helpers)
    149                   -> fixes calc window controls.
    150 
    151  99-10-30: Christoph Bratschi <cbratschi@datacomm.ch>
    152         - USER32: added button control text justification
    153                   GetNextDlgTabItem/GetNextDlgGroupItem must work with all windows
    154                   -> radiobuttons
    155                   fixed scrollbar timer handling
    156                   pmframe: fixed WM_ACTIVATE bug
    157 
    158  99-10-29  Markus Montkowski <mmontkowski@gmx.de>
    159         - GDI32:  Fixed bug in CreateDIBSection, only copy ptr when ptr. var not
    160                   NULL.
    161                   Added DIBSections to GetObject_A, so programms can query
    162                   a DIBSECTION for the obj.
    163 
    164  99-10-30: Daniela Engert <dani@ngrt.de>
    165         - USER32: Fixed missing repaints for transparent windows (VPBuddy!)
    166 
    167  99-10-30: Sander van Leeuwen <sandervl@xs4all.nl>
    168         - USER32: Ported Wine MapDialogRect -> fixes Calc dialogs
    169 
    170  99-10-30: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    171         - USER32: Port Wine ascii <-> unicode message conversion for user32 controls
    172                   (Wine controls only support ascii msgs)
    173 
    174  99-10-30: Jens Wiessner <wiessnej@rfi.de>
    175         - MSVCRT: Fixed .def file
    176 
    177  99-10-29: Christoph Bratschi <cbratschi@datacomm.ch>
    178         - USER32: rewrote scrollbar code
    179                   added static styles
    180 
    181  99-10-29: Sander van Leeuwen <sandervl@xs4all.nl>
    182         - USER32: Changed font size multiply factor, negated it and fixed
    183                   default dialog unit bug.
    184                   Fixed MDI destroy bug
    185                   WM_SETICON bugfix.
    186 
    187  99-10-29: Sander van Leeuwen <sandervl@xs4all.nl>
    188            Rene Pronk<R.Pronk@twi.tudelft.nl>
    189         - USER32: Focus fixes. Activate a window when it receives a button click message.
    190 
    191  99-10-29  Markus Montkowski <mmontkowski@gmx.de>
    192         - DDRAW: Changed logging, loginfo now in odin32_x.log for the first time...
    193 
    194  99-10-28: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    195         - USER32: LoadBitmapW fix
    196                   ModifyMenuW/InsertMenuW fixes.
    197                   Call CallWindowProcA/W in Send(Internal)MessageA/W
    198                   (in preparation of Wine unicode msg translation port)
    199                   Always call default window handler for WM_PAINT. Apparently
    200                   there are apps that return 0, but don't call BeginPaint.
    201                   Added extra messages for msg translation.
    202 
    203  99-10-28: Sander van Leeuwen <sandervl@xs4all.nl>
    204         - ADVAPI32: Fixed dprintf bugs in OpenSCManagerA/W (%s instead of %d)
    205 
    206         - makefiles: Added nodebuginfo build option to build debug binaries
    207                      without debug information. (for upcoming alpha release)
    208 
    209         - KERNEL32: GetVersion fix. Low byte = major version, high byte = minor version
    210                     Destroyed shared heap on dll unload (refcount == 0)
    211                     Shared heap fixes.
    212                     GetWindowsDirectory & GetSystemDirectory return string that don't end with
    213                     a backslash.
    214                     Fixed loading of dlls without .dll extension.
    215                     Fixed OSLibStripPath.
    216 
    217         - USER32: Fixed style conversion (use dwStyle, not cs->style, same for dwExStyle)
    218                   -> title bar in prof. minesweeper
    219                   Fixed bug in pmframe WM_WINDOWPOSCHANGED handler (didn't restore OS/2
    220                   selector before returning)
    221                   Don't delete global window classes.
    222                   Removed shared heap, use the one in kernel32 instead.
    223                   Fixed OSLibSetStyle & SetWindowLong for GWL_STYLE (wrong style used)
    224                   Fixed win32 to OS/2 style conversion (DLG frame)
    225                   Fix for timer messages in apps that use PeekMessage/DispatchMessage
    226                   instead of GetMessage/DispatchMessage.
    227                   Translation of extra messages.
    228 
    229  99-10-28: Jens Wiessner <wiessnej@rfi.de>
    230         - MSVCRT: Added stubs
    231 
    232  99-10-27: Patrick Haller <phaller@gmx.net>
    233         - KERNEL32:     Fix: console (unicode) updates, NT4'S CMD.EXE works.
    234                         WARNING! lstrcpynAtoW has been modified, PLEASE VERIFY!
    235 
    236  99-10-27: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
    237         - WIN32K: It's working! At least on my testmachine running
    238                   the WSeB astrict UNI kernel and the Warp 4 astrict kernel.
    239 
    240  99-10-27: Sander van Leeuwen <sandervl@xs4all.nl>
    241         - KERNEL32: If dll can't be found, look in directory of kernel32 (PE loader)
    242                     Fixed iLoadLibrary (added .dll if it couldn't find this string in
    243                     the module name; now only does that if it can't find a '.')
    244                     Implemented WinExec using CreateProcessA.
    245                     Fixed file mapping view lookup bug. Views are now again stored
    246                     in per-process data segment.
    247                     Delete process memory maps in exitlist too.
    248         - KERNEL32: Fixed bug in icon conversion (rgb only for <= 8bpp)
    249                     Added support for color cursors (needs more testing but seems to work)
    250         - USER32: Added support for color cursors
    251                   Fix for class lookup in CreateWindowExA/W
    252 
    253  99-10-26: Sander van Leeuwen <sandervl@xs4all.nl>
    254         - USER32: Fixed bugs in menu apis (Append/InsertMenuA/W)
    255                   Fixed InsertMenuItemA/W.
    256                   Finished up Patrick's work -> regedit menus now correct
    257                   In winmenu call only ODIN_* menu apis; decreases amount of
    258                   logging and increases speed.
    259 
    260         - KERNEL32: Removed menu resource + non-used resource methods
    261                     Fixed FS selector corruption in GetLocaleInfoA/W (use
    262                     ODINFUNCTION wrapper as it calls a OS/2 unicode api that has no
    263                     FS wrapper)
    264 
    265         - PELDR:  Increased stack from 192k to 640k (Quake 2 ran out of stack)
    266         - DSOUND/DDRAW: Fixed FS selector corruption in logging procedures
    267           ---> Quake 2 works again (Yeah! :) )
    268           NOTE: Quake 2 3.20 only starts the first time. Seems to change something
    269                 in the config.cfg file that crashes it the next time you run it.
    270                 (workaround: save original config.sys and restore it afterwards)
    271 
    272  99-10-26: Patrick Haller <phaller@gmx.net>
    273         - USER32: Add: Ported Wine menu(ex) parser and integrated it into menu code
    274         - WINMM:  Fix: invalid callback check in dwaveout.cpp (Q2 makes noise again)
    275 
    276  99-10-25: Sander van Leeuwen <sandervl@xs4all.nl>
    277         - USER32: Removed SetFocus call in Edit control (WM_LBUTTONDOWN)
    278                   Virtual key translation table change (VK_RETURN (PM) -> 0x0A
    279                   VK_ENTER (PM_ -> 0x0A (VK_RETURN))
    280                   (fixes problems in edit control, but might not be a good fix)
    281                   Never call default window handler (PM) after WM_CHAR ->
    282                   PM sends the WM_CHAR to the owner window -> focus changes
    283                   in notepad.
    284         - USER32: (menus)
    285                   Rewrote LoadMenuIndirectA/W to use OS/2 apis
    286                   Implemented GetMenuInfo & SetMenuInfo (just store new info; nothing else done)
    287                   Implemented GetMenuContextHelpId/SetMenuContextHelpId
    288                   (based on Wine build 990815)
    289                   Partially implemented GetMenuItemInfo.
    290                   NOTE: Needs a complete rewrite.
    291 
    292         - INCLUDE\win\commctrl.h:
    293                   Changed back calling convention of callback handlers to CALLBACK.
    294                   -> fixes crashes in SHELL32 (DPASearch calls)
    295 
    296  99-10-25: Achim Hasenmueller <achimha@innotek.de>
    297         - KERNEL32: Added ReinitializeCriticalSection, ported WINE code
    298                     for this function and UninitializeCriticalSection
    299 
    300  99-10-25: Patrick Haller <phaller@gmx.net>
    301         - ODINWRAP: Fix: Bugfix + Heap Check embracing every wrapper function
    302         - NTDLL:    Add: functions by Jens Wiesner
    303         - KERNEL32: Fix: enable WIN32.DEBUGBREAK environment variable for DebugBreak() API
    304         - WSOCK32:  Fix: invalid structure alignment for asynchronous operations
    305 
    306  99-10-25: Markus Montkowski <mmontkowski@gmx.de>
    307         - DDRAW:  Fixed bug in Color conversion of surfaces DDEX1.EXE now works,
    308                   Get/ReleaseDC functions are working, but problem
    309                   with Bitmap orientation DDRAW surfaces are TopDown DCs Bmps are BottomUp
    310                   this neeeds to be solved (any way to create a TopDown DC Bmp?)
    311 
    312  99-10-24: Sander van Leeuwen <sandervl@xs4all.nl>
    313         - USER32: MDI window fixes (mdi children correctly activated; menus inserted)
    314                   Bugfix in WM_GETTEXT of Edit control (wrong string length)
    315                   Only create global classes when CS_GLOBALCLASS flag specified
    316                   Create system classes only every first time user32 is loaded
    317                   and only unregister them when the last win32 app quits.
    318                   Converted all OS/2 bitmaps to windows format and put them in user32.rc
    319                   (deleted all bmp files)
    320         - USER32,
    321           COMCTL32,
    322           SHELL32: Don't check if control atom already exists, always register
    323                    control.
    324              NOTE: Global classes have a global atom, but the class objects
    325                    are NOT shared! (so you must recreate them for every app)
    326 
    327         - KERNEL32: Implemented shared memory mapped files (SDK memory sample
    328                     works for shared memory; haven't tested files and it requires
    329                     more testing!)
    330                     Added shared heap code for memory mapped objects
    331 
    332  99-10-24: Daniela Engert <dani@ngrt.de>
    333         - KERNEL32: Fixed cursor in VPBuddy (invalid size)
    334 
    335  99-10-23: Christoph Bratschi <cbratschi@datacomm.ch>
    336         - USER32: added more metrics for GetSystemMetrics
    337                   added WM_SYSTIMER support
    338                   several scrollbar bug fixes
    339 
    340  99-10-23: Sander van Leeuwen <sandervl@xs4all.nl>
    341         - USER32: Put back WM_ADJUSTWINDOWPOS/WINDOWPOSCHANGED into pmwindow.cpp
    342                   Put message logging procedure in wndmsg.cpp.
    343                   Don't log WM_KICKIDLE & WM_NCHITTEST messages. (sent too often)
    344                   Don't set capture to listbox window in comboboxes (after lbuttonup)
    345                   Use wrc to compile USER32 resources + added version resource
    346                   Fixed PMFRAME window position handlers and put them back.
    347                   (comboboxes now displayed properly)
    348 
    349         - KERNEL32: Write logfiles to directory of kernel32 if executable is on
    350                     readonly device.
    351                     Fixed CreateProcess.
    352                     Added support for GetVersionSize/GetVersionStruct for images
    353                     that aren't loaded. (LX or PE; PE not tested!)
    354         - DSOUND: Made it compile again. (always pretends there's no soundcard in the system)
    355         - SHELL32/COMCTL32: Changed file description in version resource
    356 
    357  99-10-22: Daniela Engert <dani@ngrt.de>
    358         - KERNEL32: fixed bad icon masks
    359 
    360  99-10-22: Sander van Leeuwen <sandervl@xs4all.nl>
    361         - WINMM: Fixes for waveout playback (don't use callback when there
    362                  were errors when opening the device; return the correct
    363                  number of devices present) (Pinball no longer crashes when
    364                  there's no soundcard (driver) in OS/2)
    365                  Disabled logging of timeGetTime
    366         - KERNEL32: Disabled logging for _lread (calls ReadFile which does it's own logging)
    367                     Return XCPT_CONTINUE_SEARCH for unhandled exceptions if
    368                     an OS/2 app uses the Odin32 api. (instead of killing the app)
    369 
    370         - COMCTL32: Fixed tab width bug. (GetTextExtentPoint32A used for unicode strings)
    371                     Use Wine resource compiled with wrc. Removed all Native* resource loading.
    372                     Added version resource.
    373 
    374         - USER32: Fixed corruption of OS/2 exception chain in dc.cpp & caret.cpp
    375                   (fixes dll loading after the exe has started; i.e. after clicking
    376                    on the Find tab in winhlp32's Search dialog)
    377                   Do not send WM_COMMAND messages to the window handler before
    378                   it has receive it's WM_CREATE msg.
    379                   Winhlp32 crashes when that's done before WM_INITDIALOG, but
    380                   VPBuddy no longer responds to buttons when you refuse to
    381                   send messages before WM_INITDIALOG. (TODO)
    382                   Send WM_WINDOWPOSCHANGING/CHANGED messages from frame handler.
    383                   Fixed MapWindowPoints.
    384         - INCLUDE\os2wrap.h: Fixed infinite recursion in GpiDestroyPS
    385 
    386  99-10-22: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    387         - USER32: TrackPopupMenu(Ex) fixes (window handle translation)
    388         - KERNEL32: HeapReAlloc bugfix (copy min(oldsize, newsize) bytes)
    389 
    390  99-10-21: Sander van Leeuwen <sandervl@xs4all.nl>
    391         - KERNEL32: Increase reference count for LX dlls. (RegisterLxDll)
    392                     Set memory protection flags to READONLY for PAGE_NOACCESS
    393         - USER32: Added support for SWP_NOSIZECHANGING to SetWindowPos
    394                   Fixed WM_ADJUSTWINDOWPOS (when position/size changed by app)
    395                   Combobox fixes (simple combobox works, more complex don't)
    396                   Don't check instance handle if handle == handle of exe for
    397                   class lookup.
    398         - GDI32: Fixed bug in DIBSection ctor (next ptr not initialized)
    399 
    400  99-10-20: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    401         - GDI32: Implemented EnumFontFamiliesA/W
    402 
    403  99-10-20: Sander van Leeuwen <sandervl@xs4all.nl>
    404         - USER32: Added support for WM_WINDOWPOSCHANGING in default window handler
    405                   (ported from Wine 990815)
    406                   Convert back windowpos structure in WM_ADJUSTWINDOWPOS (NOT DONE)
    407                   Bugfixes for PM WM_WINDOWPOSCHANGED handling & OSLibMapSWPtoWINDOWPOS.
    408                   (Win32 WM_WINDOWPOSCHANGED now also sends window coordinates, not client)
    409                   Rewrote MapWindowPoints. (NOTE: Needs to be tested!)
    410                   Combobox bugfix (resizing listbox using old rectangle -> get current
    411                   one)
    412 
    413  99-10-20: Patrick Haller <phaller@gmx.net>
    414         - WSOCK32:  Partial rewrite of WSA async sockets completed.
    415 
    416  99-10-20: Christoph Bratschi <cbratschi@datacomm.ch>
    417         - KERNEL32: Ini file for Odin settings (i.e. windows & system dir)
    418                     Added Odin.ini.txt
    419 
    420  99-10-19: Sander van Leeuwen <sandervl@xs4all.nl>
    421         - KERNEL32: FindResource bugfix: "DIB" type is the same as "BITMAP"
    422                     (VPBuddy fix)
    423                     NOTE: Currently disabled. VPBuddy expects something other
    424                           than a pointer to the raw resource data for such
    425                           bitmaps. (TODO)
    426         - USER32: Windows without a parent have the desktop window as parent.
    427                   MDI additions.
    428                   Combobox bugfixes.
    429                   GetWindowTextA/W bugfixes (return 0 if there's no window name)
    430 
    431  99-10-19: Yuri Dario <mc6530@mclink.it>
    432         - USER32: Initialize MDI client variables before calling Win32BaseWindow
    433                   constructor
    434 
    435  99-10-19: Jens Wiessner <wiessnej@rfi.de>
    436         - RASAPI32: Added stubs
    437 
    438  99-10-19: Daniela Engert <dani@ngrt.de>
    439         - USER32: excessive background erases tamed
    440 
    441  99-10-18: Sander van Leeuwen <sandervl@xs4all.nl>
    442         - USER32: Set/clear WS_VISIBLE flag in ShowWindow
    443                   Fix for scrollbar redraw
    444                   Put back original Wine code for LISTBOX_UpdateScroll.
    445                   Rewrote EnumChildWindows (winzip works quite well now!)
    446 
    447  99-10-18: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    448         - COMDLG32: Disable comdlg hooks for now. They don't work anyway.
    449 
    450  99-10-17: Sander van Leeuwen <sandervl@xs4all.nl>
    451         - USER32: Ported AdjustWindowRectEx from Wine (990815)
    452                   Changed GetClientRect to return rectangle stored in
    453                   window object.
    454                   Ported (Begin/End)DeferWindowPos from Wine (990815)
    455                   Ported GetWindow from Wine (990815)
    456                   Fixed dialog control creation bug (create ascii controls when
    457                   parent window is ascii)
    458                   Implemented SetWindowPlacement (not complete done)
    459                   Fixed GetWindowPlacement (handle translation), still
    460                   needs to be implemented though.
    461                   Don't change PM window style in WM_DESTROY handler -> crash in PMMERGE
    462                   Bugfixes for Enum(Thread/Child)Window (wrong call to get object ptr)
    463                   Fixed FindWindowEx method to map frame window to object ptr.
    464                   Fixed WM_WINDOWPOSCHANGED handler for scrollbars (set window &
    465                   client rectangle)
    466                   Fixed WM_MOUSEMOVE handler for scrollbars (return 1 to let
    467                   PM change the mouse cursor back to the default)
    468                   Fixed GetDlgItem. According to SDK docs this api should work
    469                   for any parent-child pair. (behaviour seen in VPBuddy)
    470                   Added MFC message support for message printfs
    471 
    472  99-10-17: Christoph Bratschi <cbratschi@datacomm.ch>
    473         - USER32: replaced OS/2 scrollbars by WINE scrollbars
    474                   BUG: SCROLL_RefreshScrollBar doesn't work
    475                        GetDC returns a wrong DC, BeginPaint works as it should
    476                   Send as few WM_ENTERIDLE messages as possible -> low CPU usage
    477                   pmframe: removed WinFillRect
    478                   implemented: DrawIcon/DrawIconEx
    479                   fixed static icon size
    480                   pmframe: added PSF_CLIPSIBLINGS
    481 
    482  99-10-17: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
    483         - KERNEL32: Removed exception throwing from Pe2Lx classes.
    484                     Implemented TLS support in Pe2Lx classes.
    485 
    486  99-10-16: Yuri Dario <mc6530@mclink.it>
    487         - USER32: Button bugfix (BUTTON_CheckAutoRadioButton)
    488                   Win32dlg.cpp: cosmetic changes
    489         - include\os2wrap.h: define inline as _inline in C mode
    490         - include\win\winsock.h: Added prototypes
    491         - src\makefile: shell32 depends on ole32 & version, build it after those two dlls
    492         - SHELL32: Replaced full path with CPPMAIN for wrc parameters
    493         - win32k/makefile: replaced full path with macros
    494         - WSOCK32: Build export library (impdef to create correct .def)
    495 
    496  99-10-16: Sander van Leeuwen <sandervl@xs4all.nl>
    497         - USER32: Don't process size messages before sending WM_NCCREATE
    498                   message when creating a window. (can mess up our window
    499                   and client rectangle)
    500                   Erase background for buttons. (fixes groupbox redraw problems)
    501                   isFrameWindow bugfix + MDI creation & WM_NCCALCSIZE bugfix
    502 
    503  99-10-15: Sander van Leeuwen <sandervl@xs4all.nl>
    504         - USER32: CBT Hook bugfix. Only respond to WM_NCCREATE msg to send
    505                   HCBT_CREATEWND.
    506                   Scrollbar bugfix. Pass all msgs we don't use to default
    507                   window handler. (used to do this only for > WM_USER -->
    508                   return value of 0 for WM_NCCREATE cancels window creation)
    509                   GetWindow bugfix. (related window can be frame window)
    510                   Fixed window & child destruction process.
    511         - KERNEL32: Fixed VirtualQuery bug.
    512 
    513  99-10-15: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    514         - USER32: Basic message translation to fix problems in win apps
    515                   that wait for a specific message. (NOT COMPLETE)
    516 
    517  99-10-14: Sander van Leeuwen <sandervl@xs4all.nl>
    518         - USER32: Fixed WM_WINDOWPOSCHANGED (frame window rectangle)
    519                   Partly implemented CopyImage (only simple copies of icons
    520                   and cursors; FAR FROM COMPLETE!)
    521                   Removed FillRect during WM_PAINT in subclassed frame handler.
    522                   (still some redraw problems with i.e. button.exe; a little
    523                    worse than before)
    524 
    525  99-10-14: Patrick Haller <phaller@gmx.net>
    526         - KERNEL32:     Fix: threads might need more memory in debug mode (thread.cpp)
    527                         Fix: a little cleanup (virtual.cpp)
    528                         Fix: lstrcpyAW taking NULL parameters (broken WINE controls?) (heapstring.cpp)
    529         - ADVAPI32:     Fix: RegConnectRegistryA slightly improved
    530 
    531  99-10-14: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
    532         - PE2LX:    New implementation in src\win32k\pe2lx.
    533                     No resource conversion. I have tested it, but do expect to
    534                     find some bugs. And when you find, please give me a hint.
    535                     The new Pe2Lx uses much support code,(heap, printf..)
    536                     from win32k. It also uses the sub-system CRT library (as
    537                     win32k does). This way more of the win32k code will be
    538                     tested in Ring 3, so there'll simply be less bugs to track
    539                     down in Ring 0 and kernel debugger/ICAT.
    540         - KERNEL32: Win32???Pe2Lx classes is updated to match the new Pe2lX.
    541                     Note that TLS is not implemented yet - it's in the line.
    542                     Fix: Made a temporary fix in atom.cpp for some of the W
    543                     functions. The string isn't allways a string... I do a
    544                     permanent fix some other day.
    545         - WIN32K:   Compiles and links. But Not Tested!
    546 
    547  99-10-14: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    548         - USER32: lstrcmpW: check for null pointers
    549                   RemovePropA SetPropA bugfixes (wrong wnd handle)
    550 
    551  99-10-14: Sander van Leeuwen <sandervl@xs4all.nl>
    552         - USER32: Fixed shrinking listbox in shell about dialog.
    553                   (add border size to size during window creation & SetWindowPos)
    554                   Support for WM_NCCALCSIZE. Not completely working yet.
    555                   Fixed crash in Winhlp32 (annotate creates multiline edit
    556                   control that received PM messages too early -> divide by 0)
    557                   -> Don't allow WM_WINDOWPOSCHANGED messages until after WM_NCCREATE.
    558                   Removed previous OSLibMapWINDOWPOStoSWP bugfix.
    559                   Default dialog xBaseUnit = 10, yBaseUnit = 20.
    560                   Only set FCF_TASKLIST bit when parent == desktop & window
    561                   has titlebar. (too many Opera windows in tasklist)
    562                   Clear unsupported frame styles (i.e. no titlebar & minimize/maximize button)
    563                   Fixed MapOS2ToWin32Rectl & GetWindowRect.
    564                   Removed code that adds bordersize during SetWindowPos & window
    565                   creation. Fixed listbox code instead. (use window rectangle
    566                   for SetWindowPos call, not client rectangle)
    567 
    568         - USER32: Rewrote window creation. All Odin windows are OS/2 frames.
    569                   2nd half of window/dialog creation carried out during OS/2
    570                   WM_CREATE message.
    571                   Don't call default frame handler during WM_ADJUSTWINDOWPOS
    572                   for child windows. Fixes incorrect position.
    573                   Probably needs to be fixed again.
    574           NOTE: NOT WORKING CORRECTLY JUST YET!!
    575 
    576         - COMCTL32: Check infoPtr in toolbar during WM_ERASEBKGND
    577         - KERNEL32: Added wprocess.cpp dependency for include\win\thread.h
    578                     Bugfix for loading dlls in pe loader -> increase reference count
    579                     In iLoadLibrary first check if the dll has already been loaded.
    580                     Fixed console initalization for pe loader apps.
    581                     Fixed SetWin32TIB. Return current FS selector for Odin32 apps.
    582                     Removed generic.exe fix in OS2UnsetExceptionHandler.
    583                     (creates problems when loading multiple PE dlls with pe loader
    584                      and generic.exe still works fine now)
    585         - SHELL32: use wrc from tools directory
    586 
    587  99-10-13: Patrick Haller <phaller@gmx.net>
    588         - KERNEL32: Fix: XCPT_GUARD_PAGE_VIOLATION are now supported.
    589                          (helps PROGMAN.EXE)
    590         - USER32:   Fix: parameter checking in RedrawWindow
    591                     Fix: temp fix for MsgWaitForMultipleObjects
    592 
    593  99-10-12: Sander van Leeuwen <sandervl@xs4all.nl>
    594         - USER32: DrawMenuBar & DrawCaptionTempA bugfix (window handle translation)
    595                   Added Win32ToOS2FrameHandle method
    596                   Set default mouse pointer back if app doesn't process WM_MOUSEMOVE
    597                   message.
    598                   Bugfix in button control -> return non-zero if WM_MOUSEMOVE
    599                   message doesn't change the cursor.
    600                   Same fix in edit & listbox control.
    601                   Looks like the same bug is in the scrollbar code.
    602                   Preliminary listbox fixes (scrollbar related)
    603                   Don't show scrollbars when window is created.
    604 
    605         - USER32: Added support for extra messages in default window handler.
    606                   Partial support for WM_SYSCOMMAND in default window handler.
    607                   MDI child bugfix (window now displayed correctly)
    608                   Only subclass frame when it has a 3d border OR *only* the
    609                   WS_BORDER borderstyle.
    610                   Fixed y mapping bug in OSLibMapWINDOWPOStoSWP (converted
    611                   twice (win32 -> os2 -> win32))
    612         - USER32: Set focus to edit control when receiving WM_LBUTTONDOWN
    613 
    614         - USER32: Don't send WM_COMMAND during WM_SETFOCUS in edit control when
    615                   dialog hasn't been completely created. (crashes VPBuddy; can't
    616                   find dialog control that hasn't been created yet)
    617                   NOTE: EXPERIMENTAL FIX. NEEDS TO BE CHANGED.
    618 
    619  99-10-11: Christoph Bratschi <cbratschi@datacomm.ch>
    620         - USER32: pmframe finished
    621 
    622  99-10-11: Sander van Leeuwen <sandervl@xs4all.nl>
    623         - USER32: Disabling the desktop window is a very bad idea.
    624                   (desktop no longer responds to mouse clicks)
    625                   Enable method in desktop window class that does nothing.
    626                   Added support for extra messages in msg printf code
    627                   Ported almost all Wine code for CTLCOLOR messages.
    628                   Return -1 in DefWindowProc for WM_VKEYTOITEM & WM_CHARTOITEM
    629                   Fix for MDI child window. They're now displayed, but it's
    630                   still not right.
    631         - SHELL32: Fixed Shell32 about dialog.
    632                    Compile Wine resource with WRC and link with dll.
    633                    Added version resource
    634                    Call Wine dll entrypoint in initterm.cpp.
    635         - INCLUDE: Only include stdlib.h when wrc is not active
    636                    Extra definitions for compiling win32 apps in OS/2
    637 
    638  99-10-11: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    639         - GDI32: GetTextFaceW bugfix
    640         - USER32: Init ownDC to 0
    641                   Create empty dialog in CreateWindowExA/W if class == dialog
    642                   Support for class atoms in CreateWindowExA/W
    643                   Win32Dialog::getNextDlgGroupItem() bugfix
    644 
    645  99-10-11: Christoph Bratschi <cbratschi@datacomm.ch>
    646         - GDI32: Bugfix for Pie Open32 api
    647 
    648  99-10-10: Christoph Bratschi <cbratschi@datacomm.ch>
    649         - USER32: fixed radio buttons, disabled text output
    650 
    651  99-10-10: Sander van Leeuwen <sandervl@xs4all.nl>
    652         - USER32: Ported GetNextDlgGroupItem & GetDlgItemInt from Wine
    653                   Window handle translation fix for MessageBoxW
    654                   Don't create frame windows for windows with a 3d border.
    655                   (fixes crash in VPBuddy; don't know why)
    656         - COMDLG32: Fix for most unicode functions (window handle translation
    657                     missing as reported by Edgar Buerkle)
    658 
    659  99-10-10: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    660         - KERNEL32: Bugfix for GetFullPathNameW (NULL ptr check)
    661 
    662  99-10-09: Sander van Leeuwen <sandervl@xs4all.nl>
    663         - USER32: Clipboard fixes (window handle translation)
    664                   Fixed button redraw when receiving a WM_ENABLE msg
    665                   Use the supported Open32 system colors and only use
    666                   those from Wine for the new (9x) colors
    667         - SHELL32: Moved old to current, current to old dir
    668         - KERNEL32: Don't switch FS selectors for Odin32 OS/2 apps (win32
    669                     apps compiled in OS/2).
    670                     Fixed reversed stack top & bottom in TEB structure.
    671         - KERNEL32  Added code to dispatch OS exceptions to win32 apps.
    672                     Doesn't seem to be necessary though, so it's inactive for now.
    673         - USER32:   Fixed resizing in winhlp32. Doesn't seem to break anything
    674                     else. (needs more testing though)
    675                     Only increase y position of window if it's initial y <> 0.
    676                     Fixed desktop window lookup (GetWindowFromHandle)
    677                     Set dummy desktop window handler;
    678                     Mdi client bugfix (reported by Yuri Dario)
    679 
    680  99-10-09: Jens Wiessner <wiessnej@rfi.de>
    681         - CRTDLL: Implemented functions; only 62 stubs left
    682 
    683  99-10-09: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    684         - USER32: Enabled accelerator WM_COMMANDs
    685         - COMDLG32: Fix for GetOpenFileNameW (owner hwnd translation)
    686 
    687  99-10-08: Daniela Engert <dani@ngrt.de>
    688         - USER32: fix: miscoloured bitmaps
    689 
    690  99-10-08: Christoph Bratschi <cbratschi@datacomm.ch>
    691         - USER32: added WM_STYLECHANGING/WM_STYLECHANGED.
    692                   button,combo: bitmap fix.
    693                   added frame to children with WS_* border flags
    694                   subclass frame windows
    695                   SendDlgItemMessageA/W fixed
    696                   CheckRadioButton fixed
    697                   merged controls with WINE 990923
    698 
    699  99-10-08: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    700         - KERNEL32: Accelerator conversion fixes + changes
    701 
    702  99-10-08: Sander van Leeuwen <sandervl@xs4all.nl>
    703         - USER32: Bugfix for SetWindowPos; take frame size into account
    704                   Removed WM_MOVE notification class flag for Odin PM windows
    705                   Removed SetWindowPos frame size bugfix
    706                   Removed WM_WINDOWPOSCHANGED cy bugfix
    707                   Set WS_DISABLED window style bit when receiving PM WM_ENABLE
    708                   GetClassInfoA bugfix
    709                   Window property bugfixes (no handle translation)
    710                   Set last error when window creation fails.
    711                   In DefDlgProcA/W, call DefWindowProcA/W if window is not
    712                   a dialog. Fixed problems in VPBuddy.
    713                   Unknown if that's a bug in the app or something else goes wrong.
    714         - KERNEL32: Bugfix for loading winspool
    715                     Ported latest Wine exception code (RtlRaiseException/RtlUnwind)
    716 
    717  99-10-07: Christoph Bratschi <cbratschi@datacomm.ch>
    718         - USER32: GetCaretPos() fix
    719 
    720  99-10-07: Achim Hasenmueller <achimha@innotek.de>
    721         - USER32: Corrected pageup/pagedown behavior
    722 
    723  99-10-07: Rene Pronk <R.Pronk@twi.tudelft.nl>
    724         - USER32: Fixed WM_WINDOWPOSCHANGED behavior so that
    725                   client windows are properly resized. This fixes
    726                   the Winhlp32 history resize problem
    727 
    728  99-10-07: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    729         - USER32: Set window PM id for Odin windows.
    730                   Bugfix for WM_QUERYWINDOWPARAMS handler
    731                   Case insensitive string compare in CreateWindowExA/W for
    732                   mdi client class check.
    733                   Create ascii or unicode mdi child window based on mdi client
    734                   window type.
    735 
    736  99-10-07: Jens Wiessner <wiessnej@rfi.de>
    737         - CRTDLL: Includes all functions (added stubs and fully implemented functions)
    738 
    739  99-10-07: Sander van Leeuwen <sandervl@xs4all.nl>
    740         - USER32: Only display scrollbars when they need to be shown.
    741                   (also fixes redraw problems with inactive scrollbars)
    742                   Resize bugfix. Winhlp32 can now be resized without problems.
    743                   Whether this fix is correct is another matter.
    744 
    745  99-10-06: Daniela Engert <dani@ngrt.de>
    746         - USER32: fix: adjust caret position if window height changes.
    747 
    748  99-10-06: Sander van Leeuwen <sandervl@xs4all.nl>
    749         - USER32: Fixed memory leaks in SetWindowTextA/W window class methods
    750         - KERNEL32: Put back my changes (10/04/99) in winimgres.cpp
    751 
    752  99-10-06: Patrick Haller <phaller@gmx.net>
    753         - KERNEL32: Fix: DLLs without Resource Segment (pResDir == NULL)
    754                     Fix: VirtualFree not freeing memory fixed, WINHLP32 looks healthier :)
    755 
    756  99-10-05: Christoph Bratschi <cbratschi@datacomm.ch>
    757         - USER32: rewrote color management
    758 
    759  99-10-05: Sander van Leeuwen <sandervl@xs4all.nl>
    760         - KERNEL32: Set fs:0 to -1 in OS2UnsetExceptionHandler.
    761                     Prevents crash due to corrupted handler chain (see
    762                     comments in that function)
    763         - ODIN32API: Remove exception handler set & unset. Not necessary
    764                      as it's also done in the start method of an exe image.
    765 
    766  99-10-04: Patrick Haller <phaller@gmx.net>
    767         - SHELL32\NEW: Compilation fix (indirectly included win32type.h)
    768         - KERNEL32:    Support for DisableThreadLibraryCalls
    769 
    770  99-10-04: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    771         - USER32: Fixes for window style update, mouse button messages,
    772                   WS_CAPTION style and apps with a dialog as their main window.
    773                   (set owner to desktop)
    774         - KERNEL32: Extra checks for valid heap pointers
    775 
    776  99-10-04: Sander van Leeuwen <sandervl@xs4all.nl>
    777         - USER32: Deleted dialog.cpp
    778                   Set last error to 0 if dialog creation succeeds.
    779                   Added flag to distinguish between messages sent by PM and
    780                   those sent by apps
    781                   Handle WM_SETTEXT messages passed to default window handler
    782                   (only if not sent by PM)
    783         - VERSION: Fix for string compares in VersionInfo32_FindChild (has
    784                    to be a lstrcmpniW)
    785         - SHELL32: Removed nameid.h include in she.cpp & sh.cpp. Fixed makefile
    786                    addition for export library (extra ".." for tool path)
    787         - DPLAY, MSACM32: Compilation fix (indirectly included win32type.h)
    788         - KERNEL32: Fixed getVersionStruct for PE & LX images (didn't copy
    789                     version data before)
    790                     Fixed module name lookup for win32 images executed by the PE
    791                     loader. (can't use OSLibQueryModuleHandle for those)
    792                     Added lstrcmpniW function
    793                     Set full path for LX images
    794                     Support for retrieving the first resource of a certain type
    795                     (version ids no longer hardcoded as id 1; just get the first one
    796                      present)
    797 
    798  99-10-04: Jens Wiessner <wiessnej@rfi.de>
    799         - CRTDLL: Implemented functions + added stubs
    800         - MSVCRT: More stubs + crtdll forwarders
    801 
    802  99-10-04: Yuri Dario <mc6530@mclink.it>
    803         - ddeml.h: new macros
    804         - mmsystem.h: changed sndPlaySound and mciCommand prototypes (as in MS sdk)
    805         - shlobh.h: added ifdef for direct inclusion
    806         - winbase.h: added UnlockResource macro
    807         - windef.h: changed return type (maybe also other functions are wrong)
    808         - windows.h: included ddeml.h
    809         - windowsx.h: added macros
    810         - wingdi.h: added win95 bitmap structures
    811         - winuser.h: few macros and changed DLGTEMPLATE prototypes as in MS sdk
    812         - crtdll.cpp: now includes libc/locale.h, so toolkit headers are included also for VA36
    813         - shell32/makefile: added code for library export.
    814         - shell32/new/makefile: added code for library export.
    815         - dialog.cpp: DLGTEMPLATE changes
    816         - windlg.cpp: DLGTEMPLATE changes.
    817         - win32k/makefile: corrected paths
    818         - win32k/include/pe2lx.h: this section should be included for VA36
    819 
    820  99-10-03: Daniela Engert <dani@ngrt.de>
    821         - USER32: WM_MOUSEMOVE bugfix (removed check for captured mouse)
    822 
    823  99-10-03: Sander van Leeuwen <sandervl@xs4all.nl>
    824         - USER32: Updated window class with isMDIClient method
    825                   Fixed DrawTextExA/W compile errors (different parameter types)
    826 
    827  99-10-02: Christoph Bratschi <cbratschi@datacomm.ch>
    828         - USER32: DrawTextExA/W: implemented DT_END_ELLIPSIS
    829                   added DrawTextExA/W to header files
    830 
    831  99-10-02: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    832         - VERSION: Allocation bugfix in VerQueryValueA
    833         - USER32: Added style changes for PM windows + don't clear WS_VISIBLE
    834                   flag when converting window styles. (fixes buttons in winhlp32)
    835 
    836  99-10-01: Sander van Leeuwen <sandervl@xs4all.nl>
    837         - DDRAW: ifdef'ed out code that causes crash (OS2Surface destructor)
    838                  Free original translation buffer, not the one aligned to qword
    839                  boundary.
    840         - USER32: Create frame window for windows with desktop as parent (i.e. WS_POPUP)
    841                   This makes sure WM_ACTIVATE messages are sent.
    842                   Scrollbar changes.
    843                   Call DestroyWindow when DefWndProc receives WM_CLOSE msg.
    844         - KERNEL32: Allocate memory from heap when HeapReAlloc is called with
    845                     a NULL memory pointer (WINE listbox control depends on this)
    846         - AVIFIL32: Compilation fix
    847 
    848  99-10-01: Edgar Buerkle <Edgar.Buerkle@gmx.net>
    849         - KERNEL32: Skip spaces in command line string
    850         - USER32: Fix for MessageBoxA (window handle conversion)
    851                   Fixes for combobox (handles null pointers)
    852         - GDI32: Added OSLibSetDIBitsToDevice
    853 
    854  99-10-01: Jens Wiessner <wiessnej@rfi.de>
    855         - CRTDLL: Implemented functions + added stubs
    856         - MSVCRT: More stubs + crtdll forwarders
    857 
    858  99-09-29: Daniela Engert <dani@ngrt.de>
    859         - USER32: improved timer handling for caret blinking.
    860                   recreate carets on focus change if needed.
    861 
    862  99-09-29: Sander van Leeuwen <sandervl@xs4all.nl>
    863         - USER32: Almost completed standard window scrollbars.
    864                   Fixed WM_ACTIVATE message, generate WM_ACTIVATEAPP message
    865                   when WM_ACTIVATE is received. (instead of WM_SETFOCUS)
    866                   NOTE: Still not working correctly. Too many WM_ACTIVATEAPP msgs generated.
    867                   Always send Odin window handles from pmwindow.cpp to win32wbase.cpp.
    868                   Send WM_CHILDACTIVATE msg to MDI child windows.
    869 
    870  99-09-28: Christoph Bratschi <cbratschi@datacomm.ch>
    871         - USER32: Mouse input functions: SetCapture() fixed
    872                   SystemParametersInfo(): fonts fixed
    873                   GetSystemMetrics(): changed icon size to 32x32
    874                   Sorting and fixing user32.cpp
    875 
    876  99-09-28: David Raison <djr@lemur.co.uk>
    877         - KERNEL32: Fixed GetComputerNameA
    878 
    879  99-09-28: Jens Wiessner <wiessnej@rfi.de>
    880         - CRTDLL: Updated _except_handler2 + added Wine source changes
    881         - MSVCRT: Created. Forwards most apis to CRTDLL or NTDLL.
    882 
    883  99-09-28: Sander van Leeuwen <sandervl@xs4all.nl>
    884         - USER32: Only generate WM_CHAR when TranslateMessage is called for
    885                   WM_KEYDOWN. (TODO: WM_SYSCHAR)
    886 
    887  99-09-28: Daniela Engert <dani@ngrt.de>
    888         - USER32: Caret functions implemented
    889                   ScrollDC implemented
    890                   ScrollWindowEx implemented
    891 
    892  99-09-28: Patrick Haller <phaller@gmx.net>
    893         - KERNEL32:     Add: debug info for missing API imports (WinImagePeLdr)
    894                         Fix: source cleanup, introduction of WIN32.DIR.SYSTEM and WIN32.DIR.WINDOWS
    895                              as overrides over the STUPID Open32 result. I don't want to have Win32 apps
    896                              messing up x:\OS2 ....
    897 
    898  99-09-26: Daniela Engert <dani@ngrt.de>
    899         - USER32: SetTimer/KillTimer work now.
    900 
    901  99-09-26: Achim Hasenmueller <achimha@innotek.de>
    902         - COMCTL32: Merged with WINE 990923 changes
    903                     (propsheet.c not fully done)
    904 
    905  99-09-26: Sander van Leeuwen <sandervl@xs4all.nl>
    906         - USER32:   Started with standard window scrollbar implementation
    907                     Rewrote ScrollWindow (seems to work ok)
    908                     Set text bugfix (crash in about dialog box of generic.exe)
    909                     Send WM_INITDLG after creation of dialog controls.
    910                     Set last error to 0 at end of BeginPaint/EndPaint.
    911                     Set last error when window not found (window.cpp/windlg.cpp)
    912                     WM_(SYS)KEYUP/DOWN bugfix (repeat cnt & scancode reversed)
    913                     Generate WM_CHAR message when TranslateMessage is called for
    914                     WM_CHAR (PM) message. (sent after WM_(SYS)KEYUP/DOWN)
    915 
    916  99-09-25: Christoph Bratschi <cbratschi@datacomm.ch>
    917         - USER32: WS_EX_* 3D frame support for child windows
    918         - USER32: Double click handling changed
    919 
    920  99-09-25: Sander van Leeuwen <sandervl@xs4all.nl>
    921         - USER32:   Cursor fixes. Cursor shown correctly in winhlp32.
    922                     Don't call WinDefWindowProc for WM_MOUSEMOVE (resets
    923                     cursor to system default)
    924                     RedrawWindow: set window pointer to desktop window when hwnd == NULL
    925         - KERNEL32: Cursor & cursorgroup fixes
    926                     Fixes for thread local memory allocation (only done for thread 0)
    927                     Create TEB selector + memory for threads we don't create.
    928                     (i.e. DART threads in WINMM)
    929                     NOTE: Not tested.
    930         - USER32\OLD, KERNEL32\OLD: Fixed makefiles + changes to make them
    931                                     work with new dlls.
    932 
    933  99-09-25: Daniela Engert <dani@ngrt.de>
    934         - USER32: ClientToScreen and ScreenToClient didn't work -> fixed.
    935 
    936  99-09-24: David Raison <djr@lemur.co.uk>
    937         - OLE32: Ported remaining files pertaining to OLE32 from WINE
    938         - OLEAUT32: Patched OaBuildVersion to level 0x1E...
    939 
    940  99-09-24: Sander van Leeuwen <sandervl@xs4all.nl>
    941         - USER32: Rewrote menu code to use Open32 (==PM) menu handles
    942                   Note: Uses mostly Open32 apis; they work fine, but maybe
    943                         we should write our own someday.
    944                   Cursor fixes. Not working in winhlp32 yet though.
    945         - KERNEL32: Cursor & cursorgroup fixes
    946 
    947  99-09-23: Patrick Haller <phaller@gmx.net>
    948         - KERNEL32:     Fix: WinImgRes:findResourceW erroneously tried to free
    949                         numerical resource IDs instead of translated Unicode
    950                         strings.
    951         - USER32:       Fix: in USER32:HeapShared:getmoreShared()
    952                         Fix: in USER32:WIN32WMDIClient:childActivate()
    953                         Fix: in USER32:WinMenu:GetSubMenu
    954                                 now returns Win32MenuRes object instead of PM handle
    955                         Fix: in USER32:WinMenu:GetSystemMenu
    956                                 now returns Win32MenuRes object instead of PM handle
    957                         Fix: in USER32:Char:CharPrevW intermixed arguments
    958 
    959  99-09-23: Jens Wiessner <wiessnej@rfi.de>
    960         - CRTDLL: Added stubs, implemented some stubs
    961         - IMAGEHLP, IMM32, MSACM32, MSVFW32, OLEDLG,
    962           OLECLI32, OLESVR32, PSAPI, RASPI32
    963                   Added dprintfs.
    964 
    965  99-09-23: Sander van Leeuwen <sandervl@xs4all.nl>
    966         - WINMM: Changed WinPostMsg calls into PostMessageA as win32 window
    967                  handles are not the same as PM handles anymore.
    968         - USER32: Adding desktop window class. When user32 is loaded, a desktop
    969                   window object is created.
    970                   GetDesktopWindow returns handle of this window.
    971                   Winhlp32 no longer crashes immediately, but briefly shows
    972                   it's window before quitting.
    973                   Create windows always with HWND_TOP. The if statement (hwndLinkAfter)
    974                   in the CreateWindowExA method of Win32BaseWindow class messes
    975                   up the Z-order of dialog controls (i.e. buttons in a group box)
    976         - COMDLG32: Fixed all common dialogs. (translate our handle to real PM handle)
    977 
    978  99-09-22: David Raison <djr@lemur.co.uk>
    979         - KERNEL32: Return "Service Pack 3" as CSD string in GetVersionExA/W
    980 
    981  99-09-22: Yuri Dario <mc6530@mclink.it>
    982         - MISC: Fixed WINELIB macro's in wingdi.h, added fixes to headers
    983                 for VAC 3.6.5
    984         - ODINCRT: Also link with SOMLIB (VAC 3.6.5)
    985         - CRTDLL: Compilation fix for VAC 3.6.5
    986         - TOOLS\COMMON: Minor change to makefile
    987         - TOOLS\IMPDEF: Minor change to makefile
    988         - TOOLS\WRC: Makefile fixes
    989 
    990  99-09-22: Rene Pronk <R.Pronk@twi.tudelft.nl>
    991         - USER32: Changed WM_CHAR PM handling to generate WM_(SYS)KEYUP/DOWN
    992                   messages.
    993                   Note: Not complete as TranslateMessage doesn't translate
    994                         ascii keys to WM_CHAR messages.
    995 
    996  99-09-22: Sander van Leeuwen <sandervl@xs4all.nl>
    997         - USER32: Removed GetDesktopWindow fix
    998                   Ported getNextDlgTabItem & getDlgItem
    999 
    1000  99-09-21: Daniela Engert <dani@ngrt.de>
    1001         - USER32:   background erasing/painting stuff hopefully finished.
    1002 
    1003  99-09-21: Patrick Haller <phaller@gmx.net>
    1004         - KERNEL32: Add: GetFileAttributesExA/W implemented (ugly)
    1005 
    1006  99-09-21: Sander van Leeuwen <sandervl@xs4all.nl>
    1007         - KERNEL32: Fixed cursor group conversion
    1008         - PELDR:    Committed my latest sources. (rewrite for new kernel32 image classes)
    1009 
    1010  99-09-21: Edgar Buerkle <100566.557@compuserve.com>
    1011         - USER32:   Fixed GetDesktopWindow, added message handling for WM_TIMER
    1012                     added code to choose best icon from icon group. (in OSLibWinCreateIcon)
    1013         - KERNEL32: Fix for converting icons & icon groups
    1014 
    1015  99-09-19: David Raison <djr@lemur.co.uk>
    1016         - OLE32: Added AntiMoniker,
    1017                  Updated regsvr32 to use RegisterLxExe
    1018 
    1019  99-09-20: Sander van Leeuwen <sandervl@xs4all.nl>
    1020         - USER32: Fix background of button, group & static text
    1021                   NOTE: Changed default behaviour of WM_CTLCOLOR* handling.
    1022                         Don't know if this is correct, but it fixes problems
    1023                         in dialogs (text with white instead of gray background)
    1024 
    1025  99-09-20: Markus Montkowski
    1026         - WNASPI32: full implementation via ASPIROUT$ device driver.
    1027 
    1028  99-09-19: Sander van Leeuwen <sandervl@xs4all.nl>
    1029         - USER32: Increased font pointsize for dialog (multiplied by two)
    1030                   (probably not the right way to do things, but it works for the
    1031                    dialogs in Solitaire)
    1032                   Activated MsgEraseBackground method again (pmwindow.cpp)
    1033                   Dialogs don't receive those otherwise.
    1034                   (may need to be changed back again)
    1035 
    1036  99-09-19: David Raison <djr@lemur.co.uk>
    1037         - USER32: Partially implemented MessageBoxIndirectA/W (forwarded to MessageBox)
    1038 
    1039  99-09-18: Sander van Leeuwen <sandervl@xs4all.nl>
    1040         - KERNEL32: Added resource support for win32 apps compiled in OS/2
    1041         - INCLUDE: Header file changes for win32 apps compiled in OS/2
    1042         - VERSION: Create correct import lib
    1043         - WINMM:   Create correct import lib
    1044         - MSACM32: Link with winmm.lib, don't import apis from .def file
    1045         - MSVFW32: Link with winmm.lib, don't import apis from .def file
    1046 
    1047  99-09-18: Przemyslaw Dobrowolski <dobrawka@asua.org.pl>
    1048         - KERNEL32: Implemented lstrncmpiA
    1049 
    1050  99-09-18: Jens Wiessner <wiessnej@rfi.de>
    1051         - CRTDLL: Added stubs
    1052         - SHELL32(NEW)/MSACM32/MSFW32: Link with kernel32 for lstrncmpiA
    1053 
    1054  99-09-17: Daniela Engert <dani@ngrt.de>
    1055         - USER32:   Fix: window focus management.
    1056                     OSLIBWIN.H: the definitions of OSLIB_HWND_DESKTOP and
    1057                     OSLIB_HWND_OBJECT were 1 off (with respect to the definition
    1058                     in PMWIN.H)! So OSLIB_HWND_DESKTOP was in effect NULLHANDLE,
    1059                     and OSLIB_HWND_OBJECT was HWND_DESKTOP.
    1060 
    1061  99-09-16: Daniela Engert <dani@ngrt.de>
    1062         - USER32:   Fix: UpdateWindow
    1063                     New: RedrawWindow (preliminary), InvalidateR*
    1064 
    1065  99-09-16: Patrick Haller <phaller@gmx.net>
    1066         - USER32:   Fix: DIB_FixColorsToLoadflags - incr was not initialized
    1067                     Fix: WINMENU::GetSystemMenu() was broken.
    1068 
    1069  99-09-15: Sander van Leeuwen <sandervl@xs4all.nl>
    1070         - KERNEL32: Moved old kernel32 code to kernel32\old
    1071                     Rewritten win32 exe/dll classes.
    1072                     There are now classes for the following exes/dlls:
    1073                     Pe2lx images, win32 images loaded by the pe loader and
    1074                     LX images (win32 apps compiled in OS/2 and system dlls)
    1075                     Bugfixes for unicode resource apis.
    1076                     Not completely tested yet, but works for most apps.
    1077           NOTE:     Resource handling for pe2lx & win32 apps compiled in OS/2
    1078                     will be added in the near future. For now it's compatible
    1079                     with the old pe2lx.
    1080           NOTE:     New kernel32 doesn't work with old user32
    1081           NOTE:     Win32Resource::lockResource not complete yet, but that part
    1082                     will be removed after the pe2lx rewrite.
    1083         - USER32:   Moved new user32 into user32 dir, old one to user32\old
    1084         - ALL:      Changed initterm.cpp to create LX dll object during initialization.
    1085           IMPORTANT NOTE: Version increased from 3 to 4. Complete recompilation
    1086                           of everything is required!
    1087 
    1088  99-09-14: Patrick Haller <phaller@gmx.net>
    1089         - AVIFIL32:   ported AVIFIL32 from WINE
    1090         - DPLAY:      ported DPLAY from WINE
    1091                       Note: DPLAYX is required and NOT ported yet.
    1092                             Furthermore, DPLAY has still stubs.
    1093         - DPLAYX:     ported DPLAY from WINE (incomplete)
    1094                       Note: still problem with COM-inheritance-macro XCAST()
    1095         - WNASPI32:   ported WNASPI32 from WINE
    1096                       Note: someone should adapt it to OS/2's R3 ASPI router
    1097 
    1098  99-09-14: Sander van Leeuwen <sandervl@xs4all.nl>
    1099         - USER32\NEW: Implemented Enum(Thread/Child)Windows based on Edgar
    1100                       Buerkle's code with modifications for new user32 and
    1101                       added some enhancements.
    1102 
    1103  99-09-13: Jens Wiessner <wiessnej@rfi.de>
    1104         - NTDLL: Added CRT-functions.
    1105 
    1106  99-09-13: Daniela Engert <dani@ngrt.de>
    1107         - USER32\NEW: DC/related code: ReleaseDC, GetWindowDC, DC destruction,..
    1108 
    1109  99-09-13: Patrick Haller <phaller@gmx.net>
    1110         - SHELL32\NEW:  updated to current wine level
    1111 
    1112  99-09-13: David Raison <djr@lemur.co.uk>
    1113         - KERNEL32: Fixed MultiByteToWideChar. Return size of string including
    1114                     0 terminator.
    1115 
    1116  99-09-13: Jens Wiessner <wiessnej@rfi.de>
    1117         - CRTDLL: Added functions.
    1118 
    1119  99-09-08: David Raison <djr@lemur.co.uk>
    1120         - OLEAUT32: Updated TypeLib code to find typelibs in EXE/DLL etc
    1121                     NB Still need to fix typelib translation.
    1122 
    1123  99-09-12: Daniela Engert <dani@ngrt.de>
    1124         - USER32\NEW: DC/related code: GetDCEx implemented. Slightly enhanced
    1125                       over Open32.
    1126 
    1127  99-09-12: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
    1128         - WIN32K: An untested version is checked in. The new skeleton is
    1129           partially tested. PE2LX is not updated and will probably not be updated
    1130           before pe2lx is rewritten.
    1131 
    1132  99-09-09: Daniela Engert <dani@ngrt.de>
    1133         - USER32\NEW: begin new DC/related code. BeginPaint/EndPaint done.
    1134 
    1135  99-09-09: Patrick Haller <phaller@gmx.net>
    1136         - SHELL32\NEW:  shell32 done, it compiles + links, no testing yet
    1137         - USER32:       added stubs for GetMenuInfo + SetMenuInfo
    1138         - USER32\NEW:   added stubs for GetMenuInfo + SetMenuInfo
    1139 
    1140  99-09-08: David Raison djr@lemur.co.uk
    1141         - Src\OleAut32 Added stubs for undefined exports in OLEAut32
    1142 
    1143  99-09-08: Yuri Dario <mc6530@mclink.it>
    1144         - INCLUDE\WIN: Changes to wingdi.h (more WINELIB_NAME defs) & winuser.h (mssing definitions)
    1145                        Missing ';' in custcntl.h at line 106
    1146 
    1147  99-09-08: David Raison djr@lemur.co.uk
    1148         - INCLUDE\WIN: Added DECIMAL definition to windef.h
    1149 
    1150  99-09-08: knut st. osmundsen <knut.stange.osmundsen@pmsc.no>
    1151         - KERNEL32, USER32, USER32\NEW, GDI32, ADVAPI32: <dllname>exp.def is
    1152           now generated by a util called ImpDef. (source in tools\impdef).
    1153         - INC: pdwin32.tools is updated with a IMPDEF macro. This requires
    1154           the macro PDWIN32_TOOLS too point to the tools\bin directory.
    1155         - TOOLS: New directory tree for tools developed to aid us create odin32.
    1156           Create a subdirectory for each tool.
    1157           Currently database, impdef and omfdumper is placed here.
    1158         - TOOLS\IMPDEF: generates the <dllname>exp.def files.
    1159         - TOOLS\OMFDUMPER: source for the omfdumper use to create pmwinx.def.
    1160           Base source for a library converted used in win32k.
    1161         - TOOLS\DATABASE: source for the odin32 API database and it's tools.
    1162           See the Odin32 API Database Design Document for more info.
    1163           Document will soon be placed in the 'Vault' of the win32-os2 group.
    1164         - TOOLS\DATABASE\MYSQL: mysql headers and libraries.
    1165         - TOOLS\DATABASE\GD: Gifdraw 1.2 - used to draw graphs.
    1166 
    1167  99-09-08: Patrick Haller <phaller@gmx.net>
    1168         - OLE32: CLSIDFromStringA is needed in other modules, too. (SHELL32)
    1169 
    1170  99-09-08: Sander van Leeuwen <sandervl@xs4all.nl>
    1171         - Removed /DNONAMELESSUNION from some makefiles (now defined in odin.h)
    1172         - Minor changes to odin.h (nameless union allowed in VAC 3.6.5) & windowsx.h
    1173         - USER32\NEW: Use fixed user32exp.def. Doesn't work for GetOS2Callback__15Win32WindowProcFv
    1174                       (causes link failure for comdlg32)
    1175         - TOOLS\WRC: Ported Wine wrc. Needs EMX+GCC
    1176 
    1177  99-09-07: Jens Wiessner <wiessnej@rfi.de>
    1178         - CRTDLL: Created dll (Wine port)
    1179 
    1180  99-09-07: Patrick Haller <phaller@gmx.net>
    1181         - OLE32: WINE_StringFromCLSID is needed in other modules, too. (SHELL32)
    1182         - SHELL32\NEW:  improvement of shell32
    1183         - KERNEL32: ToolHelp functions stubbed: Process32First, etc.
    1184 
    1185  99-09-05: Sander van Leeuwen <sandervl@xs4all.nl>
    1186         - USER32\NEW: Dialog updates (not yet done)
    1187 
    1188  99-09-04: Daniela Engert <dani@ngrt.de>
    1189         - USER32\NEW: beginning with 'DAXifying' of our windows
    1190 
    1191  99-09-04: Sander van Leeuwen <sandervl@xs4all.nl>
    1192         - KERNEL32: Fixed icon- & cursorgroup conversion (Solitaire icon now correct again)
    1193         - USER32\NEW: Started with Wine dialog code port. Dialog creation done,
    1194                       but not tested.
    1195 
    1196  99-09-04: Jens Wiessner <wiessnej@rfi.de>
    1197         - MSVFW32: Created stub (partly) dll (Based on Wine 990815)
    1198         - PSAPI: Created stub dll (Based on Wine 990815)
    1199 
    1200  99-09-03: Sander van Leeuwen <sandervl@xs4all.nl>
    1201         - USER32\NEW: MDI child/client improvement (not all wine code has
    1202                       been ported though)
    1203 
    1204  99-09-01: Patrick Haller <phaller@gmx.net>
    1205         - *:    Cleanup of include files, some ICOM issues in particular,
    1206                 also fixes LONGLONG problem (now names LONGLONG_W)
    1207         - SHELL32\NEW:  introduction of a straight port of WINE's SHELL32 implementation
    1208                 18 of 22 files are ported already
    1209 
    1210  99-09-01: Patrick Haller <phaller@gmx.net>
    1211         - *:    Cleanup of include files. Warning: OS/2's BOOL is ULONG, WIN32 is INT.
    1212                 Causes C++ compilers to complain here and there. Plus many WINE prototypes
    1213                 are just plain wrong.
    1214                 This change should help porting shell32/new.
    1215 
    1216 
    1217  99-09-01: Sander van Leeuwen <sandervl@xs4all.nl>
    1218         - USER32\NEW: Fixed GetWindowDC (Freecell 'Cards Left' string drawn
    1219                       at the right place)
    1220 
    1221  99-09-01: Jens Wiessner <wiessnej@rfi.de>
    1222         - RASAPI32: Created stub dll
    1223         - MSACM32: Created (partly) stub dll
    1224 
    1225  99-08-31: Patrick Haller <phaller@gmx.net>
    1226         - WINMM:        revision of timer services (C&C RA)
    1227         - KERNEL32:     temporary fix for DuplicateHandle for non-HandleManager handles
    1228                         little improvement in console properties
    1229                         incorrect anchor class for mutexes, events and semaphores
    1230                         fixed return codes for HMCreateFileMapping, HMOpenFileMapping
    1231                         Fix: FILE_MAP_ALL_ACCESS access flags for memory mapped files
    1232 
    1233  99-08-31: Sander van Leeuwen <sandervl@xs4all.nl>
    1234         - USER32\NEW: Finished MDI class, but it's not working yet.
    1235         - USER32\NEW: Fixed menu apis
    1236         - KERNEL32\NEW: Changed makefile to generate response file (linker
    1237                         cmd line too long)
    1238                         Created resource class for menus (Win32MenuRes)
    1239         - INC:        Changed debug makefiles to include /dbgpack linker option
    1240                       (compresses debug info)
    1241 
    1242  99-08-31: Rene Pronk <R.Pronk@twi.tudelft.nl>
    1243         - USER32,USER32\NEW: Implemented ChildWindowFromPointEx
    1244 
    1245  99-08-30: Jens Wiessner <wiessnej@rfi.de>
    1246         - OLEDLG: Created stub dll
    1247         - INC\WIN: Update for ras.h
    1248 
    1249  99-08-30: Sander van Leeuwen <sandervl@xs4all.nl>
    1250         - USER32\NEW: Redesign. Create base class for all window types
    1251                       Delete Open32 class atoms before recreating them.
    1252                       Added skeleton class for MDI client window.
    1253 
    1254  99-08-29: Sander van Leeuwen <sandervl@xs4all.nl>
    1255         - USER32\NEW: Changed behaviour of mouse messages (send NC messages
    1256                       when in non-client area + send WM_SETCURSOR msgs)
    1257                       Don't send WM_MOUSEMOVE when mouse is captured.
    1258                       Changed CreateMDIWindowA/W (don't call Open32 api anymore,
    1259                       but post WM_MDICREATE msg)
    1260 
    1261         - KERNEL32 Interlock apis ported from Wine (with help of Patrick Haller)
    1262         - INC: Removed Masm compatible flag for ALP and enabled debugging
    1263                info in debug build
    1264 
    1265  99-08-29: Jens Wiessner <wiessnej@rfi.de>
    1266         - OLECLI32: Created stub dll
    1267         - IMM32: Created stub dll
    1268         - IMAGEHLP: Created (partly) stub dll
    1269 
    1270  99-08-28: Sander van Leeuwen <sandervl@xs4all.nl>
    1271         - USER32\NEW: Use shared memory for window & class objects
    1272                       Implemented FindWindow(Ex). Not yet tested
    1273                       Fixed window names.
    1274                       Created shared heap using VAC's _ucreate.
    1275                       Separate window handle creation (in shared memory array)
    1276                       PostMessage fixes (didn't work between two processes)
    1277         - KERNEL32:   Fixed exception handling for kill signals & termination
    1278                       Changed VMutex constructor (also allows creation of
    1279                       shared mutex semaphores)
    1280                       NOTE: This requires a complete recompile!!
    1281 
    1282  99-08-28: Daniela Engert <dani@ngrt.de>
    1283         - USER32\NEW: client windows get repositioned now when
    1284                       the parent resizes
    1285 
    1286  99-08-28: Achim Hasenmueller <achimha@innotek.de>
    1287         - COMCTL32: Merged with latest WINE updates (990815)
    1288 
    1289  99-08-28: Yuri Dario <mc6530@mclink.it>
    1290         - INCLUDE\WIN: Added macros to windowsx.h
    1291 
    1292  99-08-27: Daniela Engert <dani@ngrt.de>
    1293         - USER32\NEW: window creation, window relationship, window sizing and
    1294                     positioning enhanced.
    1295         - USER32\NEW: window and client rectangles are in sync with the WINE
    1296                     structures now.
    1297 
    1298  99-08-27: Sander van Leeuwen <sandervl@xs4all.nl>
    1299         - KERNEL32: Rewrote memory mapped files for multiple views
    1300                     Increased default nr of pages loaded so loading
    1301                     large apps doesn't take forever to start in IPMD.
    1302         - KERNEL32: Process dll exports before imports in order to support
    1303                     circular dll dependencies.
    1304         - KERNEL32: Replaced fopen/fclose calls in windll.cpp; they mess up FS.
    1305                     Init full path of image during Init method.
    1306 
    1307  99-08-27: Patrick Haller <phaller@gmx.net>
    1308         - KERNEL32: removed logging page faults if mmapped i/o
    1309 
    1310  99-08-26: Sander van Leeuwen <sandervl@xs4all.nl>
    1311         - KERNEL32: Cleaned up. (removed os2native.cpp & os2util.cpp and
    1312                     replaced them with oslibdos.* & oslibmisc.*; put
    1313                     Virtual* win32 apis in virtual.cpp)
    1314         - KERNEL32: Added workaround for (what seems to be) an OS/2 bug.
    1315                     Fixes crashes when reading from the memory mapped file.
    1316                     (see comments in kernel32\mmap.cpp)
    1317                     Bugfixes for VirtualProtect & VirtualQuery
    1318 
    1319  99-08-25: Jens Wiessner <wiessnej@rfi.de>
    1320         - OLESVR32: Created stub dll
    1321 
    1322  99-08-25: Sander van Leeuwen <sandervl@xs4all.nl>
    1323         - KERNEL32: Use memory mapped files for PE loader
    1324                     Readonly memory mapped files work. Read/Write has not
    1325                     been tested yet. Shared mmaps don't work at this time.
    1326         - KERNEL32: Set exception handler chain to -1 (not 0) in KillWin32Process
    1327                     -> fixes large nr of exceptions
    1328         - KERNEL32: Several changes for memory mapped files.
    1329                     Put back handlemanager changes. (i.e. MapViewOfFile)
    1330         - USER32\NEW: Deleted win32type.h
    1331         - ADVAPI32: Fixed some incorrect definitions of security apis
    1332         - INCLUDE\WIN: Changed WINE_NAME_AW definition (now you can use
    1333                        apis without the 'A' or 'W' suffix)
    1334         - INCLUDE: Added makefile for VAC 3.6.5
    1335                    To compile use i.e.: nmake DEBUG=1 CCENV=VAC36
    1336         - KERNEL32: Changed VIRTUAL_MapFileA/W
    1337                     Changed OS2ImageInit from public to protected
    1338         - KERNEL32: Added DuplicateHandle to Handle Manager (wasn't working before)
    1339                     NOTE: Only works for file handles at this time!
    1340                           The rest still needs to be implemented.
    1341         - USER32\NEW: Changed loadres.cpp call to VIRTUAL_MapFileA
    1342 
    1343  99-08-24: Patrick Haller <phaller@gmx.net>
    1344         - USER32:   added extended Open32 WinX control styles (OS2CTLWX)
    1345         - KERNEL32: HandleManager support for memory mapped files
    1346                     Added FindFirstFileW, FindNextFileW
    1347                     Bugfix in ExitProcess / iConsoleWaitClose
    1348                     Bugfix in OS2Heap::OS2Heap (Heap 0 always valid for NT programs?)
    1349 
    1350  99-08-24: Sander van Leeuwen <sandervl@xs4all.nl>
    1351         - USER32\NEW: One mutex per type of generic object + mutex protection
    1352                       of linked list access in win32 classes
    1353         - KERNEL32: Implemented VirtualQuery (not yet tested)
    1354                     VirtualQueryEx calls VirtualQuery, VirtualProtectEx calls
    1355                     VirtualProtect
    1356           NOTE: VirtualQueryEx & VirtualProtectEx can't handle addresses of other
    1357                 processes
    1358         - KERNEL32: Added memory mapped file class (not hooked up to apis or
    1359                     exception handler yet; just committing my preliminary code)
    1360 
    1361  99-08-23: Sander van Leeuwen <sandervl@xs4all.nl>
    1362         - KERNEL32: Dll load order bugfix (PE loader)
    1363         - USER32\NEW: Added two dummy exports so comdlg32 will load
    1364           NOTE: This is a temporary hack and needs to be changed.
    1365         - USER32\NEW: Fix for OSLibWinCreateIcon (supports single icons now)
    1366         - KERNEL32: Logging change, now creates a unique logfile for each
    1367                     process. (multiple win32 apps active -> multiple logfiles)
    1368 
    1369  99-08-23: Patrick Haller <phaller@gmx.net>
    1370         - USER32/NEW: partial (not compiling yet) port of DIALOG.C
    1371         - USER32:     fix: Win32Proc constructor crash (GetClassInfoA(of a Systemclass))
    1372 
    1373 
    1374  99-08-22: Sander van Leeuwen <sandervl@xs4all.nl>
    1375         - OLE32: Changes for updated WINE headers
    1376         - OLEAUT32: Created (Wine port: Based on 990815 code)
    1377         - KERNEL32: Export HEAP_* string functions in lib
    1378         - KERNEL32: Fixed some PE resource dll load bugs
    1379         - KERNEL32: Moved CloseLogFile call to after DestroyTIB (fixes crashes
    1380                     as WriteLog was still called in DestroyTIB & WriteOutProfiles)
    1381         - KERNEL32: Added exception handling code for each thread, entrypoint &
    1382                     TLS callbach handler.
    1383                     OS2ExceptionHandler (in exceptions.cpp) is registered as the
    1384                     main exception handler.
    1385                     NOTE: Still needs to call original win32 exception handler
    1386                           from OS2ExceptionHandler.
    1387         - USER32/NEW: Changed WM_ERASEBKGND handling. Fixes FreeCell background.
    1388                       (but might not be completely correct)
    1389         - INCLUDE\WIN: Added custcntl.h & fixed GetObject definition
    1390         - INCLUDE\WIN, WIN\WINE: Added several files, updated OLE headers
    1391         - NTDLL: Some changes to make it compile again
    1392 
    1393  99-08-21: Sander van Leeuwen <sandervl@xs4all.nl>
    1394         - USER32\NEW: Fixed window class bug. Freecell menu now properly
    1395                       loaded.
    1396         - USER32\NEW: Changed LoadBitmapA/W to load bitmaps internally
    1397                       (also ported some Wine code for that purpose)
    1398                       Not correct yet: some of Solitaire's bitmaps look bad
    1399         - KERNEL32:   Fixed name id lookup bug for PE loader resources
    1400         - KERNEL32:   AllocFixedMemory bugfix + added Aurora flag to DosAllocMem
    1401         - KERNEL32:   Close logfile in kernel32 exit list -> last log messages
    1402                       before crash now properly saved
    1403         - PELDR:      Corrected makefile
    1404 
    1405  99-08-21: Yuri Dario <mc6530@mclink.it>
    1406         - Makefiles: Link with predefined VAC lib (RTLLIB(_O))
    1407                      Needed for VAC 3.6.5
    1408 
    1409  99-08-20: Sander van Leeuwen <sandervl@xs4all.nl>
    1410         - KERNEL32: PE resource loading fixes
    1411         - USER32/NEW: Changes to Load* resource apis
    1412         - USER32/NEW: Put back LoadBitmap for now
    1413                       Rewrote LoadIconA/W & LoadCursorA/W + added
    1414                       extra code to oslib.
    1415 
    1416  99-08-20: Patrick Haller <phaller@gmx.net>
    1417         - ODINWRAP: fixed invalid macros
    1418 
    1419  99-08-19: Patrick Haller <phaller@gmx.net>
    1420         - ODINWRAP: fixed invalid recursion in ODINFUNCTION0-Debug
    1421         - WINMM:    odinwrap macros
    1422         - TAPI32:   odinwrap macros
    1423         - MPR:      odinwrap macros
    1424         - COMDLG32: odinwrap macros
    1425         - WNETAP32: odinwrap macros
    1426         - WINSPOOL: odinwrap macros
    1427 
    1428  99-08-19: Sander van Leeuwen <sandervl@xs4all.nl>
    1429         - KERNEL32: PE loader resource fixes + ConvertNameId bugfix
    1430                     Added pe2lx conversion code for menus, accelerators,
    1431                     bitmaps, icons, cursors, icon & cursor groups.
    1432                     Put back _CreateWin32Exe export in kernel32exp.def
    1433         - KERNEL32: Used Odin wrappers for profile apis (mess up FS)
    1434         - USER32 & USER32\NEW: Cleaned up icon code
    1435 
    1436  99-08-18: Patrick Haller <phaller@gmx.net>
    1437         - NTDLL:    tons of new stubs and crt functions
    1438         - WNETAP32: tons of new stubs
    1439 
    1440  99-08-18: Sander van Leeuwen <sandervl@xs4all.nl>
    1441         - Put back version check in most dlls (except odincrt.dll & peldr.dll
    1442           we don't want a kernel32 dependency there)
    1443         - PELDR/KERNEL32: Use reserved memory by peldr.dll to store win32 exe
    1444                           sections. (now loads exes without fixups & low base address)
    1445                           Added TLS support.
    1446         - KERNEL32: Lots of changes for the ring 3 PE loader (not completed)
    1447                     Store PE header at start of module in memory, module handle
    1448                     set to image base of module.
    1449 
    1450  99-08-18: Przemyslaw Dobrowolski <dobrawka@asua.org.pl>
    1451         - KERNEL32: Profile bugfix (line 506) && removed redundant '\r'
    1452                     (except on line 199)
    1453 
    1454  99-08-17: Sander van Leeuwen <sandervl@xs4all.nl>
    1455         - KERNEL32/LZ32: Fixed compilation problems introduced by changes below
    1456         - ODINCRT: Rewrote __threadid Clib function to get rid of crashes
    1457                    (restores OS/2 FS selector before accessing PIB ptr and
    1458                     puts back original FS selector afterwards)
    1459           NOTE: No longer necessary to use ODIN_FS_BEGIN/ODIN_FS_END macros
    1460         - DDRAW: Removed ODIN_FS_BEGIN/ODIN_FS_END calls
    1461                  Fixed bugs in divewrap.h. Incorrect wrappers called themselves
    1462                  instead of the original Dive apis.
    1463 
    1464  99-08-17: Patrick Haller <phaller@gmx.net>
    1465         - LZ32:    can't export LZCopy as ID0, changed to alphanumeric export
    1466 
    1467  99-08-16: Sander van Leeuwen <sandervl@xs4all.nl>
    1468         - PE loader: Started with rewrite
    1469         - ODINCRT: Changed compile & link options
    1470         - ODINCRT: Don't export ctordtorInit/Term. These functions must exists
    1471                    locally for each dll/exe. Fixes crashes in pe loader and
    1472                    corrupt converted exes generated by pe2lx
    1473         - ALL: Makefile changes & initterm.cpp no longer calls c/c++ library
    1474                init & termination functions (should only be done in odincrt.dll)
    1475 
    1476  99-08-16: Patrick Haller <phaller@gmx.net>
    1477         - SHELL32: integrated Christoph Bratschis SHELL32 stubs
    1478         - WSOCK32: odinwrap macros
    1479 
    1480  99-08-16: Christoph Bratschi <cbratschi@datacomm.ch>
    1481         - USER32: uitools.cpp update
    1482 
    1483  99-08-15: Christoph Bratschi <cbratschi@datacomm.ch>
    1484         - USER32\NEW: controls: wine-990731 update
    1485 
    1486  99-08-14: Christoph Bratschi <cbratschi@datacomm.ch>
    1487         - COMCTL32: wine-990731 update
    1488 
    1489  99-08-14: Sander van Leeuwen <sandervl@xs4all.nl>
    1490         - INCLUDE\win\windows.h: Include odin.h if __WIN32OS2__ is defined
    1491 
    1492  99-08-13: Sander van Leeuwen <sandervl@xs4all.nl>
    1493         - KERNEL32: Export heap functions by ordinal
    1494         - src\makefile: compile lz32 before version (dependency)
    1495 
    1496  99-08-12: Patrick Haller <phaller@gmx.net>
    1497         - VERSION: enhanced plus odinwrap macros
    1498 
    1499  99-08-11: Patrick Haller <phaller@gmx.net>
    1500         - ODINCRT: ordinal exports
    1501         - ADVAPI32:odinwrap macros (partially)
    1502         - LZ32:    odinwrap macros
    1503 
    1504  99-08-10: Sander van Leeuwen <sandervl@xs4all.nl>
    1505         - USER32/NEW: Fixed makefile (link with odincrt)
    1506 
    1507  99-08-10: Patrick Haller <phaller@gmx.net>
    1508         - LZ32: added preliminary support for independend LZ32 library
    1509 
    1510  99-08-09: Patrick Haller <phaller@gmx.net>, Achim Hasenmueller <achimha@innotek.de>, Markus Montkowski
    1511         - ODINCRT: providing a extensible wrapping layer for VAC++ runtime functions
    1512                    change is non-intrusive for existing source.
    1513 
    1514  99-08-06: Patrick Haller <phaller@gmx.net>
    1515         - USER32:    added stubs so NT4's WINFILE can load
    1516         - SHELL32:   added stubs so NT4's WINFILE can load
    1517         - NTDLL:     added stubs so NT4's WINFILE can load
    1518 
    1519  99-08-05: Patrick Haller <phaller@gmx.net>
    1520         - KERNEL32:  interactive control over UnhandledExceptionFilter
    1521         - KERNEL32:  FormatMessageAW fixed. Do not mix ODIN's heap functions with VAC heap functions
    1522         - KERNEL32:  added WINE-style string functions in Heapstring.cpp
    1523         - SHELL3232: RestartDialog @59 stub added. IE2 can load now with NT4's URL.DLL.
    1524 
    1525  99-08-05: Sander van Leeuwen <sandervl@xs4all.nl>
    1526         - KERNEL32:  Bitmap conversion bugfix; always recalculate bitmap size
    1527                      (bitmap in donut.exe (ddraw sample) contains wrong size)
    1528 
    1529  99-08-04: Patrick Haller <phaller@gmx.net>
    1530         - KERNEL32:  fix for filename handling in kernel32/profile
    1531         - KERNEL32:  fix for PROFILE_CopyEntry in kernel32/profile
    1532 
    1533  99-08-04: Sander van Leeuwen <sandervl@xs4all.nl>
    1534         - PE2LX: Bugfix for icon conversion (heap corruption for ra95.exe; as
    1535                  reported by Patrick Haller)
    1536 
    1537  99-08-04: Patrick Haller <phaller@gmx.net>
    1538         - KERNEL32: Heap modification
    1539         - KERNEL32: Windows 3 style profile support ported from WINE (removes Open32)
    1540 
    1541  99-08-03: Rene Pronk <R.Pronk@twi.tudelft.nl>
    1542         - USER32: Ported DrawTextExA/W & DrawStateA/W
    1543 
    1544  99-07-27: Przemysˆaw Dobrowolski <dobrawka@asua.org.pl>
    1545         - KERNEL32: Implemented GetComputerNameA/W
    1546 
    1547  99-07-25: Sander van Leeuwen <sandervl@xs4all.nl>
    1548         - USER32/NEW: Lots of changes; Solitaire displays cards correctly
    1549                       Status bar correctly drawn
    1550                       Mouse msg translation still wrong.
    1551                       Paint not correct.
    1552 
    1553  99-07-25: Sander van Leeuwen <sandervl@xs4all.nl>
    1554         - KERNEL32: GetLocateInfoA bugfix
    1555         - USER32/NEW: Lots of changes; now Solitaire starts, but draws cards incorrectly
    1556 
    1557  99-07-23: Yuri Dario <mc6530@mclink.it>
    1558         - misc: Changes for compilation with VAC 3.6.5
    1559 
    1560  99-07-23: Edgar Buerkle <100566.557@compuserve.com>
    1561         - VERSION:  VerQueryValueA/W Wine implementation ported
    1562 
    1563  99-07-22: Przemysˆaw Dobrowolski <dobrawka@asua.org.pl>
    1564         - KERNEL32: Complete implementation of GetLocaleInfoA/W
    1565 
    1566  99-07-22: Edgar Buerkle <100566.557@compuserve.com>
    1567         - KERNEL32: Fix for OS2GetResource (os2util.cpp)
    1568         - PE2LX: Use unique resource id for version resource.
    1569         - USER32: MapOEMToRealKey fix
    1570 
    1571  99-07-22: Sander van Leeuwen <sandervl@xs4all.nl>
    1572         - DDRAW: Now compiles
    1573         - COMCTL32: Create library with correct api names
    1574 
    1575  99-07-21: Edgar Buerkle <100566.557@compuserve.com>
    1576         - KERNEL32: Fix for LoadResource; should return pointer to resource data
    1577                     LockResource just returns the pointer returned by LoadResource
    1578 
    1579  99-07-20: Sander van Leeuwen <sandervl@xs4all.nl>
    1580         - USER32/NEW: Added support for window icons and accelerators.
    1581                       Accelerators don't work yet.
    1582         - PE2LX: Save icons in different format (BITMAPINFOHEADER2)
    1583 
    1584  99-07-19: Sander van Leeuwen <sandervl@xs4all.nl>
    1585         - KERNEL32: Added method for retrieving converted OS/2 resource
    1586                     (which will be changed later on)
    1587         - USER32/NEW: CreateWindowEx now works and menus are displayed
    1588 
    1589  99-07-17: Sander van Leeuwen <sandervl@xs4all.nl>
    1590         - KERNEL32: Exports for getting TEB & THDB added
    1591 
    1592  99-07-15: Sander van Leeuwen <sandervl@xs4all.nl>
    1593         - USER32/NEW: Unicode & window handle translation bugfixes
    1594 
    1595  99-07-14: Christoph Bratschi <cbratschi@datacomm.ch>
    1596         - USER32/NEW: several bugs fixed, compiles now
    1597                       CreateWindow doesn't work yet
    1598 
    1599  99-07-13: Sander van Leeuwen <sandervl@xs4all.nl>
    1600         - USER32/NEW: *VERY* preliminary/alpha code for Open32 replacement in user32
    1601                       Compiles, but not tested at all.
    1602 
    1603  99-07-12: Patrick Haller <phaller@gmx.net>
    1604        - KERNEL32: various console fixes
    1605 
    1606  99-07-10: Edgar Buerkle <100566.557@compuserve.com>
    1607         - USER32: Fixes for CreateWindowExW and several unicode menu apis
    1608 
    1609  99-07-07: Sander van Leeuwen <sandervl@xs4all.nl>
    1610         - KERNEL32/PE2LX: Added support for TLS sections
    1611         - KERNEL32: Added thread attach/detach messages for dlls
    1612                     Fixed some bugs, cleaned up code
    1613           NOTE: THIS CHANGE BREAKS ALL PREVIOUSLY CONVERTED APPLICATIONS
    1614                 RECOMPILE ALL DLLS AND CONVERT EVERYTHING AGAIN!!!!!!!!!
    1615                 THIS CHANGE ALSO BREAKS WIN32K!
    1616 
    1617  99-07-06: Patrick Haller <phaller@gmx.net>
    1618         - KERNEL32: major enhancement of handlemanager
    1619 
    1620  99-07-06: Edgar Buerkle <100566.557@compuserve.com>
    1621         - PE2LX: Finished support for codepages
    1622 
    1623  99-07-05: Patrick Haller <phaller@gmx.net>
    1624         - SHELL32: SheSetCurDrive stub, ...
    1625 
    1626  99-07-05: Sander van Leeuwen <sandervl@xs4all.nl>
    1627         - LIB\libconv.def: Added name with '_' appended. (or else Watcom won't
    1628           link pe2lx\misc.cpp properly)
    1629 
    1630  99-07-05: Edgar Buerkle <100566.557@compuserve.com>
    1631         - PE2LX: Preliminary support for codepages
    1632 
    1633  99-07-05: Patrick Haller <phaller@gmx.net>
    1634         - KERNEL32: HandleManager fixes as suggested by Edgar Buerkle
    1635 
    1636  99-07-04: Christoph Bratschi <cbratschi@datacomm.ch>
    1637         - PE2LX/USER32: Dialog default font set to WarpSans + fixes
    1638 
    1639  99-07-02: Christoph Bratschi <cbratschi@datacomm.ch>
    1640         - PE2LX/USER32: Dialog bugfix for entryfield strings
    1641 
    1642  99-06-30: Christoph Bratschi <cbratschi@datacomm.ch>
    1643         - KERNEL32: Unicode changes (unicode.cpp)
    1644                     lstrcpynA/W (kernel32.cpp
    1645         - USER32: LoadStringA unicode conversion bugfix
    1646         - USER32: Changed SystemParameterInfo for default font (now 9.WarpSans)
    1647 
    1648  99-06-30: Przemysˆaw Dobrowolski <dobrawka@asua.org.pl>
    1649         - WINMM: Implemented remaining joystick apis + bugfixes
    1650 
    1651  99-06-29: Patrick Haller <phaller@gmx.net>
    1652         - KERNEL32: GetLocaleInfoA bugfix (lang.cpp)
    1653 
    1654  99-06-29: Przemysˆaw Dobrowolski <dobrawka@asua.org.pl>
    1655         - WINMM: Implemented most of the joystick apis
    1656 
    1657  99-06-28: Christoph Bratschi
    1658         - USER32: AsciiToUnicodeN bugfix (unicode.cpp)
    1659 
    1660  99-06-28: Sander van Leeuwen
    1661         - USER32: Get/SetWindowLongA bugfix for dialog controls
    1662 
    1663  99-06-27: Sander van Leeuwen
    1664         - USER32: Message handler updates & lots of bugfixes
    1665         - USER32: Fix for GetWindowLongA, if Open32 returns 0xffff it really
    1666           means 0xffffffff -> fixes Winhlp32 buttons.
    1667         - USER32: Fixed bug when changing window procedures for dialog box
    1668                   controls
    1669 
    1670  99-06-26: Sander van Leeuwen
    1671         - USER32: Changes for message spy & several message handler changes
    1672         - USER32: Restore win32 tib in window msg callback
    1673         - KERNEL32/include: Restore OS/2 tib on entering Open32 or OS/2 apis
    1674         - KERNEL32/lang.cpp: Bugfix for GetLocaleInfoA (if buf ptr == null,
    1675           only return size of memory block required to hold info)
    1676 
    1677  99-06-25: Achim Hasenmueller
    1678         - Finally fixed changelog date format to be compliant with
    1679           the official EU date format :)
    1680 
    1681  99-06-25: Christoph Bratschi
    1682         - USER32: GetSysColorPen bugfix (syscolor.cpp)
    1683 
    1684  99-06-24: Patrick Haller
    1685         - SHELL32: partial port form WINE
    1686 
    1687  99-06-24: Edgar Buerkle
    1688         - KERNEL32: Implemented GetLocaleInfoA/W
    1689 
    1690  99-06-24: Sander van Leeuwen
    1691         - include\winos2def.h: Changed OS/2 apis to use wrappers
    1692           (FS save/restore) and added DosQueryCtryInfo
    1693 
    1694  99-06-23: Patrick Haller
    1695         - Fixed date format in changlog .g.
    1696         - NTDLL:    a dozen c runtime functions added
    1697         - USER32:   IsHungAppWindow dummy added
    1698         - SHELL32:  few more APIs added
    1699         - KERNEL32: HandleManager, Console, fixes
    1700         - COMDLG32: basic unicode support added, thou broken somehow
    1701         - source code splitups and beautification ;-)
    1702 
    1703  99-06-23: Achim Hasenmueller
    1704         - ported latest WINE fixes and additions for comctl32. Changes
    1705           involve better undoc. DSA APIs, right colors for the tab control,
    1706           many improvements for the listview...
    1707 
    1708  99-06-21: Achim Hasenmueller
    1709         - ported latest WINE DrawEdge code and moved everything to the
    1710           new file src/user32/uitools.cpp
    1711 
    1712  99-06-21: Sander van Leeuwen
    1713         - include\os2wrap.h, removed calling convention
    1714 
    1715  99-06-21: Christoph Bratschi
    1716         - COMCTL32: Progress bar finished (progress.c, USER32 bugs to fix)
    1717         - COMCTL32: Trackbar finished (trackbar.c)
    1718 
    1719  99-06-20: Sander van Leeuwen
    1720         - KERNEL32: Call HMInitialize from initterm, not winexe object creation
    1721         - KERNEL32: Added comctl to list of system dlls (windll.cpp)
    1722         - KERNEL32: Fixed dll detach (windll.cpp) for converted win32 dlls
    1723         - KERNEL32: Module name detection (windll.cpp)
    1724         - KERNEL32: Activated Win32 TIB code; a selector + memory is allocated
    1725                     for the main thread and every thread created.
    1726                     When it's completed, it should fix several problems due to
    1727                     differences between OS/2's TIB and Win32's TEB.
    1728         - COMCTL32: Fixed crash on exit (moved unregister of class into exit list handler)
    1729         - USER32: Changed bugfix (WS_CLIPCHILDREN) for winhlp32 (same as Wine now)
    1730         - USER32: Fixed bug in wndproc.cpp (release build only)
    1731         - USER32: Added preliminary support for parent notification
    1732 
    1733  99-06-19: Sander van Leeuwen
    1734         - ALL (except dsound/ddraw): Include <os2wrap.h> instead of <os2.h>
    1735         - KERNEL32: Changes for win32 TEB (not active)
    1736 
    1737  99-06-07: Sander van Leeuwen
    1738         - Removed unecessary files
    1739         - Modified os2win.h to save FS selector before calling Open32 api
    1740           and restoring it afterwards.
    1741         - Renamed all .C files (except comctl32) to .CPP and fixed compiler errors
    1742         - GDI32: Fixed SetDIBitsToDevice bugfix (palette size)
    1743         - USER32: Fixed RegisterSystemClasses
    1744 
    1745  99-06-07: Achim Hasenmueller
    1746         - Added comctl32, mostly untested includes all controls, some undocumented
    1747           APIs missing
    1748         - Added internal GetSysColorPen() to user32 - handy API used in WINE
    1749           Modified syscolor.cpp to support new Win98 colors and create pens
    1750 
    1751  99-06-06: Sander van Leeuwen
    1752         - Bugfixes in VirtualAlloc (KERNEL32), GetScrollPos & RegisterSystemClasses (USER32)
    1753           as reported on mailinglist by Edgar Buerkle.
    1754           Also FindResourceA/W.
    1755 
    1756  99-06-01: David Raison
    1757         - OLE32: Changed everything to make it compile with the new headers
    1758         - include/win/ole.2 - line 170
    1759         - include/wine/win/obj_oleview.h - line 32 & 36
    1760 
    1761  99-05-23: Sander van Leeuwen
    1762         - ADVAPI32: Fixed Open32 bugs in RegOpenKeyA (set return key to 0 when failed)
    1763                     Fixed key definition conflict in convertkey.
    1764         - KERNEL32: Fixed exception handler, don't continue after process termination
    1765                     exception! (fixes annoying exitlist hangs)
    1766 
    1767  99-05-19: Sander van Leeuwen
    1768         - KERNEL32: Corrected wrong export for HeapSize (reported by Vit Timchishin)
    1769 
    1770  99-05-15: Sander van Leeuwen
    1771         - Fixed a number of bugs introduced during the Wine header update
    1772         - KERNEL32: Added high/low fixup support for pe loader
    1773 
    1774  99-05-13: Sander van Leeuwen
    1775         - Updated USER32
    1776         - Fixed unicode apis in USER32
    1777         - Added .def files for ADVAPI32, COMDLG32, GDI32, KERNEL32 & USER32 that
    1778           export all apis with the correct names. (_apiname@nrofparameterbytes)
    1779 
    1780  99-05-12: Sander van Leeuwen
    1781         - Finished KERNEL32
    1782         - Updated WINMM
    1783 
    1784  99-05-10: Vince Vielhaber
    1785         - Rewrote WSOCK32 for Wine headers
    1786 
    1787  99-05-08: Sander van Leeuwen
    1788         - Updated CAPI32, COMDLG32 & GDI32, MPR, NTDLL, TAPI32, WINSPOOL, WNETAP32
    1789           for new headers
    1790         - Started with KERNEL32 changes (75% done)
    1791         - Made basic changes to OLE32 for new headers, but still tons of errors
    1792         - Fixed some unicode apis in GDI32
    1793 
    1794  99-05-04: Sander van Leeuwen
    1795         - Stripped os2win.h and put it in include directory
    1796         - WINE header files in include\win
    1797           (some modified for IBM VAC)
    1798         - All Open32 apis have 'O32_' as prefix, Open32 specific declarations
    1799           are appended with _O32.
    1800 
    1801  99-05-01: Sander van Leeuwen
    1802         - Changed makefile structure:
    1803                 nmake DEBUG=1   builds debug version
    1804                 nmake           builds release version
    1805 
    1806  99-04-11: Sander van Leeuwen
    1807         - Everything except user32 & kernel32: copyrights added to most files
    1808           Moved a few header files in \include
    1809         - Fixed import problem in peldr (include\winimage.h), SetFullPath must
    1810           be a virtual method.
    1811 
    1812  98-10-26: Sander van Leeuwen
    1813         - OLE32: CoInitialize takes one parameter, not 0
    1814 
    1815  98-10-11: Sander van Leeuwen
    1816         - KERNEL32: except.asm Wrong calling convention for SetExceptionChain
    1817         - KERNEL32: exceptions.cpp/wprocess.cpp SetExceptionChain(-1) instead of SetExceptionChain(0)
    1818 
    1819  98-09-28: Sander van Leeuwen
    1820         - PE2LX: icon.cpp: palette only for <= 8 bpp
    1821         - PE2LX: icon.cpp: check if image size in bmp header is correct before using it
    1822 
    1823  98-09-25: Sander van Leeuwen
    1824         - PE2LX: Don't fail if an exe/dll doesn't contain any imports (pe.cpp:ProcessImports)
    1825 
    1826 ********************************************************************************
    1827 ***** Release 0.03/4
    1828 ********************************************************************************
    1829  98-09-15: KSO
    1830         - WIN32K: pe2lx\misc.cpp changes
    1831 
    1832  98-09-13: Sander van Leeuwen
    1833         - KERNEL32: windll.cpp: fixed bug with szModule not being initialized
    1834         - PE2LX: pe.cpp: Only read first 1 MB for huge files. (as they are most
    1835                          likely InstallShield archives; exe appended with
    1836                          installation data)
    1837 
    1838  98-09-12: Sander van Leeuwen
    1839         - WSOCK32: Changed fd_set to Wfd_set or else it won't compile over here
    1840         - KERNEL32: Winimage.cpp, extra checks added
    1841         - KERNEL32: OS2GetModuleFileName bugfix
    1842         - INCLUDE/MISC.H: Error printf that prints to stdout (more reliable than
    1843           a logfile)
    1844         - GDI32: GetDeviceCaps -> NT returns -1 when using 16 bits colors, NOT 65536!
    1845         - GDI32: CreateDIBSection -> StarCraft uses bitmap with negative height ->
    1846                                      flip image when blitting
    1847         - GDI32: DIBSection ctor: bug in BITMAPINFO2 malloc
    1848         - GDI32: BitBlt: (dibsection) HDC == HPS (thank you, IBM!)
    1849 
    1850  98-09-02: Sander van Leeuwen
    1851         - KERNEL32/USER32: Split up code
    1852         - USER32 (/new): Started with new class & window managment code
    1853                          (not compiled nor tested, so don't change it)
    1854 
    1855  98-09-01: Patrick Haller
    1856         - WSOCK32: Circular linker dependency removed
    1857 
    1858  98-08-31: kso
    1859         - KERNEL32: changed lfile.c to use OS2CreateFile,OS2CloseHandle,.... as
    1860           NT does. Notepad (W95) is now working better.
    1861         - KERNEL32: fixed a open32 bug (or win32 feature) - WriteFile with
    1862           nrbytes = 0 is equal to a SetEndOfFile(..);
    1863 
    1864  98-08-17: Sander van Leeuwen
    1865         - KERNEL32: Changed LoadLibraryA(W/ExA/ExW) to try to load the dll
    1866                     directly first and if that fails, load it manually.
    1867 
    1868  98-08-15: Sander van Leeuwen
    1869         - DDRAW: LOTS of changes,additions and fixes
    1870                  (ddex1-ddex5 DirectX SDK samples work(ed) + Quake 2 in
    1871                   DirectDraw mode)
    1872         - DSOUND: Skeleton code extended
    1873 
    1874  98-08-13: Sander van Leeuwen
    1875         - PE2LX: Replaced stack page removal code; (adjusted GetNrPages instead)
    1876 
    1877  98-08-13: KSO:
    1878         - PE2LX: Borland bugfixes
    1879 
    1880  98-08-08: Sander van Leeuwen
    1881         - pe2lx (pe.cpp), call SetNrOfExports(0) for dlls without exports
    1882           to set the module name in the resident name table
    1883           (otherwise converted dll will not load)
    1884         - Version resource apis work now
    1885         - LocalReAlloc bugfix, notepad assumes it returns the same
    1886           address when the new size is smaller than the old one.
    1887 
    1888  98-08-03 KSO:
    1889         - pe.cpp:       line 600 - added OS2Exe to the parameterlist
    1890         - bitmap.cpp: replace file - much.
    1891         - bitmap.h: replace file - typo (BitMap to Bitmap)
    1892         - icon.h: replace file  - #define BI_*
    1893 
    1894  98-07-23: Knut Osmundsen
    1895         - PE2LX: Borland exe changes (import stuff)
    1896 
    1897  98-07-18: Sander van Leeuwen
    1898         - KERNEL32/PE2LX: Changed version checks; version nr is put into the
    1899                           converted exe/dll as a parameter to one of the kernel32
    1900                           entry points
    1901         - USER32: Changed class managment code
    1902         - USER32: Removed all SYNCPAINT stuff as it breaks many apps
    1903         - USER32: Removed in CreateWindowExA that checks for values of x, y, nHeight & nWidth
    1904                   (this broke generic.exe, notepad.exe and probably many others)
    1905         - USER32: Finished GetMenuStringW (MSPaint), not working right though
    1906                   it should return 'Recent File', but returns 'Decent File'
    1907                   Well, whatever.
    1908         - VERSION/KERNEL32/PE2LX: Version resource API implemention started
    1909         - PE2LX:  Increased some fixup limits to convert dynhgi35.dll
    1910         - KERNEL32: AsciiToUnicode fixed (only terminate with one 0; doing
    1911                     it twice corrupts the heap as our stuff allocates exactly
    1912                     enough for string + 0 terminator)
    1913 
    1914  98-07-14: Sander van Leeuwen
    1915         - KERNEL32: Changed OS2GetProcAddress to call the ordinal or name getApi
    1916                     method
    1917 
    1918  98-07-13: Patrick Haller
    1919         - USER32:   Unicode fix for wvsprintfW "%s" -> "%ls"
    1920         - USER32:   fix in Win32WindowProc destructor when "window" becomes NULL
    1921         - ADVAPI32: RegConnectRegistry for connection to local machine
    1922 
    1923  98-07-13: Patrick Haller
    1924         - KERNEL32: Unicode fix that garbled CommandLineToArgv and others
    1925 
    1926  98-07-12: Patrick Haller
    1927         - NTDLL:   new functions in NTDLL (-> critical sections)
    1928         - SHELL32: few new stubs in SHELL32
    1929         - GDI32:   fix in GDI32\DIBSECT\CreateDIBSection for M$ Backup
    1930         - USER32:  experimental fix (CS_SYNCPAINT) for WinHlp32 to
    1931                    display navigation buttons, but crashes SOL.EXE :(
    1932 
    1933  98-07-10: Patrick Haller
    1934         - stubs for NETAPI32 100%
    1935 
    1936  98-07-09: Patrick Haller
    1937         - stubs for Winspool 100%
    1938 
    1939  98-07-01 Joel Troster
    1940         - KERNEL32: update to nameid.cpp
    1941 
    1942  98-06-07 Joel Troster
    1943         - WINMM: WaveOpen bugfix
    1944 
    1945  98-06-07 Felix Maschek
    1946         - CAPI32: bugfix
    1947 
    1948  98-06-15: Patrick Haller
    1949         - GDI32:    stubs for all missing functions
    1950         - ADVAPI32: stubs for all missing functions
    1951         - USER32:   implementation of some real functions
    1952                     some unknown functions stubbed (IDA/2)
    1953 
    1954  98-06-14: KSO
    1955         - GDI32:    Stubs for Office 97
    1956         - PE2LX:    Formatted output
    1957         - ADVPI32:  Stubs for Office 97
    1958         - VERSION:  Stubs for Office 97
    1959 
    1960  98-06-12: Patrick Haller
    1961         - NTDLL:    ported over the NTDLL code from WINE, subject to the GNU Copyleft
    1962                     some applications open this module explicitly
    1963         - KERNEL32: few fixes to Unicode handling
    1964         - KERNEL32: console window sizing (still buggy) and property fixes
    1965         - KERNEL32: stubs for all missing functions
    1966         - GDI32:    bugfix for DIB allocation (MS Paint)
    1967         - WINMM:    functions for FOURCC handling
    1968         - PE2LX:    CURSOR.CPP: hotspot.y is upside down (fixed for Winhlp32)
    1969         - PE2LX:    DIALOG.CPP: combobox style translation CBS_ fixed
    1970         - PE2LX:    DIALOG.CPP: style translation for WINES_MULTILINE
    1971                                 causes MLE control to be generated.
    1972                                 Experimental.
    1973         - KERNEL32: WINDLL.CPP: fixed endless loop in Win32DLL::StripPath()
    1974 
    1975  98-05-25: Patrick Haller
    1976         - KERNEL32: Added few NTDLL stubs, mainly for support of MSACM32/NT
    1977         - KERNEL32: Resource fix
    1978 
    1979  98-05-03: Joel Troster
    1980         - WINMM:    Stubbed most of the remaining mmedia apis
    1981 
    1982  98-04-28: Patrick Haller
    1983         - KERNEL32: Console fixes
    1984         - KERNEL32: Console properties (partially)
    1985         - KERNEL32: Handlemanager fixes
    1986         - KERNEL32: OS2iGetModuleName fixes
    1987 
    1988 ********************************************************************************
    1989 ***** Release 0.02
    1990 ********************************************************************************
    1991 
    1992  98-04-05: Patrick Haller
    1993         - KERNEL32: Resource bugfix
    1994 
    1995  98-03-30: Joel Troster
    1996         - WINMM: midiStream* stubs added
    1997 
    1998  98-03-30: Sander van Leeuwen
    1999         - PE2LX: Set console flag when exe has no resources
    2000 
    2001  98-03-27: Joel Troster
    2002         - WINMM: Midi changes/bugfixes, mci* api stubs added
    2003         - GDI32: SetObjectOwner stub added
    2004 
    2005  25-03-98: Sander van Leeuwen
    2006         - KERNEL32: Several changes in resource code
    2007 
    2008  19-03-98: Felix Maschek
    2009         - KERNEL32: Comm stubs added
    2010 
    2011  19-03-98: Sander van Leeuwen
    2012         - KERNEL32: Pop up a dialog box when a missing api is called
    2013         - KERNEL32: dll bugfix
    2014         - KERNEL32: CreateProcessA/W fix
    2015         - KERNEL32: GetProcAddr completed for PE loader & PE2LX
    2016 
    2017  19-03-98: Peter Fitzsimmons
    2018         - created include\version.h
    2019         - changed pe2lx\lx.cpp    (call SetVersion())
    2020         - changed pe2lx\misc.cpp  (code for SetVersion(), setea())
    2021         - changed pe2lx\misc.h    (add prototypes)
    2022         - changed pe2lx\pe.cpp    (moved DosClose() up a few lines,  so DosSetPathInfo() could write to the file)
    2023         - changed pe2lx\makefile       \
    2024         - changed pe2lx\makefile.wat   / Build setver.exe, getver.exe.  I didn't copy
    2025                                          these exe's to ..\bin in purpose;  they
    2026                                          aren't supposed to go to end users.
    2027         - Added one line ("..\server $@") to all makfiles
    2028 
    2029         - added getea() to kernel32\os2util.c
    2030         - added a few lines in kernel32/wprocess.cpp/RegisterDll()
    2031 
    2032         - Edit all initterm.c's to remove that rand() crap (that is from a
    2033           sample project!).  Also added new version check to each.  Also #include "misc.h"
    2034 
    2035         - wsock32: edited makefile to remove reference to ..\kernel32\misc.obj and
    2036                    replace with kernel32.dll.
    2037 
    2038         - src\makefile:  build kernel32 before wsock
    2039         - src\kernel32\makefile:  remove reference to wsock32.lib
    2040         - src\kernel32\network.cpp:  remove call to wsock32
    2041 
    2042  16-03-98: Joel Troster
    2043         - GDI32: Added SetObjectOwner stub
    2044 
    2045  15-03-98: Joel Troster
    2046         - WINMM: RTMIDI dependency removed
    2047 
    2048  15-03-98: Sander van Leeuwen
    2049         - All dlls, C++ init+termination call added to initterm.c
    2050         - KERNEL32: Icon conversion bugfix
    2051         - KERNEL32: Removed reroute of exe reading
    2052         - KERNEL32: Major rewrite of dll & exe handling including
    2053                     LoadLibary(Ex)A/W, CreateProcessA/W, GetModuleFileNameA/W,
    2054                     FreeLibrary & GetCommandLineA/W
    2055           Side effect: Crash at Quake 2 exit fixed
    2056 
    2057         - KERNEL32: Additional code for PE loader
    2058         - PE: Created OS/2 ring 3 PE loader
    2059           syntax: pe win32exe commandline
    2060           Reads win32exe & all imported dlls, calls all dll entry points and
    2061           finally calls the exe entry point.
    2062           TODO: No fixups and low startup address
    2063           TODO: Resources
    2064           TODO: CreateProcess doesn't work right
    2065 
    2066  13-03-98: Sander van Leeuwen
    2067         - KERNEL32: Dll unloading fixed
    2068 
    2069  13-03-98: Peter Fitzsimmons
    2070         - KERNEL32: Fixed CompareStringA/W
    2071 
    2072  12-03-98: Joel Troster
    2073         - WINMM: Stubbed all the mixer APIs and updated support for MidiMapper
    2074 
    2075  10-03-98: Sander van Leeuwen
    2076         - WSOCK32:  WSAStartup fix and ioctl addition
    2077                     (Quake 2 Multiplayer working)
    2078         - KERNEL32: Resource lookup bug fixed
    2079 
    2080  10-03-98: Joel Troster
    2081         - KERNEL32: SetThreadLocale added
    2082 
    2083  09-03-98: Patrick Haller
    2084         - KERNEL32: Fix in GetStdHandle within HandleManager
    2085 
    2086         - KERNEL32: Console APIs completed, input and output is complete,
    2087                     however not thoroughly tested, SHORT 0.98D is working.
    2088                     Codepage support, Unicode support missing.
    2089                     I'm working on cosmetics and properties dialog.
    2090 
    2091         - EXECHECK: tool to check executables for convertibility via pe2lx
    2092                     and keeping track of our APIs, as well as imported/exported
    2093                     functions of executables (PE import is currently implemented)
    2094 
    2095  09-03-98: Sander van Leeuwen
    2096         - KERNEL32: Put dll & exe apis in wprocess.cpp
    2097         - KERNEL32: Reroute file io from own exe to original
    2098 
    2099  08-03-98: Joel Troster
    2100         - KERNEL32: Unicode changes (lstrcatW, lstrcmpW, lstrcpyW lstrcpynW)
    2101         - WINMM: Unicode midi apis added to .def file
    2102 
    2103  08-03-98: Sander van Leeuwen
    2104         - WINMM: Aux* apis implemented (not tested and not 100% correct)
    2105         - include: added mmddk.h from win95 ddk
    2106 
    2107  07-03-98: Peter Fitzsimmons
    2108         - Added KERNEL32.GetSystemDefaultLangID() -- I copied GetUserDefaultLangID, which
    2109           always returns "US ENGLISH".
    2110           (NOTE: Already added)
    2111         - Added ADVAPI32.ReportEventA().  Stub.
    2112         - Added ADVAPI32.OS2SetSecurityDescriptorDacl(). Stub that returns ERROR.
    2113         - Added ADVAPI32.* a bunch more stubs.
    2114 
    2115  07-03-98: Sander van Leeuwen
    2116         - KERNEL32: Implemented Local* memory apis with new heap
    2117                     (in win32 you can mix Heap and Local apis)
    2118         - KERNEL32: Corrected key mapping bugs for arrow, insert/del/home/end
    2119                     page up/down keys.
    2120                     Doesn't work 100% right yet. (strafing in Quake = alt-arrow)
    2121 
    2122  06-03-98: Sander van Leeuwen
    2123         - WINMM: Added WaveOutGetNumDevs and corrected the calling
    2124                  convention for several apis (WIN32API, not WINAPI)
    2125         - KERNEL32: Added GetSystemDefaultLangID and moved several
    2126                     language apis to lang.cpp
    2127         - KERNEL32: Added EnumSystemLocalesA/W (US English only)
    2128         - PE2LX: command line option change: pe2lx win32file > logfile
    2129                  Now makes a backup copy of the win32 file and creates
    2130                  an OS/2 version with the same name
    2131 
    2132  05-03-98: Joel Troster
    2133         - KERNEL32: Use OS/2 unicode apis
    2134         - USER32:   Use OS/2 unicode apis
    2135 
    2136  04-03-98: Sander van Leeuwen
    2137         - KERNEL32: Use OS2gethostname (wsock32.dll) instead of gethostname
    2138 
    2139  03-03-98: Knut Osmundsen
    2140         - KERNEL32: VirtualAlloc bugfixes & high memory support (SMP)
    2141 
    2142  03-03-98: Patrick Haller
    2143         - PECHECK: Initial code for pecheck.exe
    2144 
    2145  03-03-98: Joel Troster
    2146         - KERNEL32: Stubs added for Virtual(Un)Lock
    2147         - WINMM: Unicode midi apis added, MIDIMAP faked, some bugs fixed
    2148 
    2149  03-03-98: Sander van Leeuwen
    2150         - KERNEL32: Fixed logbuffer overflow with strlen WriteLogs
    2151         - KERNEL32: Use tcp32dll instead of pmwsock
    2152         - PE2LX: Fixed memory corruption in icon.cpp
    2153 
    2154  02-03-98: Sander van Leeuwen
    2155         - KERNEL32: kernel32.c -> kernel32.cpp
    2156         - KERNEL32: Merged exception logging with my latest code
    2157         - include:  win32type.h
    2158         - WSOCK32:  Removed pmwsock.lib from makefile
    2159 
    2160  01-03-98: Patrick Haller
    2161         - KERNEL32: Extensions to the exception handler (logging)
    2162         - KERNEL32: HandleManager for pseudo-devices (CONIN$,CONOUT$,etc)
    2163         - KERNEL32: Hooks for HandleManager
    2164         - KERNEL32: Very early console support for stdout is there ...
    2165                     Console also has context menue.
    2166 ********************************************************************************
    2167 ***** Release 0.01
    2168 ********************************************************************************
    2169  28-02-98: Sander van Leeuwen
    2170         - DDRAW: Initial work for Direct3D
    2171         - KERNEL32/PE2LX, Changes for console applications (flag)
    2172         - KERNEL32: Kill process when a fatal exception occurs
    2173           (prevents some kind of eternal loop in OS/2; probably due to
    2174            invalid exception records or difference in exception handler
    2175            calling convention)
    2176         - KERNEL32: Added a try/catch statement around the dll exit list
    2177                     processing in ExitProcess. Seems to cure the trap
    2178                     at exit.
    2179 
    2180  27-02-98: Patrick haller
    2181         - MPR: stubs for all documented MPR functions,
    2182                should be complete now
    2183 
    2184  26-02-98: Patrick haller
    2185         - USER32: stubs for all documented USER32 functions,
    2186                   should be complete now
    2187         - USER32: Windows95's SHELL32.DLL requires a few undocumented functions
    2188 
    2189  24-02-98: Joel Troster
    2190         - WINMM: Midi working
    2191 
    2192  24-02-98: Sander van Leeuwen
    2193         - KERNEL32: Exit list changes; terminate all dlls right before
    2194                     ExitProcess or in kernel32 exitlist in case of a trap
    2195                     (prevents unkillable processes in most cases)
    2196 
    2197  23-02-98: Joel Troster
    2198         - KERNEL32: PMPrintf version of WriteLog added
    2199 
    2200  22-02-98: Sander van Leeuwen
    2201         - ALL DLLs: Call C/C++ lib cleanup proc in exit list
    2202         - PE2LX: Use exit lists in converted win32 dlls to terminate them
    2203         - WINMM: Remove test code in timer emulation (multiplied time by 10)
    2204         - KERNEL32: Release winmod objects properly
    2205         - KERNEL32: Call dll exit proc in FreeLibrary
    2206 
    2207  21-02-98: Sander van Leeuwen
    2208         - KERNEL32: VirtualProtect size change to include all pages
    2209                     referenced
    2210 
    2211  19-02-98: Sander van Leeuwen
    2212         - PE2LX: Change order of dlls in import module name table
    2213         - KERNEL32: Don't call the C/C++ lib cleanup procedure at
    2214                     dll termination
    2215 
    2216  18-02-98: Joel Troster
    2217         - WINMM: Midi changes, wave in/out stubs added
    2218 
    2219  16-02-98: Sander van Leeuwen
    2220         - KERNEL32: Heap bugfix
    2221 
    2222  16-02-98: Joel Troster
    2223         - WINMM: Midi updates
    2224 
    2225  15-02-98: Sander van Leeuwen
    2226         - KERNEL32: Changed heap allocation again. (now uses malloc/free)
    2227         - KERNEL32: QueryPerformanceFrequency/Counter uses DosTmrQueryTime/
    2228                     DosTmrQueryFreq now, so the normal xf86sup.sys can
    2229                     be used.
    2230 
    2231  11-02-98: Sander van Leeuwen
    2232         - MPR: Changed/Corrected ordinals
    2233 
    2234 Mon  98-02-09 Peter Fitzsimmons
    2235         - lx.cpp -- put in check for MAX_SECTIONS (was bombing out in one
    2236           of "visio technical"'s dlls.
    2237         - lx.cpp increase MAX_SECTIONS (lx.h) from 16 to 32 (where'd the
    2238           original value come from?).
    2239         - kernel32.c: added stub for FlushInstructionCache()
    2240         - kernel32.c: added stub for OS2GetPrivateProfileSectionA()
    2241 
    2242         - advapi32: GetUserNameA() stub.  Always says a person named
    2243           "USER" is logged on.
    2244 
    2245         - MPR: WNetGetConnection(). NEEDS PROPER ORDINAL IN *.def file.
    2246 
    2247  9-02-1998: Joel Troster
    2248         - USER32: Added Set/GetDefaultMenuItem (stub)
    2249 
    2250  7-02-1998: Sander van Leeuwen
    2251         - KERNEL32/WINMM: Added VMutex to KERNEL32 (imported by WINMM)
    2252         - KERNEL32: New heap implementation (heap.cpp & os2heap.cpp)
    2253         - KERNEL32: Replace exception handler for each new thread
    2254         - KERNEL32: Set previous exception handler to 0 instead of -1
    2255           (fixes endless exception handler calls)
    2256         - Added macro dprintf & dassert to include\misc.h (no more need
    2257           for #ifdef DEBUG's)
    2258 
    2259 31-01-1998: Sander van Leeuwen
    2260         - USER32: Fixed two bugs in CreateWindowExA/W
    2261         - WINMM:  Fixed wave playback problem
    2262 
    2263 18-01-1998: Sander van Leeuwen
    2264         - GDI32: Changed GetDIBColor & SetDIBColor
    2265         - GDI32: Fixed CreateDIBSection
    2266         - Quake 2 working in a window!
    2267 
    2268 17-01-1998: Sander van Leeuwen
    2269         - WINMM: Waveout working, Quake 2 WITH sound now!
    2270         - GDI32: Implemented GetDIBColor & SetDIBColor
    2271 
    2272 11-01-1998: Sander van Leeuwen
    2273         - KERNEL32: Exception handler fix
    2274         - WINMM: Started with WaveOut implementation
    2275 
    2276 11-01-1998: Felix Maschek
    2277         - TAPI32: Fixes
    2278 
    2279 10-01-1998: Sander van Leeuwen
    2280         - Changes to makefile and wsock32.c to make it compile with VAC
    2281         - VirtualAlloc bugfix (reserve)
    2282         - Dialog fix (font name)
    2283         - WINMM now uses mmsystem.h from win32 SDK
    2284 
    2285 10-01-1998: Chris McKillop
    2286         - New build tree
    2287 
    2288 10-01-1998: Vince Vielhaber
    2289         - Winsock32 changes
    2290 
    2291 31-12-1997: Sander van Leeuwen
    2292         - Remove all 'OS2' strings from imports/exports (dlls/pe2lx)
    2293 
    2294 28-12-1997: Sander van Leeuwen
    2295         - KERNEL32: Code to allow IO in ring 3 added (xf86sup.sys)
    2296                     Set environment variable WIN32_IOPL2 to enable this
    2297 
    2298         - KERNEL32: Fixed GetStartupInfoA/W (WINE)
    2299         - GDI32:    Added CreateDIBSection from Wine (not complete)
    2300         - Lots of stubs added
    2301         - Almost got Quake II running....
    2302 
    2303 23-12-1997: Felix Maschek
    2304         - CAPI2032: Complete implementation of CAPI
    2305 
    2306 20-12-1997: Felix Maschek
    2307         - TAPI32:   Stub dll
    2308 
    2309 20-12-1997: Sander van Leeuwen
    2310         - KERNEL32: Bug in winmod.cpp
    2311         - KERNEL32: Added code for exception handling (not fool proof)
    2312         - KERNEL32: Fixed HeapCreate (now reserves 32 MB instead of 64 kb)
    2313         - KERNEL32: Catch FPU exception, mask fpu exceptions, fix stack and continue execution
    2314         - PE2LX:    Removed stack size & base switch
    2315         - WINMM:    Added joyGetPos stub
    2316 
    2317 14-12-1997: Sander van Leeuwen
    2318         - KERNEL32: Added QueryPerformanceFrequency, QueryPerformanceCounter
    2319         - USER32:   Added some stubs
    2320         - GDI32:    Added some stubs
    2321         - WINMM:    Added some stubs
    2322         - WNETAP32: New (NETAPI32)
    2323         - PE2LX:    Change module import name NETAPI32 to WNETAP32 (name conflict with OS/2 NETAPI32)
    2324         - PE2LX:    Cut long dll names to 8 chars
    2325         - MPR:      Added WNetGetUserA stub
    2326 
    2327 31-11-1997: Sander van Leeuwen
    2328         - KERNEL32: Fixed GetEnvironmentStringsW
    2329         - KERNEL32: Added DeviceIOControl (devio.c, map.c, iccio.asm; last two from XFree86 driver src)
    2330         - KERNEL32: Changed CreateFile to open an OS/2 driver if required
    2331         - Last two changes for win32 Glide dll.
    2332 
    2333         - Fixed window creation (wndproc.cpp), Open32 isn't sending WM_NCCREATE msgs!
    2334         - Filter out CBS_OWNERDRAWFIXED & CBS_OWNERDRAWVARIABLE combobox styles
    2335           in CreateWindowExA/W (not finished)
    2336         - Added FormatMessageA/W from Wine (kernel32)
    2337         - USER32:
    2338         - Fixed GetSystemParameterInfoA/W, SPI_GETNONCLIENTMETRICS/SPI_SETNONCLIENTMETRICS
    2339           (ConvertFontAW/ConvertFontWA macros)
    2340         - Progress comclt32 class working
    2341         - ADVAPI32, fixed:
    2342                 - RegEnumKeyW
    2343                 - RegEnumKeyExW
    2344                 - RegEnumValueW
    2345                 - RegQueryInfoKeyW
    2346                 - RegQueryValueW
    2347 
    2348         - USER32:
    2349         - Fixed DrawEdge                (borrowed from Wine)
    2350         - Added ChangeMenuA/W           (borrowed from Wine)
    2351         - Fixed some color problems
    2352         - Trackbar win32 SDK example working (toolbar comctl32 class)
Note: See TracChangeset for help on using the changeset viewer.