B1B2和DTGP已经贴上,第一次求助发帖,做的不足之处请诸君多多包涵,黑苹果其他地方都已完美,仅剩电量显示问题,一人无法解决。还请诸位指点一二,不胜感激。
Method (_BIF, 0, NotSerialized)
{
Name (STAT, Package (0x0D)
{
One,
0x1770,
0x1770,
One,
0x2A30,
0x0258,
0xB4,
0x0108,
0x0EC4,
"PABAS0241231",
"41167",
"LiIon",
"COMPAL "
})
Name (SN0, Buffer (0x04)
{
0x31, 0x32, 0x33, 0x34
})
//Store (^^EC0.BAM0, Index (STAT, Zero))
Store (B1B2(^^EC0.SAM0,^^EC0.SAM1), Index (STAT, Zero))
If (ECOK ())
{
//Store (^^EC0.BDN0, Local0)
Store (B1B2(^^EC0.SDN0,^^EC0.SDN1), Local0)
Store (Local0, BMDL)
//If (^^EC0.BAM0)
If (B1B2(^^EC0.SAM0,^^EC0.SAM1))
{
//Store (^^EC0.BDC0, Local3)
Store (B1B2(^^ECO.SDC,^^EC0.SDC1), Local3)
}
Else
{
Store (Multiply (^^EC0.BDC0, 0x0A), Local3)
}
Store (Local3, Index (STAT, One))
Sleep (0x14)
//Store (^^EC0.BDV0, Index (STAT, 0x04))
Store (B1B2(^^EC0.SDV0,^^EC0.SDV1), Index (STAT, 0x04))
Sleep (0x14)
//Store (^^EC0.BFC0, Local2)
Store (B1B2(^^EC0.SFC0,^^EC0.SFC1), Local2)
Sleep (0x14)
//If (^^EC0.BAM0)
If (B1B2(^^EC0.SAM0,^^EC0.SAM1))
{
Store (Local2, Local3)
}
Else
{
Store (Multiply (Local2, 0x0A), Local3)
}
Store (Local3, Index (STAT, 0x02))
Divide (Local2, 0x64, Local0, Local1)
Multiply (Local1, 0x0A, Local1)
Store (Local1, Index (STAT, 0x05))
Divide (Local2, 0x64, Local0, Local1)
Multiply (Local1, 0x03, Local1)
Store (Local1, Index (STAT, 0x06))
//Store (^^EC0.BATN, Index (STAT, 0x09))
Store (B1B2(^^EC0.SATN,^^EC0.SATO), Index (STAT, 0x09))
//Store (^^EC0.BSN0, Local0)
Store (B1B2(^^EC0.SSN0,^^EC0.SSN1), Local0)
Store (Zero, Local1)
While (LLess (Local1, 0x04))
{
ShiftRight (Local0, Subtract (0x0C, Multiply (Local1, 0x04)), Local2)
And (Local2, 0x0F, Local2)
If (LGreater (Local2, 0x09))
{
Add (Local2, 0x37, Local2)
}
Else
{
Add (Local2, 0x30, Local2)
}
Store (Local2, Index (SN0, Local1))
Increment (Local1)
}
Store (SN0, Index (STAT, 0x0A))
//If (LEqual (^^EC0.BTY0, One))
If (LEqual (B1B2(^^EC0.STY0,^^EC0.STY1), One))
{
Store ("LiIon", Local0)
}
Else
{
Store ("NiMh ", Local0)
}
Store (Local0, Index (STAT, 0x0B))
//Store (^^EC0.BMF0, Local0)
Store (B1B2(^^ECO.SMF0,^^EC0.SMF1), Local0)
If (LEqual (Local0, One))
{
Store ("SANYO", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x02))
{
Store ("SONY", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x03))
{
Store ("SDI", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x04))
{
Store ("PANASONIC", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x05))
{
Store ("Samsung", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x06))
{
Store ("Simplo", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x07))
{
Store ("Dynapack", Index (STAT, 0x0C))
}
Else
{
If (LEqual (Local0, 0x08))
{
Store ("LGC", Index (STAT, 0x0C))
}
}
}
}
}
}
}
}
}
多谢回复,是的,如你所说:编译时报错,且无法保存。更可恶的是修改一行,就错误一行,错误率100%。
被修改的代码已经按照教程,用“//”注释掉了。
还请大神指条明路(个人怀疑是不是有什么代码自己没有添上,GTGB和B1B2已经填好)
报错如下:9511, 4065, Object not found or not accessible from scope (^^EC0.BAM1);9511, 4064, Object does not exist (B1B2)