📄 p364fdc.asl
字号:
Device(FDC0)
{
Name(_HID, EISAID("PNP0700")) // PnP Device ID
Method(_STA,0)
{
Store(Zero,LDN_)
If(ACTR)
{
Return(0x0F)
}
Else
{
If (LOr(IOAH,IOAL))
{
Return(0x05)
} // return device present, not active
Else
{
Return(0x00)
}
} // return device not present
} //end _STA method
Method(_DIS,0)
{
Store(Zero, LDN_) //set logical device number for Floppy
Store(Zero, ACTR) //Set Activate Register to zero
SLDM(DMCH, 0x4) //R01
DISD(0x03) //R01
} //end _DIS method
Method(_CRS,0)
{
Name(BUF0,Buffer()
{
0x47, //IO Port Descriptor
0x01, //16 bit decode
0xF2, //IO Port Range Minimum Base Low
0x03, //IO Port Range Minimum Base High
0xF2, //IO Port Range Maximum Base LOW
0x03, //IO Port Range Maximum Base High
0x01, //Base Alignment
0x04, //Length of contiguous IO Ports
0x47, //IO Port Descriptor
0x01, //16 bit decode
0xF7, //IO Port Range Minimum Base Low
0x03, //IO Port Range Minimum Base High
0xF7, //IO Port Range Maximum Base LOW
0x03, //IO Port Range Maximum Base High
0x01, //Base Alignment
0x01, //Length of contiguous IO Ports
0x22, //IRQ Descriptor
0x40, //IRQ Mask Lo=bit 6
0x00, //IRQ Mask High
0x2A, //DMA Descriptor
0x04, //DMA Mask CH2
0x00, //DMA Channel Speed Support
0x79, //end tag
0x00,
})
CreateByteField (BUF0, 0x02, IOLO)
CreateByteField (BUF0, 0x03, IOHI)
CreateByteField (BUF0, 0x04, IORL)
CreateByteField (BUF0, 0x05, IORH)
Return(BUF0)
} // end _CRS method
Name(_PRS,Buffer()
{
0x30,
0x47, //IO Port Descriptor
0x01, //16 bit decode
0xF2, //IO Port Range Minimum Base Low
0x03, //IO Port Range Minimum Base High
0xF2, //IO Port Range Maximum Base LOW
0x03, //IO Port Range Maximum Base High
0x01, //Base Alignment
0x04, //Length of contiguous IO Ports
0x47, //IO Port Descriptor
0x01, //16 bit decode
0xF7, //IO Port Range Minimum Base Low
0x03, //IO Port Range Minimum Base High
0xF7, //IO Port Range Maximum Base LOW
0x03, //IO Port Range Maximum Base High
0x01, //Base Alignment
0x01, //Length of contiguous IO Ports
0x22, //IRQ Descriptor
0x40, //IRQ Mask Lo=bit 6
0x00, //IRQ Mask High
0x2A, //DMA Descriptor
0x04, //DMA Mask CH2
0x00, //DMA Channel Speed Support
0x38,
0x79, //end tag
0x00,
}) // end _PRS method
Method(_SRS,1)
{
CreateByteField (Arg0, 0x02, IOLO) //IO Port Low
CreateByteField (Arg0, 0x03, IOHI) //IO Port High
CreateWordField (Arg0, 0x02, IOAD) //R01
CreateWordField (Arg0, 0x19, IRQW) //IRQ low
CreateByteField (Arg0, 0x1C, DMAV) //DMA
Store(Zero, LDN_)
Store(One, ACTR)
SLDM(DMCH, DMCH) //R01
CKIO(IOAD,0x03) //R01
} // end of _SRS method
} // end of FDC0 device
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -