[CMAKE]
[reactos.git] / lib / drivers / sound / mmebuddy / midi / midMessage.c
index a99b6dc..95738d7 100644 (file)
 DWORD
 APIENTRY
 midMessage(
-    DWORD DeviceId,
-    DWORD Message,
-    DWORD PrivateHandle,
-    DWORD Parameter1,
-    DWORD Parameter2)
+    UINT DeviceId,
+    UINT Message,
+    DWORD_PTR PrivateHandle,
+    DWORD_PTR Parameter1,
+    DWORD_PTR Parameter2)
 {
     MMRESULT Result = MMSYSERR_NOTSUPPORTED;
 
@@ -65,6 +65,33 @@ midMessage(
             break;
         }
 
+        case MIDM_OPEN :
+        {
+            Result = MmeOpenDevice(MIDI_IN_DEVICE_TYPE,
+                                   DeviceId,
+                                   (LPWAVEOPENDESC) Parameter1,
+                                   Parameter2,
+                                   (DWORD_PTR*) PrivateHandle);
+            break;
+        }
+
+        case MIDM_CLOSE :
+        {
+            Result = MmeCloseDevice(PrivateHandle);
+            break;
+        }
+
+       case MIDM_START :
+        {
+            Result = MmeSetState(PrivateHandle, TRUE);
+            break;
+        }
+
+        case MIDM_STOP :
+        {
+            Result = MmeSetState(PrivateHandle, FALSE);
+            break;
+        }
     }
 
     SND_TRACE(L"midMessage returning MMRESULT %d\n", Result);