include bimodint.inc Bimodal_Int_Struc STRUC BIS_IRQ_Number dw ? BIS_VM_ID dw 0 BIS_Next dd ? BIS_Reserved1 dd ? BIS_Reserved2 dd ? BIS_Reserved3 dd ? BIS_Reserved4 dd ? BIS_Flags dd 0 BIS_Mode dw 0 BIS_Entry dw ? BIS_Control_Proc dw ? dw ? BIS_User_Mode_API dd ? BIS_Super_Mode_API dd ? BIS_User_Mode_CS dw ? BIS_User_Mode_DS dw ? BIS_Super_Mode_CS dw ? BIS_Super_Mode_DS dw ? BIS_Descriptor_Count dw ? Bimodal_Int_Struc ENDS |
The Bimodal_Int_Struc structure contains information for a bimodal interrupt.
BIS_IRQ_Number
Specifies the IRQ number.
BIS_VM_ID
Specifies the handle identifying the virtual machine; this field is used by the virtual PIC device.
BIS_Next
Points to the next Bimodal_Int_Struc structure in this chain.
BIS_Reserved1
Reserved for IRQ handle; this field is used by the virtual PIC device.
BIS_Reserved2
Reserved for BIS address; this field is used by the virtual PIC device.
BIS_Reserved3
Reserved; do not use.
BIS_Reserved4
Reserved; do not use.
BIS_Flags
Specifies the bimodal interrupt flags. It must be 0.
BIS_Mode
Specifies user or supervisor mode. It is 0 for user mode; 4 for supervisor mode.
BIS_Entry
Specifies the offset to the interrupt service routine for this interrupt.
BIS_Control_Proc
Specifies the offset to the control procedure for this interrupt.
BIS_User_Mode_API
Points to the user-mode API procedure for this interrupt. The procedure must check for, and carry out the following functions:
Function | Description |
BIH_API_Call_Back | Calls specified callback procedure when given virtual machine runs. |
BIH_API_EOI | End interrupt. |
BIH_API_Get_IRR | Retrieve the set state of the physical IRQ. |
BIH_API_Get_ISR | Retrieve service state of the physical IRQ. |
BIH_API_Get_Mask | Retrieve the mask state of the physical IRQ. |
BIH_API_Mask | Mask the physical IRQ. |
BIH_API_Unmask | Unmask the physical IRQ. |
BIS_Super_Mode_API
Points to the supervisor-mode API procedure for this interrupt; this field is set by the virtual PIC device.
BIS_User_Mode_CS
Specifies the selector for the user-mode code segment for the interrupt handler.
BIS_User_Mode_DS
Specifies the selector for the user-mode data segment for the interrupt handler.
BIS_Super_Mode_CS
Specifies the selector for the supervisor-mode code segment for the interrupt handler; this field is set by the virtual PIC device.
BIS_Super_Mode_DS
Specifies the selector for the supervisor-mode data segment for the interrupt handler; this field is set by the virtual PIC device.
BIS_Descriptor_Count
Specifies the number of additional EBIS_Sel_Struc structures immediately following this structure.