Jump to content
ErmaC

Clover General discussion

19,039 posts in this topic

Recommended Posts

Advertisement

Btw. maybe offtopic, but I never was able to properly use the Intel HD4600 next to a AMD or nvidia gfx, using it as a secondary OpenCL processor: On 10.9 it caused visual graphics glitches in Maps.app, in 10.12+10.13 it works in Maps.app, but final Cut will crash.  Luxmark works.  Maybe this is related to some memory mapping problem, too?

 

Well it's hard to say, it could be, or it could have just been bugs in the driver. Or flawed injection. Or bad configuration. Or a million other things.... But I'd probably put the odds that yes, just destroying reserved regions for the graphics is probably not a good idea and causes problems....

Share this post


Link to post
Share on other sites

Btw. maybe offtopic, but I never was able to properly use the Intel HD4600 next to a AMD or nvidia gfx, using it as a secondary OpenCL processor: On 10.9 it caused visual graphics glitches in Maps.app, in 10.12+10.13 it works in Maps.app, but final Cut will crash.  Luxmark works.  Maybe this is related to some memory mapping problem, too?

 

OMG, this AptioFix V1 makes HD4600 + nvidia work in final cut!

Share this post


Link to post
Share on other sites

 

OMG, this AptioFix V1 makes HD4600 + nvidia work in final cut!

 

Please try r4369 AptioFix2.

I WANT TO DESTROY APTIOFIX1! I NEED YOU TO NOT USE IT!!! TEST APTIOFIX2!!!!!!!!!! OBEY YOUR OVERLORDS!!!!!!!! I have taken too much medicine....

OsxAptioFix2Drv-64.efi

Share this post


Link to post
Share on other sites

@Slice, 

 

Hey, sorry for the premature packaging... lol. But there was a problem with r4368, can you please remove that package and make r4369 newest package?


Lol. Yes, that one works nicely, too!

 

Yes this is what I want to hear. FROM EVERYONE.  :surprised:

 

EDIT: Use AptioFix2 then.

Share this post


Link to post
Share on other sites

@Slice, 

 

Hey, sorry for the premature packaging... lol. But there was a problem with r4368, can you please remove that package and make r4369 newest package?

 

Yes this is what I want to hear. FROM EVERYONE.  :surprised:

 

EDIT: Use AptioFix2 then.

i always use AptioFix2 and no problems..

Share this post


Link to post
Share on other sites

on my system, x99, aptiofix2 would not boot without slide=128, without it, does printf work?

aptiofix 1 is ok.

 

Yes you need to enter a slide value sometimes to get AptioFix2 to work. Maybe it should be modified to determine that on it's own. I want to obsolete AptioFix.... Make AptioFix2 the one method to rule them all! Also rename it.... lol

 

EDIT: Test the newest AptioFix2 and see what the result is. Using a slide is not a big deal, it's done anyway to place the kernel.

 

i always use AptioFix2 and no problems..

 

The newest AptioFix2 from r4369 should be very different than the previous and should give you very close to 100% working system besides a few caveats that still need fixed but I want to get rid of AptioFix and rename AptioFix2 to something more appropriate. There should not be a need for AptioFix anymore as AptioFix2 should be sufficiently modified to work for every system. Or at least I hope.

Also everyone testing this driver, if you have EmuVar driver remove that because you should have working NVRAM.

Share this post


Link to post
Share on other sites
I want to get rid of AptioFix and rename AptioFix2 to something more appropriate. There should not be a need for AptioFix anymore as AptioFix2 should be sufficiently modified to work for every system. Or at least I hope.

 

That may be a good idea. Here I currently have a private copy of AptioFixV2, which I slightly refactored and cleaned from legacy & AptioFixV1 code.

In addition to that, as Fritz mentioned above, we slowly walked through some fixes and additions and discovered potential issues & dead code. 

I am not sure that it will be seriously changed any further (I will probably not do proper hibernation handoff), but if the cleaned code is proven to work with time I will share it.

Share this post


Link to post
Share on other sites

Hm, nvidia + hd4600 works, but in recent Firefox, 1080p60 youtube videos will stop sometimes (not so using nvidia only). Unsure if it is a Firefox issue or some kind of latency / synchronisation issue?  Luxmark showed better results with both enabled (8960 vs. 7275)

Share this post


Link to post
Share on other sites

Yes you need to enter a slide value sometimes to get AptioFix2 to work. Maybe it should be modified to determine that on it's own. I want to obsolete AptioFix.... Make AptioFix2 the one method to rule them all! Also rename it.... lol

 

EDIT: Test the newest AptioFix2 and see what the result is. Using a slide is not a big deal, it's done anyway to place the kernel.

 

where can i get the newest AptioFix2 ? im using r4369, is it the newest ?

how can i figure what slide value is proper for my system? is 128 ok ?

Share this post


Link to post
Share on other sites

Hm, nvidia + hd4600 works, but in recent Firefox, 1080p60 youtube videos will stop sometimes (not so using nvidia only). Unsure if it is a Firefox issue or some kind of latency / synchronisation issue?  Luxmark showed better results with both enabled (8960 vs. 7275)

 

It's hard to say, I think that some code needs refactored or removed from the fix as it no longer is relevant and some decisions made years ago are no longer viable or were never viable, where we decided working was better than not.... I have a feeling that the code DF and I were just talking about plays a big part in intel GPUs problems that seem to appear. Like HD3000 artifacts/sync issues and HD4000+ HDCP issues.

where can i get the newest AptioFix2 ? im using r4369, is it the newest ?

how can i figure what slide value is proper for my system? is 128 ok ?

 

I posted it a few posts back but r4369 is newest. I also gave method for determining slide if needed a few posts ago.

 

Care to share??

 

I posted mostly the same driver a few posts ago. He meant he just cleaned it up, refactored, and removed some stuff not needed, I imagine he will release it when it's ready, like he said.

Share this post


Link to post
Share on other sites

4369 released.

@all, please more comments about changes:

1. Sleep/Wake (mode=0)

2. Hibernation (mode=25)

3. NVRAM without EmuVariableUefi

4. Intel graphics artefacts.

 

Runtime code areas are no longer allowed to be relocated by boot.efi like runtime data areas. Runtime methods for NVRAM variables are shimmed to enable writing into runtime code regions during the methods, then disabled upon return. Native NVRAM should work for everyone now. Sleep/hibernation has been a discussion, unsure, it may be broken, but fixable? That will be a longer term evaluation, but I think we all pretty much agree that it is not correct and will need fixed (there may be an element of luck for success). The Intel graphics problem, not fixed, just discussed the removing of the reserved area for these GPUs and how it's probably a better idea to somehow preserve this region because why would it exist if it wasn't needed?

 

EDIT: Forgot, thanks for the package update.

Share this post


Link to post
Share on other sites

Yes you need to enter a slide value sometimes to get AptioFix2 to work. Maybe it should be modified to determine that on it's own. I want to obsolete AptioFix.... Make AptioFix2 the one method to rule them all! Also rename it.... lol

 

EDIT: Test the newest AptioFix2 and see what the result is. Using a slide is not a big deal, it's done anyway to place the kernel.

 

 

The newest AptioFix2 from r4369 should be very different than the previous and should give you very close to 100% working system besides a few caveats that still need fixed but I want to get rid of AptioFix and rename AptioFix2 to something more appropriate. There should not be a need for AptioFix anymore as AptioFix2 should be sufficiently modified to work for every system. Or at least I hope.

Also everyone testing this driver, if you have EmuVar driver remove that because you should have working NVRAM.

Desktop hack in sig.

I previously used EmuVar (for nvidia card) but with Clover 4369 i removed EmuVar and rebooted without issue.

GTX 960 working as it should.

NVRAM appears functional.

EDIT:

Maybe not

post-1083558-0-08816000-1515309405_thumb.png

Share this post


Link to post
Share on other sites

Desktop hack in sig.

I previously used EmuVar (for nvidia card) but with Clover 4369 i removed EmuVar and rebooted without issue.

GTX 960 working as it should.

NVRAM appears functional.

EDIT:

Maybe not

 

To test whether it is working go into terminal and use the command like

sudo nvram test="value"

Then restart and run

sudo nvram -p

And see if the test variable is there. You can then delete it:

sudo nvram -d test

If the variable is not there you do not have working NVRAM. Would need to get more info then.

Share this post


Link to post
Share on other sites

To test whether it is working go into terminal and use the command like

sudo nvram test="value"
Then restart and run
sudo nvram -p
And see if the test variable is there. You can then delete it:
sudo nvram -d test
If the variable is not there you do not have working NVRAM. Would need to get more info then.

NVRAM is functional. I used the code you provided and after reboot in NVRAM I see

test value

Sent from my SM-G930F using Tapatalk

Share this post


Link to post
Share on other sites

I posted it a few posts back but r4369 is newest. I also gave method for determining slide if needed a few posts ago.

you mean this ?

 

Once you get into the clover GUI, you need to go into the EFI shell and use the memmap command find the available region that has the largest space and calculate the slide value. You do that by taking the address of the region you found, subtract 0x100000 then divide by 0x200000. Now you have the slide value, you must make sure it is good. Do the calculation 0x100000 + (slide * 0x200000). That should give you the same address of the free area, if not add one to the slide or find another region and repeat.

 

EDIT: It's also ok if address calculated with the slide just offsets slightly into the region as long as there is still enough space for the kernel to load, usually around 0x12000 pages is good enough.

 

i don't understand, im not programmer or coder

would you please to help me??

here is my memmap

 

Type       Start            End              # Pages          Attributes
Available  0000000000000000-000000000003EFFF 000000000000003F 000000000000000F
RT_Data    000000000003F000-000000000003FFFF 0000000000000001 800000000000000F
Available  0000000000040000-000000000009FFFF 0000000000000060 000000000000000F
Available  0000000000100000-000000000FFFFFFF 000000000000FF00 000000000000000F
BS_Code    0000000010000000-000000001000AFFF 000000000000000B 000000000000000F
Available  000000001000B000-00000000A562FFFF 0000000000095625 000000000000000F
LoaderCode 00000000A5630000-00000000A57B9FFF 000000000000018A 000000000000000F
LoaderData 00000000A57BA000-00000000A6EA2FFF 00000000000016E9 000000000000000F
BS_Data    00000000A6EA3000-00000000A6F22FFF 0000000000000080 000000000000000F
LoaderData 00000000A6F23000-00000000AD7A5FFF 0000000000006883 000000000000000F
BS_Data    00000000AD7A6000-00000000B97A5FFF 000000000000C000 000000000000000F
Available  00000000B97A6000-00000000B9A0FFFF 000000000000026A 000000000000000F
BS_Code    00000000B9A10000-00000000BA432FFF 0000000000000A23 000000000000000F
Reserved   00000000BA433000-00000000BB196FFF 0000000000000D64 000000000000000F
ACPI_Recl  00000000BB197000-00000000BB1F6FFF 0000000000000060 000000000000000F
ACPI_NVS   00000000BB1F7000-00000000BD3F7FFF 0000000000002201 000000000000000F
RT_Data    00000000BD3F8000-00000000BDC99FFF 00000000000008A2 800000000000000F
RT_Code    00000000BDC9A000-00000000BDD02FFF 0000000000000069 800000000000000F
BS_Data    00000000BDD03000-00000000BDD03FFF 0000000000000001 000000000000000F
RT_Data    00000000BDD04000-00000000BDD89FFF 0000000000000086 800000000000000F
BS_Data    00000000BDD8A000-00000000BDFFFFFF 0000000000000276 000000000000000F
Available  0000000100000000-000000083FFFFFFF 0000000000740000 000000000000000F
Reserved   00000000BE000000-00000000BEFFFFFF 0000000000001000 0000000000000000
MMIO       00000000E0000000-00000000EFFFFFFF 0000000000010000 8000000000000001
MMIO       00000000FED1C000-00000000FED44FFF 0000000000000029 8000000000000001
MMIO       00000000FF000000-00000000FFFFFFFF 0000000000001000 8000000000000001
 
  Reserved  :          7,524 Pages (30,818,304 Bytes)
  LoaderCode:            394 Pages (1,613,824 Bytes)
  LoaderData:         32,620 Pages (133,611,520 Bytes)
  BS_Code   :          2,606 Pages (10,674,176 Bytes)
  BS_Data   :         49,911 Pages (204,435,456 Bytes)
  RT_Code   :            105 Pages (430,080 Bytes)
  RT_Data   :          2,345 Pages (9,605,120 Bytes)
  ACPI_Recl :             96 Pages (393,216 Bytes)
  ACPI_NVS  :          8,705 Pages (35,655,680 Bytes)
  MMIO      :         69,673 Pages (285,380,608 Bytes)
  MMIO_Port :              0 Pages (0 Bytes)
  PalCode   :              0 Pages (0 Bytes)
  Available :      8,280,110 Pages (33,915,330,560 Bytes)
  Persistent:              0 Pages (0 Bytes)
              -------------- 
Total Memory:         32,722 MB (34,311,749,632 Bytes)

 

 

Share this post


Link to post
Share on other sites

NVRAM is functional. I used the code you provided and after reboot in NVRAM I see

test value
Sent from my SM-G930F using Tapatalk

 

 

Awesome.

 

you mean this ?

 

Once you get into the clover GUI, you need to go into the EFI shell and use the memmap command find the available region that has the largest space and calculate the slide value. You do that by taking the address of the region you found, subtract 0x100000 then divide by 0x200000. Now you have the slide value, you must make sure it is good. Do the calculation 0x100000 + (slide * 0x200000). That should give you the same address of the free area, if not add one to the slide or find another region and repeat.

 

EDIT: It's also ok if address calculated with the slide just offsets slightly into the region as long as there is still enough space for the kernel to load, usually around 0x12000 pages is good enough.

 

i don't understand, im not programmer or coder

would you please to help me??

here is my memmap

 

 

Type       Start            End              # Pages          Attributes
Available  0000000000000000-000000000003EFFF 000000000000003F 000000000000000F
RT_Data    000000000003F000-000000000003FFFF 0000000000000001 800000000000000F
Available  0000000000040000-000000000009FFFF 0000000000000060 000000000000000F
Available  0000000000100000-000000000FFFFFFF 000000000000FF00 000000000000000F
BS_Code    0000000010000000-000000001000AFFF 000000000000000B 000000000000000F
Available  000000001000B000-00000000A562FFFF 0000000000095625 000000000000000F
LoaderCode 00000000A5630000-00000000A57B9FFF 000000000000018A 000000000000000F
LoaderData 00000000A57BA000-00000000A6EA2FFF 00000000000016E9 000000000000000F
BS_Data    00000000A6EA3000-00000000A6F22FFF 0000000000000080 000000000000000F
LoaderData 00000000A6F23000-00000000AD7A5FFF 0000000000006883 000000000000000F
BS_Data    00000000AD7A6000-00000000B97A5FFF 000000000000C000 000000000000000F
Available  00000000B97A6000-00000000B9A0FFFF 000000000000026A 000000000000000F
BS_Code    00000000B9A10000-00000000BA432FFF 0000000000000A23 000000000000000F
Reserved   00000000BA433000-00000000BB196FFF 0000000000000D64 000000000000000F
ACPI_Recl  00000000BB197000-00000000BB1F6FFF 0000000000000060 000000000000000F
ACPI_NVS   00000000BB1F7000-00000000BD3F7FFF 0000000000002201 000000000000000F
RT_Data    00000000BD3F8000-00000000BDC99FFF 00000000000008A2 800000000000000F
RT_Code    00000000BDC9A000-00000000BDD02FFF 0000000000000069 800000000000000F
BS_Data    00000000BDD03000-00000000BDD03FFF 0000000000000001 000000000000000F
RT_Data    00000000BDD04000-00000000BDD89FFF 0000000000000086 800000000000000F
BS_Data    00000000BDD8A000-00000000BDFFFFFF 0000000000000276 000000000000000F
Available  0000000100000000-000000083FFFFFFF 0000000000740000 000000000000000F
Reserved   00000000BE000000-00000000BEFFFFFF 0000000000001000 0000000000000000
MMIO       00000000E0000000-00000000EFFFFFFF 0000000000010000 8000000000000001
MMIO       00000000FED1C000-00000000FED44FFF 0000000000000029 8000000000000001
MMIO       00000000FF000000-00000000FFFFFFFF 0000000000001000 8000000000000001
 
  Reserved  :          7,524 Pages (30,818,304 Bytes)
  LoaderCode:            394 Pages (1,613,824 Bytes)
  LoaderData:         32,620 Pages (133,611,520 Bytes)
  BS_Code   :          2,606 Pages (10,674,176 Bytes)
  BS_Data   :         49,911 Pages (204,435,456 Bytes)
  RT_Code   :            105 Pages (430,080 Bytes)
  RT_Data   :          2,345 Pages (9,605,120 Bytes)
  ACPI_Recl :             96 Pages (393,216 Bytes)
  ACPI_NVS  :          8,705 Pages (35,655,680 Bytes)
  MMIO      :         69,673 Pages (285,380,608 Bytes)
  MMIO_Port :              0 Pages (0 Bytes)
  PalCode   :              0 Pages (0 Bytes)
  Available :      8,280,110 Pages (33,915,330,560 Bytes)
  Persistent:              0 Pages (0 Bytes)
              -------------- 
Total Memory:         32,722 MB (34,311,749,632 Bytes)

 

 

Is this the memmap from after you enter clover GUI and then use EFI shell? If so then, you're going to want to select this region because it has the most free pages below 0x100000000:

Available  000000001000B000-00000000A562FFFF 0000000000095625 000000000000000F

So to calculate the slide:

0x1000B000 - 0x100000 = 0xFF0B000
0xFF0B000 / 0x200000 = 0x7F

Now need to verify that will give a valid region:

0x7F * 0x200000 = 0xFE00000
0xFE00000 + 0x100000 = 0xFF00000 

0x7F is not valid slide because the address 0xFF00000 < 0x1000B000. Increase slide by one and recalculate:

0x80 * 0x200000 = 0x10000000
0x10000000 + 0x100000 = 0x10100000

0x80 is valid slide because it falls within the region, 0x10100000 >= 0x1000B000. Now calculate the remaining pages in region:

0x1000B000 + (0x95625 * 0x1000) = 0xA5630000
0xA5630000 - 0x10100000 = 0x95530000
0x95530000 / 0x1000 = 0x95530

The region has 0x95530 pages which is definitely more than 0x12000 pages (about ~300MB and usually the size of the kernelcache is less than that). So your slide is 0x80 or 128. Which you already knew but I guess I just mathematically proved for you. Did you try without setting any slide first? If that doesn't work use slide=128.

 

EDIT: Mixed up some numbers but fixed it.

EDIT2: If you get less than 0x12000 pages left over when you do this calculation then try another region and choose the one that yields the highest available pages.

EDIT3: If after you do this to every available region and none even come close to having 0x12000 pages then you have the fragmentation issue. You will have to fallback to AptioFix for now, until that issue is resolved.

EDIT4: Only increase the slide value once per region just because of alignment, move onto the next region after one increase.

Share this post


Link to post
Share on other sites

 

Awesome.

 

 

Is this the memmap from after you enter clover GUI and then use EFI shell? If so then, you're going to want to select this region because it has the most free pages below 0x100000000:

Available  000000001000B000-00000000A562FFFF 0000000000095625 000000000000000F

So to calculate the slide:

0x1000B000 - 0x100000 = 0xFF0B000
0xFF0B000 / 0x200000 = 0x7F

Now need to verify that will give a valid region:

0x7F * 0x200000 = 0xFE00000
0xFE00000 + 0x100000 = 0xFF00000 

0x7F is not valid slide because the address 0xFF00000 < 0x1000B000. Increase slide by one and recalculate:

0x80 * 0x200000 = 0x10000000
0x10000000 + 0x100000 = 0x10100000

0x80 is valid slide because it falls within the region, 0x10100000 >= 0x1000B000. Now calculate the remaining pages in region:

0x1000B000 + (0x95625 * 0x1000) = 0xA5630000
0xA5630000 - 0x10100000 = 0x95530000
0x95530000 / 0x1000 = 0x95530

The region has 0x95530 pages which is definitely more than 0x12000 pages (about ~300MB and usually the size of the kernelcache is less than that). So your slide is 0x80 or 128. Which you already knew but I guess I just mathematically proved for you. Did you try without setting any slide first? If that doesn't work use slide=128.

 

EDIT: Mixed up some numbers but fixed it.

EDIT2: If you get less than 0x12000 pages left over when you do this calculation then try another region and choose the one that yields the highest available pages.

EDIT3: If after you do this to every available region and none even come close to having 0x12000 pages then you have the fragmentation issue. You will have to fallback to AptioFix for now, until that issue is resolved.

thanks a lot,

i already tried without slide, "does printf work?" hang.

when i use this memmap, in my UEFI driver still aptiofix 1 not v2, it doesnt matter, right?

Share this post


Link to post
Share on other sites

thanks a lot,

i already tried without slide, "does printf work?" hang.

when i use this memmap, in my UEFI driver still aptiofix 1 not v2, it doesnt matter, right?

 

No, you should use AptioFix2 above AptioFix always. If AptioFix2 does not work even with slide value, then fallback to AptioFix. You should be good though with slide=128 with AptioFix2.

 

EDIT: Where is "does printf work??" even from? WTF? That's a weird message. Is that from boot.efi? I don't see where that's in clover....

Share this post


Link to post
Share on other sites

No, you should use AptioFix2 above AptioFix always. If AptioFix2 does not work even with slide value, then fallback to AptioFix. You should be good though with slide=128 with AptioFix2.

i only can boot with slide=128, i cant if slide=80

so, i must/should use aptiofix2 with slide=128 instead of aptiofix without slide arg?

Share this post


Link to post
Share on other sites

i only can boot with slide=128, i cant if slide=80

so, i must/should use aptiofix2 with slide=128 instead of aptiofix without slide arg?

 

No, you misunderstood I wrote 0x80 and 128, those are the same number just in hexadecimal and decimal. And yes you should use AptioFix2. It should probably be made to automatically calculate the slide if one is not given.

Share this post


Link to post
Share on other sites

No, you misunderstood I wrote 0x80 and 128, those are the same number just in hexadecimal and decimal. And yes you should use AptioFix2. It should probably be made to automatically calculate the slide if one is not given.

Please don't kill "random KASLR", thx ;p

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Gorec
      Hi.
      I apologize in advance if I didn't post in the right category and if my title and description aren't specific enough :c
       
      My config in a nutshell:
      CPU: i7 5820k GPU: MSI GTX 1060 3GB RAM: 16 GB MOBO: MSI X99 SLI PLUS I attached RunMe output with all the details of my built.
       
      Some background:
      I have my Hackintosh for about half a year. That time I managed to make it works and fix major issues, but some of them left unresolved since then and I ignored them until now.
      I use my Hackintosh for Adobe projects (PR, AE, PS, IL, AU and a lot more) - most of them connected with video editing of course browsing with Chrome and other small tasks.
       
      Problems:
      Random restarts - this is the biggest one. I'm starting to work on bigger and bigger projects and at this time I think I can't allow this to happen that often. In the past, they happened like once a day or a couple of times a week. However, now it's just frustrating when it happens even 5 or more times a day. I've tried to observe and find out what can be the cause but I haven't managed to find any connections. I thought it happens when Premiere or another app is using GPU, but I haven't seen increased usage when it restarts. I think that it can be connected with GPU, memory or PSU or... meh, anything else. I don't have resources to check if it'll work with other components. There should be some fix for this. I will really appreciate any help with this :c Restart instead of shutdown & sleep doesn't work. I've tried to look through some Google results for this and tried many solutions (as you can see in attached Clover folder), but I think the right one for many of these issues is to make my own DSDT. Glitches, freezes and other things while encoding a video. It happens very often when I try to do this. Maybe it is an issue with GPU or (hopefully) only with GPU drivers which can be fixed with some patch. Today my headphones stopped working. I have a multi-output device configured in the Audio MIDI Setup app which includes my headphones (HyperX Cloud via USB) and Soundflowerbed virtual audio device for capturing system audio. Today while I was trying (like 15 times) to encode a video in Media Encoder in the background and watch video on YouTube I stopped hearing anything from my system. Of course, it restarted a couple of times as always, but even this didn't solve this. If I plug them directly with mini jack (not via USB Soundcard which was in the box and which I always used) in the front IO or the back I only hear some loud noise It takes EX-Fat formatted volumes a few minutes to mount after each restart. I found a workaround to format it with NTFS since I have Tuxera installed and I will reformat these volumes when I will find time for this, but maybe there is some fix for this. GPU is a little bit hot. HW Monitor shows it is only 45-55 degrees, but for my hand is a little bit hot, idk. Also related to GPU - glitch after POST but before entering Clover boot menu. It is a black screen with little white squared glitches for a few seconds. Maybe it indicates the GPU drivers are loading, but maybe it shouldn't be like this. And if I can ask about that - I can't make all applications hide on startup. I, obviously, have "Hide" checkbox checked on every login item in settings, but it doesn't work, none of the apps is hidden in the dock. Is there a way to fix this? Also a small but annoying problem - I can't turn off permanently Mojave update notification (since I tried to install it, and I had to reverse to High Sierra because I had a black screen and I didn't have time for repairing all of them. Tags are not working in Finder - every time I tag a file or folder and make a change in it (for example save a text file) the tag disappears.  
      So, with knowing all of that, is there a way to make a proper DSDT file for my Hackintosh? I tried to look through some guides on how to make it but I think I reached my abilities to understand how Mac OS works and what all of these things are, so I'm asking you guys politely, would someone like to help me? At least with these random restarts? :/
      I really begin to think that I'm a newbie in configuring all of that Clover things - even after what I managed to do with my PC. Help me, pleease... :c
       
      If you have any questions post it below, I will really appreciate any help <3
      Send me MBP-Gorec.home.zip
    • By rtke333
      Acer Aspire V15 V5-591G - Mojave 10.14.4
       
      (Note: mine is 55TU version, but the bootpack will work fine with another versions of 591G, for example: V5-591G-71K2, -764Z, -59PU, etc.)
      Specifications:
      - Motherboard: USOPP_SLS (Skylake-H PCH)
      - BIOS:Insyde Corp. v 1.15
      - CPU:Intel Core i5-6300HQ 2.3 GHz (Skylake)
      - GPU: NVIDIA GeForce GTX 950M 2 GB (Optimus) & Intel HD Graphics 530
      - RAM:SK hynix 4 GB DDR4 (Later I bought + KINGSTON 4 GB) 2133 MHz
      - WiFi + Bluetooth:Qualcomm Atheros QCNFA344A 5 GHz (Later -> Broadcom BRCM94352Z M.2 5 GHz WiFi + 4.0 Bluetooth)
      - Audio:Realtek HD Audio: ALC 255 
      - Ethernet: Realtek RTL8168/8111
      - Card Reader:Realtek USB 2.0 Card Reader (USB2.0-CRW)
      - Webcam:HD Webcam
      - HDD:TOSHIBA MQ01ACF032 320 GB HDD
      - SSD:SPCC M.2 230 GB SSD
      - Display:1366x768 (15.6", Matte)
      - Battery: 6 cell 56Wh / 5040mAh
      - Connectors: 
      1x SD Card Reader 2x USB 3.0 (1x USB Charging), 1x USB 2.0 1x VGA 1x HDMI 1x 3.5mm microphone/audio combined jack connector 1x Ethernet (Rj-45) - Keyboard & Touchpad:Multi-Touch & Multi-gestures ELAN 501 Touchpad, Backlight Keyboard.
      Working:  
      - Wi-Fi (with BCM94352Z)
      - Bluetooth hand-off (With BCM94352Z)
      -Full Graphics enabled on HD 530: ig-platform-id: 0x191b0000 (HD 530 Mobile)
      - Display: if default colour profile is corrupted (blue is not actual blue but purplish) Use "Rec. ITU-R BT. 709-5" Color Profile (System Pref. -> Displays -> Color)
      -HDMI & VGA Outputs: AppleGraphicsDevicePolicy.kext Clover patch
      - Audio (ALC 255):(Internal Speakers, Internal Microphone, Headphone jack with AppleALC, ALCPlugFix -> layout-id=17)
      - Ethernet Realtek 8168/8111: RealtekRTL8111.kext
      - App Store, Messages, FaceTime, Siri, iCloud(native)
      - Integrated webcam(native)
      - 3.0 USB (native)
      - Touchpad and Keyboard(ELAN501): Fn keys are good, the weird thing is the Brightness key. On my keyboard it's Pause Break:Br-up, Fn+F12:Br-dwn-> To fix this try Karabiner (VoodoPS2Controller.kext), - for gestures try SmartTouchpad drivers
      - Battery info:Install ACPIBatteryManager.kext with Kext Utility or other installer.
      - Sleep Mode
      - SSD with TRIM enabled (to enable trim, open Terminal and write "sudo trimforce enable")
      Not working:
      - Original Wi-Fi (Qualcomm Atheros QCNFA344A):  unsupported, you need switch to BCM94352Z or just use a mini usb wifi dongle.
      - NVIDIA GeForce GTX 950M: Optimus not supported.
      - Card Reader: Unsupported -> Can't really fix because I don't have any SD Card at the moment, maybe can be fixed by adding Prod & Ven IDs to AppleStorageDevices.kext, I never used it anyway. name: "USB2.0-CRW" Prod ID: "0x0129" Ven ID: "0x0bda  (Realtek Semiconductor Corp.)"
      For Wi-Fi:
      - 1st method:You can choose an external USB wifi dongle (I used TP-Link Archer T1U (5GHz support), TP-Link has official macOS drivers, you just need to install it
      -2nd and I think the best method:Replace your M.2 Qualcomm Card with a compatible BCM94352Zcard (you will have hand-off Bluetooth too), just install the kexts (enabled with BrcmFirmwareData.kext, BrcmPatchRAM2.kext, FakePCIID.kext, FakePCIID_Broadcom_WiFi.kext, they're all in my attached zip). You could buy this card from ebay, aliexpress, or amazon
       
      Issues:
      - None
      BIOS Settings:
      - BIOS version 1.15 (irrelevant)
      - Secure Boot: Disabled
      - Touchpad: Advanced
      - Boot mode:UEFI
      Getting ready for Installation:
      - Download the install zip (bootpack & postinstall): Click here -> acer_aspire_v591g_installfiles.zip
      Installation:
      - Create an installer with any method you know (- Mac: createinstallmedia - Windows: Transmac, Vmware, Win32diskimager)
      - Copy my Clover folder to the USB's EFI folder
      - Boot with the Installer USB
      - If you stuck in boot, reboot and in the Clover bootloader select "config_debug.cfg" -> you'll have more informations about the freeze
       
      Please open the README.rtf in my install zip for more informations about the USB Installer & Post installation!
      If you have a single RAM and getting panic at boot, then you need to edit the "config.plist" with these (SMBIOS->after "Version 1.0"):
      ->Edit "Frequency" and "Size" to match your RAM values
      <key>Version</key> <string>1.0</string> <key>Memory</key> <dict> <key>Channels</key> <integer>1</integer> <key>SlotCount</key> <integer>1</integer> <key>Modules</key> <array> <dict> <key>Slot</key> <integer>0</integer> <key>Size</key> <integer>8192</integer> <key>Frequency</key> <integer>2133</integer> <key>Type</key> <string>DDR4</string> </dict> </array> </dict> </dict>  
      PowerManagement  fix:
      Set HWPEnable=YES in Clover (already set), CPUFloor to "700", Frequency to "2300" and "3200"(Normal and Turbo, if you have i7-6700HQ version then it should be "2600", "3500") and "FrequencyVectors" from "0x0d000000" to "0x07000000" in "S/L/E/IOPlatformPluginFamily.kext/Contents/PlugIns/X86PlatformPlugin.kext/Contents/Resources/Mac-A5C67F76ED83108C.plist", MSR _xcpm_idle Patch to KernelToPatch in Clover (If you have High Sierra, change "MatchOS" to 10.13):

      <key>KernelToPatch</key> <array> <dict> <key>Comment</key> <string>MSR 0xE2 _xcpm_idle instant reboot(c) Pike R. Alpha</string> <key>Disabled</key> <false/> <key>Find</key> <data> ILniAAAADzA= </data> <key>MatchOS</key> <string>10.14</string> <key>Replace</key> <data> ILniAAAAkJA= </data> </dict> </array> Reboot, and it's 800MHz in idle state, same on Windows.
       

       
      Before updating to a new version of Mojave please update kexts (and clover if necessary) to newer versions to avoid kernel panics.
      Generate a serial number with Clover Configurator.app (open up your config.plist with CC then -> SMBIOS -> Serial Number -> Generate New)
      Mojave & Windows 10 Dual-Boot:
      Dual-boot clean install (on one drive), UEFI Only:
       
       Boot into your Mac installer, Create 2 partitions in GUID table (1 for Win (I used FAT32 but I think it doesn't matter what you choose), 1 for Mac),   Install Mac, boot with your USB, mount your EFI partition (use terminal or an EFI mounter app), create an EFI folder (if there is no folder), copy the CLOVER folder I attached to the EFI folder, restart,  Boot into your Win installer, Format the partition you created for Win, install.   Now, it's automatically booting into Windows. To use Clover open cmd in administrator, type:  bcdedit /set {bootmgr} path \EFI\CLOVER\CLOVERX64.efi       5.  You're done! It will booting into Clover when you start the system, and you can select Win or Mac (or another OS if installed on a 3rd partition).
       
      Dual-boot with Windows installed first (on one drive), UEFI Only:
      If you already have Windows and you don't want to lose all your data there is a hope:
      I created a video from this restore method: [Hackintosh] Dual-Boot High Sierra & Windows - when Windows already installed - no data waste - UEFI
      You need bootable Mac Installer and a full system restore image (link is in my video's description).
      (You may see errors if your EFI partition is not 200 MB)
       Boot into your Windows, resize your partition or create one for Mac.  Boot into your Mac installer and in Disk Utility format the partition you created.  Restore from image: select your full system restore image.  When it's finished restoring you just need to restart, then boot to the system with your usb.  When you successfully booted to Mac desktop, mount your EFI partition (use terminal or an EFI mounter app), open EFI, you will see there is a Microsoft folder already (don't touch that!). Copy my CLOVER folder to the EFI folder then Restart.  Now, it's automatically booting into Windows. To use Clover open cmd in administrator, type:  bcdedit /set {bootmgr} path \EFI\CLOVER\CLOVERX64.efi       7.  You're done! You can select your old Windows and your new macOS!
      (Only tried with Windows 8/8.1/10. I don't know Windows 7,etc.)
       
      IF YOU GETTING ERRORS DURING MAC RESTORE:
      - Make sure you have partitions in GPT
      - Windows using 100 MB EFI and will annoy the Mac restore. Don't worry, just ignore the errors.
       
      IF YOU GETTING ERRORS DURING WINDOWS INSTALLATION (could not be formatted, etc):
      - Make sure you have GPT partitions, and GPT (UEFI) installer, also disconnect all external storage drives (except the installer USB)
       
      IF YOU USED RESTORE METHOD THEN CAN'T MOUNT YOUR EFI PARTITION (No EFI partition found):
      - It's because your EFI is not 200 MB or not an "Apple" original EFI,  but do not worry, try another EFI mounter, or mount from terminal (I used EFI mounter v3: Getting errors, but you can mount and use without problem)
      - You also could "mount" the EFI from Windows:
      1st method: open cmd in administrator mode and type:
      diskpart
      list vol (Now select the "System" volume,(FAT 32) For example I select 4)
      sel vol 4
      list part(Select System type partition, for example 2)
      sel part 2
      assign letter=b(This will "mount" your EFI partition)
      Open Explorer++ or TotalCommander in administrator mode to manage EFI
      remove letter=b (This will "unmount" your EFI)
      2nd method: open cmd in administrator mode and type:
      mountvol b: /s (This will mount your EFI)
      Open Explorer++ or TotalCommander in administrator mode to manage EFI
      mountvol b: /d (This will unmount your EFI)
      Thanks to all OSXLatitude members for helping me out! (Jake Lo, Hervé, Bronxteck, black.dragon74)!
      Notes:
      2019.03.30: Fixed USB 3.0 ports, fixed Bluetooth crashes after sleep -> updated bootpack
      2019.03.28: Updated to 10.14.4. Unexpected crashes while updating to 10.14.4 -> fixed by updating Clover to the latest (v4910) version. Bluetooth crashes appeared -> fixed by downgraded Brcm*.kexts. Updated bootpack.
      2019.02.24: Bluetooth crashes after sleep -> fixed, updated bootpack. 
      2019.02.22: Updated to 10.14.3. Fixed HDMI Audio by installing "FakePCIID_Intel_HDMI_Audio.kext" -> fixed freezing during boot. Fixed brightness levels by installing "AppleBacklightFixup.kext". Also updated bootpack & postinstall zip down in attachments.
      2019.01.21: Removed FakeSMC.kext, SMCHelper-64.efi, replaced by VirtualSMC.kext, VirtualSMC.efi because I got random freezes when booting system (kextd stall[0], (120s): 'AppleACPICPU' -> CPU is at 100%, fans are spinning fast), also updated bootpack in the attachments "acer_aspire_v591g-55tu_clover.zip"-> Freeze continued, brought back FakeSMC, deleted VirtualSMC (caused BT crashes).
      2019.01.18: HDMI Audio is fixed, I didn't do anything HDMI Audio is not fixed, sometimes it worked but most likely not. (no idea why)
      2018.12.09: Updated to 10.14.2 -> did without any complication
      2018.11.28: Fixed combo-jack garbage sound output by installing ALCPlugFix and CodecCommander.kext
      2018.11.01: Updated to 10.14.1 -> HDMI & VGA ports are gone again. -> Fixed by "AppleIntelSKLGraphicsFramebuffer.kext" rollback from 10.14.
      2018.09.28: Updated to Mojave 10.14 -> Fixed HDMI & VGA Outputs by adding "AppleGraphicsDevicePolicy.kext" patches to config.plist, HDMI audio not working
    • By ciriousjoker
      TLDR:
      I'm trying to boot MacOS on a Chromebook without UEFI. I'm stuck at getting the bootloader (Chameleon/Clover) to work.  
      My setup / context:
      I have an Acer Chromebook Spin 13.
      Available ports:
      2 x USB-C 1 x USB-A 3.0 MicroSD Slot No USB A 2.0 (I've read that Clover has problems with USB 3.0) Firmware:
      There's no UEFI firmware available and by default, it doesn't even allow booting anything other than ChromeOS. Thanks to MrChromebox (big shoutouts!), I flashed a custom legacy bios that allows me to boot anything linux related. This bios is flashed into the RW_LEGACY section of the existing bootloader (coreboot afaik) and doesn't have any configuration options. If I have to change a setting, I could try compiling his bios payload myself with the specific setting enabled.  
      What I've tried so far:
      Chameleon attempts:
      Only selected setting was "Install chameleon on the chosen path", rest was unselected.
       
      1 - Install chameleon first without restoring the basesystem:
      Output:
      > boot0: GPT
      > boot0: done
      (hangs; pressing power button once shuts down
      Chameleon installation log is attached as "Chameleon_Installer_Log_BEFORE".
       
      2 - Install Chameleon after restoring the base system:
      Output:
      > boot0: GPT
      > boot0: GPT
      > boot0: doneboot1: /boot       <- Exactly like that, no line break in between
      (hangs; pressing power button once shuts down)
       
      I haven't been able to reproduce #2 after wiping the drive and doing the same thing again. Subsequent attempts have resulted in either #1 of either Chameleon or Clover.
      Chameleon installation log is attached as "Chameleon_Installer_Log_AFTER".
       
      Clover attempts:
      I tried multiple settings and configurations, but all of them boiled down to either one of these.
       
      1 - Doesn't do anything, just hangs at "Booting from usb..."
      2 - Boots into the blue/grey mode as shown in the attached images.
      According to MrChromebox, this could be an old Tianocore DUET It doesn't detect anything (cpu frequency, ram, partitions or disks)  
      I've read pretty much every article, github readme and other types of documentation for coreboot, tianocore, clover, chameleon and MrChromebox' rw_legacy payloads and right now, I'm totally clueless as to what to try next...
       
      A few questions that came up:
      Why does chameleon hang? What is it looking for, /boot was clearly written to the disk by the Chameleon installer? What exactly is the blue/grey image? According to MrChromebox, it could be Tianocore DUET Where does it come from? Clover? The mainboard itself? Why does the blue/grey thing not detect my processor frequency or any partitions/drives? Can I use some sort of DUET bootloader to chainload Clover?  
      If you guys could answer any of them or if you have any other guesses or information as to what's happening, I'd be really happy!
      Chameleon_Installer_Log_BEFORE.txt
      Chameleon_Installer_Log_AFTER.txt





    • By outdoormagic
      Short Version:
      I have two drives with the exact same EFI folder (and I can boot into Clover from either one), shouldn't I be able to boot into MacOS from either one?
       
      More Detail:
      I've done a few hacks so far and this never happened. (Gigabyte z370 / 8700k / Vega, Asus z390 / i5-9600k / 1080). Now, I'm setting up a ThinkPad X1 Gen 6. (Yes, I do expect problems on laptops, but that's not the question).
       
      Mojave 10.14.4 now boots from the internal SSD. So far, so good. Here's the problem.
       
      I installed Mojave on a USB drive (for backup / rescue) and copied the entire EFI partition of my boot drive to the EFI partition on the USB drive. So... I should be able to boot from the USB drive, right? Wrong. Ran Clover installer on the USB itself. Same outcome.
       
      With F12, I can boot from the USB into Clover and select the OS on the USB. The boot sequence hangs on End Random Seed, but before the usual '++++++++' line.
      So, boot into Clover on internal boot drive, then select OS on USB. Same thing.
       
      Read the forums, I saw the posts about AptioMemoryFix, so I tried the various other drivers on the USB. No go.
       
      I haven't found the solution yet to the USB boot issue, but what puzzles me is that if I have two drives with the exact same EFI folder (and I can boot into Clover from either one), shouldn't I be able to boot into MacOS from either one?
       
       
×