APCDDB.ASM
上传用户:lx1888888
上传日期:2007-01-04
资源大小:136k
文件大小:2k
源码类别:

驱动编程

开发平台:

Visual C++

  1.     .386p
  2. ;******************************************************************************
  3. ;                I N C L U D E S
  4. ;******************************************************************************
  5.     include vmm.inc
  6.     include debug.inc
  7. ;============================================================================
  8. ;        V I R T U A L   D E V I C E   D E C L A R A T I O N
  9. ;============================================================================
  10. DECLARE_VIRTUAL_DEVICE    APCVXD, 1, 0, ControlProc, UNDEFINED_DEVICE_ID, 
  11.                         UNDEFINED_INIT_ORDER
  12. VxD_LOCKED_CODE_SEG
  13. ;===========================================================================
  14. ;
  15. ;   PROCEDURE: ControlProc
  16. ;
  17. ;   DESCRIPTION:
  18. ;    Device control procedure for the SKELETON VxD
  19. ;
  20. ;   ENTRY:
  21. ;    EAX = Control call ID
  22. ;
  23. ;   EXIT:
  24. ;    If carry clear then
  25. ;        Successful
  26. ;    else
  27. ;        Control call failed
  28. ;
  29. ;   USES:
  30. ;    EAX, EBX, ECX, EDX, ESI, EDI, Flags
  31. ;
  32. ;============================================================================
  33. BeginProc ControlProc
  34.     Control_Dispatch VM_INIT, _OnVmInit, cCall, <ebx>
  35.     Control_Dispatch VM_TERMINATE, _OnVmTerminate, cCall, <ebx>
  36.     Control_Dispatch SYS_DYNAMIC_DEVICE_INIT, _OnSysDynamicDeviceInit, cCall, <ebx>
  37.     Control_Dispatch SYS_DYNAMIC_DEVICE_EXIT, _OnSysDynamicDeviceExit, cCall, <ebx>
  38.     Control_Dispatch W32_DEVICEIOCONTROL, _OnW32Deviceiocontrol, cCall, <esi>
  39.     clc
  40.     ret
  41. EndProc ControlProc
  42. VxD_LOCKED_CODE_ENDS
  43.     END