- reorganized DInput DLL
- added stubbing for DInput 7a
- 'fixed' the mouse problem in Fallout
diff --git a/dlls/dinput/dinput_private.h b/dlls/dinput/dinput_private.h
new file mode 100644
index 0000000..869f4a7
--- /dev/null
+++ b/dlls/dinput/dinput_private.h
@@ -0,0 +1,26 @@
+#ifndef __WINE_DLLS_DINPUT_DINPUT_PRIVATE_H
+#define __WINE_DLLS_DINPUT_DINPUT_PRIVATE_H
+
+#include "winbase.h"
+#include "dinput.h"
+
+/* Implementation specification */
+typedef struct IDirectInputAImpl IDirectInputAImpl;
+struct IDirectInputAImpl
+{
+ ICOM_VFIELD(IDirectInputA);
+ DWORD ref;
+
+ /* Used to have an unique sequence number for all the events */
+ DWORD evsequence;
+};
+
+/* Function called by all devices that Wine supports */
+typedef struct dinput_device {
+ BOOL (*enum_device)(DWORD dwDevType, DWORD dwFlags, LPCDIDEVICEINSTANCEA lpddi);
+ HRESULT (*create_device)(IDirectInputAImpl *dinput, REFGUID rguid, REFIID riid, LPDIRECTINPUTDEVICEA* pdev);
+} dinput_device;
+
+extern void dinput_register_device(dinput_device *device) ;
+
+#endif /* __WINE_DLLS_DINPUT_DINPUT_PRIVATE_H */