syscl / enable-hidpi-osx Goto Github PK
View Code? Open in Web Editor NEWEnable HiDPI on OS X
Enable HiDPI on OS X
27寸2k屏幕设置失败
/Users/aacme/enable-HiDPI.sh: line 193: let: 1280x720: value too great for base (error token is "1280x720")
/Users/aacme/enable-HiDPI.sh: line 194: 1280x720: value too great for base (error token is "1280x720")
机器是 mac mini 2011,2k 显示器,SIP 也关了,我添加了 1920x1080 的分辨率,但是重启后并没有看到 1080 的 HiDPI
运行命令ioreg -lw0 | grep -i "IODisplayEDID"
的结果是
| | | | | "IODisplayEDID" = <00ffffffffffff000469a52701010101171a0104a53c22783a4455a9554d9d260f5054bfef80714f81808100b30081409500a940d1c0565e00a0a0a0295030203500555021000012000000fd00384b1e5318000a202020202020000000fc004d58323741510a202020202020000000ff0047354c4d52533034393339380a01e902031df14a900403011412051f0713230907078301000065030c001000023a801871382d40582c450055502100001e565e00a0a0a029503020350055502100001e011d007251d01e206e28550055502100001ed60980a020e02d10086022005550210808180000000000000000000000000000000000000000000000000000e6>
工具很不错
可是我的显示器,启用之后,屏幕偶尔会闪烁,不是很理想,
没有看到主页有介绍如何恢复,求教
2560x1440分辨率的外接显示器,添加1920x1080,1600x900,1280x720都不生效,已经关闭csrutil
the terminate display
Enter the Resolution you want to enable HiDPI(If you want to stop adding or say you just add enough number of HiDPI resolution you want, enter 0: 1920x1080
Enter the Resolution you want to enable HiDPI(If you want to stop adding or say you just add enough number of HiDPI resolution you want, enter 0: 0
[ ---> ] Backuping origin Display Information...
Password:
2016-09-21 21:55:58.906 defaults[2898:36822]
Domain (/Library/Preferences/com.apple.windowserver) not found.
Defaults have not been changed.
[ OK ] Done, Please Reboot to see the change! Pay attention to use Retina Menu Display to select the HiDPI resolution!.
Domain (/Library/Preferences/com.apple.windowserver) not found.
求指教
你好,这个怎么解决 。我两个机器,hd530成功开启1440X810,Iris hd540不能开启1440x810。
-iMac:~ kevin$ chmod +x /enable-HiDPI.sh kevin$ ~/enable-HiDPI.sh
kevins-iMac:
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 1440x810
/Users/kevin/enable-HiDPI.sh: line 290: /usr/libexec/plistbuddy: No such file or directory
/Users/kevin/enable-HiDPI.sh: line 291: /usr/libexec/plistbuddy: No such file or directory
/Users/kevin/enable-HiDPI.sh: line 293: /usr/libexec/plistbuddy: No such file or directory
/Users/kevin/enable-HiDPI.sh: line 294: /usr/libexec/plistbuddy: No such file or directory
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 0
star@localhost:~$ chmod +x /enable-HiDPI.sh$ ~/enable-HiDPI.sh
star@localhost:
Password:
[ OK ] Remove /Users/star/DisplayVendorID-05e3.
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 1920*1080
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 0
[ ---> ] Backuping origin Display Information...
/Users/star/enable-HiDPI.sh: line 409: [: /Library/Preferences/com.apple.windowserver: binary operator expected
[ OK ] Done, Please Reboot to see the change! Pay attention to use Retina Display Menu(RDM) to select the HiDPI resolution!.
2018款手动添加/DisplayProd也无效了。
I'm using LG 29um58(2560x1080) on my 2011 Mac. when I set the resolution to 2560x1080, the screen is not full. The top and bottom is black. How do I fix this? Is there any chance that my Thunder-Hdmi cable is not official that causes this problem?
黑苹果台式 显卡gt530 用了之后重启到滚动条滚完就自动重启 。办公电脑数据好多怎么办。拔掉显卡就可以进 但是没驱动😭😭😭
用1920*1080字体不虚,但是显示空间就变小了啊。
请问如何解决字体发虚的问题呢?
There is any easy way to uninstall?? Thanks!
系统是10.12,是21:9的 4k显示器,没办法开启3440*1440的分辨率... 另,很好的软件,作者辛苦了!
你好,我按照教程开启了HIDPI,RDM里面有19201080、1280800 HIDPI选项,没有1600900HIDPI。
我按照如下输入的,输入提示非法 我用字母x代替了乘号。
1600x900
1600
900
3200x1800
3200
1800
Hey, bro, thx for the patch. Nice work!
Just one question: Is there any way to drive 1920x1080 HiDPi at 60hz?
Looking forward to your reply. Thx!!
如题,显卡是hd4600
我设置了一下,感觉很多地方都有问题不之后怎么恢复到之前的状态?
具体要删除哪些文件?要从哪里拷贝文件到哪里?
您好,使用之后,重启电脑无法开机,在开机界面那里,进度条走到一半后没反应,我进windows pe把下载的RDM删除了,还有办法可以补救吗?希望您能回复,十分感谢 QQ1060488600
RT
免得 1011被坑。。。
FEEL FREE TO CLOSE THIS
升级到 Mojave 后原先设置的失效了,重新运行脚本设置仍然无效
I haven't looked through the code yet, but it looks like the script relies on a file, PlistBuddy, to read and write to the display plists. This is missing on my particular install of OSX (reinstalled, fairly fresh) and i'm currently running OSX 10.12.4.
I've included the console output from me using this command initially:
Bob:~ ryan$ ~/enable-HiDPI.sh
Multi monitors detected, please choose target monitor:
[ 1 ] 0610::2ea0
[ 2 ] 0dc3::3000
Please choose the desired display for enable Hi-DPI (Exit/1-2) ? 2
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 1600x900
/Users/ryan/enable-HiDPI.sh: line 349: /usr/libexec/plistbuddy: No such file or directory
/Users/ryan/enable-HiDPI.sh: line 350: /usr/libexec/plistbuddy: No such file or directory
/Users/ryan/enable-HiDPI.sh: line 352: /usr/libexec/plistbuddy: No such file or directory
/Users/ryan/enable-HiDPI.sh: line 353: /usr/libexec/plistbuddy: No such file or directory
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 0
[ ---> ] Backuping origin Display Information...
Password:
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0dc3: Operation not permitted
cp: /Users/ryan/DisplayVendorID-0dc3: unable to copy extended attributes to /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0dc3: Operation not permitted
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0dc3/DisplayProductID-030: No such file or directory
[ OK ] Done, Please Reboot to see the change! Pay attention to use Retina Display Menu(RDM) to select the HiDPI resolution!.
Any thoughts?
自己折腾的半天,最终用项目主在某个issue中提供的一个链接plist文件成功搞定。现在把结合 https://www.jianshu.com/p/30e6f84ffce8 , 自己重新整理总结的步骤发一下,希望对有需要的朋友有帮助。
我的机器MacBook Pro (13-inch, Mid 2012),SIP之前已关闭。
sudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool true
( 2个结果的原因是1个是内置显示器,另一个是外接显示器 )
ioreg -l | grep "DisplayVendorID"
ioreg -l | grep "DisplayProductID"
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DisplayProductID</key>
<integer>41156</integer>
<key>DisplayVendorID</key>
<integer>4268</integer>
<key>scale-resolutions</key>
<array>
<data>AAAKAAAABaAAAAABACAAAA==</data>
<data>AAAFAAAAAtAAAAABACAAAA==</data>
<data>AAAPAAAACHAAAAABACAAAA==</data>
<data>AAAHgAAABDgAAAABACAAAA==</data>
<data>AAAMgAAABwgAAAABACAAAA==</data>
<data>AAAGQAAAA4QAAAABACAAAA==</data>
<data>AAAKAgAABaAAAAABACAAAA==</data>
<data>AAAKrAAABgAAAAABACAAAA==</data>
<data>AAAFVgAAAwAAAAABACAAAA==</data>
</array>
</dict>
</plist>
10.12GM版本下开启后重启读完进度条直接重启了。。。
感觉应该是注入的驱动改了?
没开-v....暂时获取不到日志
例如AOC的VendorID是1507,0x05e3(大致,一觉醒来忘记具体值了,现在不在电脑旁。。)
执行完该脚本后重启发现未生效,进入/System/Library/Displays/Contents/Resources/Overrides/下,发现目录命名为DisplayVendorID-05e3。
同时发现了一些系统内置的VendorID小于0x1000的描述目录没有补0。
于是把DisplayVendorID-05e3修改为DisplayVendorID-5e3后重启,发现已生效。
接口 Thunderbolt -> HDMI
用RDM也选择不了1920x1080 HiDPI
这样的搭配失效
在10.12中成功,按照步骤在RDM中出现自己添加的分辨率选项
$ ~/enable-HiDPI.sh
Multi monitors detected, please choose target monitor:
[ 1 ] 0610::29a0
[ 2 ] 410c::e908
记住这里外接显示器是选择2,内部显示器是1。若果是内部的话,原文件中是610,不是0610,只需要去/System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0610/中把你设置好的文件拖到/System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-610/中重启就行,记得备份下源文件,还有我发现,10.12中不需要关闭SIP就能成功。感谢作者
请问我的选择1280x720点了没有反应 只能用1280x800这样屏幕两边就是大黑边了 机器是MacBook Pro (Retina, 13-inch, Late 2013) 外接的2k dell
首先非常感谢作者开源这么好的脚本 谢谢
我是用的是DELL U2717D 2k显示器 屏幕分辨率2560x1440
应用脚本后安装RDM 可以设置1280x800的hidpi 但是无法设置1280x720的hidpi 请问作者什么问题 不好意思 麻烦了
还有一个问题是 可以不使用RDM切换吗 比如脚本脚本输入1280x720的分辨率 重启后就应用1280x720的分辨率 但是好像没有生效
在Vendor只有三個字的時候前面會自動補0而造成plist放到錯誤的vendor而無效
after reboot black screen how to uninstall
你好,添加重启,没有看到添加的分辨率
00ffffffffffff00367f2500000000000413010380261578f2ce50a3574c99260f505400000001010101010101010101010101010101763a8064713811403b7625007cd210000000c4308064713811403b7625007cd210000000000000000000000000000000000000000000000000000000000000000000000000000000003e
enable-HiDPI.sh: line 101: 0x4c2d
2163: syntax error in expression (error token is "2163")
101 在这行 gDisplayVendorID=$((0x$gDisplayVendorID_RAW))
I can’t boot back into the os after installing this. What should I do ? I have access to the terminal from the recovery
For example, 3840 has the hex form of 0x1e00.
But your code has:
gRes_VAL=$(echo "00000$gHeight 00000$gWide 00000001 00200000")
Yet 000001e00 is obviously wrong. So now I understand why your script cannot enable HiDPI. That is to say, for example, when passing 1920x1080, its 2x resoultion, 3840x2160 would have wrong format.
非常感谢这个项目,解决了我的大问题,比那些收费的什么工具好用多了。特别是配合RDM。
只是提示语太坑爹了,用错了好几次才反应过来。
Enter the Resolution you want to enable HiDPI(If you want to stop adding or say you just add enough number of HiDPI resolution you want, enter 0:
改成:
Enter the Resolution you want to enable HiDPI(Like 1600x900, ), enter 0 to quit:
会不会好点?或者加入输入检测和反馈,比如错误提示,修改之后的状态等。
Thanks for your script.
I use a 1080P monitor and DP connection, tried to add 1920x1080, 1600x900, 1400x810, 1280x720.
Then reboot , no new solution in System Preferences or RDM app.
In SwitchResX, it shows the new resolution "Not activated - Invalid?" in custom resolution.
So I guess your script did work, but there must be somewhere wrong to output.
| | | | | "IODisplayEDID" = <00ffffffffffff0010aca3a04c36383218190104a5351e783e7e75a755529c270f5054a54b00714f8180a9c0a940d1c0010101010101023a801871382d40582c45000f282100001e000000ff0034435758373536373238364c0a000000fc0044454c4c205532343134480a20000000fd00384c1e5311000a202020202020012c020319f14c9005040302071601141f12132309070783010000023a801871382d40582c45000f282100001e011d8018711c1620582c25000f282100009e011d007251d01e206e2855000f282100001e8c0ad08a20e02d10103e96000f2821000018000000000000000000000000000000000000000000000000000000000000c1>
I bought a new display and tried your script. The situation is just like what I said on PCBeta. I've removed the EDID of my previous monitor and booted with CsrActiveConfig=0x67 & BooterConfig=0x2a (Set via NVRAM natively, not using Clover for injection). Then I tried to add 1920x1080, 960x540 (half resolution), 3840x2160 (2x resolution), 1600x900 (Maybe this one is preferred...). Then after rebooting I still couldn’t see the new solution in System Preferences or RDM app.
PMheart
EDID report:
Time: 18:16:35
Date: 2016年7月29日
EDID Manager Version: 1.0.0.14
___________________________________________________________________
Block 0 (EDID Base Block), Bytes 0 - 127, 128 BYTES OF EDID CODE:
0 1 2 3 4 5 6 7 8 9
000 | 00 FF FF FF FF FF FF 00 10 AC
010 | 9C A0 4C 55 41 30 2A 17 01 03
020 | 0E 35 1E 78 EA A0 A5 A6 56 52
030 | 9D 27 0F 50 54 A5 4B 00 71 4F
040 | 81 80 A9 C0 D1 C0 01 01 01 01
050 | 01 01 01 01 02 3A 80 18 71 38
060 | 2D 40 58 2C 45 00 0F 29 21 00
070 | 00 1E 00 00 00 FF 00 56 46 38
080 | 58 32 33 41 4A 30 41 55 4C 0A
090 | 00 00 00 FC 00 44 45 4C 4C 20
100 | 50 32 34 31 34 48 0A 20 00 00
110 | 00 FD 00 38 4C 1E 53 11 00 0A
120 | 20 20 20 20 20 20 00 3F
(8-9) ID Manufacture Name : DEL
(10-11) ID Product Code : A09C
(12-15) ID Serial Number : 0AUL
(16) Week of Manufacture : 42
(17) Year of Manufacture : 2013
(18) EDID Version Number : 1
(19) EDID Revision Number: 3
(20) Video Input Definition: Analog
0.700, 0.300 (1.000 V p-p)
Separate Syncs, Composite Syncs, Syncs on Green
(21) Maximum Horizontal Image Size: 53 cm
(22) Maximum Vertical Image Size : 30 cm
(23) Display Gamma : 2.20
(24) Power Management and Supported Feature(s):
Standby, Suspend, Active Off/Very Low Power, RGB Color, Non-sRGB, Preferred Timing Mode
(25-34) Color Characteristics
Red Chromaticity : Rx = 0.650 Ry = 0.338
Green Chromaticity : Gx = 0.320 Gy = 0.609
Blue Chromaticity : Bx = 0.150 By = 0.057
Default White Point: Wx = 0.313 Wy = 0.329
(35) Established Timings I
720 x 400 @ 70Hz (IBM, VGA)
640 x 480 @ 60Hz (IBM, VGA)
640 x 480 @ 75Hz (VESA)
800 x 600 @ 60Hz (VESA)
(36) Established Timings II
800 x 600 @ 75Hz (VESA)
1024 x 768 @ 60Hz (VESA)
1024 x 768 @ 75Hz (VESA)
1280 x 1024 @ 75Hz (VESA)
(37) Manufacturer's Timings (Not Used)
(38-53) Standard Timings
1152x864 @ 75 Hz (4:3 Aspect Ratio)
1280x1024 @ 60 Hz (5:4 Aspect Ratio)
1600x900 @ 60 Hz (16:9 Aspect Ratio)
1920x1080 @ 60 Hz (16:9 Aspect Ratio)
(54-71) Detailed Descriptor #1: Preferred Detailed Timing (1920x1080 @ 60Hz)
Pixel Clock : 148.5 MHz
Horizontal Image Size : 527 mm
Vertical Image Size : 297 mm
Refresh Mode : Non-interlaced
Normal Display, No Stereo
Horizontal:
Active Time : 1920 Pixels
Blanking Time : 280 Pixels
Sync Offset : 88 Pixels
Sync Pulse Width: 44 Pixels
Border : 0 Pixels
Frequency : 67 kHz
Vertical:
Active Time : 1080 Lines
Blanking Time : 45 Lines
Sync Offset : 4 Lines
Sync Pulse Width: 5 Lines
Border : 0 Lines
Digital Separate, Horizontal Polarity (+), Vertical Polarity (+)
Modeline: "1920x1080" 148.500 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync
(72-89) Detailed Descriptor #2: Monitor Serial Number
Monitor Serial Number: VF8X23AJ0AUL
(90-107) Detailed Descriptor #3: Monitor Name
Monitor Name: DELL P2414H
(108-125) Detailed Descriptor #4: Monitor Range Limits
Horizontal Scan Range: 30kHz-83kHz
Vertical Scan Range : 56Hz-76Hz
Supported Pixel Clock: 170 MHz
Secondary GTF : Not Supported
(126-127) Extension Flag and Checksum
Extension Block(s) : 0
Checksum Value : 63
1920 x 1080显示器,10.12.6,MacBook Pro 2017 13',开启1440x810,1366x768等分辨率的HiDPI,脚本显示成功,重启后RDM里面有选项,但是一旦选择就绿屏然后强制注销到登录界面了,请问可能是什么问题呢?
接口是USB-C -> HDMI
Xiang-mbp:~ Xiang$ ~/enable-HiDPI.sh
Multi monitors detected, please choose target monitor:
[ 1 ] 0610::2aa0
[ 2 ] 2163::0000
Please choose the desired display for enable Hi-DPI (Exit/1-2) ? 1
Password:
[ OK ] Remove /Users/Xiang/DisplayVendorID-0610.
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 1920x1080
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 0
[ ---> ] Backuping origin Display Information...
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0610: Operation not permitted
cp: /Users/Xiang/DisplayVendorID-0610: unable to copy extended attributes to /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0610: Operation not permitted
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-0610/DisplayProductID-a02a: No such file or directory
[ OK ] Done, Please Reboot to see the change! Pay attention to use Retina Display Menu(RDM) to select the HiDPI resolution!.
Xiang-mbp:~ Xiang$
Hi,最新的系统 10.12中,已经关闭sip
2个问题。外接显示器是Dell p2416d, 笔记本是macbook retina 15.
RDM 本身是有1280x720,但是选择无效,尝试添加1281x720,无法成功,添加信息如下:重启后没有1281x720的选项
[ OK ] Remove /Users/mosquito/DisplayVendorID-0610.
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 1281x720
Enter the Resolution you want to enable HiDPI(e.g. 1600x900, 1440x910, ...), enter 0 to quit: 0
[ ---> ] Backuping origin Display Information...
[ OK ] Done, Please Reboot to see the change! Pay attention to use Retina Display Menu(RDM) to select the HiDPI resolution!.
能麻烦您看一下么。谢谢
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-05e3: Operation not permitted
cp: /Users/liuxu/DisplayVendorID-05e3: unable to copy extended attributes to /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-05e3: Operation not permitted
cp: /System/Library/Displays/Contents/Resources/Overrides/DisplayVendorID-05e3/DisplayProductID-2281: No such file or directory
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.