2009-04-07  Ozkan Sezer <sezeroz@gmail.com>

	* _mingw_dxhelper.h: New. Holds the DUMMYUNIONNAME and some Wine
	  compatibility macros.
	* d3d8types.h, d3d9types.h, d3dhal.h, d3dtypes.h, ddraw.h, ddrawi.h:
	  #include _mingw_dxhelper.h instead of defining DUMMYUNIONNAME stuff
	  in each file.
	* dinput.h, dplay.h, dplobby.h, dsdriver.h: Likewise.
	* ddraw.h, dinput.h, dplobby.h, dsound.h, dxerr8.h, dxerr9.h: bite the
	  bullet and use the WINELIB_* macros we just added to _mingw_dxhelper.h
	  instead of using UNICODE ifdefs. smaller diffs between the Wine source
	  tree and ours and this will help us with easier merging with the Wine
	  changes in the future..

2009-04-05  Ozkan Sezer <sezeroz@gmail.com>

	* d3d8types.h, d3d9types.h: Remove misspelled constants as they exist
	  correctly spelled (wine git d476313a49c1b46eeef390c79cadd72cd3eb217d).
	* ddraw.h: Better match the PSDK types, re order a few things (wine git
	  5b375aec71419a5a5bb57a42293ef348d6dc96a8).
	* dinput.h: Add missing IID_IDirectInput8 definitions (wine git
	  59c18ef56d3d33b98e319e8c0cd30c24fc363e4e).
	* dinput.h: Other bits and pieces from wine git: Add the DIPROP_KEYNAME
	  property for keyboard device (d939367ac8fc1e7c7461008c86557fd870c4fbe4),
	  add DISCL_NOWINKEY define (eb3028acc080922996b04f4e0cb36440680fe876),
	  add some defines for EnumDevicesBySemantics
	  (80c2cabab451b749efb768403d68ccddfede71d9).
	  TODO: we _must_ revisit to double check the version ifdefs again.
	* dls1.h, dls2.h, dmdls.h, dmerror.h, dmplugin.h, dmusbuff.h: Fix license
	  headers that mistakenly use GPL instead of LGPL.
	* dmusicc.h, dmusicf.h, dmusici.h, dmusics.h: Likewise.
	* dmdls.h, dmerror.h, dmplugin.h, dmusicc.h, dmusicf.h, dmusici.h, dmusics.h:
	  more long to LONG changes from wine git repository.
	* dmoreg.h: Likewise.
	* dmoreg.h: Fix the DMOGetName() prototype (wine git: 
	  d223716b7bcde8839c741d83865b95c990a8abcc).
	* dpaddr.h: Fix some typos (wine 9f3c91e41f82ba302afad386aa1be58d6dec2b23).
	* dplay.h: Add missing defs (4ab75e121426d8840b6bfb196cef45506091fd25.)
	* dplay.h: Fix the definition of DirectPlayCreate 
	  (wine git 5dc0d4d1ed2de76f21ba4f5298ba9ab251c6fd83).
	* dpnathlp.h: update prototype of DirectPlayNATHelpCreate() 
	  (wine git ab62cd360f611ea2cc806acee044a7ea25773fd8).
	* dsound.h: added missing A/W function / type definitions 
	  (wine git 375f8ba23761d75230805e86bc057ef7755cb57c).
	* dmusici.h: less diff with the wine tree, sigh....
	* dxfile.h: Fix IDirectXFileDataReference macros (wine git 
	  b939b8d3452e6ccabde236a2087046c1649343d2,
	  8597d42cf5f3fe194bd88ccb7ff922e547c44e6d).

2009-04-04  Ozkan Sezer <sezeroz@gmail.com>

	* d3d.h, d3d8.h, d3d9.h, dmplugin.h, dmusicc.h, dmusicf.h, dmusici.h:
	  Added the missing COM_NO_WINDOWS_H definition (wine git
	  6688acce7dbb00ceea4e755fe0f4a771a5520c24).
	* d3d8.h, d3d9.h: Added missing include directives (wine git
	  56f7209a949a1805d80ae0a59e093bbe2857677e).
	* d3d9types.h: Fix the value of D3DFVF_POSITION_MASK (wine git
	  d359a7813fe3d7acd8d3791fe63a4e44bb22ebb2).
	* d3d8types.h, d3d9types.h: Fix the D3DFMT_XXX constant declarations
	  (wine git d4ca34dd9bf98ea71226460092c7095847b97509).
	* d3d.h: Fix method calling macros for IDirect3DTexture (wine git
	  e169bb0a7f204ebe0f3053d824a1177bc1dedc65) and for 
	  IDirect3DViewport3_GetViewport (wine git 
	  7c8fa9c24f5d6d4e22dec148ffecefc9a4262a27).
	* d3dtypes.h: Change long to LONG for Win64 compatibility (wine git
	  3d94f5efc29b43c72e9574ca6c7ee88a69e28b73).
	* d3dx8core.h: Make C++ compatible (wine git 
	  91d3a794e8b756dbcb7047c77acf1a7f862627dd), remove some extraneous
	  #include directives (wine git 
	  7e34c708c1b3bdbb7d4921c1153403a8d8840b29) and fix 
	  D3DXAssembleShaderFromFileA/W prototypes (wine git
	  3d962e27ed69829645f3c8f99c17087f92d89e01).
	* d3d8types.h, d3d9types.h, d3dhal.h, d3dtypes.h, ddrawi.h, dinput.h:
	  Added the missing DUMMYUNIONNAME1 macro.
	* dplay.h, dplobby.h: Likewise.

2009-02-20  Kai Tietz  <kai.tietz@onevision.com>

	* dinput.h (DIK_...): Add additional keyboard scan codes provided
	by http://www.alrj.org/docs/hardware/keycode.txt

	PA/2619828
	a bunch of directx header fixes from the wine git repository:
	* ddraw.h, dinput.h: Added the missing COM_NO_WINDOWS_H definition
	  (wine git 6688acce7dbb00ceea4e755fe0f4a771a5520c24)
	* ddraw.h: Fix the name of DDSPD_IUNKNOWNPOINTER
	  (wine git 47b6392b44dca86b8c61daa902bd35e73cca5e2f)
	* ddraw.h: Define DD_OK to S_OK instead of 0. Add define for DD_FALSE.
	  (wine git fd4a8941032458a9b2870d0068e6fb020a9c9e0c)
	* ddraw.h: Fix a IDirectDrawSurface4 method (EnumAttachedSurfaces) prototype.
	  (wine git 6bdaaa74f3310da48790c3122786aa764f4e221a)
	* ddraw.h: Fix the EnumOverlayZOrders prototype.
	  (wine git 9a080691c6904c0da762690312cc86ee96326dbc)
	* ddraw.h: Fix the IDirectDraw4_RestoreAllSurfaces macro.
	  (wine git c2e5752ac62e646bcb46c0741cd0083179e3c9ed)
	* dinput.h: Fix IDirectInputEffect_GetEffectStatus macro definitions.
	  (wine git 2a0e659335ecf1d8967c75c9efe164c2d9d0214c)
	* dsound.h: Update prototypes for IDirectSoundBuffer::Lock/Unlock.
	  (wine git 9b4f99782ef27239927a0c5d0ae8e788df17cb76)
	* dinput.h:  reverted the wine ifdef removal change
	  (wine git bf08b35c0730636ab3dbc4dee0a9f6fa28113b7a). also added
	  a dinput8 ifdef to DIDEVICEOBJECTDATA for the uAppData member.
