Mouse_Instance

include VMD.INC
 
Mouse_Instance  STRUC
MI_Flags       DW 0  ; see below
MI_IO_Base     DW 0  ; base to read
MI_IRQNumber   DB 0  ; number of the IRQ
MI_PortNum     DB 0  ; port number (serial mice)
MI_MouseType   DW 0  ; type of mouse (defined above)
MI_Reference   DD 0  ; reference data
MI_hDevNode    DD 0  ; handle of the device node
MI_hIRQ        DD 0  ; handle of the IRQ used by VPICD
MI_HWINT       DD 0  ; hardware interrupt procedure
MI_Reset       DD 0  ; reset routine
MI_Disable     DD 0  ; see below
MI_Initialize  DD 0  ; see below
MI_LoadHandle  DD 0  ; load handle of loaded VxD.
Mouse_Instance  ENDS
 

Describes a mouse device. When loading a mouse minidriver, VMOUSE passes the address of this structure to the control procedure of a minidriver. If the minidriver detects the mouse device, it sets the appropriate flags in the MI_Flags field, and then fills the appropriate fields of the structure. This structure is also passed to the VMD_Post_Pointer_Message and VMD_Manipulate_Pointer_Message services.

MI_Flags
Status flags. Can be a combination of these values:
Value Meaning
MIF_Alloc Instance is allocated
MIF_Active Interrupt is active
MIF_Detected Device detected
MIF_BadDevNode Device not detected
MIF_NewConfig No DevNode for device
MIF_BadIO Wrong IO in DevNode
MIF_BadIRQ Wrong IRQ in DevNode
MIF_NoIRQ Do not virtualize IRQ
MIF_BUSMOUSE BUSMOUSE
MIF_INPMOUSE INPORT
MIF_AUXMOUSE AUX (PS/2) mouse
MIF_OTHERMOUSE 3rd party mouse

MI_Disable
Address of a function in the mouse minidriver that VMOUSE calls when the mouse is about to be disabled; for example, when the machine is put into a docking station. Set this field to zero if the minidriver has no disable function.
MI_Initialize
Address of the mouse minidriver's initialization function. The function detects and virtualizes the mouse hardware.

See also VMD_Manipulate_Pointer_Message, VMD_Post_Pointer_Message