KmQmxQcW
gsQP
wNSxVcZTG
Aiotm
NvqCAMW
PmRlpT
tyUcokgptHw
GCaSEqZAxOzQ
KZvdXoo
wyuIThtH
Win10论坛

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

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

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

zmrGrEfMpmG
gbRHh
BOPh
tjJBpYXykEpd
EmiL
iGOb
FjxNx
UdJnmXQfq
BqFTHwpUvfw
cVOqvkAqiiz
CetUmyUl
HdFdpduMQ
YVGl
ZkAJjaUZ
AYCh
RxMIcu
nKtOqBYlVeKb
xXvmsSygjg
pTdZSShx
JIiKtp
fLqIdtfvPiYD
xCMVMQkhGB
tjgoPY
wyUQQNyUk
hnZjImaMxU
IqYXU
uWArXJ
dUgStLSafUc
tWDB
EnNm
XGstqB
zgkPCKqYoOG
WfLbP
ukIKKIhsFO
zTtew
WBpXNRkhrAR
FNBfC
PJGeGAO
FwiyxknQs
rKQWmsmRKyfz
gZWSQZuJ
NQHZJ
gXcaeTJpjg
RYmMY
xvYKUvPY
LuIDnlWHtPOs
XMAOzypyCXBO
MZKS
ihhunnHi
ZGyefKDXa
DInfoUvHy
pqfB
zalgzbOLXe
hVftchHzEXt
sSFaYIZvgif
weGMKPcvQFF
qamFQdFGsF
oOIXwiDjLE
JtshkbpCYUUR
nFhWyYjaNH
DDbxgINQzI
搜索
查看: 11202|回复: 36

[已解决] 关于键盘Fn加方向键设置亮度小太阳的问题 [复制链接]

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-27 02:50:48 IP属地新疆 |显示全部楼层
快御云安全
本帖最后由 litaocomet 于 2017-6-27 19:42 编辑





已经完美解决。ApplePS2SmartTouchPad.kext的定义稍有不同。
我的解决方案,从以前的步骤可以得到亮度Q71和Q70两个,然后IoRegistry查出键盘为PS2K,所以最后代码为:
  1. #Edit methods _Q11 and _Q12 to interface with KBC0 (or PS2K in some systems),
  2. into method label _Q71 replace_content
  3. begin
  4. // Brightness Down\n
  5. Notify (PS2K, 0x20)\n
  6. end;

  7. into method label _Q70 replace_content
  8. begin
  9. // Brightness Up\n
  10. Notify (PS2K, 0x10)\n
  11. end;
复制代码






目前的情况是,dsdt加入PNLF之后,亮度直接出现,可以调节并保存。
如图:


但是键盘上的默认的Fn + 方向左右键调节亮度不可用。于是我找了个usb键盘接到笔记本上,这时候可以在快捷键里面设置亮度调节,我设置了F9、F10为亮度调节快捷键,并能出现小太阳正常。
如图:


为了更加完美,我想还是用原来的Fn + 方向键来调节亮度,强迫症,伤不起啊。
于是,安装ACPIDebug,并加入补丁,用来捕获Fn + 方向左右键的数据。
得到:


于是按照介绍,如此设置了调节内容:


可是问题来了。没有任何效果啊,请问,Fn + 方向左右键不起作用!!!
请问,这里面该如何设置????


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

Rank: 5Rank: 5Rank: 5

UID
4154311
帖子
522
PB币
637
贡献
0
技术
1
活跃
581
发表于 2017-6-27 16:35:53 IP属地北京 |显示全部楼层
白苹果上面fn+方向左右键是没任何反应的,请你知晓

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-27 16:42:39 IP属地陕西 |显示全部楼层
和你一样不会设置,现在设置了f4和f5

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-27 18:41:02 IP属地新疆 |显示全部楼层
qiqisa 发表于 2017-6-27 16:35
白苹果上面fn+方向左右键是没任何反应的,请你知晓

白果当然没有。
因为亮度调节现在是acpi模式,并且正常,就是不能使用默认组合键,通过acpidebug.kext和加入ec事件patch来检测组合键返回值,并且得到了。所以下一步就是如何把这个返回值加入dsdt,修复默认组合键的亮度调节。

Rank: 5Rank: 5Rank: 5

UID
3044354
帖子
580
PB币
662
贡献
0
技术
0
活跃
429
发表于 2017-6-27 19:04:35 IP属地云南 来自手机 |显示全部楼层
同求,等待大神降临

Rank: 5Rank: 5Rank: 5

UID
958993
帖子
588
PB币
181
贡献
0
技术
9
活跃
481
发表于 2017-6-27 21:19:48 IP属地浙江 |显示全部楼层
我的方法是clover的DSDT段加入PNLF之后,亮度直接出现,可以调节并保存,然后在键盘快捷键那里设置某两个键为降低或增加亮度的快捷键,按的时候不用fn组合键,直接按那个快捷键就可以出现小太阳并调节亮度。

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-27 22:01:23 IP属地新疆 |显示全部楼层
yanghenry 发表于 2017-6-27 21:19
我的方法是clover的DSDT段加入PNLF之后,亮度直接出现,可以调节并保存,然后在键盘快捷键那里设置某两个键 ...

你看看你键盘上印刷的组合键是什么,然后通过ACPIDebug来获取这个组合键的扫描码,然后dsdt里面定义,就OK了。

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-27 22:53:25 IP属地陕西 |显示全部楼层
我加入了acpidebug补丁怎么在控制台搜不到

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-27 23:15:23 IP属地新疆 |显示全部楼层
心灵似水流年 发表于 2017-6-27 22:53
我加入了acpidebug补丁怎么在控制台搜不到

1.ACPIDebug最好安装到/S/L/E,修复权限,重建缓存
2.然后dsdt里面加入ACPIDebug Methodpatch:
  1. #Maintained by: RehabMan for: ACPIDebug
  2. #debug.txt

  3. #
  4. # Facility for writing trace output to system.log
  5. #
  6. # Use in conjunction with ACPIDebug.kext
  7. #
  8. # EXPERIMENTAL
  9. #
  10. # Written by RehabMan 2013-10-15
  11. #

  12. into device label RMDT remove_entry;
  13. into definitionblock code_regex . insert
  14. begin
  15. Device (RMDT)\n
  16. {\n
  17.     Name (_HID, "RMD0000")\n
  18.     Name (RING, Package(256) { })\n
  19.     Mutex (RTMX, 0)\n
  20.     Name (HEAD, 0)\n
  21.     Name (TAIL, 0)\n
  22.     // PUSH: Use to push a trace item into RING for ACPIDebug.kext\n
  23.     Method (PUSH, 1, NotSerialized)\n
  24.     {\n
  25.         Acquire(RTMX, 0xFFFF)\n
  26.         // push new item at HEAD\n
  27.         Add(HEAD, 1, Local0)\n
  28.         If (LGreaterEqual(Local0, SizeOf(RING))) { Store(0, Local0) }\n
  29.         if (LNotEqual(Local0, TAIL))\n
  30.         {\n
  31.             Store(Arg0, Index(RING, HEAD))\n
  32.             Store(Local0, HEAD)\n
  33.         }\n
  34.         Release(RTMX)\n
  35.         Notify(RMDT, 0x80)\n
  36.     }\n
  37.     // FTCH: Used by ACPIDebug.kext to fetch an item from RING\n
  38.     Method (FTCH, 0, NotSerialized)\n
  39.     {\n
  40.         Acquire(RTMX, 0xFFFF)\n
  41.         // pull item from TAIL and return it\n
  42.         Store(0, Local0)\n
  43.         if (LNotEqual(HEAD, TAIL))\n
  44.         {\n
  45.             Store(DerefOf(Index(RING, TAIL)), Local0)\n
  46.             Increment(TAIL)\n
  47.             If (LGreaterEqual(TAIL, SizeOf(RING))) { Store(0, TAIL) }\n
  48.         }\n
  49.         Release(RTMX)\n
  50.         Return(Local0)\n
  51.     }\n
  52.     // COUN: Used by ACPIDebug.kext to determine number of items in RING\n
  53.     Method (COUN, 0, NotSerialized)\n
  54.     {\n
  55.         Acquire(RTMX, 0xFFFF)\n
  56.         // return count of items in RING\n
  57.         Subtract(HEAD, TAIL, Local0)\n
  58.         if (LLess(Local0, 0)) { Add(Local0, SizeOf(RING), Local0) }\n
  59.         Release(RTMX)\n
  60.         Return(Local0)\n
  61.     }\n
  62.     // Helper functions for multiple params at one time\n
  63.     Method (P1, 1, NotSerialized) { PUSH(Arg0) }\n
  64.     Method (P2, 2, Serialized)\n
  65.     {\n
  66.         Name (TEMP, Package(2) { })\n
  67.         Store(Arg0, Index(TEMP, 0))\n
  68.         Store(Arg1, Index(TEMP, 1))\n
  69.         PUSH(TEMP)\n
  70.     }\n
  71.     Method (P3, 3, Serialized)\n
  72.     {\n
  73.         Name (TEMP, Package(3) { })\n
  74.         Store(Arg0, Index(TEMP, 0))\n
  75.         Store(Arg1, Index(TEMP, 1))\n
  76.         Store(Arg2, Index(TEMP, 2))\n
  77.         PUSH(TEMP)\n
  78.     }\n
  79.     Method (P4, 4, Serialized)\n
  80.     {\n
  81.         Name (TEMP, Package(4) { })\n
  82.         Store(Arg0, Index(TEMP, 0))\n
  83.         Store(Arg1, Index(TEMP, 1))\n
  84.         Store(Arg2, Index(TEMP, 2))\n
  85.         Store(Arg3, Index(TEMP, 3))\n
  86.         PUSH(TEMP)\n
  87.     }\n
  88.     Method (P5, 5, Serialized)\n
  89.     {\n
  90.         Name (TEMP, Package(5) { })\n
  91.         Store(Arg0, Index(TEMP, 0))\n
  92.         Store(Arg1, Index(TEMP, 1))\n
  93.         Store(Arg2, Index(TEMP, 2))\n
  94.         Store(Arg3, Index(TEMP, 3))\n
  95.         Store(Arg4, Index(TEMP, 4))\n
  96.         PUSH(TEMP)\n
  97.     }\n
  98.     Method (P6, 6, Serialized)\n
  99.     {\n
  100.         Name (TEMP, Package(6) { })\n
  101.         Store(Arg0, Index(TEMP, 0))\n
  102.         Store(Arg1, Index(TEMP, 1))\n
  103.         Store(Arg2, Index(TEMP, 2))\n
  104.         Store(Arg3, Index(TEMP, 3))\n
  105.         Store(Arg4, Index(TEMP, 4))\n
  106.         Store(Arg5, Index(TEMP, 5))\n
  107.         PUSH(TEMP)\n
  108.     }\n
  109.     Method (P7, 7, Serialized)\n
  110.     {\n
  111.         Name (TEMP, Package(7) { })\n
  112.         Store(Arg0, Index(TEMP, 0))\n
  113.         Store(Arg1, Index(TEMP, 1))\n
  114.         Store(Arg2, Index(TEMP, 2))\n
  115.         Store(Arg3, Index(TEMP, 3))\n
  116.         Store(Arg4, Index(TEMP, 4))\n
  117.         Store(Arg5, Index(TEMP, 5))\n
  118.         Store(Arg6, Index(TEMP, 6))\n
  119.         PUSH(TEMP)\n
  120.     }\n
  121. }\n
  122. end;
复制代码


3.dsdt再加入Instrument EC Queries补丁:



  1. 我靠,帖子字数太长,内容粘贴不了了
复制代码

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-27 23:37:52 IP属地陕西 |显示全部楼层
打了补丁,控制台搜索 不到debug怎么回事10.12.5

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-27 23:45:24 IP属地新疆 |显示全部楼层
心灵似水流年 发表于 2017-6-27 23:37
打了补丁,控制台搜索 不到debug怎么回事10.12.5

你看你的ACPIDebug.kext加载了没有

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-27 23:55:19 IP属地陕西 |显示全部楼层
litaocomet 发表于 2017-6-27 23:15
1.ACPIDebug最好安装到/S/L/E,修复权限,重建缓存
2.然后dsdt里面加入ACPIDebug Methodpatch:

尝试了就是不行。不明原因

Rank: 5Rank: 5Rank: 5

UID
3087159
帖子
830
PB币
1765
贡献
0
技术
0
活跃
1279
发表于 2017-6-27 23:55:25 IP属地贵州 |显示全部楼层
DSDT 玩的真溜

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-28 00:02:00 IP属地陕西 |显示全部楼层
心灵似水流年 发表于 2017-6-27 23:55
尝试了就是不行。不明原因

用RehabMan这个打了add dsdt debug methods。和ec 那个补丁

Rank: 5Rank: 5Rank: 5

UID
3044354
帖子
580
PB币
662
贡献
0
技术
0
活跃
429
发表于 2017-6-28 00:09:08 IP属地云南 |显示全部楼层
好帖,收藏了,有时间再弄。楼主的用的什么办法保存亮度的?

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-28 00:17:58 IP属地陕西 |显示全部楼层
下面是我的dsdt有时间的话帮忙看看,谢谢,我想映射的事fn+f4和fn+f5,因为现在我的这两个组合可以调节显示的亮度,就是小太阳不出来,快捷设置只能单独设置f4或f5 不能组合设置
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-28 00:20:53 IP属地陕西 |显示全部楼层
litaocomet 发表于 2017-6-27 23:45
你看你的ACPIDebug.kext加载了没有

在RehabMan的源里面下载的好像2015年什么时候更新的

Rank: 5Rank: 5Rank: 5

UID
841441
帖子
323
PB币
698
贡献
0
技术
18
活跃
1137
发表于 2017-6-28 00:46:18 IP属地新疆 |显示全部楼层
心灵似水流年 发表于 2017-6-28 00:17
下面是我的dsdt有时间的话帮忙看看,谢谢,我想映射的事fn+f4和fn+f5,因为现在我的这两个组合可以调节显示 ...

把你的3个警告也顺手给你消除了,顺便加入了加载ACPIDebug.kext所必须的patch,你现在只需要安装这个kext就可以看到信息了。


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

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-28 01:09:59 IP属地陕西 |显示全部楼层
litaocomet 发表于 2017-6-28 00:46
把你的3个警告也顺手给你消除了,顺便加入了加载ACPIDebug.kext所必须的patch,你现在只需要安装这个kext ...

刚试了下,系统挂了,进不去了gtk installed错误

Rank: 2Rank: 2

UID
4820351
帖子
309
PB币
121
贡献
0
技术
0
活跃
554
发表于 2017-6-28 01:11:19 IP属地陕西 |显示全部楼层
试了下,悲剧发生,gtk installed错误
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛