12 de abril de 2013

DSDT — entendendo a edição e uso de patches

Este post é a continuação de: DSDT — sua importância para o Hackintosh. Recomendo sua leitura para entendimento completo e correto da DSDT.

Os passos que se seguem exigem atenção.

O arquivo DSDT.aml deve ficar na pasta Extra na raiz do sistema, ex: /Extra
Geralmente esta pasta é criada pelo bootloader, Chameleon/Chimera, mas se após a instalação de um destes ela não estiver lá você deve criá-la manualmente. O bootloader só vai ler a DSDT e passar as informações dela para o OS X se a mesma estiver no local correto.

Pode-se dizer que a edição da DSDT é parcialmente simples, pois os patchs (correções) já estão em sua maioria prontos. Você só precisará inseri-los na DSDT e/ou corrigí-los para seu sistema/hardware.

O meu app preferido é o DSDT Editor que pode ser encontrado no forum Olarila (exige cadastro). Neste mesmo forum estão os patches já prontos e com uma ampla variedade.
Patches individuais
Pacotes de patches por Placa-mãe
OBS.: Uma pasta no app já contém todos os patchs individuais.

A aplicação do patch é bastante simples:

Abra sua DSDT (criada anteriormente) pelo DSDT Editor.
Agora clique em Patch / Open, ou se preferir: cmd+P.
Na janela que se abre localize o patch que você deseja, ex.: DTGP, um patch padrão e que é necessário em todas as DSDTs.
Uma janela te mostrará os códigos do patch.
Você pode pré-visualizar (Preview) a mudança antes de aplicar (Apply). Recomendo fazer isso comparando o antes e depois (Before/After) para entender como e onde o patch será aplicado. Assim você irá se familiarizar com as mudanças e consequentemente com a DSDT.
O mesmo procedimento serve para os pacotes de patches para placa-mãe. Note que o pacote nada mais é do que os patches individuais separados por ; para o seguinte ser aplicado. Você pode editar também este pacote, assim ele já será aplicado com as devidas correções. Para acrescentar outro patch ao pacote apenas acrescente o ; e aperte ENTER. Coloque na sequência o patch desejado.

Uma vez aplicado o patch, apertamos F5 para ver se existe algum Erro ou Alerta na DSDT.
Na imagem acima vemos: 9 Errors, 0 Warnings, 0 Remarks, 41 Optimizations. Os Erros devem obrigatoriamente ser corrigidos, os Alertas (warnings) podem passar.
Nesse momento entra um grande ponto a favor da escolha do DSDT Editor, o botão Fix errors. No caso acima ele automaticamente resolve todos os erros.
Agora sim a DSDT pode ser compilada. Clique em IASL / Save AML as… e na janela seguinte digite DSDT.aml, acrescentando a extensão.

Copie a DSDT.aml para a pasta Extra e reinicie o sistema para testar se tudo correu bem. Caso o OS X não inicie devido a alguma mudança na DSDT, digite na tela do bootloader: DSDT=No e a DSDT será ignorada durante o boot.

Bem, acho que é isso!
Ainda poderíamos abordar vários aspectos sobre DSDTs, mas bagunçaria muito o post. Talvez futuramente eu acrescente algo mais específico.




Dúvidas?

Um comentário: