So here are the code lines I'm speaking about:
Store (One, OSVR)
If (CondRefOf (_OSI, Local1))
{
If (_OSI ("Windows 2000"))
{
Store (0x04, OSVR)
}
If (_OSI ("Windows 2001"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001 SP1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001 SP2"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001.1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2001.1 SP1"))
{
Store (Zero, OSVR)
}
If (_OSI ("Windows 2006"))
{
Store (Zero, OSVR)
}
}
Else
{
If (MCTH (_OS, "Microsoft Windows NT"))
{
Store (0x04, OSVR)
}
Else
{
If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
{
Store (0x02, OSVR)
}
If (MCTH (_OS, "Linux"))
{
Store (0x03, OSVR)
}
}
}
Return (OSVR)
}
Method (MCTH, 2, NotSerialized)
{
If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
{
Return (Zero)
}
Add (SizeOf (Arg0), One, Local0)
Name (BUF0, Buffer (Local0) {})
Name (BUF1, Buffer (Local0) {})
Store (Arg0, BUF0)
Store (Arg1, BUF1)
While (Local0)
{
Decrement (Local0)
If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
BUF1, Local0))))
{
Return (Zero)
}
}
Return (One)
}
If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
{
FindSetLeftBit (Local0, Index (PRWP, One))
}
Else
{
FindSetRightBit (Local0, Index (PRWP, One))
}
}
Why not PNP0A03?
If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
{
Return (0x02)
}
Else
{
Return (0x03)
}
}
Why not MATH?
If (LEqual (OSFL (), Zero))
{
If (HPTE)
{
Return (0x0F)
}
}
Else
{
If (HPTE)
{
Return (0x0B)
}
}
Return (Zero)
}
Name (CKFB, Package (0x03)
{
Package (0x0A)
{
0xEF,
0x2F,
0x8F,
0x6A,
0xEF,
0x2F,
0x25,
One,
Zero,
0x8F
},
Package (0x0A)
{
0xEF,
0x2F,
0x8F,
0x68,
0xEF,
0x2F,
0x25,
One,
One,
0x8F
},
Package (0x0A)
{
0xEF,
0x2F,
0x8F,
0x68,
0xEF,
0x2F,
0x1C,
Zero,
One,
0x4F
}
})
Method (FSBB, 1, NotSerialized)
{
Store (DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x07)),
Local0)
If (LLess (Arg0, ^^^ATKD.CFVG ()))
{
VOLS (Local0)
}
RCLK ()
If (LEqual (Arg0, Zero))
{
And (RCKB (Zero), 0x9F, Local1)
WCKB (Zero, Local1)
}
WCLK ()
RCLK ()
WCKB (0x11, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x04
)))
WCKB (0x12, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x05
)))
WCKB (0x0F, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x02
)))
WCKB (0x10, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x03
)))
WCLK ()
Sleep (0x0A)
RCLK ()
WCKB (0x0B, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x09
)))
WCKB (0x0C, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x06
)))
WCKB (0x0D, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), Zero
)))
WCKB (0x0E, DerefOf (Index (DerefOf (Index (CKFB, Arg0)), One
)))
WCLK ()
Sleep (0x0A)
RCLK ()
If (LNotEqual (Arg0, Zero))
{
Or (RCKB (Zero), 0x40, Local1)
WCKB (Zero, Local1)
}
WCLK ()
Sleep (0x0A)
Store (DerefOf (Index (DerefOf (Index (CKFB, Arg0)), 0x07)),
Local0)
If (LGreater (Arg0, ^^^ATKD.CFVG ()))
{
VOLS (Local0)
}
Store (Arg0, FS70)
SNVS (0x2641, Arg0)
}
etc.
There are so many…
I really want to know why you did these changes.