Если вы хотите увидеть на нашем сайте ответы на интересующие вас вопросы обо всём, что связано с техникой Apple, операционной системой Mac OS X (и её запуском на PC), пишите нам через форму обратной связи.

К нам поступил следующий вопрос:

Расскажите подробно, с чего
начинать и как правильно редактировать
DSDT под свою материнскую плату.

Здравствуйте!

Как и в других областях знаний, касающихся хакинтоша, в редактировании DSDT нет единого рецепта. Во-первых, вам надо определиться с тем, для чего вам нужна правка DSDT. Она поможет лучше завести материнку, видеокарту, звук и сеть, но лишь в том случае, если драйверы системы хотя бы теоретически поддерживают ваше оборудование. В обратном случае ничего не получится.

Сама правка DSDT идёт по стандартному сценарию:

  • сначала вам нужно извлечь чистую таблицу DSDT. Лучше всего это делать из-под Windows или прямо из BIOS, с помощью поддерживающих такую возможность загрузчиков (например, XPC)
  • затем таблицу DSDT из бинарного формата AML надо декомпилировать в текстовый формат DSL, с которым можно работать в текстовом редакторе. Сделать это можно через Терминал или с помощью удобного редактора DSDTSE
  • затем необходим ряд обязательных правок — в частности, исправление HPET и LPC, а также прописывание процессора (актуально для всех процессоров старше Nehalem — Core 2 Duo, Core 2 Quad и пр.). Это позволит вам использовать встроенное в Mac OS X управление питанием и избавиться от драйверов типа NullCPUPowerManagement.kext
  • затем имеет смысл заниматься правками «по вкусу» — завести видеокарту, звуковую карточку и Ethernet. Содержание этих процедур состоит в том, что вы либо добавляете в DSDT новое устройство с нужными характеристиками, либо дополняете информацию об уже содержащемся там устройстве
  • наконец, в случае избытка свободного времени можно заняться т.н. DSDT-косметикой. Это незначительные правки, направленные на то, чтобы в свойствах компьютера информация о ваших хакинтошных компонентах отображалась должным образом. Практического смысла в этом нет
  • по итогам любой правки DSDT можно обратно скомпилировать код и положить отредактированный файл DSDT.aml в папку загрузчика (у разных версий разных загрузчиков свои требования к местоположению пропатченного файла)

Что касается толковых примеров того, как нужно править DSDT, можем посоветовать вам встроенную в DSDTSE коллекцию твиков — там подробно расписано почти всё, что может потребоваться; или хорошую тему на форуме AppleLife.

P.S. И последнее — скоро правка DSDT может уйти в прошлое. Сегодня финальные этапы тестирования проходит интереснейший патч для хакинтошных загрузчиков, который самостоятельно извлекает, анализирует и патчит DSDT, избавляя вас от необходимости ковыряться в коде вручную. Поэтому, возможно, имеет смысл не забивать голову тоннами информации сомнительной полезности, а просто немного подождать ;)

Поделитесь страницей через социальные сети

  • seversti

    Загрузчик Clover уже умеет самоcтоятельно извлекать и патчить таблицу DSDT. Одноименная тема на applelife.ru.

    • Arkkeeper

      не кловер, а тот самый патч, о котором шла речь и который совместим с кловером

  • Besaga

    «интереснейший патч для хакинтошных загрузчиков, который самостоятельно извлекает, анализирует и патчит DSDT»
      речь идет о Clover? 

  • apalych

    <…затем необходим ряд обязательных правок – в частности, исправление HPET и LPC…>
    Обязательные правки в ДСДТ: HPET, RTC, TMR. Убираем прерывания из RTC и TMR и добавляем эти прерывания в HPET. Это, на ряду с процсекцией, основные правки для ДСДТ. Без этих правок (если их не делает загрузчик «на-лету») получим «кернел-паник». LPC можно завести и потом. Есть замечательная прога «ДСДТ-автопатчер», которая почти всю основную рутинную работу по правке ДСДТ для конкретной материнки делает автоматом. Для хакинтошника главное любым способом хоть как-то загрузить систему. Если это произошло, то можно гарантированно заставить работать макОСь на таком железе практически так-же, как и на настоящике.