Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
1.8 KiB

  1. page ,132
  2. title vxd.asm - vxd interface for dx mapper
  3. name vxd.asm
  4. ;
  5. ;*****************************************************************************
  6. ; *
  7. ; Copyright (c) Microsoft Corporation 1990, 1991 *
  8. ; *
  9. ; All Rights Reserved *
  10. ; *
  11. ;*****************************************************************************
  12. ;
  13. ; this module contains the NTMap port driver initialization code
  14. ;
  15. ;
  16. .386
  17. .xlist
  18. include vmm.inc
  19. include dsdriver.inc
  20. include debug.inc
  21. .list
  22. VxD_LOCKED_DATA_SEG
  23. VxD_LOCKED_DATA_ENDS
  24. VxD_LOCKED_CODE_SEG
  25. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  26. ;
  27. ; DXCheckDSoundVersion - check DSOUND version
  28. ;
  29. ; Input - none
  30. ;
  31. ; Output - eax contains version, 0 if not
  32. ;
  33. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  34. BeginProc DXCheckDSoundVersion, scall, public
  35. EnterProc
  36. VxDCall _DSOUND_GetVersion
  37. jnc DXCVReturn
  38. xor eax, eax
  39. DXCVReturn:
  40. LeaveProc
  41. Return
  42. EndProc DXCheckDSoundVersion
  43. public _DXIssueIoctl@20
  44. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  45. ;
  46. ; DXIssueIoctl - issue IOCtl to DSOUND
  47. ;
  48. ; Input - esp => DIOC
  49. ;
  50. ; Output - none
  51. ;
  52. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  53. BeginProc DXIssueIoctl, scall, public
  54. ArgVar dwFunctionNum, DWORD
  55. ArgVar lpvInBuffer, DWORD
  56. ArgVar cbInBuffer, DWORD
  57. ArgVar lpvOutBuffer, DWORD
  58. ArgVar cbOutBuffer, DWORD
  59. EnterProc
  60. push cbOutBuffer
  61. push lpvOutBuffer
  62. push cbInBuffer
  63. push lpvInBuffer
  64. push dwFunctionNum
  65. VxDCall _DSOUND_DD_IOCTL
  66. pop ebx
  67. pop ebx
  68. pop ebx
  69. pop ebx
  70. pop ebx
  71. LeaveProc
  72. return
  73. EndProc DXIssueIoctl
  74. VxD_LOCKED_CODE_ENDS
  75. end