NewDwarf well, the reason I thought it was dither=1 is because I read that the default was 0, so my assumption was 0=true and 1=false. And the output did change for me, so maybe I got lucky.

Also, I actually inputted your command into Terminal during recovery, but when I input log show --predicate "processID == 0" | grep Dither, it still loops "Dither is enabled in pipe misc" every time. See picture below:

https://imgur.com/a/qbXM4da

If you have any advice on that I'd appreciate it as well, I'm a bit confused now since my eyestrain has undoubtedly relieved.

    devilgrove Reboot to the normal mode. You have to add the nvram parameter only once. This parameter is passed to the kernel on booting.

    devilgrove Hmm. Interesting…

    Could you share the output of below command, please?

    nvram -p | grep dither

      devilgrove One more advice. Wait when the command

      log show --predicate "processID == 0" | grep Dither

      is finished. More likely, you see the old logs. The last string have to report you about disabled dithering.

        NewDwarf Wow, you're right! It does say disabled at the end. I didn't even realize that I was looking at log history, I thought the command was constantly checking for some reason. Thank you!

        Looks like OSX dithering has finally been solved 🙂

          NewDwarf honestly I wouldn't have been able to find that solution without you assuring that there was a simple solution like that, so thank you. You're also clearly much more knowledgable than I am about OSX disassembly, so I appreciate the troubleshooting as well!

          devilgrove Looks like OSX dithering has finally been solved

          Wow, this is a dream. Nice job! Very nice solution, setting the NVRAM param 🙂. Have folks tried it and saw eye strain improvement!

          Would be interesting to see if a similar solution exists for Apple silicon.

            ryans

            I've gained access to an M1 Air later this evening and have a 2020 Intel i5 MBP arriving Monday. Both were unusable previously so will be interesting to try this out.

            Will report back

            NewDwarf Doesn't work on my MacBook Pro 13 2018 (Intel Iris Plus Graphics 655), banding stays the same before and after the command line, and banding is worse on safe mode

            When entering the command log show --predicate "processID == 0" | grep Dither, it shows :

              0    kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] [Modeset] Dither is disabled with bpc 1

              NewDwarf

              Here's an example of banding/no banding :
              https://imgur.com/IDgqF5m

              If you look closely on the 3 screenshots below you'll see that banding is the same before (1) and after the command line (2), and that banding is worse on safe mode (3). If temporal dithering was disabled by the command line banding should be the same in (2) as it is in (3)

                insta42014 What is the technical background of that banding? How is it related to the temporal dithering?

                Technically, temporal dithering doesn't increase the number of sampling bits. So, dithering is just an illusion in your brain

                I would even say, that disabling of the temporal dithering will NOT remove visible gradients (banding in your term) as the display continues to produce 8-bit colours (regardless of the dithering). Moreover, by disabling the temporal dithering, we get rid of two virtual bits.

                Anyway, it is interesting to know who is the author of the banding theory and how he/she came to this conclusion…

                  NewDwarf I think that we see the true capabilities of the screen when the system is in safe mode and the intel driver is not enabled. When this is the case the banding is horrible, due to the fact that dithering is disabled. In normal mode, without activated dithering algorithm, we should find the same horrible banding as in safe mode, but your solution does not worsen the banding which remains the same as before on normal mode (the gradients are blurry compared to those in safe mode).

                  Using ditherig.exe in Windows to disable temporal dithering on Intel GPU introduce horrible banding (when it works and when the display isn't true 8-bit), showing the true capabilities of the screen.

                  I also think that the MacBook Pro display is not even capable of displaying true 8-bit and relies on temporal dithering to show 8-bit and 10-bit.

                    dev