[ros-diffs] [silverblade] 39606: Split custom ReactOS-only non-standard extensions from NTDDSND.H Updated relevant code to include the new headers SNDTYPES.H and SNDNAMES.H Corrected CTL_CODE macros and included SNDTYPES.H in WDMAUD interface header A lot of this is just refactoring, hence the large number of files!

silverblade at svn.reactos.org silverblade at svn.reactos.org
Sun Feb 15 14:31:53 CET 2009


Author: silverblade
Date: Sun Feb 15 07:31:52 2009
New Revision: 39606

URL: http://svn.reactos.org/svn/reactos?rev=39606&view=rev
Log:
Split custom ReactOS-only non-standard extensions from NTDDSND.H
Updated relevant code to include the new headers SNDTYPES.H and SNDNAMES.H
Corrected CTL_CODE macros and included SNDTYPES.H in WDMAUD interface header
A lot of this is just refactoring, hence the large number of files!


Added:
    trunk/reactos/dll/win32/sndblst/
    trunk/reactos/dll/win32/sndblst/sndblst.c   (with props)
    trunk/reactos/dll/win32/sndblst/sndblst.def   (with props)
    trunk/reactos/dll/win32/sndblst/sndblst.rbuild   (with props)
    trunk/reactos/include/reactos/libs/sound/sndnames.h   (with props)
    trunk/reactos/include/reactos/libs/sound/sndtypes.h   (with props)
Modified:
    trunk/reactos/dll/win32/win32.rbuild
    trunk/reactos/drivers/wdm/audio/legacy/wdmaud/interface.h
    trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild
    trunk/reactos/include/ddk/ntddsnd.h
    trunk/reactos/lib/drivers/directory.rbuild
    trunk/reactos/lib/drivers/sound/legacy/devname.c
    trunk/reactos/lib/drivers/sound/mmebuddy/auxiliary/auxMessage.c
    trunk/reactos/lib/drivers/sound/mmebuddy/capabilities.c
    trunk/reactos/lib/drivers/sound/mmebuddy/devicelist.c
    trunk/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c
    trunk/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c
    trunk/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c
    trunk/reactos/lib/drivers/sound/mmebuddy/mmewrap.c
    trunk/reactos/lib/drivers/sound/mmebuddy/reentrancy.c
    trunk/reactos/lib/drivers/sound/mmebuddy/wave/format.c
    trunk/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c
    trunk/reactos/lib/drivers/sound/mmebuddy/wave/wodMessage.c
    trunk/reactos/lib/drivers/sound/mment4/control.c
    trunk/reactos/lib/drivers/sound/mment4/detect.c
    trunk/reactos/lib/drivers/sound/mment4/registry.c

Added: trunk/reactos/dll/win32/sndblst/sndblst.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/sndblst/sndblst.c?rev=39606&view=auto
==============================================================================
--- trunk/reactos/dll/win32/sndblst/sndblst.c (added)
+++ trunk/reactos/dll/win32/sndblst/sndblst.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -1,0 +1,226 @@
+/*
+ * PROJECT:     ReactOS Sound System
+ * LICENSE:     GPL - See COPYING in the top level directory
+ * FILE:        dll/win32/sndblst/sndblst.c
+ *
+ * PURPOSE:     Sound Blaster MME User-Mode Driver
+ *
+ * PROGRAMMERS: Andrew Greenwood (silverblade at reactos.org)
+ *
+ * NOTES:       Currently very experimental and being used as a guinea-pig for
+ *              changes to the MME-Buddy libraries.
+ *              TODO: Adhere to maximum device name length!
+*/
+
+#include <windows.h>
+#include <ntddsnd.h>
+#include <reactos/sndtypes.h>
+#include <mmddk.h>
+#include <mmebuddy.h>
+#include <mment4.h>
+//#include <debug.h>
+
+PWSTR SBWaveOutDeviceName = L"ROS Sound Blaster Out";
+PWSTR SBWaveInDeviceName  = L"ROS Sound Blaster In";
+/* TODO: Mixer etc */
+
+MMRESULT
+GetSoundBlasterDeviceCapabilities(
+    IN  PSOUND_DEVICE SoundDevice,
+    OUT PVOID Capabilities,
+    IN  DWORD CapabilitiesSize)
+{
+    MMRESULT Result;
+    MMDEVICE_TYPE DeviceType;
+
+    SND_ASSERT( SoundDevice );
+    SND_ASSERT( Capabilities );
+
+    SND_TRACE(L"Sndblst - GetSoundBlasterDeviceCapabilities\n");
+
+    Result = GetSoundDeviceType(SoundDevice, &DeviceType);
+    SND_ASSERT( Result == MMSYSERR_NOERROR );
+
+    /* Use the default method of obtaining device capabilities */
+    Result = GetNt4SoundDeviceCapabilities(SoundDevice,
+                                           Capabilities,
+                                           CapabilitiesSize);
+
+    if ( ! MMSUCCESS(Result) )
+        return Result;
+
+    /* Inject the appropriate device name */
+    switch ( DeviceType )
+    {
+        case WAVE_OUT_DEVICE_TYPE :
+        {
+            LPWAVEOUTCAPS WaveOutCaps = (LPWAVEOUTCAPS) Capabilities;
+            CopyWideString(WaveOutCaps->szPname, SBWaveOutDeviceName);
+            break;
+        }
+        case WAVE_IN_DEVICE_TYPE :
+        {
+            LPWAVEINCAPS WaveInCaps = (LPWAVEINCAPS) Capabilities;
+            CopyWideString(WaveInCaps->szPname, SBWaveInDeviceName);
+            break;
+        }
+    }
+
+    return MMSYSERR_NOERROR;
+}
+
+BOOLEAN FoundDevice(
+    UCHAR DeviceType,
+    PWSTR DevicePath)
+{
+    MMRESULT Result;
+    PSOUND_DEVICE SoundDevice = NULL;
+    MMFUNCTION_TABLE FuncTable;
+    PWSTR PathCopy;
+
+    SND_TRACE(L"(Callback) Found device: %wS\n", DevicePath);
+
+    PathCopy = AllocateWideString(wcslen(DevicePath));
+
+    if ( ! PathCopy )
+        return FALSE;
+
+    CopyWideString(PathCopy, DevicePath);
+
+    Result = ListSoundDevice(DeviceType, (PVOID) PathCopy, &SoundDevice);
+
+    if ( ! MMSUCCESS(Result) )
+        return FALSE;
+
+    /* Set up our function table */
+    FuncTable.GetCapabilities = GetSoundBlasterDeviceCapabilities;
+    FuncTable.QueryWaveFormatSupport = QueryNt4WaveDeviceFormatSupport;
+    FuncTable.SetWaveFormat = SetNt4WaveDeviceFormat;
+    FuncTable.Open = OpenNt4SoundDevice;
+    FuncTable.Close = CloseNt4SoundDevice;
+    FuncTable.PrepareWaveHeader = NULL;
+    FuncTable.UnprepareWaveHeader = NULL;
+    FuncTable.SubmitWaveHeader = NULL;
+
+    SetSoundDeviceFunctionTable(SoundDevice, &FuncTable);
+
+    return TRUE;
+}
+
+APIENTRY LONG
+DriverProc(
+    DWORD DriverId,
+    HANDLE DriverHandle,
+    UINT Message,
+    LONG Parameter1,
+    LONG Parameter2)
+{
+    MMRESULT Result;
+
+    switch ( Message )
+    {
+        case DRV_LOAD :
+        {
+            SND_TRACE(L"DRV_LOAD\n");
+
+            Result = InitEntrypointMutexes();
+
+            if ( ! MMSUCCESS(Result) )
+                return 0L;
+
+            Result = EnumerateNt4ServiceSoundDevices(L"sndblst",
+                                                     0,
+                                                     FoundDevice);
+
+            if ( ! MMSUCCESS(Result) )
+            {
+                CleanupEntrypointMutexes();
+
+                UnlistAllSoundDevices();
+
+                return 0L;
+            }
+
+/*
+            PSOUND_DEVICE snd;
+            GetSoundDevice(WAVE_OUT_DEVICE_TYPE, 0, &snd);
+            GetSoundDevice(AUX_DEVICE_TYPE, 0, &snd);
+            GetSoundDevice(AUX_DEVICE_TYPE, 1, &snd);
+            GetSoundDevice(AUX_DEVICE_TYPE, 2, &snd);
+*/
+
+            SND_TRACE(L"Initialisation complete\n");
+
+            return 1L;
+        }
+
+        case DRV_FREE :
+        {
+            SND_TRACE(L"DRV_FREE\n");
+
+            /* TODO: Clean up the path names! */
+            UnlistAllSoundDevices();
+
+            CleanupEntrypointMutexes();
+
+            SND_TRACE(L"Unfreed memory blocks: %d\n",
+                      GetMemoryAllocationCount());
+
+            return 1L;
+        }
+
+        case DRV_ENABLE :
+        case DRV_DISABLE :
+        {
+            SND_TRACE(L"DRV_ENABLE / DRV_DISABLE\n");
+            return 1L;
+        }
+
+        case DRV_OPEN :
+        case DRV_CLOSE :
+        {
+            SND_TRACE(L"DRV_OPEN / DRV_CLOSE\n");
+            return 1L;
+        }
+
+        case DRV_QUERYCONFIGURE :
+        {
+            SND_TRACE(L"DRV_QUERYCONFIGURE");
+            return 0L;
+        }
+        case DRV_CONFIGURE :
+            return DRVCNF_OK;
+
+        default :
+            SND_TRACE(L"Unhandled message %d\n", Message);
+            return DefDriverProc(DriverId,
+                                 DriverHandle,
+                                 Message,
+                                 Parameter1,
+                                 Parameter2);
+    }
+}
+
+BOOL WINAPI DllMain(
+    HINSTANCE hinstDLL,
+    DWORD fdwReason,
+    LPVOID lpvReserved)
+{
+    switch ( fdwReason )
+    {
+        case DLL_PROCESS_ATTACH :
+            SND_TRACE(L"DLL_PROCESS_ATTACH\n");
+            break;
+        case DLL_PROCESS_DETACH :
+            SND_TRACE(L"DLL_PROCESS_DETACH\n");
+            break;
+        case DLL_THREAD_ATTACH :
+            SND_TRACE(L"DLL_THREAD_ATTACH\n");
+            break;
+        case DLL_THREAD_DETACH :
+            SND_TRACE(L"DLL_THREAD_DETACH\n");
+            break;
+    }
+
+    return TRUE;
+}

Propchange: trunk/reactos/dll/win32/sndblst/sndblst.c
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/reactos/dll/win32/sndblst/sndblst.def
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/sndblst/sndblst.def?rev=39606&view=auto
==============================================================================
--- trunk/reactos/dll/win32/sndblst/sndblst.def (added)
+++ trunk/reactos/dll/win32/sndblst/sndblst.def [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -1,0 +1,15 @@
+; $Id: sndblst.def 34299 2008-07-05 02:43:17Z silverblade $
+;
+; sndblst.def
+;
+; ReactOS Operating System
+;
+LIBRARY sndblst.dll
+EXPORTS
+DriverProc at 20
+widMessage at 20
+wodMessage at 20
+midMessage at 20
+modMessage at 20
+mxdMessage at 20
+auxMessage at 20

Propchange: trunk/reactos/dll/win32/sndblst/sndblst.def
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/reactos/dll/win32/sndblst/sndblst.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/sndblst/sndblst.rbuild?rev=39606&view=auto
==============================================================================
--- trunk/reactos/dll/win32/sndblst/sndblst.rbuild (added)
+++ trunk/reactos/dll/win32/sndblst/sndblst.rbuild [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -1,0 +1,16 @@
+<!-- Temporarily compiling as a CUI app for testing purposes */
+<!--module name="mmdrv" type="win32dll" baseaddress="${BASEADDRESS_MMDRV}" installbase="system32" installname="mmdrv.dll" unicode="yes"-->
+<module name="sndblst" type="win32dll" installbase="system32" installname="sndblst.dll" unicode="yes">
+	<importlibrary definition="sndblst.def" />
+    <include base="ReactOS">include/reactos/libs/sound</include>
+	<include base="sndblst">.</include>
+	<define name="DEBUG_NT4" />
+    <library>mment4</library>
+    <library>mmebuddy</library>
+	<library>ntdll</library>
+	<library>kernel32</library>
+	<library>user32</library>
+	<library>winmm</library>
+    <library>advapi32</library>
+    <file>sndblst.c</file>
+</module>

Propchange: trunk/reactos/dll/win32/sndblst/sndblst.rbuild
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/dll/win32/win32.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/win32.rbuild?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/dll/win32/win32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/win32.rbuild [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -394,6 +394,9 @@
 <directory name="smdll">
 	<xi:include href="smdll/smdll.rbuild" />
 </directory>
+<directory name="sndblst">
+	<xi:include href="sndblst/sndblst.rbuild" />
+</directory>
 <directory name="snmpapi">
 	<xi:include href="snmpapi/snmpapi.rbuild" />
 </directory>

Modified: trunk/reactos/drivers/wdm/audio/legacy/wdmaud/interface.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/legacy/wdmaud/interface.h?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/drivers/wdm/audio/legacy/wdmaud/interface.h [iso-8859-1] (original)
+++ trunk/reactos/drivers/wdm/audio/legacy/wdmaud/interface.h [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -6,7 +6,8 @@
 ///
 /// History: 12/02/2008 Created
 
-
+// These are now in sndtypes.h
+/*
 typedef enum
 {
     DEVICE_TYPE_NONE = 0,
@@ -18,10 +19,13 @@
     DEVICE_TYPE_AUX_OUT
 
 }AUDIO_DEVICE_TYPE;
+*/
+
+#include <sndtypes.h>
 
 typedef struct
 {
-    AUDIO_DEVICE_TYPE DeviceType;
+    SOUND_DEVICE_TYPE DeviceType;
     ULONG DeviceIndex;
 
     HANDLE hDevice;
@@ -55,7 +59,11 @@
 /// Return Code: STATUS_SUCCESS indicates success, otherwise appropiate error code
 /// Prequsites:  none
 
-#define IOCTL_OPEN_WDMAUD              CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 0, METHOD_BUFFERED);
+#define IOCTL_OPEN_WDMAUD \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             0, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_CLOSE_WDMAUD
@@ -68,7 +76,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: openend device
 
-#define IOCTL_CLOSE_WDMAUD             CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 1, METHOD_BUFFERED);
+#define IOCTL_CLOSE_WDMAUD \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             1, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS); \
 
 
 /// IOCTL_GETNUMDEVS_TYPE
@@ -82,8 +94,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: none
 
-#define IOCTL_GETNUMDEVS_TYPE               CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 2, METHOD_BUFFERED);
-
+#define IOCTL_GETNUMDEVS_TYPE \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             2, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_SETDEVICE_STATE
@@ -96,7 +111,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: opened device
 
-#define IOCTL_SETDEVICE_STATE               CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 3, METHOD_BUFFERED);
+#define IOCTL_SETDEVICE_STATE \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             3, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_GETDEVID
@@ -110,9 +129,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: opened device
 
-
-#define IOCTL_GETDEVID                      CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 4, METHOD_BUFFERED);
-
+#define IOCTL_GETDEVID \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             4, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_GETVOLUME
@@ -126,8 +147,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: opened device
 
-
-#define IOCTL_GETVOLUME                      CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 5, METHOD_BUFFERED);
+#define IOCTL_GETVOLUME \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             5, \
+             METHOD_BUFFEERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_SETVOLUME
@@ -140,8 +164,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: opened device
 
-
-#define IOCTL_SETVOLUME                      CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 6, METHOD_BUFFERED);
+#define IOCTL_SETVOLUME \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             6, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_GETCAPABILTIES
@@ -154,8 +181,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: none
 
-
-#define IOCTL_GETCAPABILTIES                 CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 7, METHOD_BUFFERED);
+#define IOCTL_GETCAPABILITIES \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             7, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 /// IOCTL_WRITEDATA
@@ -168,11 +198,11 @@
 /// ReturnCode:  STATUS_SUCCESS indicates success
 /// Prequsites: opened device
 
-
-#define IOCTL_WRITEDATA                 CTL_CODE(FILE_DEVICE_SOUND, FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS, 8, METHOD_BUFFERED);
-
-
-
+#define IOCTL_WRITEDATA \
+    CTL_CODE(FILE_DEVICE_SOUND, \
+             8, \
+             METHOD_BUFFERED, \
+             FILE_CREATE_TREE_CONNECTION | FILE_ANY_ACCESS);
 
 
 #endif

Modified: trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild [iso-8859-1] (original)
+++ trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -2,6 +2,7 @@
 <!DOCTYPE module SYSTEM "../../../../../tools/rbuild/project.dtd">
 <module name="wdmaud_kernel" type="kernelmodedriver" installbase="system32/drivers" installname="wdmaud.sys">
 	<include base="wdmaud_kernel">.</include>
+	<include base="ReactOS">include/reactos/libs/sound</include>
 	<library>ntoskrnl</library>
 	<library>ks</library>
 	<file>entry.c</file>

Modified: trunk/reactos/include/ddk/ntddsnd.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/ntddsnd.h?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/include/ddk/ntddsnd.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/ntddsnd.h [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -9,6 +9,7 @@
         24 May 2008 - Created
         2 July 2008 - Added device names as seen from user-mode
         5 July 2008 - Added macros for checking device type
+        14 Feb 2009 - Added base control codes for nonstandard extensions
 
     This file contains definitions and structures for Windows NT4 style
     multimedia drivers. The NT4 DDK has these split across multiple header
@@ -23,108 +24,11 @@
     type IDs).
 */
 
-#ifndef NTDDWAVE
-#define NTDDWAVE
+#ifndef NTDDSND_H
+#define NTDDSND_H
 
 #define SOUND_MAX_DEVICES           100
-
-
-/*
-    Device types
-
-    Not part of the original DDK header, but based on the values stored in
-    registry by sndblst
-*/
-
-#define WAVE_IN_DEVICE_TYPE     1
-#define WAVE_OUT_DEVICE_TYPE    2
-#define MIDI_IN_DEVICE_TYPE     3
-#define MIDI_OUT_DEVICE_TYPE    4
-#define AUX_DEVICE_TYPE         5
-#define MIXER_DEVICE_TYPE       6
-
-#define MIN_SOUND_DEVICE_TYPE   WAVE_IN_DEVICE_TYPE
-#define MAX_SOUND_DEVICE_TYPE   MIXER_DEVICE_TYPE
-#define SOUND_DEVICE_TYPES      6
-
-#define IS_VALID_SOUND_DEVICE_TYPE(x) \
-    ( ( x >= MIN_SOUND_DEVICE_TYPE ) && ( x <= MAX_SOUND_DEVICE_TYPE ) )
-
-#define IS_WAVE_DEVICE_TYPE(x) \
-    ( ( x == WAVE_IN_DEVICE_TYPE ) || ( x == WAVE_OUT_DEVICE_TYPE ) )
-
-#define IS_MIDI_DEVICE_TYPE(x) \
-    ( ( x == MIDI_IN_DEVICE_TYPE ) || ( x == MIDI_OUT_DEVICE_TYPE ) )
-
-#define IS_AUX_DEVICE_TYPE(x) \
-    ( x == AUX_DEVICE_TYPE )
-
-#define IS_MIXER_DEVICE_TYPE(x) \
-    ( x == MIXER_DEVICE_TYPE )
-
-
-/*
-    Base device names
-
-    Each device name should be given a numerical suffix identifying that
-    unique device, eg:
-
-    \Device\WaveOut0    - First wave output device
-    \Device\WaveOut1    - Second wave output device
-*/
-
-#define SOUND_MAX_DEVICE_NAME           80
-
-#define DD_WAVE_IN_DEVICE_NAME              "\\Device\\WaveIn"
-#define DD_WAVE_IN_DEVICE_NAME_U           L"\\Device\\WaveIn"
-#define DD_WAVE_IN_DOS_DEVICE_NAME          "\\DosDevices\\WaveIn"
-#define DD_WAVE_IN_DOS_DEVICE_NAME_U       L"\\DosDevices\\WaveIn"
-#define DD_WAVE_IN_WIN32_DEVICE_NAME        "\\\\.\\WaveIn"
-#define DD_WAVE_IN_WIN32_DEVICE_NAME_U     L"\\\\.\\WaveIn"
-
-#define DD_WAVE_OUT_DEVICE_NAME             "\\Device\\WaveOut"
-#define DD_WAVE_OUT_DEVICE_NAME_U          L"\\Device\\WaveOut"
-#define DD_WAVE_OUT_DOS_DEVICE_NAME         "\\DosDevices\\WaveOut"
-#define DD_WAVE_OUT_DOS_DEVICE_NAME_U      L"\\DosDevices\\WaveOut"
-#define DD_WAVE_OUT_WIN32_DEVICE_NAME       "\\\\.\\WaveOut"
-#define DD_WAVE_OUT_WIN32_DEVICE_NAME_U    L"\\\\.\\WaveOut"
-
-#define DD_MIDI_IN_DEVICE_NAME              "\\Device\\MidiIn"
-#define DD_MIDI_IN_DEVICE_NAME_U           L"\\Device\\MidiIn"
-#define DD_MIDI_IN_DOS_DEVICE_NAME          "\\DosDevices\\MidiIn"
-#define DD_MIDI_IN_DOS_DEVICE_NAME_U       L"\\DosDevices\\MidiIn"
-#define DD_MIDI_IN_WIN32_DEVICE_NAME        "\\\\.\\MidiIn"
-#define DD_MIDI_IN_WIN32_DEVICE_NAME_U     L"\\\\.\\MidiIn"
-
-#define DD_MIDI_OUT_DEVICE_NAME             "\\Device\\MidiOut"
-#define DD_MIDI_OUT_DEVICE_NAME_U          L"\\Device\\MidiOut"
-#define DD_MIDI_OUT_DOS_DEVICE_NAME         "\\DosDevices\\MidiOut"
-#define DD_MIDI_OUT_DOS_DEVICE_NAME_U      L"\\DosDevices\\MidiOut"
-#define DD_MIDI_OUT_WIN32_DEVICE_NAME       "\\\\.\\MidiOut"
-#define DD_MIDI_OUT_WIN32_DEVICE_NAME_U    L"\\\\.\\MidiOut"
-
-#define DD_MIX_DEVICE_NAME                  "\\Device\\MMMix"
-#define DD_MIX_DEVICE_NAME_U               L"\\Device\\MMMix"
-#define DD_MIX_DOS_DEVICE_NAME              "\\DosDevices\\MMMix"
-#define DD_MIX_DOS_DEVICE_NAME_U           L"\\DosDevices\\MMMix"
-#define DD_MIX_WIN32_DEVICE_NAME            "\\\\.\\MMMix"
-#define DD_MIX_WIN32_DEVICE_NAME_U         L"\\\\.\\MMMix"
-
-#define DD_AUX_DEVICE_NAME                  "\\Device\\MMAux"
-#define DD_AUX_DEVICE_NAME_U               L"\\Device\\MMAux"
-#define DD_AUX_DOS_DEVICE_NAME              "\\DosDevices\\MMAux"
-#define DD_AUX_DOS_DEVICE_NAME_U           L"\\DosDevices\\MMAux"
-#define DD_AUX_WIN32_DEVICE_NAME            "\\\\.\\MMAux"
-#define DD_AUX_WIN32_DEVICE_NAME_U         L"\\\\.\\MMAux"
-
-/*
-    Registry keys
-*/
-
-#define REG_SERVICES_KEY_NAME_U            L"System\\CurrentControlSet\\Services"
-#define REG_PARAMETERS_KEY_NAME_U          L"Parameters"
-#define REG_DEVICE_KEY_NAME_U              L"Device"
-#define REG_DEVICES_KEY_NAME_U             L"Devices"
+#define SOUND_MAX_DEVICE_NAME       80
 
 
 /*

Added: trunk/reactos/include/reactos/libs/sound/sndnames.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/sound/sndnames.h?rev=39606&view=auto
==============================================================================
--- trunk/reactos/include/reactos/libs/sound/sndnames.h (added)
+++ trunk/reactos/include/reactos/libs/sound/sndnames.h [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -1,0 +1,80 @@
+/*
+    ReactOS Sound System
+    NT4 audio device and registry key names
+
+    Author:
+        Andrew Greenwood (silverblade at reactos.org)
+
+    History:
+        14 Feb 2009 - Split from ntddsnd.h
+
+    These were enhancements to the original NT4 DDK audio device header
+    files.
+*/
+
+#ifndef SNDNAMES_H
+#define SNDNAMES_H
+
+/*
+    Base device names (NT4)
+
+    Each device name should be given a numerical suffix identifying that
+    unique device, eg:
+
+    \Device\WaveOut0    - First wave output device
+    \Device\WaveOut1    - Second wave output device
+*/
+
+#define DD_WAVE_IN_DEVICE_NAME              "\\Device\\WaveIn"
+#define DD_WAVE_IN_DEVICE_NAME_U           L"\\Device\\WaveIn"
+#define DD_WAVE_IN_DOS_DEVICE_NAME          "\\DosDevices\\WaveIn"
+#define DD_WAVE_IN_DOS_DEVICE_NAME_U       L"\\DosDevices\\WaveIn"
+#define DD_WAVE_IN_WIN32_DEVICE_NAME        "\\\\.\\WaveIn"
+#define DD_WAVE_IN_WIN32_DEVICE_NAME_U     L"\\\\.\\WaveIn"
+
+#define DD_WAVE_OUT_DEVICE_NAME             "\\Device\\WaveOut"
+#define DD_WAVE_OUT_DEVICE_NAME_U          L"\\Device\\WaveOut"
+#define DD_WAVE_OUT_DOS_DEVICE_NAME         "\\DosDevices\\WaveOut"
+#define DD_WAVE_OUT_DOS_DEVICE_NAME_U      L"\\DosDevices\\WaveOut"
+#define DD_WAVE_OUT_WIN32_DEVICE_NAME       "\\\\.\\WaveOut"
+#define DD_WAVE_OUT_WIN32_DEVICE_NAME_U    L"\\\\.\\WaveOut"
+
+#define DD_MIDI_IN_DEVICE_NAME              "\\Device\\MidiIn"
+#define DD_MIDI_IN_DEVICE_NAME_U           L"\\Device\\MidiIn"
+#define DD_MIDI_IN_DOS_DEVICE_NAME          "\\DosDevices\\MidiIn"
+#define DD_MIDI_IN_DOS_DEVICE_NAME_U       L"\\DosDevices\\MidiIn"
+#define DD_MIDI_IN_WIN32_DEVICE_NAME        "\\\\.\\MidiIn"
+#define DD_MIDI_IN_WIN32_DEVICE_NAME_U     L"\\\\.\\MidiIn"
+
+#define DD_MIDI_OUT_DEVICE_NAME             "\\Device\\MidiOut"
+#define DD_MIDI_OUT_DEVICE_NAME_U          L"\\Device\\MidiOut"
+#define DD_MIDI_OUT_DOS_DEVICE_NAME         "\\DosDevices\\MidiOut"
+#define DD_MIDI_OUT_DOS_DEVICE_NAME_U      L"\\DosDevices\\MidiOut"
+#define DD_MIDI_OUT_WIN32_DEVICE_NAME       "\\\\.\\MidiOut"
+#define DD_MIDI_OUT_WIN32_DEVICE_NAME_U    L"\\\\.\\MidiOut"
+
+#define DD_MIX_DEVICE_NAME                  "\\Device\\MMMix"
+#define DD_MIX_DEVICE_NAME_U               L"\\Device\\MMMix"
+#define DD_MIX_DOS_DEVICE_NAME              "\\DosDevices\\MMMix"
+#define DD_MIX_DOS_DEVICE_NAME_U           L"\\DosDevices\\MMMix"
+#define DD_MIX_WIN32_DEVICE_NAME            "\\\\.\\MMMix"
+#define DD_MIX_WIN32_DEVICE_NAME_U         L"\\\\.\\MMMix"
+
+#define DD_AUX_DEVICE_NAME                  "\\Device\\MMAux"
+#define DD_AUX_DEVICE_NAME_U               L"\\Device\\MMAux"
+#define DD_AUX_DOS_DEVICE_NAME              "\\DosDevices\\MMAux"
+#define DD_AUX_DOS_DEVICE_NAME_U           L"\\DosDevices\\MMAux"
+#define DD_AUX_WIN32_DEVICE_NAME            "\\\\.\\MMAux"
+#define DD_AUX_WIN32_DEVICE_NAME_U         L"\\\\.\\MMAux"
+
+
+/*
+    Registry keys (NT4)
+*/
+
+#define REG_SERVICES_KEY_NAME_U            L"System\\CurrentControlSet\\Services"
+#define REG_PARAMETERS_KEY_NAME_U          L"Parameters"
+#define REG_DEVICE_KEY_NAME_U              L"Device"
+#define REG_DEVICES_KEY_NAME_U             L"Devices"
+
+#endif

Propchange: trunk/reactos/include/reactos/libs/sound/sndnames.h
------------------------------------------------------------------------------
    svn:eol-style = native

Added: trunk/reactos/include/reactos/libs/sound/sndtypes.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/sound/sndtypes.h?rev=39606&view=auto
==============================================================================
--- trunk/reactos/include/reactos/libs/sound/sndtypes.h (added)
+++ trunk/reactos/include/reactos/libs/sound/sndtypes.h [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -1,0 +1,59 @@
+/*
+    ReactOS Sound System
+    Device type IDs and macros
+
+    Author:
+        Andrew Greenwood (silverblade at reactos.org)
+
+    History:
+        14 Feb 2009 - Split from ntddsnd.h
+
+    These are enhancements to the original NT4 DDK audio device header
+    files.
+*/
+
+#ifndef SNDTYPES_H
+#define SNDTYPES_H
+
+/*
+    Device types
+
+    Based on the values stored into the registry by the NT4 sndblst
+    driver.
+*/
+
+typedef enum
+{
+    // The sound device types
+    WAVE_IN_DEVICE_TYPE     = 1,
+    WAVE_OUT_DEVICE_TYPE    = 2,
+    MIDI_IN_DEVICE_TYPE     = 3,
+    MIDI_OUT_DEVICE_TYPE    = 4,
+    AUX_DEVICE_TYPE         = 5,
+    MIXER_DEVICE_TYPE       = 6,
+
+    // Range of valid device type IDs
+    MIN_SOUND_DEVICE_TYPE   = 1,
+    MAX_SOUND_DEVICE_TYPE   = 6,
+
+    // Number of sound device types
+    SOUND_DEVICE_TYPES      = 6
+} SOUND_DEVICE_TYPE;
+
+#define IS_VALID_SOUND_DEVICE_TYPE(x) \
+    ( ( x >= MIN_SOUND_DEVICE_TYPE ) && ( x <= MAX_SOUND_DEVICE_TYPE ) )
+
+#define IS_WAVE_DEVICE_TYPE(x) \
+    ( ( x == WAVE_IN_DEVICE_TYPE ) || ( x == WAVE_OUT_DEVICE_TYPE ) )
+
+#define IS_MIDI_DEVICE_TYPE(x) \
+    ( ( x == MIDI_IN_DEVICE_TYPE ) || ( x == MIDI_OUT_DEVICE_TYPE ) )
+
+#define IS_AUX_DEVICE_TYPE(x) \
+    ( x == AUX_DEVICE_TYPE )
+
+#define IS_MIXER_DEVICE_TYPE(x) \
+    ( x == MIXER_DEVICE_TYPE )
+
+
+#endif

Propchange: trunk/reactos/include/reactos/libs/sound/sndtypes.h
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/reactos/lib/drivers/directory.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/directory.rbuild?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/directory.rbuild [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/directory.rbuild [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -13,4 +13,7 @@
 	<directory name="chew">
 		<xi:include href="chew/chew.rbuild" />
 	</directory>
+	<directory name="sound">
+		<xi:include href="sound/sound.rbuild" />
+	</directory>
 </group>

Modified: trunk/reactos/lib/drivers/sound/legacy/devname.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/legacy/devname.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/legacy/devname.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/legacy/devname.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -11,6 +11,7 @@
 
 #include <ntddk.h>
 #include <ntddsnd.h>
+#include <sndnames.h>
 #include <debug.h>
 
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/auxiliary/auxMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/auxiliary/auxMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/auxiliary/auxMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/auxiliary/auxMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/capabilities.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/capabilities.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/capabilities.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/capabilities.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <sndtypes.h>
 #include <mmebuddy.h>
 
 /*

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/devicelist.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/devicelist.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/devicelist.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/devicelist.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <sndtypes.h>
 #include <mmebuddy.h>
 
 ULONG           SoundDeviceCounts[SOUND_DEVICE_TYPES];

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/mmewrap.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/mmewrap.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/mmewrap.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/mmewrap.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <sndtypes.h>
 #include <mmebuddy.h>
 
 /*

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/reentrancy.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/reentrancy.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/reentrancy.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/reentrancy.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <sndtypes.h>
 #include <mmebuddy.h>
 
 HANDLE EntrypointMutexes[SOUND_DEVICE_TYPES];

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/wave/format.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/wave/format.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/wave/format.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/wave/format.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <sndtypes.h>
 #include <mmebuddy.h>
 
 MMRESULT

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mmebuddy/wave/wodMessage.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mmebuddy/wave/wodMessage.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mmebuddy/wave/wodMessage.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mmebuddy/wave/wodMessage.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -14,6 +14,7 @@
 #include <mmddk.h>
 
 #include <ntddsnd.h>
+#include <sndtypes.h>
 
 #include <mmebuddy.h>
 

Modified: trunk/reactos/lib/drivers/sound/mment4/control.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mment4/control.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mment4/control.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mment4/control.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,7 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <reactos/sndtypes.h>
 #include <mmebuddy.h>
 #include <mment4.h>
 

Modified: trunk/reactos/lib/drivers/sound/mment4/detect.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mment4/detect.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mment4/detect.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mment4/detect.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -15,6 +15,8 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+#include <reactos/sndnames.h>
+#include <reactos/sndtypes.h>
 
 #include <mmebuddy.h>
 #include <mment4.h>

Modified: trunk/reactos/lib/drivers/sound/mment4/registry.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/sound/mment4/registry.c?rev=39606&r1=39605&r2=39606&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/sound/mment4/registry.c [iso-8859-1] (original)
+++ trunk/reactos/lib/drivers/sound/mment4/registry.c [iso-8859-1] Sun Feb 15 07:31:52 2009
@@ -12,6 +12,9 @@
 #include <mmsystem.h>
 #include <mmddk.h>
 #include <ntddsnd.h>
+
+#include <reactos/sndnames.h>
+#include <reactos/sndtypes.h>
 
 #include <mmebuddy.h>
 #include <mment4.h>



More information about the Ros-diffs mailing list