Added MMDEVLDR DeviceIoctl(5) stub (msacm32 is a bit happier now).

This commit is contained in:
Marcus Meissner 1999-04-19 16:21:29 +00:00 committed by Alexandre Julliard
parent b3bd754892
commit 91aaca8686

View file

@ -45,6 +45,11 @@ static BOOL DeviceIo_MONODEBG(DWORD dwIoControlCode,
LPVOID lpvOutBuffer, DWORD cbOutBuffer, LPVOID lpvOutBuffer, DWORD cbOutBuffer,
LPDWORD lpcbBytesReturned, LPDWORD lpcbBytesReturned,
LPOVERLAPPED lpOverlapped); LPOVERLAPPED lpOverlapped);
static BOOL DeviceIo_MMDEVLDR(DWORD dwIoControlCode,
LPVOID lpvInBuffer, DWORD cbInBuffer,
LPVOID lpvOutBuffer, DWORD cbOutBuffer,
LPDWORD lpcbBytesReturned,
LPOVERLAPPED lpOverlapped);
static BOOL VxDCall_VMM( DWORD *retv, DWORD service, CONTEXT *context ); static BOOL VxDCall_VMM( DWORD *retv, DWORD service, CONTEXT *context );
@ -160,6 +165,7 @@ static const struct VxDInfo VxDList[] =
/* Multimedia OEM IDs */ /* Multimedia OEM IDs */
{ "VTDAPI", 0x0442, NULL, DeviceIo_VTDAPI }, { "VTDAPI", 0x0442, NULL, DeviceIo_VTDAPI },
{ "MMDEVLDR", 0x044A, NULL, DeviceIo_MMDEVLDR },
/* Network Device IDs */ /* Network Device IDs */
{ "VNetSup", 0x0480, NULL, NULL }, { "VNetSup", 0x0480, NULL, NULL },
@ -199,6 +205,7 @@ static const struct VxDInfo VxDList[] =
{ "AFILTER", 0x04A1, NULL, NULL }, { "AFILTER", 0x04A1, NULL, NULL },
{ "IRLAMP", 0x04A2, NULL, NULL }, { "IRLAMP", 0x04A2, NULL, NULL },
/* WINE additions, ids unknown */
{ "MONODEBG.VXD", 0x4242, NULL, DeviceIo_MONODEBG }, { "MONODEBG.VXD", 0x4242, NULL, DeviceIo_MONODEBG },
{ NULL, 0, NULL, NULL } { NULL, 0, NULL, NULL }
@ -904,10 +911,29 @@ static BOOL DeviceIo_VWin32(DWORD dwIoControlCode,
return retv; return retv;
} }
/* this is the main multimedia device loader */
static BOOL DeviceIo_MMDEVLDR(DWORD dwIoControlCode,
LPVOID lpvInBuffer, DWORD cbInBuffer,
LPVOID lpvOutBuffer, DWORD cbOutBuffer,
LPDWORD lpcbBytesReturned,
LPOVERLAPPED lpOverlapped)
{
FIXME(win32,"(%ld,%p,%ld,%p,%ld,%p,%p): stub\n",
dwIoControlCode,
lpvInBuffer,cbInBuffer,
lpvOutBuffer,cbOutBuffer,
lpcbBytesReturned,
lpOverlapped
);
switch (dwIoControlCode) {
case 5:
/* Hmm. */
*(DWORD*)lpvOutBuffer=0;
*lpcbBytesReturned=4;
return TRUE;
}
return FALSE;
}
/* this is used by some Origin games */ /* this is used by some Origin games */
static BOOL DeviceIo_MONODEBG(DWORD dwIoControlCode, static BOOL DeviceIo_MONODEBG(DWORD dwIoControlCode,
LPVOID lpvInBuffer, DWORD cbInBuffer, LPVOID lpvInBuffer, DWORD cbInBuffer,