fantomas Posted June 24, 2015 Share Posted June 24, 2015 pour les utilisateurs de Clover... avez-vous des soucis avec le patch à la volé ? je ne sais pas pourquoi mais depuis la 10.10.1 je crois, quoi que je fasse, impossible pour moi de patcher mes kexts à la volé pour rappel, j'utilise patch à la volé pour ma HD 6770 (et oui, elle n'était pas morte ) et ma HD4830 (qe_ci exotic patch) bon, apparement la méthode du patch de l'Info.plist a quelque peu changée... slice l'explique ici : http://www.insanelymac.com/forum/topic/282787-clover-v2-instructions/?p=2108022 mais malgré cela, je n'ai pas réussi à le faire, ... que ce soit sur Mavericks ou El Capitan, les kexts ne se chargent pas. Est-que quelqu'un voudrait essayer cette nouvelle méthode et me dire si cela fonctionne ? merci d'avance P.S: je parle bien du patch Info.plist et non les binaires ! Link to comment Share on other sites More sharing options...
polyzargone Posted June 24, 2015 Share Posted June 24, 2015 Tiens, c'est marrant T'as vu ce topic ? (je t'ai cité et même traduit ©™ Fantomas1 ) J'ai fait le test hier et ça ne marche pas. Même en bootant sans puis ensuite avec le cache : 0:194 0:000 KextsToPatch: 1 requested 0:194 0:000 KextToPatch 0: AMD7000Controller (AMD 7730 Patch) Info.plist patch[ERROR] bin2hex '0x68391002' syntax error 0:194 0:000 [ERROR] bin2hex '0x68371002' syntax error 0:194 0:000 - invalid Find/Replace data - skipping! Next problem. If you want to replace DeviceID into IOPCIMatch the you can use this InfoPlistPatchFor example inject unsupported ATI Radeon ID into AMDRadeonX3000.kext. But the kext is not present in kernelcache and the patch will not occur.In this case you have to boot without caches and Clover will Force load this kext for patching. Et pourtant… <key>KextsToPatch</key> <array> <dict> <key>Comment</key> <string>AMD 7730 Patch</string> <key>Find</key> <string>0x68391002</string> <key>InfoPlistPatch</key> <true/> <key>Name</key> <string>AMD7000Controller</string> <key>Replace</key> <string>0x68371002</string> </dict> </array> </dict> Il ne me semble pas avoir fait d'erreur . Le post de Slice date de février 2015 donc à mon avis, c'est toujours d'actualité. Enfin, il est sur le topic en question. On aura peut-être le fin mot de l'histoire. 1 Link to comment Share on other sites More sharing options...
fantomas Posted June 24, 2015 Author Share Posted June 24, 2015 justement... la méthode que tu utilises (et que j'utilisais) n'est plus d'actualité... c'est pour ça qu'il te donne une erreur de syntaxe il faut convertir string en data : https://www.base64encode.org avant Find 0x68391002 Replace 0x68371002 après Find PHN0cmluZz4weDY4MzkxMDAyPC9zdHJpbmc+ -------> ce qui donne 0x68391002 Replace PHN0cmluZz4weDY4MzcxMDAyPC9zdHJpbmc+ -------> 0x68371002 avec Clover Configurator, ça donne ça : Link to comment Share on other sites More sharing options...
polyzargone Posted June 24, 2015 Share Posted June 24, 2015 Et bien je crois que c'est là ton erreur C'est pas la ligne entière <string>0x68391002</string> qu'il faut convertir en base64, c'est juste 0x68391002 0x68391002 --> MHg2ODM5MTAwMg== <key>KextsToPatch</key> <array> <dict> <key>Comment</key> <string>Test</string> <key>Find</key> <data> MHg2ODM5MTAwMg== </data> <key>InfoPlistPatch</key> <true/> <key>Name</key> <string>AMD7000Controller</string> <key>Replace</key> <data> MHg2ODM3MTAwMg== </data> </dict> En faisant ça et en cochant DATA effectivement, j'obtiens ça : 0:182 0:000 KextsToPatch: 1 requested 0:182 0:000 KextToPatch 0: AMD7000Controller (Test) Info.plist patch, data len: 10 Alors je ne sais pas du tout si ça change quelque chose ou pas vu que j'ai pas ma Radeon 7770 sous la main pour vérifier mais je dirais qu'au moins, Clover ne renvoie plus d'erreur . Link to comment Share on other sites More sharing options...
fantomas Posted June 24, 2015 Author Share Posted June 24, 2015 il n'y a pas d'erreur c'est seulement la longueur du string qui change (mais je l'ai déjà fait des deux manières et ça ne change rien) et si je me fie au topic de slice (et d'autres tickets de discussion sur source forge), j'ai la bonne méthode dans ton cas, rien ne change... le patch se fait mais les kexts ne se chargeront pas (comme pour moi) Link to comment Share on other sites More sharing options...
polyzargone Posted June 24, 2015 Share Posted June 24, 2015 OK. Je m'incline 1 Link to comment Share on other sites More sharing options...
fantomas Posted June 24, 2015 Author Share Posted June 24, 2015 Next problem. If you want to replace DeviceID into IOPCIMatch the you can use this InfoPlistPatchFor example inject unsupported ATI Radeon ID into AMDRadeonX3000.kext. But the kext is not present in kernelcache and the patch will not occur.In this case you have to boot without caches and Clover will Force load this kext for patching. je n'a jamais eu à le faire par le passé mais j'ai quand-même voulu essayer... j'ai botté sans cache... il me force uniquement AMD5000Controller.kext à se charger mais que lors de la phase du boot.... une fois sur le bureau, il n'est plus chargé. AMDRadeonX3000.kext ne se charge pas donc il n'est jamais dans le cache. je les ai chargé manuellement une fois sur le bureau mais après un sudo touch /System/Library/Extensions/ rien ne change... comme si la commande n'avait aucun impact sur la reconstruction du cache Link to comment Share on other sites More sharing options...
polyzargone Posted June 24, 2015 Share Posted June 24, 2015 Et bien il ne reste plus qu'à attendre la réponse de Slice 2 Link to comment Share on other sites More sharing options...
fantomas Posted June 25, 2015 Author Share Posted June 25, 2015 bon, après une nouvelle installation, les choses n'ont pas changé Clover patch mes deux kexts lors de la phase d'amorçage mais une fois sur le bureau, ils ne sont pas chargés il est claire que le problème vient du cache j'ai booté avec rootless=0 et sans cache mais la commande sudo touch /System/Library/Extensions/ ne donne rien... sudo kextcache -prelinked-kernel non plus. j'ai aussi essayé de reconstruire le cache avec Kext Wizard... sans effet. Link to comment Share on other sites More sharing options...
fantomas Posted June 25, 2015 Author Share Posted June 25, 2015 bon, rien de nouveau à se mettre sous la dent... je n'ai pas eu une concrète explication concernant la nouvelle méthode de patcher InfoPlist si ce n'est ce que je savais déjà. c'est pour cela que je ne m'aventure pas dans ce genre de topics puisque de coup sûr je passerai pour quelqu'un de prétentieux et ça... je ne veux pas. je ne dis pas que cela ne fonctionne pas, puisque d'autres ont réussi mais pas sans galère... et c'est là ma plus grande déception... l'ancienne méthode était pour ne pas dire parfaite pour ma config. pour ma part, le talon d'Achille de cette méthode (et de la précédente) est bien le cache d'OS X... sous Yosemite (et sur Mavericks aussi, si je ne m'abuse) il y avait des moments où le cache fesait vraiment des siennes. Donc du coup, je m'attendais à de la résistance de la part d'El Capitan. Mais je ne m'attendais pas à cette nouvelle méthode qui ma foi, pour ma part, semble pas encore au point mais on verra bien... peut-être une autre méthode ? tant pis... je me réconforterai avec l'injection dsdt qui elle fonctionne bien (et fait le même boulot que FakeID) ou avec l'ajout du device-id manuellement. Dommage. 1 Link to comment Share on other sites More sharing options...
fantomas Posted August 15, 2015 Author Share Posted August 15, 2015 bon, je reviens un peu à la charge avec ce topic ce qui m'embêtait en plus c'est que même avec les anciennes versions de Clover et d'OS X, je n'ai pas réussi à le faire fonctionner... jusqu'à aujourd'hui bon, la méthode ne me plaît pas trop puisque je me sers de FakeSMC pour injecter les infos de mes kexts comme IOKitPersonnalities supplémentaires mais au moins, ils sont toujours chargés. et comme je ne me souvenais pas de la version de Clover que j'utilisais à ce moment-là, je suis revenu sur ce topic et j'ai vu que la dernière mise à jour du topic fut au 27/08/2014. Donc je suis parti sur HackintoshOSX et dans les téléchargements de Clover, j'ai cherché la version qui avait été mis en ligne à cette date. Je sais, cela ne prouve rien mais même si je ne me rappelle pas de la version de Clover que j'ai utilisé, je sais que je la mettais à jour dès qu'une nouvelle sortait. Donc voilà sur quoi je me suis basé pour ensuite trouvé que ce fût la version r2850. Et effectivement, avec cette version + l'astuce avec FakeSMC (alors qu'avec les versions antérieures et ultérieures à r2580, ça ne fonctionnait pas... mais j'avoue ne pas en avoir tester beaucoup), l'ancienne méthode a fonctionné la preuve : bon, je suis sous 10.8.5 mais l'importance c'est que cela marche alors qu'avant non P.S : quoi qu'il en soit, ML en jette encore... comme je ne l'avais pas utilisé depuis longtemps, je suis impressionné par sa stabilité, fluidité et sa réaction. il démarre au 1/4 de tour Link to comment Share on other sites More sharing options...
fantomas Posted August 17, 2015 Author Share Posted August 17, 2015 bon, comme je m'attendais... l'ancienne méthode fonctionne bien sous ElCapitan DB1 fantomas1s-iMac:~ fantomas1$ kextstat | grep AMD 54 2 0xffffff7f81f26000 0x125000 0x125000 com.apple.kext.AMDSupport (1.3.6) C96B4426-D45A-3988-8F77-D0599ABD7351 55 0 0xffffff7f8208e000 0x5f0000 0x5f0000 com.apple.kext.AMD5000Controller (1.3.6) 243E5473-2D4E-364F-9039-1A31DF22125E 94 0 0xffffff7f8288b000 0x45c000 0x45c000 com.apple.AMDRadeonX3000 (1.3.6) DBC4A87F-55D9-30A0-929F-A3F2D86DC6AD 97 0 0xffffff7f82059000 0x22000 0x22000 com.apple.kext.AMDFramebuffer (1.3.6) 460D6D27-72F8-3EFE-8879-23EF4CAE4F55 fantomas1s-iMac:~ fantomas1$ ioreg | grep ATY | | | | +-o ATY,Hoolock@0 | | | | | +-o ATY_Hoolock | | | | +-o ATY,Hoolock@1 | | | | | +-o ATY_Hoolock | | | | +-o ATY,Hoolock@2 | | | | | +-o ATY_Hoolock j'étais même capable d'installer ElCapitan avec Clover r2850 et de booter dessus sans soucis !!! j'avais juste besoin du flag rootless=0 et l'installation s'était bien passée. Link to comment Share on other sites More sharing options...
fantomas Posted August 18, 2015 Author Share Posted August 18, 2015 une bonne nouvelle concernant la nouvelle méthode du patch à la volé… avec la DB6 + Clover r3259, elle fonctionne correctement mais dans mon cas, je ne peux m'en passer de l'astuce avec FakeSMC, du moins pour le moment. J'espère qu'on m'aidera à mieux comprendre pourquoi il ne veux pas forcer à charger mes kexts en mode NoCaches. la différence entre l'ancienne méthode et la nouvelle, c'est surtout dans quel ordre sont écris les octets (à lire pour plus d'infos) ancienne méthode 0x68B81002 --> 0x68BA1002 nouvelle méthode 68B81002 --> 68BA1002 Link to comment Share on other sites More sharing options...
Recommended Posts