Jump to content

10.6.3 nVidia Blank Screen Issue with DVI/HDMI on 9800GT


  • Please log in to reply
433 replies to this topic

#121
probskats

probskats

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 6 posts

What bootloader do you use?


PCEFI 10.6 which I think is based on Chameleon RC3. I have tried RC4 as well with same results. When I use custom ROM I think it is loading for sure because the resolution changes on next boot. Also shows up in the Sys profiler.

#122
Pokemonas

Pokemonas

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts
Same thing happened to me once, removed some NV kext files. 4 replies.

#123
el_charlie

el_charlie

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 225 posts
  • Gender:Male
  • Location:Maracaibo, Venezuela

you must remove from the dsdt.aml and com.apple.boot.plist any graphic strings...put the rom in extra folder and copy this to the boot.plist:

<key>GraphicsEnabler</key>
<string>Yes</string>
<key>VideoROM</key>
<string>nvidia.rom</string>
<key>VBIOS</key>
<string>yes</string>


http://www.insanelym...howtopic=219232



Please note that you have to rename the rom file according to the VideoROM parameter even with capital letters if they exist.

In the above case the rom has to be named nvidia.rom; all letters with lower case.

If on System Profiler appears "internal", the user has to try again and check.

Cheers!

#124
narin

narin

    InsanelyMac Protégé

  • Members
  • Pip
  • 6 posts
Has anyone successfully tried this fix with GTS 250 1gb?

#125
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
so after crawling through every post in this thread, I was excited to finally try to nvidia .rom solution with my 9800GT HDMI output. I had the same confusion, however, about how to get the damn .rom loaded (as I've read about 9 different ways of changing the boot.plist to load it...

I finally figured out that as I am using the AsereBLN 1.1.9 bootloader, the real solution is found here:

http://efixusers.com...hread.php?t=644

Where it is stated:

ATI and nVidia Video-ROM-Files must be renamed to <vendorid>_<deviceid>.rom and must be put into the Extra folder. vendorid and deviceid as 4-digit hex values without a leading 0x. For instance, a nVidia 9400 GT (55nm) has the vendorid "0x10DE" and the deviceid "0x0641", so the filename must be "10de_0641.rom". To enable nVidia VGA BIOS File Loading use: UseNvidiaROM=Yes in com.apple.Boot.plist. To enable ATI VGA BIOS File Loading use: UseAtiROM=Yes in com.apple.Boot.plist.


this explained what hypnotic4life was talking about earlier in renaming his .rom file to something odd. SO, for all you Kakewalk and ##### users out there (AsereBLN 1.1.9 chameleon bootloaders), this is the EXACT format you must use, with the renamed file in the /Extra folder:

<key>GraphicsEnabler</key>
<string>Yes</string>
<key>UseNvidiaROM</key>
<string>yes</string>

No path to the file, no filename needed - just these two lines and you can see the results in System Profiler (" ROM Revision: xx.xx.xx - /Extra/10de_0614.rom")

So I was totally happy to have my 8800gt rom finally loaded (after 2 days of trying), but when I plugged in my hdmi cable to my projector, the same screen lock up happened yet again. @#$@!

So I added the last bit to the boot.plist:

<key>VBIOS</key>
<string>yes</string>

(which isn't mentioned at all in AsereBLN's release docs - but hypnotic4life included it - can anyone explain what it does??)

With all 3 keys included, I rebooted, and to my surprise, with only a single DVI cable attached, the system prefs showed a second VGA display at 800x600. System Profile confirmed. Weird. But I plugged in the Holy Grail HDMI cable and waited for disaster.... no freeze! But no picture on my projector either :-(

So it seems I've got the screen lockup over HDMI solved, but this 8800GT rom that's been linked to (bigfish?) doesn't seem to quite match up with my Gigabyte 9800GT...

options??

#126
hypnotic4life

hypnotic4life

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts
Stupid of me to forget the source for the AsereBLN bootloader parameters in my post but you found them yourself. Do I understand it correctly that you are now stuck with 800x600 and your hdmi projector is not working?
Did you use the option 'detect displays' in screen in the system properties and change your resolution. When I first booted with the 8800gt-rom my display was also set to 800x600 but I could change it to 1280x1024 + 1920x1080.

#127
xorne

xorne

    InsanelyMac Protégé

  • Members
  • Pip
  • 20 posts

Success !!!!!
I tried bigfish's macpro8800gt.rom and renamed it NVIDIA.rom.
( http://www.insanelym...howtopic=219232 )

Success for me too, with a 8800 GT 1 Go !!
I was stucked on 10.6.2, blank screen with 10.6.3 and 2 HDMI monitors.

With the .rom file and this in my com.apple.Boot.plist all it's ok with 10.6.3 update ;)

<key>GraphicsEnabler</key>
	 <string>yes</string>
	 <key>VideoROM</key>
	 <string>nvidia.rom</string>
	 <key>VBIOS</key>
	 <string>yes</string>	
	 <key>Graphics Mode</key>
	 <string>1920x1200x32 </string>

Thanks a lot guys !

#128
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts

Did you use the option 'detect displays' in screen in the system properties and change your resolution. When I first booted with the 8800gt-rom my display was also set to 800x600 but I could change it to 1280x1024 + 1920x1080.


Yes, I did "detect displays" - did nothing. What's most strange is how with nothing connected to the VGA port (just my primary DVI display @1900x1200) the system was also reporting a "VGA 800x600" device.

Usually the moment when I hit "detect displays" is when the screen locks up (if I didn't have the HDMI connected on boot).

I tried a bunch of different .rom files I found, including some more specific 9800GT 1GB .roms. All had the same effect - no lockup, but a phantom VGA display and nothing happening over HDMI.

So I decided to go "all the way" and extract my own .rom from my own card, so there could be no mismatch of features, etc. (I have always doubted this using of a generic 8800GT .rom would work, as there are many variants of the 8800 and 9800, with all kinds of ports: s-video, hdmi, dual-dvi, etc. - if the .rom wasn't from a model with HDMI, how could it?)

This meant going into dos-land, figuring out nvflash, and without a floppy drive, creating boot-DOS USB flash drive (not a simple task). I finally got it, and saved my .rom - figuring now that I knew how to reliably load the .rom files, having the exact contents of *my card* would be the perfect solution.

But I was rather surprised when I swapped in my custom .rom and found that while the phantom VGA display was gone, the screen lockup when I plugged in HDMI had returned! I checked and made sure my .rom was being loaded by AsereBLN, and most everything else about graphics was working fine - but the @#$! HDMI freeze was back!

Why would using random related 8800GT roms fix the HDMI freeze on my 9800GT, but the actual rom pulled straight from my card not???

Attached File  10de_0614.rom.zip   40.99KB   57 downloads

I've attached the rom file (60,928 bytes) for my Gigabyte 9800GT Silent Cell (HDMI, VGA, DVI) in case anyone else can figure it out...

FYI - I opened it with NiBiTor and it validates fine (though many fields were empty). Ironically many of the other 8800 and 9800 roms I opened with NiBiTor did *not* validate....

#129
Beerkex'd

Beerkex'd

    Content Provider

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,000 posts
  • Gender:Male
  • Location:Belo Horizonte - Brazil
Can you try something for me?

I've attached the ROM from my 9800 GTX+, it was patched with Krazubu's NVEnabler, then extracted from ioreg.
( thread: http://www.projectos...?...post&p=5831 )

I don't have a HDMI display (yet) so I don't know if it works with HDMI, but I have both DVI outputs (one with DVI-VGA adapter) and analog TV-out working with this ROM + display-cfg and NVCAP injected via DSDT:

Device (GFX0)
				{
					Name (_ADR, Zero)
					Method (_DSM, 4, NotSerialized)
					{
						Store (Package (0x12)
							{
								"@0,compatible", 
								Buffer (0x0B)
								{
									"NVDA,NVMac"
								}, 

								"@0,device_type", 
								Buffer (0x08)
								{
									"display"
								}, 

								"@0,display-cfg", 
								Buffer (0x04)
								{
									0x03, 0x01, 0x00, 0x00
								}, 

								"@0,name", 
								Buffer (0x0F)
								{
									"NVDA,Display-A"
								}, 

								"@1,compatible", 
								Buffer (0x0B)
								{
									"NVDA,NVMac"
								}, 

								"@1,device_type", 
								Buffer (0x08)
								{
									"display"
								}, 

								"@1,display-cfg", 
								Buffer (0x04)
								{
									0xFF, 0xFF, 0x00, 0x01
								}, 

								"@1,name", 
								Buffer (0x0F)
								{
									"NVDA,Display-B"
								}, 

								"NVCAP", 
								Buffer (0x18)
								{
									/* 0000 */	0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 
									/* 0008 */	0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 
									/* 0010 */	0x00, 0x00, 0x00, 0x00
								}
							}, Local0)
						MCDP (Arg2, RefOf (Local0))
						Return (Local0)
					}

If you're using AsereBLN remember to rename it so that it matches your device ID.
Attached File  10DE_0612.rom.zip   40.05KB   31 downloads

#130
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
Just tried it - no HDMI love. I tried on my HDMI port and using DVI->HDMI adapter.

#131
Beerkex'd

Beerkex'd

    Content Provider

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,000 posts
  • Gender:Male
  • Location:Belo Horizonte - Brazil
Thanks anyway. I added a link to my post leading to more information.
Maybe you can try doing the same as I did, but using the ROM from your own card.

Also, try again with my NVCAP and display-cfg values.

#132
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
I had understood that this method of supplying a .rom thru boot.plist was independent of adding graphics info to DSDT (usually you don't mix methods - thus no EFI strings, etc.)

I had actually injected my NVCAP values via boot.plist while using the .rom, but had no effect...

wish I had found this last night before I wrestled with DOS boot disks...

here's nvflash in a terminal app - drag it onto your terminal window and you can dump your rom easily without ever leaving osx...

Attached File  nvflash.zip   276.05KB   57 downloads

note you'll need to "sudo" to get the saving to file to work. You can use all the display commands without sudo...

#133
Beerkex'd

Beerkex'd

    Content Provider

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,000 posts
  • Gender:Male
  • Location:Belo Horizonte - Brazil

I had understood that this method of supplying a .rom thru boot.plist was independent of adding graphics info to DSDT


Indeed it is, and that's why injecting additional data via DSDT (or device-properties string) works!

You can inject your video card BIOS all you want but (as I've been trying to say earlier in this thread) Mac OS and its nvidia drivers still expect certain info that it won't find in your ROM, because the ROM is from a PC video card.
You still have to inject data that isn't contained in the ROM, either via Chameleon Graphics Enabler, EFI Device Properties string, DSDT or Injector.kext. Injecting the ROM alone doesn't do anything.

It's okay to use several injection methods at the same time as long as they are used to inject different data. ie, don't inject display-cfg values using both DSDT patch and device properties string for example. It all ends up in ioreg in the end anyway, it doesn't matter where it comes from.

Disclaimer: This is from personal experience and experiments done on my own hardware. YMMV

#134
el_charlie

el_charlie

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 225 posts
  • Gender:Male
  • Location:Maracaibo, Venezuela

Injecting the ROM alone doesn't do anything.

Well, works for me for overclocking/underclocking purposes.

I still can't figure out why on my System works with DVI to HDMI even without injecting the video BIOS.

Cheers!

#135
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
I decided to test one more thing. I swapped out an evga 9800GT with DVI/DVI/COMPONENT connectors for my gigabyte 9800GT with DVI/VGA/HDMI connectors. Using the nvidia .rom file still worked fine (once I renamed for the new device ID).

I already knew that plain dual monitors would work fine (DVI or VGA or both), but I needed to isolate the HDMI problem...

Now in the past on 10.6.3, with just plain GraphicsEnabler=Yes and no .rom files, hooking up my HDMI projector with the DVI adapter would still result in a screen lockup/freeze.

But this time, with the 8800gt .rom file, I was able to successfully connect both my DVI monitor and the HDMI projector with the DVI->HDMI adapter. It behaved just like it did back in 10.6.0 days, still recognizing the projector as a "TV" source and giving me TV resolutions (480p, 720p, 1080p). So two DVI ports are viable with the .rom method, even if the devices are technically HDMI (I guess the adapter is interfering with HDCP?)

So it's come down to simply the HDMI port on my gigabyte 9800GT card. It just freezes the screen no matter what I try - even using a .rom extracted from the card itself. So if I want to use my silent cell fanless card, I have to hook up my Dell monitor via VGA and the projector on the DVI port with adapter (which sucks cause the VGA picture is noticeably less sharp than the DVI).

I'm probably going to move on to my next option, which is using an addition nvidia 7200 card in another slot, allowing me to use the DVI on that card for the projector and the DVI on my 9800GT for my main monitor...

#136
Beerkex'd

Beerkex'd

    Content Provider

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,000 posts
  • Gender:Male
  • Location:Belo Horizonte - Brazil
That'll limit you to 32-bit (kernel and drivers) mode. 7xxx cards don't have 64-bit drivers.

---------------------------------------------------------------------------------------------------

(I said: Injecting the ROM alone doesn't do anything)

Well, works for me for overclocking/underclocking purposes.


You misunderstand.

Even if you're injecting a video ROM you still need a conventional injection method in order to have QE/CI - Chameleon Graphics Enabler, DSDT patch, Device Properties String or Injector.kext. You cannot have fully working graphics just by loading the ROM from your PC video card.

Maybe it's possible if you inject the ROM from the Apple equivalent of your video card, I don't know..but I doubt it.

#137
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts

That'll limit you to 32-bit (kernel and drivers) mode. 7xxx cards don't have 64-bit drivers.


At the moment, I'm 32-bit kernel mode anyway, so my built-in ethernet works (realtek)...

I can't find a rom file for my 7200GS anywhere - I was going to try just naming it and placing it like the one for my 9800GT, as chameleon does complain at boot that the rom file can't be opened (because it doesn't match the 7200)

Can I mix and match methods? use a EFI string in boot.plist for the 7200GS while using the rom method for the 9800GT? How would I get the efi string for that old card (efi studio doesn't list it)?

#138
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
So I've had this message flash as chameleon began booting, but it always went so quick I could never read it - so I video'd it and went frame by frame...

I had assumed it was complaining about my second graphics card not being properly accounted for, but to my surprise, it was complaining about the file size of the 8800GT mac .rom that has been (mostly) working for me!

Attached File  truncated.jpg   48.86KB   66 downloads

Now I did notice that the 8800 .rom was bigger than the .rom's I extracted for both my cards (which are under 64K). I gathered that this was normal for mac roms, but it appears that AsereBLN chameleon doesn't like mac roms (though it still allows it and uses it). I'm wondering, however, exactly what's getting thrown out in the "truncation"?

Of course, you'd think that the proper method would be to use my card's own .rom file, but as I've posted earlier, when I do that, I get no benefits - the HDMI freeze problem returns...

any clues?

#139
Beerkex'd

Beerkex'd

    Content Provider

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 3,000 posts
  • Gender:Male
  • Location:Belo Horizonte - Brazil
Extract the truncated ROM from ioreg and compare it with the real one. Follow the link I posted earlier (post #135) to see how.

However, if everything is working why worry?

#140
nullspot

nullspot

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
not sure what I would do once I compared it... if it's getting cut off, I wouldn't know which bits mattered...

Everything is "working" only in that if I plug my HDMI projector with a DVI adapter, it doesn't lockup the screen in 10.6.3 - but it still doesn't work in the actual HDMI port (and I only have one DVI port). Also, the system permanently reports a VGA display attached (even when there isn't one) - so I know this rom isn't really working properly...





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2016 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy