Bimodal_Int_Struc

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.

Fields

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.

See Also

VPICD_Install_Handler, VPICD_Remove_Handler