ps2.asl

来自「惠普公司bios完整源代码大机密!」· ASL 代码 · 共 105 行

ASL
105
字号

Device(PS2M) 				//PS2 Mouse Device
{
        Name(_HID,EISAID("PNP0F13"))	// Hardware Device ID
        Method(_STA,0)		 	//Status of the PS2 Mouse device
        {
                     If(Lequal(PS2F,0x00))	//R08	
                {
                        Return(0x0F)
                }
                Else	
                {
                        Return(0x00)
                }
        }				//end _STA
                
        Method(_CRS,0)	
        {				// Current Resource
                Name(BUF1,Buffer()
                {
                        0x22,			//IRQ Descriptor
                        0x0,			//IRQ Mask Lo
                        0x10,			//IRQ Mask Hi IRQ 12
                        0x79,			//end tag
                        0x00,
                })

                Name(BUF2,Buffer()
                {
                        0x47,			// IO port descriptor
                        0x01,			// 16 Bit Decode
                        0x60,			// Range min. base low for Keyboard
                        0x00,			// Range min. base high for Keyboard
                        0x60,			// Range max. base low for Keyboard
                        0x00,			// Range max. base high for Keyboard
                        0x01,			// Allignment
                        0x01,			// No. Contiguous ports

                        0x47,			// IO port descriptor
                        0x01,			// 16 Bit Decode
                        0x64,			// Range min. base low for Keyboard
                        0x00,			// Range min. base high for Keyboard
                        0x64,			// Range max. base low for Keyboard
                        0x00,			// Range max. base high for Keyboard
                        0x01,			// Allignment
                        0x01,			// No. Contiguous ports

                        0x22,			//IRQ Descriptor
                        0x0,			//IRQ Mask Lo
                        0x10,			//IRQ Mask Hi IRQ 12
                        0x79,			//end tag
                        0x00,
                })

                     If(Lequal(KBDI,0x01))
                {
                        Return(BUF2)		// Return Buf2
                       }
                Else 
                {
                        Return(BUF1)		// Return Buf1
                       }
        } 				// end _CRS method
}					// End of PS2M

Device(PS2K) 				// PS2 Keyboard Device
{				
        Name(_HID,EISAID("PNP0303"))	// Hardware Device ID
        Method(_STA,0)	 		//Status of the PS2 Keyboard device
        {
                        Return(0x0F)
        } 				//end _STA

        Name(_CRS,Buffer()
        {
                0x47,			// IO port descriptor
                0x01,			// 16 Bit Decode
                0x60,			// Range min. base low for Keyboard
                0x00,			// Range min. base high for Keyboard
                0x60,			// Range max. base low for Keyboard
                0x00,			// Range max. base high for Keyboard
                0x01,			// Allignment
                0x01,			// No. Contiguous ports

                0x47,			// IO port descriptor
                0x01,			// 16 Bit Decode
                0x64,			// Range min. base low for Keyboard
                0x00,			// Range min. base high for Keyboard
                0x64,			// Range max. base low for Keyboard
                0x00,			// Range max. base high for Keyboard
                0x01,			// Allignment
                0x01,			// No. Contiguous ports

                0x22,			// IRQ rescriptor
                0x02,			// Low part of IRQ mask, IRQ 1
                0x00,			// High part of IRQ mask
                

                0x79,			// End tag
                0x00
        })				// End of _CRS
                        Name(_PRW,Package(){0x06,1})		//OEM01
}					// End of PS2K

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?