Jump to content

GeForce 8800 GT = écran noir

nVidia Black Screen Enabler No signal

Best Answer Hervé, 25 July 2014 - 10:17 PM

Ha, celle là parait bien plus en ligne avec ton IOReg, effectivement. Tu peux tout de même essayer ma 1ère version patchée, j'y avais corrigé les incohérences que j'avais détectées au départ. De mon coté, je re-patche ta version fraiche.


Et voilà, à partir de la version "fraiche":

 

Si possible, je voudrais bien que tu refasses un extrait IOReg après avoir démarré comme pour extraire ta DSDT fraiche, i.e. démarrage sans aucun fichier DSDT. Ca me permettrait de vérifier la valeur de 2 paramètres sur lequel j'ai un petit doute...

 

Pour tester la DSDT patchée, c'est sans ton Natit et les kexts nVidia "folklos", Ok? Le graphisme doit fonctionner nativement avec le patch.

Go to the full post


  • Please log in to reply
31 replies to this topic

#1
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

Bonour à tous !

 

Voilà, j'ai une XFX GeForce 8800 GT 512 Mb que je n'arrive pas à utiliser nativement sans Enabler type Natit.kext et ce, cepuis le début (sous Mavericks en tout cas).

 

Sans Enabler, je tombe systématiquement sur un écran noir (No signal) en arrivant sur le bureau. En verbose, j'ai pourtant bien les extensions Nvidia chargées (loaded & Registered, NVStartup = Official, etc.). J'ai essayé avec les pilotes Web nVidia et c'est pareil.

 

Pourtant, et c'est ce que je ne comprends pas, si je boot sur une clé USB d'install de Mavericks (ou précédents) avec GraphicsEnabler=Yes, la carte est nativement reconnue, pas besoin d'Enabler, de string EFI ou autres. J'ai le QE/CI et tout le reste.

 

Idem lorsque j'ai installé Yosemite sur une partition en MBR, la carte est reconnue imédiatement et bien identifiée dans Informations Système comme une XFX GeForce 8800 GT 512 Mb.

 

Je ne comprends donc pas où ça coince (je sais que visiblement, la solution serait de ré-installer de zéro Mavericks mais franchement, si je epux éviter j'aimerais autant, c'est ma machine principale et j'ai des tonnes de trucs dessus :rolleyes:  )

 

mon org.chameleon.Boot.plist est le suivant :

 

    <key>GraphicsEnabler</key>
    <string>Yes</string>

    <key>Boot Banner</key>
    <string>No</string>
    <key>Default Partition</key>
    <string>hd(0,2)</string>
    <key>EthernetBuiltIn</key>
    <string>Yes</string>
    <key>GenerateCStates</key>
    <string>Yes</string>
    <key>GeneratePStates</key>
    <string>Yes</string>
    <key>HDAEnabler</key>
    <string>Yes</string>
    <key>HDEFLayoutID</key>
    <string>7</string>
    <key>Hide Partition</key>
    <string>hd(0,3) hd(1,2)</string>
    <key>Kernel</key>
    <string>mach_kernel</string>
    <key>Kernel Flags</key>
    <string>nvda_drv=1</string>
    <key>KeyLayout</key>
    <string>pc-fr</string>
    <key>Legacy Logo</key>
    <string>Yes</string>
    <key>Rescan</key>
    <string>Yes</string>
    <key>SMBIOS</key>
    <string>/Extra/SMBios.plist</string>
    <key>SystemType</key>
    <string>1</string>
    <key>Timeout</key>
    <string>5</string>
    <key>USBBusFix</key>
    <string>Yes</string>
    <key>device-properties</key>
    <string>4b00000001000000010000003f0000000100000002010c00d041030a0000000001010600011c0101060000007fff0400160000006200750069006c0074002d0069006e0000000500000001</string>
 



#2
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

2 commentaires:

  • si pas d'activation correcte de ta carte graphique sans enabler, il te faut faire un patch DSDT. C'est plutôt facile pour les cartes nVidia et ta 8800GT notamment. Il te faudra peut-être aussi préciser ta vraie valeur de racine PCI (PCI root) au démarrage, telle qu'elle est configurée dans ta DSDT d'origine. Eventuellement, tu pourras patcher ta DSDT pour mettre cette valeur à 0 (valeur par défaut pour un bootloader comme Chameleon). C'est comme ça que j'ai fait avec ma GeForce 9800GT sous Snow Leopard, Lion, Mountain Lion et Mavericks (écran noir sans kext enabler et avant patch DSDT complet).
  • il te faudra peut-être remplace les kexts IOPCIfamily + AppleCPIPlatform par ceux de 10.9.1 car Apple a effectué des modifs dans ses kexts depuis 10.9.2. C'est ce que j'ai constaté avec ma GeForce 9800GT qui me donnait un écran gris depuis 10.9.2.

Voilà, à voir...
 
Tu peux regarder ici pour des pointeurs et patches DSDT. Une 9800GT n'est pas grand chose de plus qu'une 8800GT rebadgée, donc tu dois pouvoir reprendre pleins de trucs. Au pire extraie une DSDT vierge et ton IORegistry (en bootant sans DSDT si c'est possible), puis on verra pour le patch.
 
Par contre et comme tu l'as indiqué, je constate que ta boot plist contient l'option nvda_drv=1 et donc que tu utilises les drivers nVidia pas Apple. Or ceux d'Apple fonctionnent sans souci avec une 8800GT, alors que j'ai un gros doute pour les drivers nVidia... Moi, j'ai retiré le Web driver nVidia pour revenir sur les kexts Apple vanille.



#3
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

Salut Hervé, merci de ta réponse.

 

J'ai déjà essayé de me faire une DSDT aux petits oignons mais j'ai du me****douiller quelque part parce qu'à chaque fois que je l'utilise, je me retrouve avec un "still waiting for root device" (DSDT vierge extraite sans DSDT préalable puis patchée pour l'HDEF, le _WAK et PCI0 d'après les patchs trouvés entre autres sur Olarila et Toleda). Bref, pour l'instant sans DSDT patchée, je suis un peu coincé. Je vais néanmoins essayé sans les drivers Web Nvidia et le boot flag nv_drv=1 voir ce que ça donne mais je crois avoir déjà tenté le coup.

 

D'autre part, comment se fait-il que j'arrive à avoir l'affichage et le QE/CI si je boot sur l'installeur USB mais que ça commence à foirer une fois l'OS installé ?

J'ai lu par ailleurs qu'une string EFI pourrait suffire pour que Chameleon identifie bien ma carte mais je ne sais pas trop où la mettre (device-properties je pense mais ça va faire doublon avec la string Ethernet dont je me sers pour l'AppStore) et puis je crois aussi que j'avais tenté le coup mais que ça n'avait pas tenu très longtemps ou alors je n'avais pas le QE/CI, enfin, je sais plus… :rolleyes:

 

M'enfin, en attendant, je peux te fournir ma DSDT si tu veux y jeter un œil et me dire pourquoi il me fait le coup du still waiting…

Attached Files



#4
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Je regarde tes fichiers; il n'y a pas vraiment de full QE/CI avec l'installeur d'OS X.



#5
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

il n'y a pas vraiment de full QE/CI avec l'installeur d'OS X.

+1 :)

 

Merci !



#6
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Les fichiers DSDT et IOReg sont extraits à partir d'un OS X démarré sans fichier DSDT.aml? Parce que j'ai l'impression que le fichier DSDT que tu as uploadé a déjà été modifié. Je me trompe? En effet, le contenu de ta DSDT ne correspond pas aux données IOReg...



#7
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

Ah non, on s'est mal compris :

 

J'ai extrait la DSDT depuis mon Mac démarré sans DSDT au préalable puis je l'ai patché avec ce que j'ai trouvé sur Olarila et Toleda. Donc ce que je t'ai envoyé c'est la version patchée et qui me pose le fameux problème de "still waiting…" au démarrage. Je t'envoie la version originale non patchée en PJ.

Attached Files



#8
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Elle reste bizarre cette DSDT non patchée puisque toujours différente des infos de ton IOReg... Mais bon, essaie avec cette nouvelle version patchée (et sans le Natit). Si tu utilises Chameleon, démarre avec l'option DSDT=/Extra/patched_DSDT.aml (avec le fichier dans /Extra). Si ça marche, tu pourras alors renommer le fichier en DSDT.aml.

 

Attached File  patched_DSDT.aml.zip   9.61KB   1 downloads

 

A priori, ta racine PCI est bien à 0, donc rien à changer de ce coté là.



#9
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

En voilà une toute fraîche extraite avec Chameleon… j'peux pas faire mieux :w00t:  (ou alors depuis Windows ou Ubuntu mais… on va commencer par là :yes: )

 

Après, c'est la faute à IOreg sinon je vois pas…

 

On est bien d'accord que je n'ai démarré avec aucune DSDT.aml et à part Natit et quelques kexts nVidia un peu folklos que je trimballe depuis la première version de Mavericks, rien d'autre.

Attached Files



#10
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Best Answer

Ha, celle là parait bien plus en ligne avec ton IOReg, effectivement. Tu peux tout de même essayer ma 1ère version patchée, j'y avais corrigé les incohérences que j'avais détectées au départ. De mon coté, je re-patche ta version fraiche.


Et voilà, à partir de la version "fraiche":

Attached File  dsdt_patch2.aml.zip   9.49KB   11 downloads

 

Si possible, je voudrais bien que tu refasses un extrait IOReg après avoir démarré comme pour extraire ta DSDT fraiche, i.e. démarrage sans aucun fichier DSDT. Ca me permettrait de vérifier la valeur de 2 paramètres sur lequel j'ai un petit doute...

 

Pour tester la DSDT patchée, c'est sans ton Natit et les kexts nVidia "folklos", Ok? Le graphisme doit fonctionner nativement avec le patch.



#11
gils83

gils83

    DJ Officiel d'InsanelyMac

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,974 posts
  • Gender:Male
  • Location:France
  • Interests:le soleil du var et l'informatique

:)

 

la 9800 GT que j'ai testé (Sapphire)  GraphicsEnabler=Yes et c'est tout ;)

 

peut-être rajouter PCIRootUID=1 


Edited by gils83, 25 July 2014 - 10:32 PM.


#12
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Malheureusement, ça ne suffit pas tout le temps... Mais il est vrai que dans le cas de mon Precision 670, j'ai constaté à postériori que démarrer avec la bonne racine PCI0 (fixée à 4 d'origine) sans le patch DSDT m'amenait correctement sur le bureau OS X avec accélération graphique complète. Après, le patch DSDT peut avoir des vertus cosmétiques.  ;)



#13
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

MÔssieur Hervé :

 

Un grand merci, ! Je laisse les captures parler d'elles-même (GraphicsEnabler=Yes ajouté et nv_drv=1 viré :P )

 

J'ai viré également les drivers Web nVidia (j'essaierai peut-être + tard pour voir mais au fait, ils apportent réellement quelque chose ?)

Attached Files



#14
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Ca a l'air bon ça.

 

Barre Finder translucide? CTRL-UP/CTRL-DOWN/CTRL-LEFT/CTRL-RIGHT fluides?

 

Les 2 truc principaux à changer dans ta DSDT étaient:

  • l'emplacement du patch: passé de la mauvaise adresse directement sous PCI0@3 à la bonne adresse PCI sous POP2@1
  • le device_type principal: passé de la mauvaise valeur "NVDA,GeForce" à la bonne valeur "NVDA,Parent"

 

Ce qu'il faut retenir, c'est qu'il faut toujours se référencer aux données IOReg avant de copier et d'installer un patch DSDT car ce que l'on récupère n'est pas forcément bien adapté à sa machine.

 

NB: d'après les infos que j'ai glanées sur le site nVidia et les constats que j'ai effectués moi-même, les drivers nVidia Web et/ou Cuda ne s'appliquent pas à nos "vieilles" cartes GeForce 8800GT/9800GT; ils sont donc inutiles.



#15
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

Il me reste plus qu'à patché la DSDT pour avoir l'audio et peut-être, soyons fous, avoir le PowerManagement natif et la mise en veille ! Tout ça sans mettre le bordel bien sûr car comme tu l'as vu, je suis loin, très loin de maîtriser les subtilités de la DSDT :thumbsdown_anim:


Encore ?!?

 

:thumbsup_anim: :thumbsup_anim: :thumbsup_anim:


Histoire de pas mourrir idiot, tu as fais quoi au juste ?

Attached Files



#16
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Ok, nickel alors.

 

Ouvre un autre sujet pour le reste (audio, power management, etc.), mais pas besoin de patch DSDT pour ça, à part peut-être la mise en veille.



#17
polyzargone

polyzargone

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 543 posts
  • Gender:Male
  • Location:France

OOps, pas vu ton post précédent… Donc c'est aussi pour ça que je me retrouvais avec un still waiting, il devait s'emmeler les pinceaux avec le device PCI qui gère les E/S pour les disques.

 

OK, pour le reste on verra plus tard, le VoodooHDA me suffit pour l'instant et le PM peut lui aussi attendre. En tout cas, merci encore pour ton aide.



#18
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

Pas de problème. Pour le PM, j'ai déjà ce qu'il te faut...  ;) Mais, évitons le hors-sujet ici!



#19
Hervé

Hervé

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 831 posts
  • Gender:Male
  • Location:Rennes, BZH of course!

[...]

Histoire de pas mourrir idiot, tu as fais quoi au juste ?

J'ai inséré les données suivantes dans ta DSDT d'origine (non modifiée):

 

1.   dans Device (POP2), entre Name (_ADR, 0x00010000) et Method (_PRW, ...):

                Device (GFX0)
                {
                    Name (_ADR, Zero)
                    Method (_DSM, 4, NotSerialized)
                    {
                        Store (Package (0x1A)
                            {
                                "AAPL,slot-name", 
                                "PCIe x16", 
                                "@0,compatible", 
                                Buffer (0x0B)
                                {
                                    "NVDA,NVMac"
                                }, 
                                "@0,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 
                                "@0,display_cfg", 
                                Buffer (0x08)
                                {
                                     0xFF, 0xFF, 0xFF, 0xFF
                                }, 
                                "@0,name", 
                                Buffer (0x0F)
                                {
                                    "NVDA,Display-A"
                                }, 
                                "@1,compatible", 
                                Buffer (0x0B)
                                {
                                    "NVDA,NVMac"
                                }, 
                                "@1,device_type", 
                                Buffer (0x08)
                                {
                                    "display"
                                }, 
                                "@1,display_cfg", 
                                Buffer (0x08)
                                {
                                     0xFF, 0xFF, 0xFF, 0xFF
                                }, 
                                "@1,name", 
                                Buffer (0x0F)
                                {
                                    "NVDA,Display-B"
                                }, 
                                "NVCAP", 
                                Buffer (0x14)
                                {
                                    /* 0000 */   0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
                                    /* 0008 */   0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
                                    /* 0010 */   0x00, 0x00, 0x00, 0x00
                                }, 
                                "VRAM,totalsize", 
                                Buffer (0x04)
                                {
                                     0x00, 0x00, 0x00, 0x20
                                }, 
                                "device_type", 
                                Buffer (0x0C)
                                {
                                    "NVDA,Parent"
                                }, 
                                "model", 
                                Buffer (0x14)
                                {
                                    "XFX GeForce 8800 GT"
                                }
                            }, Local0)
                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                        Return (Local0)
                    }
                }

 

2.   après Method (_WAK, ...):

    Method (DTGP, 5, NotSerialized)
    {
        If (LEqual (Arg0, Buffer (0x10)
                {
                    /* 0000 */   0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,
                    /* 0008 */   0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
                }))
        {
            If (LEqual (Arg1, One))
            {
                If (LEqual (Arg2, Zero))
                {
                    Store (Buffer (One)
                        {
                             0x03
                        }, Arg4)
                    Return (One)
                }
                If (LEqual (Arg2, One))
                {
                    Return (One)
                }
            }
        }
        Store (Buffer (One)
            {
                 0x00
            }, Arg4)
        Return (Zero)
    }
Voilà, c'est tout. Tu n'étais pas loin avec ton propre patch.


#20
gils83

gils83

    DJ Officiel d'InsanelyMac

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,974 posts
  • Gender:Male
  • Location:France
  • Interests:le soleil du var et l'informatique

:)

 

donc ça revient à dire qu'elle fonctionne ootb avec GE=Yes sans tout ce "cacafouillage tordu" qui ne sert à rien ;)







Also tagged with one or more of these keywords: nVidia, Black Screen, Enabler, No signal


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

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