Int 2F Fn 1684 - Ms Windows - Mmdevldr - Get Api Entry Point [W]

AX = 1684h
BX = 044Ah (virtual device ID for "mmdevldr" device) (see #2329)
ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #2372)
0000h:0000h if the VxD does not support API in current mode

See Also: AX=1684h"DEVICE API",INT 20"Windows"

(Table 2372)
Call MMDEVLDR.VXD entry point with:
DX = function number
0000h ???

Return: CF clear if successful
AX = 0000h
CF set on error
AX = error code (000Bh)

Note: invokes VxDCall 17000Eh ("CallAtAppyTime")
0001h ???

Return: CF clear if successful
AX = 0000h
CF set on error
AX = error code (000Bh)

Note: invokes VxDCall 17000Eh ("CallAtAppyTime")
0002h ???
EDX = ???

Return: CF clear if successful
AX = 0000h
EDX = ???
CF set on error
AX = error code
0003h ???

Return: CF clear if successful
AX = 0000h
CF set on error
AX = error code

Note: invokes VxDcall 2A0002h ("VWIN32_QueueUserApc")
0004h set Win32 event

Return: CF clear if successful
AX = 0000h
CF set on error
AX = error code

Note: invokes VxDcall 2A000Eh ("VWIN32_SetWin32Event")
0005h ??? (allocates some memory)

Return: CF clear
AX = 0000h
0006h ??? (frees memory)

Return: CF clear if successful
AX = 0000h
CF set on error
AX = error code
else

Return: CF set
AX = 000Bh (invalid function)

See Also: #2371,#2373