Dsdt aml mac os

Dsdt aml mac os

Работа с DSDT.aml
Извлечение оригинальных файлов | Дизассемблирование ACPI-файлов | Исправление ошибок | Патчинг

Программа для редактирования и патчинга DSDT.aml — MaciASL
Следите за тем какая версия ACPI в редакторе, в версии 1.4 почему то ACPI 4.0 по умолчанию
Программа для компилирования — iASL
Положить на «рабочий стол» скачанный файл(iasl), и в терминале выполнить команду: sudo mv

/Desktop/iasl /usr/local/bin/ что бы переместить файл в /usr/bin

Добавление репозиториев в MaciASL:

  • Открыть MaciASL;
  • Настройки;
  • Выберите “Sources”;
  • Нажмите на [+];
  • Впишите имя репозитория, к примеру «Laptop-DSDT-Patch»;
  • И вставьте ссылку:

Примечание: Не пытайтесь разобрать другие ACPI файлы с помощью флага “-da“.

Method (_CRS, 0, NotSerialized)
<
If (IGDS)
<
Return (CRS)
>

Fix ( depending on the size Tag mismatch: 1 bit = CreateBitField, 8 bits = CreateByteField, 16 bits = CreateWordField, 32 bits = CreateDwordField, 64 bits = CreateQwordField ) :

Удалить Return (RP00)

Путь к патченному файлу DSDT.aml в Clover: EFI/Clover/ACPI/patched/

Сообщение отредактировал WinSSLioN — 06.01.21, 09:43

Мануал по заводу не будешь писать самого инструмента и репозиториев.?

Сообщение отредактировал zander42 — 20.01.20, 06:27

Сообщение отредактировал zander42 — 20.01.20, 12:41

Сразу куча вопросов.
Столкнулся с тем, что разные версии DSDT Editor дают разные данные об ошибка в DSDT, MaciASL вообще третье. Кому верить?

Источник

Mac OS X 10.5.6 Retail и DSDT


Новый метод установки оригинальной Mac OS X Retail на обычный компьютер. Используется редактирование DSDT, который дает еще больше возможностей по сравнению с рассмотренным ранее Boot-132. При использовании DSDT вы буквально сможете указать операционной системе с каким “железом она имеет дело”, таким образом в некоторых ситуациях DSDT может быть очень полезен.

Немного теории

DSDT расшифровывается как Differentiated System Description Table или говоря по-русски Дерево устройств. Тот DSDT, с которым мы будем работать на деле представляет из себя файл с именем DSDT.aml. Файл располагается в корне диска, где установлена Mac OS X. В этом файле записана информация об устройствах вашего компьютера, о выделении им памяти, об их IRQ и другая системная информация. Вобщем в умелых руках DSDT может помочь при установке и работе Retail.

Файл DSDT.aml мы будем компилировать из файла dsdt.dsl, в свою очередь dsdt.dsl мы будем “выдирать” из файла с биосом для материнской платы. Пока все это звучит запутанно, да и “компилировать” многих отпугнет. На деле все достаточно просто.

Для выполнения наших задач нам потребуются:

  • Работающий хакинтош или мак
  • PC с Windows XP/Vista (виртуальная машина тоже сойдет). В Windows должен быть установлен NET Framework 3.5
  • Программы ACPI Patcher и IORegistryExplorer
  • Загрузчик, поддерживающий DSDT. Я использовал PCEFI V9 от Netkas, модифицированный cVad. Кстати, ребята наши соотечественники, респект им!

Пак с необходимыми программами и загрузчиком PCEFI V9 можно скачать с Яблочек(13.7Мб).

Читайте также:  Перевести windows boot manager

Создание DSDT.aml

Для начала нужно вспомнить какая модель материнской платы в вашем хаке, после этого скачать самый свежий биос для нее. У меня это Asus P5B Deluxe, биос для асусовских MB можно скачать с support.asus.com.

Компьютера с Windows у меня под рукой не было, так что работал в виртуальной машине с Windows XP, для этого воспользовался Parallels Desktop. В VM была установлена Windows XP SP3 и NET Framework 3.5, насколько знаю ServicePack 3 не критичен, чего не скажешь о NET Framework. Также в Win была скопирована и запущена утилита ACPI Patcher версии 0.2 бета 4(см. ссылку выше). Скачать более новую версию ACPI Patcher’а можно с оригинального топика на insanelymac.com.


Открыв утилиту ACPI Patcher нужно выбрать тип BIOS(Award или AMI) и выбрать вкладку Export DSDT. В полях слева нужно указать местоположение скачанного биоса и папку, куда программа сохранит извлеченный файл dsdt.dsl. После этого нужно будет нажать Extract.

Теперь необходимо будет скомпилировать DSDT.aml из полученного при извлечении dsdt.dsl. Все это делается в той же программе ACPI Patcher под Windows. Сразу скажу, что программа иногда выдает ошибки, тогда просто попробуйте переименовать dsdt.dsl, например, в D.dsl. Откроем сверху вкладку D/C DSDT, укажем местоположение файла dsdt.dsl и путь к папке, куда сохранить скомпилированный DSDT.aml.


Cправа поставьте галочки у 3 пунктов: HPET Patch, RTC Patch и Aliases Patch. Кнопку Fixes трогать не нужно.

Переходим к следующей вкладке Network. Как следует из названия, здесь необходимо указать информацию о сетевой карте.


На этом этапе мноиге пользователи могут столкнуться с первыми серьезными проблемами. Чтобы указать верную информацию (два поля со списками) можно либо “заглянуть” в dsdt.dsl при помощи Wordpad и посмотреть информацию о сетевой карте или, что будет проще, воспользоваться утилитой IORegistryExplorer (см. ссылку выше). Что выбирать LAN0 или GIGE – большой роли не играет. Просто при выборе GIGE не забудьте поставить галочку у Fix GP9. Также рекомендую отметить пункт Use Time Machine Fix.

Следующая вкладка Graphics. Зеленые поля – для карт nVidia, красные для ATI. Карточки от ATI у меня нет, поэтому ничего посоветовать не смогу. Для nVidia все просто – указываем модель и объем памяти, а также разъемы.


Для nVidia рекомендую отмечать Use DSDT GFX. Для правильного заполнения остальных полей также пользуемся IORegistryExplorer.

Последняя вкладка называется Audio. Поддерживается только ALC 888/889.


После заполнения всех вкладок можно нажать на D/C и программа скомпилирует файл DSDT.aml.


Очень часто бывает, что что-то вы неправильно отметили или забыли и тогда при компиляции справа будет указан лог компиляции с количеством ошибок(Errors) и предупреждений(Warnings). Для исправления этих ошибок нам как раз и пригодиться кнопка Fixes во вкладке General. Старайтесь добиться компиляции с наименьшим числом предупреждений и количеством ошибок 0.

Установка Mac OS X Leopard Retail

Скомпилировав “правильный” DSDT.aml (переименуйте его именно так) можно приступать к установке Mac OS X Leopard Retail. Для этого я воспользовался методом установки с жесткого диска, к тому же так вы сразу узнаете правильный ли у вас DSDT.aml получился.

Сначала распакуйте образ с Mac OS X на раздел жесткого диска, после этого установите в этот раздел загрузчик PCEFI V9(см. ссылку выше), а потом скопируйте в корень жесткого диска DSDT.aml. Должно получиться примерно вот так:

Читайте также:  Как закрыть 135 порт windows 10


Затем необходимо загрузиться с этого раздела и действовать “по обстановке”. Всем желаю удачи в покорении Леопарда!

Источник

Компиляция DSDT

Поговорим о представленных на сайте Custom DSDT. Вот вы нашли от своей материнской платы файл DSDT(dsl) — это по сути текстовый файл, и в таком виде, в жизни вашего хакинтош, он участвует косвенно, до момента, пока с ним не поступят должным образом.

Что же с ним делать, рассмотрим в данной статье, и возможные нюансы.

  • Первое, что понадобится — это компилятор iASL>Скачать\Download (Скачать\Download)
  • Положить на «рабочий стол» скачанный файл(iasl), и в терминале выполнить команду: sudo mv

    Теперь можно компилировать нужный dsl файл, лучше всего показать как это должно выглядеть в терминале:

    Переход в папку Downloads, где лежит Asus P8B75-V.dsl файл, и его компилирование.
    На выходе получаем DSDT.aml

    Для просмотра DSL файла, рекомендуем использовать редактор MaciASL.

    Полученный DSDT.aml должен лежать по пути: EFI\EFI\CLOVER\ACPI\patched\

    Нюансы:

    Когда вы работаете с кастомным DSDT, в конфиге не должно быть никаких патчей и фиксов, всё что нужно, уже присутствует в нашем DSDT.

    Единственный фикс DSDT, который может понадобится — это FixRegions, но во многих представленных DSDT, отсутствует зависимость от адресов OperationRegion.

    Источник

    Установка Mac OS X на PC. Часть 6: DSDT

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

    DSDT — сравнительно молодой метод в искусстве хакинтоша: он зародился пару лет назад, и сегодня стал практически незаменимым подспорьем для любого владельца «хака». Тем не менее, многие пользователи, слышавшие о хакинтоше, смутно представляют себе сущность DSDT. Ещё больше заблуждений касаются его возможностей. Сегодня мы рассмотрим случаи, в которых метод DSDT действительно полезен, и ситуации, когда он совершенно бессилен.

    Для начала — расшифровка, которая, увы, мало что вам объяснит. DSDT означает Differentiated System Description Table. Эта «дифференцированная таблица описания системы» содержит сведения обо всех ключевых устройствах, из которых состоит компьютер, а также о параметрах и режимах их функционирования.

    Зачем это всё нужно на хакинтоше? Не секрет, что Маки и PC устроены по-разному, и сильно отличаются по целому ряду технических параметров. Начать можно с BIOS — на Маках его вообще нет, а в качестве замены выступает EFI. И хотя появление полноценного эмулятора EFI для PC не за горами, пока приходится сглаживать это различие другими способами. Если бы не было DSDT, то для корректной работы целого ряда устройств ПК с драйверами, входящими в состав Mac OS X, потребовались бы значительные усилия: например, пропатчивание BIOS.

    DSDT выступает посредником между драйверами и оборудованием, и это своего рода «подкладка» под BIOS. Специальный загрузчик Mac OS X при включении подгружает таблицу DSDT, и система думает, что имеет дело с немного другим BIOS. Файл с таблицей DSDT имеет расширение .aml, и работать с ним могут практически все современные загрузчики для хакинтоша: Chameleon, PC EFI, Boot Think и пр.

    Будем считать всё вышенаписанное небольшим вступлением, и перейдём к практической части в формате FAQ.

    В чём преимущества использования DSDT?

    В том, что Mac OS X сможет значительно лучше взаимодействовать с рядом устройств, что благополучно скажется на стабильности и производительности системы.

    Для чего подойдёт DSDT?

    Вот неполный список:

    • видеокарточка сможет работать без каких-либо сторонних кекстов
    • процессор от Intel сможет работать с профилями управления питанием и производительностью Apple (иными словами, не потребуется кекст NullCpuPowerManagement.kext)
    • вы избавитесь от всевозможных проблем с USB
    • выключение и перезагрузка компьютера будут работать без каких-либо дополнительных драйверов
    • значительно повысятся шансы иметь работающий режим сна

    Поработав над правкой DSDT, можно добиться поразительных результатов. Например, на компьютере автора установлен только один дополнительный кекст — FakeSMC.kext. Всё остальное — от Apple, и отлично работает.

    DSDT — это замена драйверам?

    Это самое распространённое заблуждение. Нет. DSDT — не драйвер, это способ указать системным драйверам Apple, как надо работать с вашими устройствами. Таким образом, если какое-нибудь устройство даже чисто теоретически несовместимо ни с одним из кекстов Mac OS X, то никакой DSDT-патчинг делу не поможет.

    Но ведь выше написано, что DSDT позволяет сократить количество кекстов! Как же так?

    Противоречия нет. DSDT поможет вам избавиться от мусора вроде всяких инжекторов — для звука, графики, твиков для правильного управления питанием и пр. Но настоящие драйверы, через которые идёт работа системы с устройствами, заменить нереально.

    А зачем возиться с DSDT, если со «всякими инжекторами» отлично всё работает?

    Довода два. Первый — сугубо практический. Чем меньше посторонних кекстов, тем проще будет переустановить систему. Второй — для людей, думающих о будущем. Есть вероятность, то с выходом очередного обновления Mac OS X инжекторы перестанут работать. А вот с DSDT такого не произойдёт — таблица делается раз и навсегда. Подложив один небольшой файлик с ней загрузчику, вы избавите себя от рутины по установке и подстройке многих кекстов.

    Неужели DSDT никогда не придётся менять?

    Увы, ничто не вечно. Стоит вам заменить процессор, нарастить количество оперативки или прикупить новую видеокарточку, как DSDT утратит актуальность, и его придётся переделать.

    Где взять это чудо?

    Лучше нигде не брать. Строго говоря, все DSDT-таблицы уникальны. Вы можете извлечь таблицу, актуальную именно для вашего компьютера. Тем не менее, если вам попалась DSDT-таблица от вашей же материнской платы, то можете смело пробовать. Для извлечения DSDT есть целый ряд инструментов, из которого особо выделим DSDTSE.

    А как происходит правка?

    Для правки полученный файл нужно декомпилировать, переведя его из языка, понятного машинам, в нормальный текст. Затем, по особым принципам правки, этот текст редактируется, туда добавляются куски, удаляется ненужное, и происходит обратный процесс — компиляция.

    Пример DSDT-кода

    Чем опасны эксперименты с DSDT?

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

    Во-вторых, можно доиграться и до аппаратных проблем. Теоретически, отклонения от нужных значений некоторых настроек могут погубить устройства, например, испортить видеокарточку. Поэтому никогда не редактируйте в DSDT то, что не знаете.

    Таким образом, DSDT — мощный инструмент, открывающий большие горизонты. Каждый месяц появляются новые открытия, и польза от DSDT только растёт. Постепенно наличие DSDT становится необходимостью: например, без него установка Snow Leopard на PC будет сопряжена с дополнительными проблемами.

    Источник

    Читайте также:  Kali linux с wi fi адаптерами
Оцените статью