# Depurando o OpenCore
Precisando descobrir o motivo de problemas ou travamentos? Bem, você veio ao lugar certo:
# Troca de Arquivos
Antes de começar, certifique-se de estar usando a versão de depuração DEBUGou a versão NOOPT do OpenCore. Elas fornecerão muito mais informações do que a versão de lançamento RELEASE. É preciso trocar os seguintes arquivos:
- EFI/BOOT/
BOOTx64.efi
- EFI/OC/Drivers/
OpenRuntime.efiOpenCanopy.efi(caso o esteja usando)
- EFI/OC/
OpenCore.efi

- Observação: geralmente, é melhor depurar os sistemas sem o OpenCanopy. Caso seja necessário, certifique-se de estar usando a versão de depuração (
DEBUG) do OpenCanopy ou não haverá praticamente nenhuma informação de depuração.
# Mudanças de Configurações
Então, acesse a sua config.plist e localize a seção Misc. Será necessário alterar algumas entradas aqui:
# Misc
Aqui, será necessário ativar as seguintes opções:
AppleDebug: YES
- Fornece muito mais informações de depuração, especificamente as relacionadas ao
boot.efie também faz com que o log seja salvo no disco.
- Fornece muito mais informações de depuração, especificamente as relacionadas ao
ApplePanic: YES
- Isso permitirá que
kernel panicssejam salvas no disco. Altamente recomendado manter o argumento de inicializaçãokeepsyms=1na entradaboot-argspara preservar a maior quantidade possível de informações.
- Isso permitirá que
DisableWatchdog: YES
- Desabilita o watchdog UEFI, usado para quando o OpenCore trava ou coisas não críticas.
Target:
67(ou calcule um abaixo)- Usado para habilitar diferentes níveis de depuração.
| Valor | Observação |
|---|---|
0x01 | Habilita os logs. |
0x02 | Habilita a depuração na tela. |
0x04 | Habilita o salvamento de logs no Data Hub. |
0x08 | Habilita a saída de logs na porta serial. |
0x10 | Habilita os logs de variávies UEFI. |
0x20 | Habilita os logs de variávies UEFI não voláteis. |
0x40 | Habilita o salvamento de logs em arquivos. |
Para calcular o valor de Target, use uma calculadora hexadecimal e então converta o valor para decimal. Então, armazene os valores em um arquivo .txt para consulta posterior.
0x01— Habilita os logs.0x02— Habilita a depuração na tela.- Observe que isso pode aumentar bastante o tempo de inicialização em firmwares com implementações de GOP (driver de vídeo EFI) ruins.
0x10— Habilita os logs de variávies UEFI.0x40— Habilita o salvamento de logs em arquivos.
0x01 + 0x02 + 0x10 + 0x40 = 0x53
0x53 convertido para decimal é 83
Então, configure Misc -> Debug -> Target -> 83
- DisplayLevel:
2147483714(ou calcule um valor abaixo)- Usado para configurar o que aparecerá no log.
| Valor | Observação |
|---|---|
0x00000002 | DEBUG_WARN nas versões DEBUG, NOOPT, RELEASE. |
0x00000040 | DEBUG_INFO nas versões DEBUG, NOOPT. |
0x00400000 | DEBUG_VERBOSE em builds personalizadas. |
0x80000000 | DEBUG_ERROR nas versões DEBUG, NOOPT, RELEASE. |
Uma lista completa pode ser encontrada no arquivo DebugLib.h (opens new window).
Neste caso, use só os valores a seguir:
0x00000002— DEBUG_WARN nas versõesDEBUG,NOOPT,RELEASE.0x00000040— DEBUG_INFO nas versõesDEBUG,NOOPT.0x80000000— DEBUG_ERROR nas versõesDEBUG,NOOPT,RELEASE.
Assim como com Target, será preciso calcular o valor em hexadecimal e convertê-lo para decimal:
0x80000042 convertido para decimal fica Misc -> Debug -> DisplayLevel -> 2147483714
Uma vez terminado, seu arquivo config.plist deve ficar parecido com isso:

# Desativando Todos os Logs
Para remover todos os logs e mensagens de depuração, simplesmente troque todos os arquivos do OpenCore por aqueles encontrados na versão de lançamento RELEASE, da mesma forma como foi feito na seção Troca de Arquivos.
Por fim, para deixar de salvar no disco, configure as seguintes opções:
- AppleDebug =
NO - ApplePanic =
NO - Target =
0