Win10论坛

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

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

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

搜索
楼主: neroxps

[原创内容] 【分享】我的 Hotpatch 学习笔记     [复制链接]

Rank: 2Rank: 2

UID
4819445
帖子
89
PB币
35
贡献
0
技术
0
活跃
140
发表于 2017-9-15 21:18:29 |显示全部楼层
收藏学习……

Rank: 2Rank: 2

UID
2760726
帖子
128
PB币
6
贡献
0
技术
0
活跃
136
发表于 2017-9-15 23:24:03 |显示全部楼层
neroxps 发表于 2017-9-15 20:42
用最新版的编译器吧。

不好意思又来麻烦了   是这样的maciasl用的1.4最新版我是从RM那下载下来  直接放到桌面上   打开其中的patch文件中的基本每个文件都有这样错误,就好比这样,是不是我操作不对  请指教   或者您说一下具体流程(就好比  1.下载文件---2.放到efi---3........)恕本人愚钝
[img]blob:http://bbs.pcbeta.com/1e45ff0a-8a86-4f17-a574-aa328a1a75f5[/img]


Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-9-16 10:06:42 |显示全部楼层
高一段落 发表于 2017-9-15 23:24
不好意思又来麻烦了   是这样的maciasl用的1.4最新版我是从RM那下载下来  直接放到桌面上   打开其中的pa ...

4.1已经很老了,最新都是6.1

https://bitbucket.org/RehabMan/acpica/downloads/

Rank: 5Rank: 5Rank: 5

UID
3521264
帖子
1118
PB币
35
贡献
0
技术
1
活跃
1128
发表于 2017-9-26 18:08:41 |显示全部楼层
楼主,那我们还要提取本机的dsdt和ssdt吗

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-9-27 08:35:25 |显示全部楼层
天涯阳光123 发表于 2017-9-26 18:08
楼主,那我们还要提取本机的dsdt和ssdt吗

当然要,Hotpatch 是建立在你已经有可用的静态修复 DSDT/SSDT。

Hotpatch 只是一个修复方法,并不能取代静态修复 DSDT/SSDT。

同芯片组主板的朋友可以互通互用而已。

所以 Hotpatch 有点多余。

Rank: 5Rank: 5Rank: 5

UID
3521264
帖子
1118
PB币
35
贡献
0
技术
1
活跃
1128
发表于 2017-9-27 12:58:17 来自手机 |显示全部楼层
neroxps 发表于 2017-9-27 08:35
当然要,Hotpatch 是建立在你已经有可用的静态修复 DSDT/SSDT。

Hotpatch 只是一个修复方法,并不能取 ...

哦,只是不懂怎么用你附件里面的ssdt,要是有详细的教程就好了,这样我们这些小白也学做一下

Rank: 2Rank: 2

UID
941380
帖子
246
PB币
10
贡献
0
技术
0
活跃
785
发表于 2017-9-27 15:59:05 |显示全部楼层
谢谢楼主的分享

Rank: 1

UID
3953956
帖子
20
PB币
88
贡献
0
技术
0
活跃
37
发表于 2017-9-27 16:15:30 |显示全部楼层
太强大了!!!!

Rank: 1

UID
4828446
帖子
91
PB币
102
贡献
0
技术
0
活跃
43
发表于 2017-9-27 17:19:25 |显示全部楼层
neroxps 发表于 2017-2-27 11:58
屏蔽独立显卡

首先复习一下屏蔽独立显卡的方法:

谢谢分享!!!!!

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-9-28 08:31:55 |显示全部楼层
天涯阳光123 发表于 2017-9-27 12:58
哦,只是不懂怎么用你附件里面的ssdt,要是有详细的教程就好了,这样我们这些小白也学做一下

每个人的SSDT都不一样,要按照自己的 SSDT来修改,详细教程其实看RM的帖子就有了。论上的置顶帖也有很多关于修改SSDT的详细教程。

Rank: 2Rank: 2

UID
4818087
帖子
157
PB币
0
贡献
0
技术
0
活跃
154
发表于 2017-10-7 11:21:56 |显示全部楼层
好文章,码了

Rank: 2Rank: 2

UID
4818087
帖子
157
PB币
0
贡献
0
技术
0
活跃
154
发表于 2017-10-7 11:22:27 |显示全部楼层

好文章,码了

Rank: 2Rank: 2

UID
880589
帖子
300
PB币
727
贡献
0
技术
20
活跃
146
发表于 2017-10-12 11:23:21 |显示全部楼层
谢谢分享,过来学习。

Rank: 2Rank: 2

UID
540031
帖子
320
PB币
28
贡献
0
技术
0
活跃
659
发表于 2017-10-21 10:50:31 |显示全部楼层

Rank: 5Rank: 5Rank: 5

UID
4738670
帖子
935
PB币
1499
贡献
0
技术
1
活跃
770
发表于 2017-10-24 16:21:04 |显示全部楼层
hotpatch或者Clover里面的DSDT补丁有没有办法移除一整句语句呢?

假如      
  1. Device (SCK0)
  2.         {
  3.             Name (_HID, "ACPI0004")  // _HID: Hardware ID
  4.             Name (_UID, "CPUSCK0")  // _UID: Unique ID
  5.             Name (SCKN, Zero)
  6.             Name (LSTA, 0xFF)
  7.             Method (_STA, 0, NotSerialized)  // _STA: Status
  8.             {
  9.                 Store ("CPUSCK0", CUU0)
  10.                 Store (PSTA (Zero), Local0)
  11.                 And (Local0, 0x03, Local1)
  12.                 Store (Local1, LSTA)
  13.                 Return (Local0)
  14.             }
复制代码

已知以上代码里面,我需要删除的是Store ("CPUSCK0", CUU0),该语句在HS下是非法的,DSDT中如果存在会导致ACPI报错,那么有没有办法通过hotpatch进行删除呢?或者是替换掉原来存在的_STA方法?
因为该_STA方法在DSDT中有200+处,纯改名应该不靠谱。

所以想试试Hotpatch的方法看看,能不能替换该方法,当然,直接DSDT删除会更简单,但是我主要是想看看Hotpatch的方法。

Rank: 2Rank: 2

UID
4814269
帖子
306
PB币
217
贡献
0
技术
1
活跃
650
发表于 2017-10-26 17:12:21 |显示全部楼层
研究研究

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-10-26 17:43:43 |显示全部楼层
kaeserlin 发表于 2017-10-24 16:21
hotpatch或者Clover里面的DSDT补丁有没有办法移除一整句语句呢?

假如      

直接用 Clover > ACPI > Patched 的功能,搜 Store ("CPUSCK0", CUU0) 这句的编译后代码,用90替换试试?在汇编里面,90是NOP的意思,就是什么都不做。不知道ACPI是不是这样,太久没弄,忘得差不多了。

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-10-26 17:50:30 |显示全部楼层
kaeserlin 发表于 2017-10-24 16:21
hotpatch或者Clover里面的DSDT补丁有没有办法移除一整句语句呢?

假如      

好像直接 0000 就可以,哈哈不是9090

Rank: 5Rank: 5Rank: 5

UID
4738670
帖子
935
PB币
1499
贡献
0
技术
1
活跃
770
发表于 2017-10-26 18:04:38 |显示全部楼层
neroxps 发表于 2017-10-26 17:50
好像直接 0000 就可以,哈哈不是9090

我尝试使用iasl -l *.aml编译出来dsl文件后根据该行得到代码CUU0 = "CPUSCK0",然后再通过echo -n得到相应的代码,进行替换,不过这样貌似是无效的。

Rank: 5Rank: 5Rank: 5

UID
633916
帖子
538
PB币
599
贡献
0
技术
0
活跃
558
发表于 2017-10-27 16:31:15 |显示全部楼层
kaeserlin 发表于 2017-10-26 18:04
我尝试使用iasl -l *.aml编译出来dsl文件后根据该行得到代码CUU0 = "CPUSCK0",然后再通过echo -n得到相应 ...

直接 0000替换不行么?
关闭

站长推荐

已经开启实名认证了哟
这里可以进行实名操作:点我点我点我
回顶部
Copyright (C) 2005-2019 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件