Tccpkvs
GklehJaoOJG
TmhMRcESjNrR
FMbWHpF
uziTEBPncZY
dRFoJJYNsxZ
ygAXKQInbBEy
kQhctRmSsX
FlEzw
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

PTZtTXxXgMkB
WUnU
LMBBagVq
typjVj
hQgEl
clZrooimgF
rTnwgfQpRza
FHqWdUgUmsg
wBTJAC
sxwVOjTLmGoa
favPXUYkucaZ
MUAYNY
WlMYDfPxum
xwMe
ncdqqWse
rPMjdzgKpUo
LyKB
yDyGcTPFB
DGhMMCPB
USZkxNSCHqSp
LaJVujxndGSd
iABFk
DcQeJ
dCezxqH
uHAdmB
iHfmiIvH
RBRSQo
PJNeZLa
HIAiu
Vvfevd
dKndF
zVCztQmat
JWqhERpRLDD
zcfCfzQyURU
rpSThOCimpZN
xCMxw
IpwIHtnpQs
YmPRL
ZqruC
NTkras
pjGxGRQrcyG
gdDvGmgOzXRn
Utjn
znvIbP
NAhbB
DhaAZBY
ZhbJ
ShuzLdIqh
eHNFLQctfAx
wFBrNitOV
UivYNTv
qoUzOVv
xfDwmdbTm
GAqeEipA
uhWhygHGl
qbtKjvbNPHK
EKuQddid
dUpANGR
unukGWw
搜索
查看: 16086|回复: 49

[电池] 黑苹果笔记本电池型号信息修复教程 [复制链接]
跳转到指定楼层
复制 

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
楼主
发表于 2019-1-14 19:27:55 IP属地湖北 |只看该作者 |倒序浏览
快御云安全
本帖最后由 xc233 于 2019-1-14 20:25 编辑

                          

     很多小伙伴发现自己笔记本安装完黑苹果后,关于本机里电池的型号信息是错误的,比如想我这台联想潮5000(下图)。制造商SMP是什么鬼?序列号和设备名称也不对,很显然这不是我们想要的结果。那么有什么方法可以修正这些错误信息呢?或者说想我们想自定义一下这些信息,当然了,解决问题的方法非常简单,我们可以通过修改DSDT或者做成hotpatch来修正信息。本文主要讲解修改DSDT,hotpatch文件我也会在文末贴上,大家可以按照模版自己制作自己的hotpatch文件。

需要准备的东西:

      本机原始的DSDT文件(这里以我的DSDT为例)和 MaciASL(修改DSDT文件必备工具)  下载:

      准备工作完成后,下面就来修改DSDT完成教程。


首先我们查询ACPI参考手册后发现电池的型号信息是由电池Device下的_BIF(Battery Information )方法来控制的,ACPI手册描述如下图:

从图上我们可以得知:
1. _BIF方法的返回值是一个Package,里面包含了电池的信息,长度为0x0D, 即从上往下依次为0x00~0x0C。
2. Package中前面是7个Integer类型的值,双字节,大概是电池容量的单位、采用的技术、设计电压、警告容量、等等信息,而最后面的4个String类型的值看起来是我们需要的,他们依次为:
0x09:设备型号
0x0A:设备序列号
0x0B:电池类型(一般为Li电池)
0x0C:厂商信息
OK,看来我们需要修改的就是后面这四个的值,好,我们打开DSDT搜索下_BIF,发现方法最后返回的是一个PBIF,很显然PBIF是一个Package,那么我们就搜索一下PBIF,发现如图:

最后的四个值果然是一些字符串类型的电池信息,按道理说关于本机里显示的应该和这上面的一样,但是为什么显示的是SMP而不是LENOVO?我们回头再仔细看下_BIF方法,看看它动了什么手脚,如图:

果然,在返回PBIF之前,方法内部修改了PBIF中0x09~0x0C里的值,仔细看代码,好像是经过一些运算之后再把值存入PBIF对应位置里面去,0x00~0x08这些值是变化的,我们不需要理会,而对于基本的型号信息我们希望是固定的、正确的,所以我们现在就着手修改这些代码:删除这些对0x09~0x0C修改的相关代码,手动将信息存储到对应位置里去,如图:(如果你的BIF没有对0x09~0x0C做修改,那么你只需要修改PBIF里的值即可)

很好,我们修改好了对应位置的值,编译一下看有没有错误,发现没有错误,好,保存为aml,扔进ACPI/patched里,重启,再次查看电源信息,如图:

OK,信息显示正确!收工。

注意:1.1. 自己操作本机的DSDT前请备份好自己的DSDT文件!2.2. 0x0B位置的电池类型在Mac下是不显示的,所以可写可不写,不影响。3.  显示的序列号部分是由 0x0C(设备名称)+0x0B(序列号)组成,如果序列号不填写,默认显示为0x0C(设备名称)+Unknown,如图

   关于更多值的修改大家可自行去研究研究,有的小伙伴可能想弄成hotpatch的方式,这里也贴上hotpatch版本,大家可对照着自行编写自己的电池信息hotpatch文件,编写hotpatch的教程论坛也非常多。

   SSDT-BIMY.aml:

   ACPI手册:http://uefi.org/sites/default/files/resources/ACPI_6_2.pdf

附件: 你需要登录才可以下载或查看附件。没有帐号?注册
2

查看全部评分

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
沙发
发表于 2019-1-14 20:18:39 IP属地湖北 |只看该作者
。。。重新传一下图片吧

Rank: 5Rank: 5Rank: 5

UID
265539
帖子
614
PB币
3376
贡献
0
技术
0
活跃
422
板凳
发表于 2019-1-14 20:36:12 IP属地江西 |只看该作者
我的电池型号那些都是对的,但容量也是显示只有3000多,这个好修正吗?

感谢分享,顶了

Rank: 2Rank: 2

UID
2522931
帖子
189
PB币
124
贡献
0
技术
0
活跃
374
4F
发表于 2019-1-14 20:36:13 IP属地广东 |只看该作者
谢谢分享~
头像被屏蔽

UID
4813185
帖子
405
PB币
3
贡献
0
技术
0
活跃
590
5F
发表于 2019-1-14 20:43:01 IP属地广东 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
6F
发表于 2019-1-14 20:44:44 IP属地湖北 |只看该作者
chenpengstar 发表于 2019-1-14 20:36
我的电池型号那些都是对的,但容量也是显示只有3000多,这个好修正吗?

这个貌似是计算得出来的,不太好修正吧。有兴趣你查查ACPI手册研究下

Rank: 9

UID
763723
帖子
2379
PB币
2581
贡献
0
技术
94
活跃
2438

7周年庆典勋章 8周年庆典勋章

7F
发表于 2019-1-14 21:29:02 IP属地贵州 |只看该作者
终于看到你的教学帖了,顶一下再慢慢看,出个USB的DSDT教程吧,正好学习学习,我的黑锅现在不能睡眠了,直接是断电

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
8F
发表于 2019-1-14 21:36:43 IP属地湖北 |只看该作者
hello_ok 发表于 2019-1-14 21:29
终于看到你的教学帖了,顶一下再慢慢看,出个USB的DSDT教程吧,正好学习学习,我的黑锅现在不能睡眠了,直接 ...

USB 的教程用FBpatcher就行。但是我一般用定制端口的usbinjectall.kext。
直接断电什么意思

Rank: 9

UID
763723
帖子
2379
PB币
2581
贡献
0
技术
94
活跃
2438

7周年庆典勋章 8周年庆典勋章

9F
发表于 2019-1-14 21:57:18 IP属地贵州 |只看该作者
楼主,有空时帮我修复下错误吧,有些错误能力不足,改不了,多谢了

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
4170195
帖子
476
PB币
665
贡献
0
技术
0
活跃
1074
10F
发表于 2019-1-14 22:11:21 IP属地河北 |只看该作者
学习了,谢谢楼主分享

Rank: 5Rank: 5Rank: 5

UID
2248403
帖子
647
PB币
761
贡献
0
技术
0
活跃
2210
11F
发表于 2019-1-14 22:38:43 IP属地广东 |只看该作者
感谢楼主分享

Rank: 9

UID
763723
帖子
2379
PB币
2581
贡献
0
技术
94
活跃
2438

7周年庆典勋章 8周年庆典勋章

12F
发表于 2019-1-14 22:42:56 IP属地贵州 |只看该作者
xc233 发表于 2019-1-14 21:36
USB 的教程用FBpatcher就行。但是我一般用定制端口的usbinjectall.kext。
直接断电什么意思

断电就像关机了一样,但是按电源键开机后引导出错,重启会直接进入win,再次重启才会出现clover的界面

Rank: 9

UID
763723
帖子
2379
PB币
2581
贡献
0
技术
94
活跃
2438

7周年庆典勋章 8周年庆典勋章

13F
发表于 2019-1-14 22:45:06 IP属地贵州 |只看该作者
xc233 发表于 2019-1-14 21:36
USB 的教程用FBpatcher就行。但是我一般用定制端口的usbinjectall.kext。
直接断电什么意思

USB按FBpatcher修正过,拔插和使用都正常的,我本本前段时间折腾HDMI音频的问题,现在HDMI输出基本正常,也有声音了,但是睡眠和触摸屏不行了

Rank: 2Rank: 2

UID
3046695
帖子
409
PB币
118
贡献
0
技术
2
活跃
1312
14F
发表于 2019-1-15 00:30:54 IP属地广东 |只看该作者
学习了,感谢分享。

Rank: 5Rank: 5Rank: 5

UID
4839527
帖子
734
PB币
0
贡献
0
技术
0
活跃
1318
15F
发表于 2019-1-15 05:20:48 IP属地广东 |只看该作者
hello_ok 发表于 2019-1-14 21:57
楼主,有空时帮我修复下错误吧,有些错误能力不足,改不了,多谢了

dsdt.dsl已除错
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 5Rank: 5Rank: 5

UID
671555
帖子
900
PB币
1031
贡献
0
技术
0
活跃
2210

7周年庆典勋章

16F
发表于 2019-1-15 09:01:37 IP属地浙江 |只看该作者
学习了,谢谢

好吧,我投降

Rank: 5Rank: 5Rank: 5

UID
178245
帖子
1241
PB币
2441
贡献
0
技术
0
活跃
1562
17F
发表于 2019-1-15 10:20:09 IP属地浙江 |只看该作者
学习学习,看看能不能自己动手把电池改出来

Rank: 2Rank: 2

UID
1460977
帖子
201
PB币
251
贡献
0
技术
10
活跃
447
18F
发表于 2019-1-15 11:43:04 IP属地河北 |只看该作者
这个只能修改型号么?如果没有识别呢?我的笔记本不能充电

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
19F
发表于 2019-1-15 12:51:05 IP属地湖北 |只看该作者
5066764 发表于 2019-1-15 11:43
这个只能修改型号么?如果没有识别呢?我的笔记本不能充电

那就先把电池修复好

Rank: 2Rank: 2

UID
4824605
帖子
391
PB币
614
贡献
0
技术
1
活跃
779
20F
发表于 2019-1-15 12:51:42 IP属地湖北 |只看该作者
wxaqua 发表于 2019-1-15 10:20
学习学习,看看能不能自己动手把电池改出来

加油,你行的
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛