acidanthera / bugtracker

Acidanthera Bugtracker
383 stars 44 forks source link

When using HiDPI, Screen underscaled after sleep #1574

Closed Sher1ocks closed 3 years ago

Sher1ocks commented 3 years ago

My System

Reason

Issue

Difference

Temporarliy fix

Log

lilu log.txt opencore-2021-03-24-152158.txt bootlog.txt

thanks in advance

telepati commented 3 years ago

@Sher1ocks I am not sure this is a bug in WEG or OC but I fixed my Overscan/Underscan problem with this; Just check maybe it will be helped; https://ishan.co/external-monitor-underscan

Note: Read also comments there is an automated script there.

Andrey1970AppleLife commented 3 years ago

AAPL,ig-platform-id has 87C00000

You not truly set a framebuffer, 0x87C00000 it is AAPL,ig-platform-id 0000C087 Your CPU is KBL-R. Why you try to use Amber Lake framebuffer 0x87C00000, instead KBL framebuffer 0x59xxxxxx ?

Andrey1970AppleLife commented 3 years ago

Don't edit my messages!

Sher1ocks commented 3 years ago

Don't edit my messages!

sorry, my mistake

sorry, i copied "ig-platform-id has 87C00000" from log, you are right for 0000C087. actually, both 59160000 and 87c00000 has same problem if use HiDPI mode after wake.

i think weg can fix this issue like forceonline. but not sure.

Sher1ocks commented 3 years ago

@Sher1ocks I am not sure this is a bug in WEG or OC but I fixed my Overscan/Underscan problem with this; Just check maybe it will be helped; https://ishan.co/external-monitor-underscan

Note: Read also comments there is an automated script there.

okay i will try. but my case, my latop internal display underscaled. is it no problem?

telepati commented 3 years ago

@Sher1ocks I am not sure this is a bug in WEG or OC but I fixed my Overscan/Underscan problem with this; Just check maybe it will be helped; https://ishan.co/external-monitor-underscan Note: Read also comments there is an automated script there.

okay i will try. but my case, my latop internal display underscaled. is it no problem?

No problem. I know the people who have Laptop also using this. Besides you can revert easily. Just backup your .plist before the try.

stevezhengshiqi commented 3 years ago

@Sher1ocks It's a common phonomenon for HiDPI on laptop's low resolution monitor. The optimal solution is to enable BIOS 64mb dvmt and delete framebuffer-fbmem and framebuffer-stolenmem. It's not related to WhateverGreen or OpenCore, just a framebuffer restriction on the Apple side.

Sher1ocks commented 3 years ago

@Sher1ocks I am not sure this is a bug in WEG or OC but I fixed my Overscan/Underscan problem with this; Just check maybe it will be helped; https://ishan.co/external-monitor-underscan

Note: Read also comments there is an automated script there.

how can i edit it in big sur?

@Sher1ocks It's a common phonomenon for HiDPI on laptop's low resolution monitor. The optimal solution is to enable BIOS 64mb dvmt and delete framebuffer-fbmem and framebuffer-stolenmem. It's not related to WhateverGreen or OpenCore, just a framebuffer restriction on the Apple side.

my laptop can't change dvmt value in bios. also my laptop has 2k display, but hidpi 1920x1080. yes, OC and WEG no problem. just improve it, because, after wakeup from semi sleep, i can get normal again.

stevezhengshiqi commented 3 years ago

You can change dvmt by checking dvmt offset and editing BIOS firmware. Actually a lot of laptops did that. After unlocking 64dvmt, hidpi is not a problem anymore. With 32 or lower dvmt, small screen with hidpi is a common problem. This problem should be solved by users themselves. Apple expects their devices have 64mb dvmt according to their framebuffer definition.

telepati commented 3 years ago

@Sher1ocks Before thinking about the implementation, just check the file first. Maybe you don't need this. If in the .plist pscn less than or upper 10000 means that's the problem. If already your pscn 10000 that's mean you don't need this.

Sher1ocks commented 3 years ago

You can change dvmt by checking dvmt offset and editing BIOS firmware. Actually a lot of laptops did that. After unlocking 64dvmt, hidpi is not a problem anymore. With 32 or lower dvmt, small screen with hidpi is a common problem. This problem should be solved by users themselves. Apple expects their devices have 64mb dvmt according to their framebuffer definition.

i know but there is no way in myself. in internet, there is way that SPI Programmer CH341a and SOIC8 connector are needed if you are going to mod your BIOS for optimizations and a better and more native macOS experience. but i can't do it.

@Sher1ocks Before thinking about the implementation, just check the file first. Maybe you don't need this. If in the .plist pscn less than or upper 10000 means that's the problem. If already your pscn 10000 that's mean you don't need this.

already 10000?

스크린샷 2021-03-28 오전 1 22 30

more information Resolution: 3360 x 1890 UI Shape: 1680 x 945

Resolution: 2880 x 1620 UI Shape: 1440 x 810

1680 x 945 and 1440 x 810 are no problem after wakeup from sleep. but i want to get more high resolution. seems research

Sher1ocks commented 3 years ago

You can change dvmt by checking dvmt offset and editing BIOS firmware. Actually a lot of laptops did that. After unlocking 64dvmt, hidpi is not a problem anymore. With 32 or lower dvmt, small screen with hidpi is a common problem. This problem should be solved by users themselves. Apple expects their devices have 64mb dvmt according to their framebuffer definition.

long time ago, you wrote this https://github.com/syscl/Enable-HiDPI-OSX/issues/46

" 此问题一般出现在16:9的1080p屏幕上。如果系统版本<=10.13.6,可以参考https://github.com/zysuper/rice-cracker (鸣谢@zysuper),制作一个守护程序,每次唤醒后强制拉伸屏幕来让分辨率正常。

然而在系统版本>=10.14情况下,唤醒后使用上述脚本虽然分辨率正常,但会出现花屏等异常情况。经测试,只能开启1424x802(2848x1604)hidpi,或者更低分辨率hidpi。 "

what is that? 1680 x 945 is good for me, but i want more resolution, i tried 1920x1080. but rare success. seems to find between 1680x945 and 1920x1080

example

스크린샷 2021-03-28 오전 2 10 59

how can you get 1424x802? can you suggest some resolution between 1680x945 and 1920x1080?

EDIT!! zysuper/rice-cracker this script fix for every HiDPI all resolution. can we implement this feature in WEG?

vit9696 commented 3 years ago

zysuper/rice-cracker this script fix for every HiDPI all resolution. can we implement this feature in WEG?

I am afraid this is not for WEG, because it works in userspace and is not easily programmable in kernelspace.

Sher1ocks commented 3 years ago

okay. i resolved problem. thanks zysuper for idea(https://github.com/zysuper/rice-cracker) here is fix file. Enjoy :) now i'm using FHD and more resolution with HiDPI. one-key-hidpi-underscaled-fix.zip