Jump to content

[HOW TO] Fix second stage boot logo and loading bar for some dedicated desktop video cards


arsradu
 Share

391 posts in this topic

Recommended Posts

Short answer is yes on x64 versions of Windows 7 (and even Vista SP1 X64 :)).  With Clover, I have always installed Windows 7 in UEFI mode on a pure GPT drive....

 

attachicon.gifWIN7X64 UEFI mode.png

 

Long answer is a qualified yes (should be OK on PCs) because these operating systems still assume the presence of legacy BIOS INT10 support in the firmware - see UEFI Firmware - TechNet - Microsoft.  Interestingly, it is almost impossible to install Windows 7 in EFI mode on Macs because of its reliance on legacy video BIOS calls but Windows 8 and 10 are OK because they supply fully UEFI compatible GOP video drivers.

 

Awesome reply, as usual. :) Thank you!

 

Thing is...I had Windows 8 installed before. Also had Windows 10 installed for a while, and didn't like it at all. Now, I don't use Windows 7 as often (actually only when there is no way I can do that thing from Mac). So I guess I could install Windows 8 then. What would you recommend? 

 

I'm using Windows 8.1 at work, had Windows 8 before, and I can't say I'm very impressed with it. After all, it's Windows. :)) But some tools are (still not compatible) with Windows 8 or run poorly on Windows 8 (especially the ones requiring drivers to be installed). For example, there is a flash tool for my phone. And in order to install the drivers that come with it, I had to switch to test mode or something, so that it would let me install those drivers.

 

I didn't have this issue with Windows 7. Also, I don't flash my phone every day. So...I don't know. What's your experience with it so far? And also, does it run better in UEFI mode than it does in legacy mode?

7 can boot from GPT, although I think it could be a little tricky getting it to install if you have multiple drives. I have three drives here (1xSSD and 2xHDD with OS X on one of the HDDs) and the 7 installer would get confused by the multiple EFI partitions. I had an old legacy install on my SSD that I eventually converted to UEFI before moving to 10. I did this by backing up the 7 partition to a file, installing 7 in UEFI mode and then overwriting it with my original 7 image. I think I may have had to disconnect the hard disks first so the install would complete successfully.

 

Here's the device properties I'm currently using for the 670. It also has those display-cfg values set as they default to ffffffff otherwise. I don't think they make any difference but I have them in there right now. I'm also injecting my audio as you can see.

 

 

 

<?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>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
	<dict>
		<key>@0,AAPL,boot-display</key>
		<string>0x00000001</string>
		<key>@0,display-cfg</key>
		<string>0x00030103</string>
		<key>@1,display-cfg</key>
		<string>0x0100ffff</string>
	</dict>
	<key>PciRoot(0x0)/Pci(0x1b,0x0)</key>
	<dict>
		<key>PinConfigurations</key>
		<data>
		</data>
		<key>layout-id</key>
		<string>0x00000001</string>
	</dict>
</dict>
</plist>

 

 

Yeah, that's pretty much what I did.

 

Except I didn't add display-cfg for either one of the ports. I didn't know what should I add...if I was supposed to add something.

 

Thanks for the info on Windows 7.

 

And, you know, even Ubuntu does this (to me it was surprising, and not good surprising), if you don't remove the other drives, except for the one you're attempting to install the operating system on.

 

I had Ubuntu + Windows on one HDD (still have), on /sdb. And OS X on /sda (I think Linux users know what I mean)

 

And I reinstalled Ubuntu, without unplugging the other HDD. Guess what happened? It installed GRUB in EFI, on my /sda HDD, although I specifically mentioned NOT to do that. Because...reasons. Didn't they test this with more than one HDD? Who has only one HDD nowadays anyway?

 

It wasn't a big thing to remove it after that. But I'm just saying.

 

With Windows, if you have more than 1 HDD when installing it, it will tell you that you have too many primary partitions. :)))) With a very non comprehensive error. In the old Windows spirit, of course. Which I found to be both insanely stupid and annoying, but also extremely hilarious. Too many primary partitions??? When I'm trying to install Windows on THE SAME partition as before, without adding/removing any other primary partitions in the meantime? I mean, seriously! What the hell did it do? Count all the partitions from all the hard drives? I can't imagine another way.

 

Anyway, yes, when you have multiple Hard drives/SSD, best way is to unplug all the drives you don't need. It's the best way.

Link to comment
Share on other sites

Those display-cfg values for first and second port seem to be generic. They make no difference with the 670 and I've booted it just fine without setting them. The only time I saw them make a difference was with the 210 where removing them cause a brief flicker between stages 1 and 2.

 

I can't think of why you had trouble booting with the stock drivers, it doesn't make much sense.

Link to comment
Share on other sites

@Robert, thank you!

 

You also have both VRAM,totalsize (128 MB) and VRAM,totalMB (4096 MB). And since you see 4096 MB in About this Mac, it clearly ignores VRAM,totalsize.

 

Also, I was just talking about this with a good friend of mine on the forum, and he suggested that VRAM,totalsize might actually be used for iGPUs. So, for dedicated graphics, we don't need it.

 

I haven't tried booting with my internal GPU yet, to confirm this.

 

I did however try VRAM,totalMB with my GTX 650. And everything ok. It shows 2048 MB, as it should.

 

So I'll get to upgrading the tutorial to reflect these changes (switch to VRAM,totalMB and updating the hex values to reflect that).

 

 

Uhm, and Riley, if I'm not mistaken, I think this one goes to you, man. Thank you.

  • Like 1
Link to comment
Share on other sites

Also, I was just talking about this with a good friend of mine on the forum, and he suggested that VRAM,totalsize might actually be used for iGPUs. So, for dedicated graphics, we don't need it.

 

That makes sense. The i7 in my Z68 has integrated graphics (which I'm obviously not using) and VRAM,totalsize appears in the IOReg. The i7 in my X79 doesn't have integrated graphics and there's no VRAM,totalsize in the IOReg.

  • Like 1
Link to comment
Share on other sites

That makes sense. The i7 in my Z68 has integrated graphics (which I'm obviously not using) and VRAM,totalsize appears in the IOReg. The i7 in my X79 doesn't have integrated graphics and there's no VRAM,totalsize in the IOReg.

Wanna hear something funny? I've got an internal GPU, as well. But I have no VRAM,totalsize in IOreg, unless I manually add it. Do I have to boot from that GPU in order to be able to get something in IOreg?

Link to comment
Share on other sites

I don't think so. I've never booted with the internal GPU here. I'll check the laptop later as it uses HD4000 gfx. Either way it seems VRAM,totalMB is the way to go.

It is the way to go up to 16 GB of VRAM on the first post :P

 

Check it out. :)

  • Like 2
Link to comment
Share on other sites

My recommendation would be to only boot OS X! :)

 

All windows installs in a VM environment.

 

I boot win 10 in VMware when I must use it.

 

One more reason to switch to Mac.

 

post-1303722-0-57978000-1445162114_thumb.png

 

Left side - El Capitan = around 40 GB used, with all my programs and tools and stuff installed.

Right side - Windows 7 = around 60 GB used, with none of my programs installed. The mystery of the disappearing storage. I think Microsoft knows everything about it.

 

Sorry about the off-topic. Just wanted to share this with you guys real quick.

Link to comment
Share on other sites

Hello arsradu!

I don t use DSDT or SSDT.

 

device-properties.xml

 

DPH https://www.dropbox.com/s/4us6ddcyb0yfy06/device-properties.hex?dl=0

 

post-404665-0-46760200-1445698708_thumb.png

 

https://www.dropbox.com/s/gw4zly2cfvg04ec/config.plist?dl=0

 

My video card: http://www.evga.com/Products/Product.aspx?pn=02G-P4-3757-KR architecture Maxwell

 

How did these values?

 

<!-- Port: DVI-D -->

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>
 
<!-- Port: VGA -->
<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>
<key>@1,display-cfg</key>
<string>0x00030103</string>
 
<!-- Port: HDMI -->
<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>
 
Thanks
Link to comment
Share on other sites

 

Hello arsradu!

I don t use DSDT or SSDT.

 

attachicon.gifdevice-properties.xml

 

DPH https://www.dropbox.com/s/4us6ddcyb0yfy06/device-properties.hex?dl=0

 

attachicon.gifScreen Shot 2015-10-24 at 12.57.14 PM.png

 

https://www.dropbox.com/s/gw4zly2cfvg04ec/config.plist?dl=0

 

My video card: http://www.evga.com/Products/Product.aspx?pn=02G-P4-3757-KR architecture Maxwell

 

How did these values?

 

<!-- Port: DVI-D -->

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>
 
<!-- Port: VGA -->
<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>
<key>@1,display-cfg</key>
<string>0x00030103</string>
 
<!-- Port: HDMI -->
<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>
 
Thanks

 

 

I don't quite understand the question.

 

Judging by your IOreg, your display is connected to port B@1, which in your case I think it's HDMI. So you need to set boot-display to @1 like so:

 

<!-- Primary display -->
<key>@1,AAPL,boot-display</key>
<string>0x00000001</string>

The comments on top of the code are obviously for my card. If you don't have the same card, your ports are most likely going to be different. I think I'll remove those comments and reupload, just to avoid confusion in the future.

 

@Guys, I've noticed this before: a card with 3 ports like this GTX 750 shows 4 ports in IOreg. Or one with 4 ports shows 5 ports? Why is that? Any idea?

Link to comment
Share on other sites

It has three entrances. DVI, HDMI and DP.

Yes is connected to the HDMI. Okay I'll try that.

 

You should have something like this in your device-properties.xml:

 

<!-- Primary display -->
<key>@1,AAPL,boot-display</key>
<string>0x00000001</string>

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>

<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>

<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>

<key>@3,compatible</key>
<string>NVDA,NVMac</string>
<key>@3,device_type</key>
<string>display</string>
<key>@3,name</key>
<string>NVDA,Display-D</string>

<key>VRAM,totalMB</key>
<string>0x00000800</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>EVGA GeForce GTX 750</string>
<key>rom-revision</key>
<string>80.07.35.00.04</string>
Link to comment
Share on other sites

 

 

You should have something like this in your device-properties.xml:

 

<!-- Primary display -->
<key>@1,AAPL,boot-display</key>
<string>0x00000001</string>

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>

<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>

<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>

<key>@3,compatible</key>
<string>NVDA,NVMac</string>
<key>@3,device_type</key>
<string>display</string>
<key>@3,name</key>
<string>NVDA,Display-D</string>

<key>VRAM,totalMB</key>
<string>0x00000800</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>EVGA GeForce GTX 750</string>
<key>rom-revision</key>
<string>80.07.35.00.04</string>

 

Just centralized.

 

I do the process again several times and check that only
 
<key>@1,AAPL,boot-display</key>

<string>0x00000001</string> 

 
always disappears from device-properties.xml
Link to comment
Share on other sites

 

Just centralized.

 

I do the process again several times and check that only
 
<key>@1,AAPL,boot-display</key>

<string>0x00000001</string>

 
always disappears from device-properties.xml

 

<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key><dict>
<!-- Primary display -->
<key>@1,AAPL,boot-display</key>
<string>0x00000001</string>

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>

<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>

<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>

<key>@3,compatible</key>
<string>NVDA,NVMac</string>
<key>@3,device_type</key>
<string>display</string>
<key>@3,name</key>
<string>NVDA,Display-D</string>

<!-- start: regular values -->
<key>VRAM,totalMB</key>
<string>0x00000800</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>EVGA GeForce GTX 750</string>
<key>rom-revision</key>
<string>80.07.35.00.04</string>
<!-- end: regular values -->
</dict>

If you still have issues please, upload your device-properties.xml and config.plist (without changing the file to .txt).

Link to comment
Share on other sites

<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key><dict>
<!-- Primary display -->
<key>@1,AAPL,boot-display</key>
<string>0x00000001</string>

<key>@0,compatible</key>
<string>NVDA,NVMac</string>
<key>@0,device_type</key>
<string>display</string>
<key>@0,name</key>
<string>NVDA,Display-A</string>

<key>@1,compatible</key>
<string>NVDA,NVMac</string>
<key>@1,device_type</key>
<string>display</string>
<key>@1,name</key>
<string>NVDA,Display-B</string>

<key>@2,compatible</key>
<string>NVDA,NVMac</string>
<key>@2,device_type</key>
<string>display</string>
<key>@2,name</key>
<string>NVDA,Display-C</string>

<key>@3,compatible</key>
<string>NVDA,NVMac</string>
<key>@3,device_type</key>
<string>display</string>
<key>@3,name</key>
<string>NVDA,Display-D</string>

<!-- start: regular values -->
<key>VRAM,totalMB</key>
<string>0x00000800</string>
<key>device_type</key>
<string>NVDA,Parent</string>
<key>model</key>
<string>EVGA GeForce GTX 750</string>
<key>rom-revision</key>
<string>80.07.35.00.04</string>
<!-- end: regular values -->
</dict>

If you still have issues please, upload your device-properties.xml and config.plist (without changing the file to .txt).

 

Thanks arsradu

 

device-properties.xml

config.zip

 

This code does not write in my xml file:

 

<key>@1,AAPL,boot-display</key>

<string>0x00000001</string>

Link to comment
Share on other sites

Thanks arsradu

 

attachicon.gifdevice-properties.xml

attachicon.gifconfig.zip

 

This code does not write in my xml file:

 

<key>@1,AAPL,boot-display</key>

<string>0x00000001</string>

 

You already have it. Look under the keys starting with:

<key>@1....</key>

Anyway, I reattached it, making it a bit clearer now. :)

 

Now you have to convert it back into device-properties.hex, use the hex code in config.plist, and enjoy.

device-properties.xml.zip

Link to comment
Share on other sites

Well, well

With or without nVidia Web Driver - centered

With or without mask Clover DSDT 0 - centered

Maybe for my GTX 750 this method doesn't really work!

 

I don't get it. What exactly are you trying to do? What is the issue you're trying to fix with this tutorial?

Link to comment
Share on other sites

I'm trying fix second stage boot logo and loading bar being displayed on the bottom left corner of the screen.

I don't know if it's right. As it's in the videos is right?

https://www.dropbox.com/s/3qmnyjqmyjgy8tq/Boot_Movie.mp4?dl=0

https://www.dropbox.com/s/kscfsrpvckzcas4/Boot_Movie_Verbose.mp4?dl=0

 

The loading bar should still appears?

Thanks!

 

Hi

 

The only thing missing in your boot is the second stage Apple Logo. You don't have any loading bar on the bottom left corner of the screen, unless the videos you uploaded are not actually yours.

 

YES, the loading bar is intended, and in your case it's right where it should be (and not at the bottom left side of the screen). So nothing to fix there.

 

You can attempt to fix your Apple Logo by checking Patch VBios and Inject EDID options in your config.

Link to comment
Share on other sites

Hi

 

The only thing missing in your boot is the second stage Apple Logo.

 

YES, the loading bar is intended, and in your case it's right where it should be (and not at the bottom left side of the screen). So nothing to fix there.

 

You can attempt to fix your Apple Logo by checking Patch VBios and Inject EDID options in your config.

Patch VBios and Inject EDID options in my config is checked.

Maybe I need my own EDID.

So, it's another case. Thanks arsradu!

Link to comment
Share on other sites

Patch VBios and Inject EDID options in my config is checked.

Maybe I need my own EDID.

So, it's another case. Thanks arsradu!

 

In my experience, you don't need a custom one. Clover does a good job at injecting the correct EDID for you monitor.

 

But on some monitors, especially on higher resolution ones (over 1080p) some people were saying that they don't have the Apple logo for the second stage boot.

 

Try to set Clover resolution to 1080p and also OS X resolution to 1080p. Just for testing purposes. See if it makes any difference.

 

Also, if your motherboard supports this feature and if you don't have any MBR-booted drives (legacy drives), you can try to turn OFF CSM in your UEFI Bios. See if that works for you.

Link to comment
Share on other sites

 Share

×
×
  • Create New...