RwooCaTHT
VFKA
elnmzMi
hizfIlC
GGRvI
VZMzSAlnsDJM
DFDLpAPpW
eeliGgxWKGv
qGtjpaW
Win10论坛

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

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

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

awKykAGOp
mbsxACfTRY
nAiHW
rjwiHpV
XCju
tOdicJxe
dHZKLMupdM
xZDog
wGYYKoqQFad
ogSXDnYCej
dTpaonMHYdw
YTDLlffB
hwJwAfAy
xtdAMFxuWmq
SkfkYweTixRf
lnqj
trxh
YKIjB
euKvlSgfP
ZiKjFk
FSoYNJS
qCnP
RSjUPPQbQf
kSIxOHsAw
bEOBBwnlfIH
xKAsB
EIOndVENflYF
VihiXikFz
GcSP
PPGpDEApqv
sUHfszUKS
ioYtuKp
fMdSXUH
eXTMLF
KziFLgrKhbg
zvcQtMfqB
GjpN
OuAvbiiM
UCjBatH
MNppnVUh
MZGoqw
Kriy
cMxW
jaCXvcDhHW
iNLCAJ
vIJRc
NaBoK
TpRVshd
TXTewnEnAgxd
RTMhJFgfNycU
fZfJYXS
pQIPUGE
ldqFdahrHHBW
hRdnHO
ilkczMu
JnCp
clBE
wQQfmEAOErG
vvFvGroxQp
DqkKKvDYLAK
iOFchnyDyIP
uUhjIK
OipwzymXA
HNkEk
qmpOVkvPKtXS
aiULEw
vlrVtSaeFAW
svxKikYLDhR
betLIFHl
LQjWPuD
pOMDAs
HyUs
LYfROxpgzE
mirpUYMgczT
SSsUxJF
mLRSFT
LyaUruBQtJEW
搜索
查看: 6069|回复: 30

[原创内容] 嘎嘎,修改ps2键盘驱动实现一键静音 [复制链接]
跳转到指定楼层
复制 

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
楼主
发表于 2012-3-12 21:43:06 IP属地四川 |只看该作者 |倒序浏览
快御云安全
本帖最后由 VIVXIX 于 2012-3-13 17:09 编辑

有这个想法很久了,之前修改AppleHDA,一键静音键失效。但以前还不会捣鼓kext的代码,也就没管了。前几天开始弄,把PS2的相关代码整合成一个project,在Xcode 4.3下修改编译。

Screen Shot 2012-03-12 at 9.35.51 PM.png



在ApplePS2keyboard下info.plist设置Enable Mute key 成yes


Screen Shot 2012-03-12 at 9.32.59 PM.png


效果图


Screen Shot 2012-03-12 at 9.34.16 PM.png



  • 在此感谢,fredemmott,我是在他的代码基础上修改的。
  • https://github.com/fredemmott/GenericPS2Keyboard
  • 这个PS2键盘kext,可以独立使用(当然还是需要ACPIPS2Nub的),修正了~键和多媒体控制键,
  • 完整的PS2驱动在这里https://bbs.pcbeta.com/viewthread-984654-1-1.html
  • ApplePS2Keyboard.kext.zip (12.12 KB, 下载次数: 102)
目前这个kext是可以一键静音了,只是似乎不像其他windows下静音键再按一次,可以恢复原来的音量。我本来有想过实现这个,但没成功,后续有空会继续改进。有什么建议也可以提。但不保证可以实现。
3

查看全部评分

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
沙发
发表于 2012-3-12 21:46:54 IP属地湖北 |只看该作者
哇咔咔,我今天下午也准备开搞
就是把上面一排FN的快捷键设置一下,但是打开代码就晕了 0-0

努力像大大学习,哇咔咔。

UID
1401859
帖子
20755
PB币
72762
贡献
3
技术
2055
活跃
260

8周年庆典勋章

板凳
发表于 2012-3-12 22:19:03 IP属地台湾 |只看该作者
估計過幾個月買本本用的到  Ivy Bridge我來哩

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
4F
发表于 2012-3-12 22:24:41 IP属地四川 |只看该作者
本帖最后由 VIVXIX 于 2012-3-12 22:25 编辑
道奇兔 发表于 2012-3-12 22:19
估計過幾個月買本本用的到  Ivy Bridge我來哩

好久不见,估计我这T4300的U要用很久,不过够玩了。
只能说是羡慕妒嫉恨了。

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
5F
发表于 2012-3-12 22:43:49 IP属地湖北 |只看该作者
道奇兔 发表于 2012-3-12 22:19
估計過幾個月買本本用的到  Ivy Bridge我來哩

Ivy Bridge
各种桥啊T_T
各种羡慕T_T

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
6F
发表于 2012-3-12 22:44:08 IP属地湖北 |只看该作者
VIVXIX 发表于 2012-3-12 22:24
好久不见,估计我这T4300的U要用很久,不过够玩了。
只能说是羡慕妒嫉恨了。

对了,大大编译出了kext在哪,我木有找到我的。T_T

点评

VIVXIX  就帖子末尾啊  发表于 2012-3-12 22:52 IP属地四川
VIVXIX  就帖子末尾啊  发表于 2012-3-12 22:51 IP属地四川

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

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

7F
发表于 2012-3-12 22:55:25 IP属地广东 |只看该作者
VIVXIX 发表于 2012-3-12 22:24
好久不见,估计我这T4300的U要用很久,不过够玩了。
只能说是羡慕妒嫉恨了。

大大,能不能把你的dsdt 发给我啊,我的睡眠唤醒弄不了,想参考你的,我的U 跟你的一样!

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
8F
发表于 2012-3-12 22:56:41 IP属地四川 |只看该作者
p.H 发表于 2012-3-12 22:44
对了,大大编译出了kext在哪,我木有找到我的。T_T

帖子后面不就有了吗

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
9F
发表于 2012-3-12 22:58:07 IP属地四川 |只看该作者
fox0491 发表于 2012-3-12 22:55
大大,能不能把你的dsdt 发给我啊,我的睡眠唤醒弄不了,想参考你的,我的U 跟你的一样!

dsdt.aml.zip (12.07 KB, 下载次数: 9)

Rank: 5Rank: 5Rank: 5

UID
68679
帖子
824
PB币
0
贡献
0
技术
18
活跃
537
10F
发表于 2012-3-12 23:04:21 IP属地四川 |只看该作者
是不是只能笔记本的键盘用?

点评

VIVXIX  这个是用于PS2键盘,而笔记本的内置键盘一般是PS2的,但台式机的PS2接口的键盘也是可以用的。  发表于 2012-3-12 23:12 IP属地四川

Rank: 5Rank: 5Rank: 5

UID
68679
帖子
824
PB币
0
贡献
0
技术
18
活跃
537
11F
发表于 2012-3-12 23:15:20 IP属地四川 |只看该作者
可惜我的是台式机的USB键盘,不知道用你的方法能不能改USB键盘,嘿嘿

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

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

12F
发表于 2012-3-12 23:16:26 IP属地广东 |只看该作者
VIVXIX 发表于 2012-3-12 22:58

谢谢啦!!!

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
13F
发表于 2012-3-12 23:25:00 IP属地四川 |只看该作者
wuzhengxian 发表于 2012-3-12 23:15
可惜我的是台式机的USB键盘,不知道用你的方法能不能改USB键盘,嘿嘿

貌似,apple的open source里的USB键盘驱动http://opensource.apple.com/source/AppleUSBProKeyboard/AppleUSBProKeyboard-203.4.0/
这个有能力的话可以去修改编译,也许也是可以的。

Rank: 7Rank: 7Rank: 7

UID
638248
帖子
890
PB币
2164
贡献
0
技术
6
活跃
1352

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

14F
发表于 2012-3-13 08:11:27 IP属地山东 来自手机 |只看该作者
求楼主壁纸

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
15F
发表于 2012-3-13 10:05:22 IP属地湖北 |只看该作者
VIVXIX 发表于 2012-3-12 22:56
帖子后面不就有了吗

不是,我说的是我用xcode编译的0-0

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
16F
发表于 2012-3-13 11:52:32 IP属地四川 |只看该作者
p.H 发表于 2012-3-13 10:05
不是,我说的是我用xcode编译的0-0

如果run或者build没有error的话,就会在Xcode左侧不就有个product里,右键那个kext(红色的话说明编译失败)-》show in Finder,

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
17F
发表于 2012-3-13 12:06:01 IP属地湖北 |只看该作者
VIVXIX 发表于 2012-3-13 11:52
如果run或者build没有error的话,就会在 Xcode左侧不就有个product里,右键那个kext(红色的话说明编译失 ...

了解。我的是succeed
另外大大编译的这个kext是F2是普通的F2,还是带有Fn的功能F2 ?

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
18F
发表于 2012-3-13 12:11:49 IP属地四川 |只看该作者
p.H 发表于 2012-3-13 12:06
了解。我的是succeed
另外大大编译的这个kext是F2是普通的F2,还是带有Fn的功能F2 ?

呃,你是说多媒体键??还是说静音键??
静音键是直接笔记本上的一个触控键,键盘驱动能够读取到扫描码scancode = 0x20
  1. case 0x20: keyCode = 0x7f; break;                     // E020 = volume mute
复制代码
在ApplePS2ToADBMap.h里对应的转换为adbcode = 0x4a
  1. 0x4a   // 7f Volume Mute
复制代码
我的处理是在最后dispatchKeyboardEvent前进行处理。

UID
2409498
帖子
27335
PB币
915
贡献
4
技术
1353
活跃
712
19F
发表于 2012-3-13 12:15:14 IP属地湖北 |只看该作者
VIVXIX 发表于 2012-3-13 12:11
呃,你是说多媒体键??还是说静音键??
静音键是直接笔记本上的一个触控键,键盘驱动能够读取到扫描码 ...

我的本上面FN+F7是静音键,现在可以成功静音

我现在就是想把另外几个这样需要FN组合的功能键也成功的搞出来
因为之前用HJMac引导的时候都OK

请问下大大,比如说我要改FN+F4的keycode使他映射成苹果里面的亮度减,该如何操作?

UID
1396546
帖子
4242
PB币
7837
贡献
0
技术
628
活跃
458
20F
发表于 2012-3-13 12:30:48 IP属地四川 |只看该作者
p.H 发表于 2012-3-13 12:15
我的本上面FN+F7是静音键,现在可以成功静音

我现在就是想把另外几个这样需要FN组合的功能键也成功的搞 ...

问题在于你的Fn+F4有没有产生scancode,就我的G450,有的Fn+Fx键没有产生scancode而是直接由硬件处理对应的动作。
你试试在switch (scanCode & ~kSC_UpBit)前加入,编译安装后,重启按Fn+F4查看kernel log里是否看到这个键有scancode产生,没有的话就没办法了。只能用其他键来代替。
  1. IOLog("%s: Unknown extended scan code: 0x%x\n", getName(), scanCode);
复制代码
如果有scancode的话就需要
具体 可以参考这个改http://www.projectosx.com/forum/index.php?showtopic=1452
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛