Jump to content

Search the Community

Showing results for tags 'Intel'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • OSx86.net
    • Forum Rules
    • News and Announcements
    • Feedback
  • Support Forums
    • General Discussion
    • Guides & Tutorials
    • Bootloaders
    • OSx86.net Installation
    • OSx86.net Post Installation
    • Laptops / Notebooks
    • DSDT
    • Hardware questions
    • Frequently Asked Questions
    • International
    • Macintosh Support Forums
    • Virtual Appliance (VMware / Parallels)
    • Hackintosh Premium Support
  • Community Showcase
    • Contest
    • Dream Machine Project
    • Show your Hackintosh
  • Playground
    • Hobby Corner
    • Attic
    • Garage
    • Cellar
  • Archive
    • General Troubleshooting
    • Hardware and Drivers (Kexts)
    • Software (Windows)
    • Warn the World Campaign
    • EFi-X™ Users Anonymous

Categories

  • Hackintosh Guides
  • Reviews
  • News

Categories

  • Hackintosh Tools
  • Bootloaders
    • Chameleon
    • Clover
    • Ozmosis
  • Miscellaneous
  • Videocards
    • NVidia
    • ATI
    • Intel
  • Audio
  • Network
  • Chipset
  • USB Images / Packages
  • Kernels
  • ISO
  • DSDT
  • iOS Hack
  • BIOS

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location:


Interests


Biography


Location:


Interests


Occupation

Found 115 results

  1. miguelf1040

    AMD R9 380 macOS High Sierra

    Last year i tried to install Sierra but after installing it keped booting to a black screen, now i want to try with high sierra but i dont know what i have to do to get this to work. I heard about the whatevergreen and lilu kexts but i dont know what to do with them, can anyone help me solving this? my pc specs Intel Core i5-4460 3.20 GHz with iGPU Intel HD Graphics 4600 Asus H81M-A 8GB RAM Kingston Hyper x 1600 mhz Asus Strix R9 380 4GB
  2. Hi OSX86,I'm using a Dell All in one Inspiron 5348. It has a Pentium dual core G3240 Haswell clocked at 3.07 ghz in Mac. I've successfully booted and installed Mac Os X el capitan on an external hdd using a fake cpuid (0x0306E0) its ivybride. But my problem is the drivers. The only thing I could remotely do is wifi. I've installed the kexts for my wifi card. What I need is to install intel hd graphics (desktop) kexts and audio drivers (alc668)I've tried doing every method. Except for Ddst because I don't understand it whatsoever.Also found this thing called xcpm and was wondering if I can just spoof the graphics ids or something like that. Hopefully you guys can help me and thanks!
  3. ozziesironmanoffroad

    after processor upgrade sierra is very unstable

    So my hackintosh rig that ran almost perfectly on Sierra, with an i3 2120, was upgraded with an i7 2600k. Since then, it has been extremely unstable. A lot of times it wont boot, it will either KP out, or just shut down. Clover tends to freeze when I select 'boot verbose' so I can see whats going on. When it does boot, sometimes it works fine, but then within a couple of days it will start freaking out...email wont open due to a network issue, it wont load pages saying the dns is incomplete or whatever message. It did this after I overclocked to 4.4GHz, so I figured it was not liking the OC. okay, so I set it back to stock and it ran ok for a little while, then started doing the same things. I have nullcpupowermanagement.kext installed in the clover kexts folder for 10.12, but it loads intel anyway, and throttling does work... SMC sensors. This morning I started to do some homework, and it started not connecting and lagging bad. So I rebooted it, and it wont boot. I pulled the power plug out and held the power button for 30 seconds, just in case. Still wont boot. Tried multiple times, and wont boot. It keeps shutting down when it gets to the last part before the graphics load. So I think I have it narrowed down to the graphics.... but what I don't get is why its doing this all of a sudden. specs Asus P8Z68V-LE motherboard Intel i7 2600k 3.5GHz (don't have it overclocked unless I'm gaming in Windows) 24GB DDR3 memory Mac OS Sierra 12.12.3 ( I believe, cant boot it to check, it could possibly be .4) on a Samsung 120GB SSD CLOVER bootloader Windows 10 Professional on a 120GB Kingston SSD Geforce GTX 570 1GB even overclocked, after running Prime 95 all night, the highest temperature it hit was 67c, so at stock speeds I know that it is not overheating or anything. Thinking it needs a reinstall of Sierra, as the OS was a reimage from a test hard drive I installed and configured it on. Thoughts?
  4. Hello, I've successfully installed macOS Sierra (10.12.5) on my Lenovo Thinkpad x220i (2011). I followed the x220 mcdonnelltech guide which I had to remove AppleIntelHD3000GraphicsGLDriver.bundle kext as it prevented the os from booting up. Everything is working fine except the brightness (which I fixed via the guide) and QE/CI is not working. The dock is not transparent and images are failing to load in screensaver and I'm experiencing lags/delay in launchpad. I'm using all of the stock Intel graphics kexts except AppleIntelHD3000GraphicsGLDriver.bundle. How do I enable full QE/CI acceleration in Intel HD 3000? I believe that it could be achieved if I manage to get AppleIntelHD3000GraphicsGLDriver.bundle working but, I absolutely have no idea how (It shows white apple logo with a loading bar that is stuck on 0%, verbose mode shows nothing related to the problem. ). I also tried various patched Intel graphics kext which had no effects . The problem may lie in the config.plist, dsdt or the bios setting. My Specs: Intel HD 3000 Graphics 384mb Vendor: Intel (0x08086) Device ID: 0x0116 Revision ID: 0x0009 Resolution: 1366 x 768 Intel® Celeron® CPU 847 @ 1.10GHz smbios: MacBook Pro 8,1 clover: config.plist and dsdt are from the mcdonnelltech guide Any help would be really appreciated!
  5. Hello, I have a Gateway NE56R10u and I have a problem with Iatkos Mountain Lion booting. it will not go past apple logo with spinning wheel, but I can hear voiceover instructions after a few minutes. My pc specs are: Intel Celeron 1.7 GHz dual-core cpu Intel integrated HD graphics 4 Gb of ram 320 GB WD HDD. Running Windows 7,8.1 and mountain lion. I used easyBCD to make it work. Snow leopard worked fine when I used it. Refer to picture it never moves from there when done. There is disk activity at random times. I have tried -x and DSDT=null and cpus=1 someone please help.
  6. Hello! My brain got screwed () when I was trying to install Mac OS X 10.6.3 (and then updating it to 10.6.8). Laptop's specs: CPU: Intel Celeron Dual-Core T3000 GPU: Intel GMA4500 <--- the true pain in the butt Chipset: Intel Cantiga GL40 RAM: DDR2-667 2 Gb. I have a problem: 1. No GPU acceleration. Do QE & CL mean GPU acceleraion? ____ Pardon my English.
  7. Quero fazer meu hackintosh so que não sei se o meu notbook suporta o mac, alguém poderia ajudar-me a achar os kexts ou a versão do mac mais qualificada ? Eu ia instalar o Yosemite. Computador Tipo de Computador PC ACPI de base x64 (Mobile) Sistema operacional Microsoft Windows 10 Pro Placa mãe Tipo de processador Mobile DualCore Intel Celeron T3300, 2000 MHz (10 x 200) Nome da Placa Mãe Positivo N14 Chipset da Placa Mãe Intel Cantiga GL40 Memória do Sistema 2016 MB (DDR3-1333 DDR3 SDRAM) Tipo de BIOS AMI (01/09/12) Monitor Adaptador gráfico Mobile Intel(R) 4 Series Express Chipset Family (Microsoft Corporation - WDDM 1.1) (801368 KB) Adaptador gráfico Mobile Intel(R) 4 Series Express Chipset Family (Microsoft Corporation - WDDM 1.1) (801368 KB) Monitor InfoVision M140NWR2 R1 [14" LCD] (20061) Multimídia Adaptador de som IDT 92HD81B1X @ Intel 82801IB ICH9 - High Definition Audio Controller [A-3] Adaptador de som Intel Cantiga HDMI @ Intel 82801IB ICH9 - High Definition Audio Controller [A-3] Rede Adaptador de Rede JMicron PCI Express Fast Ethernet Adapter Adaptador de Rede Microsoft Wi-Fi Direct Virtual Adapter Adaptador de Rede Realtek RTL8188CE Wireless LAN 802.11n PCI-E NIC (192.168.0.133) Adaptador de Rede VirtualBox Host-Only Ethernet Adapter (192.168.56.1)
  8. Vote for your successful working GPU here ? ?. Make a post about : 1.Card name? 2.Working Method? 3. love/hate ? ? And ? As always 'well done you'?
  9. Hello. I have as Main components (as mentiond in the title)... PC with Intel Chipset X99 (ASUS X99-A). 64 GB Ram, Intel Xeon E5-1620-v3 (3.5GHz) and Radeon Graphic-Card (at the moment I don't remember the exact model/Graphic-Chip, but it is a 'Saphire'-Graphic-Card with an Radeon GPU and about 480 Shaders, with 1 GB DDR5 Graphic-Card-Ram) The main and general question is: Is it possible to install a hackintosch on a separated GPT partition with these Hardware-Components, using Clover in UEFI mode? Somebody in an another forum told me that it isn't possible with this Hardware, even if it is an Intel-based computer... Annotation: I'm new with Clover (first I found reFind)) and switch to GPT/EFI on my boot HDD about 2 months ago, but AFAIK at the moment, Clover should/could be the best solution to do this and set up a Hackintosch which this Hardware? A.
  10. Version 20160108

    540 downloads

    MaciASL 1.4 b270 Intel ACPI tools. The NEW version 20160108 compiled by me from original sources. Use iasl compiler with your MaciASL, DSDTSE or another editor (or Terminal). To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl6 for MaciASL 1.4 b270+ builds) For Terminal: simply copy all the utilities to /usr/local/bin or /usr/bin Then type in Terminal iasl [space] [keys separated with spaces] [space] and then drag'n'drop needed files to the Terminal's window. Or type cd [space] then drag'n'drop origin folder (press F4 in Clover's GUI) [Enter], then simply type needed command, like this: iasl -da -dl SSDT*.aml DSDT.aml // or if there are only DSDT and SSDTs in origin folder (w/o APIC, FADT, HPET, etc.), then type: iasl -da -dl *.aml Intel ACPI тулзы. Новая версия 20160108 скомпилирована мною из оригинальных сырцов. Для использования с ДСДТ редактором MaciASL, DSDTSE или другим (или Терминалом). Инсталим сюда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перетаскиваем драг-н-дропом на эту папку файл iasl, на замену соглашаемся. Имеем свежий компайлер. Для MaciASL перетаскиваем в подпапку Contents --> MacOS и даем ему имя iasl5 (или iasl6 для современных билдов MaciASL 1.4 b270+ ) Для Терминала: копируем все утилиты в папку /usr/local/bin или /usr/bin Затем в терминале набираем iasl [пробел] [ключи через пробел] [пробел] и перетаскиваем на окно Терминала требуемые файлы. Либо набираем cd [пробел] и перетаскиваем папку origin (снятую в ГУИ Кловера по F4) [Enter], затем набираем требуемую команду, например: iasl -da -dl SSDT*.aml DSDT.aml // или если в папке origin только таблицы DSDT и SSDTs (без остальных APIC, FADT HPET и т.д.), то: iasl -da -dl *.aml Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables ACPISpec ver. 6.0 / ACPI Спецификации 6.0 ACPI Spec ver. 5.1 / ACPI cпецификации верcии 5.1 ACPISPec ver. 5.1 Errata A / ACPI cпецификации 5.1 Иcправления А iASL HELP: New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL легаcи: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml To decompile all DSDT & SSDTs use -da key / Чтобы декомпилировать вcе DSDT и SSDT таблицы, иcпользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da -dl DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml iasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечиcлением вcе еще нераcпознанных методов и количеcтво Аргументов для каждого. Используйте ключ -fe: External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with allocated Arguments count (text file ref.txt) iasl -fe ref.txt -e SSDT*.aml -dl DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml The command in the Terminal should be like this (with full paths of the files): Команда в Терминале будет выглядеть так (с полными путями к файлам): 0:~ steve$ /Volumes/2\ UNIT\ 2T/MAC\ OS\ X\ \&\ HACK/ACPI/iASL_MAC/acpica-unix-20150619/iasl_20150619_64/iasl -fe /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt -e /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT*.aml -dl /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml After pressing the Return key you should see something like this. It means that all of SSDTs were connected to parsing (but this example shows that not all Externals were resolved).После нажатия клавиши Return вы увидите что-то наподобие этого. Это означает, что все ССДТ таблицы были прикреплены к парсингу (но в этом примере не были распознаны все External методы). Here is an example how disassembler parses the Externals. / Вот пример, как дизассемблер парсит External методы: External (_SB_.TPM_.CMOR, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_PR_.ACRT, FieldUnitObj) External (_PR_.CPU0._PPC, IntObj) External (_PR_.CPU0._PSS, PkgObj) External (_SB_.IAOE.ECTM, FieldUnitObj) External (_SB_.IAOE.IBT1, IntObj) External (_SB_.IAOE.ITMR, FieldUnitObj) External (_SB_.IAOE.PTSL, IntObj) External (_SB_.IAOE.RCTM, FieldUnitObj) External (_SB_.IAOE.WKRS, FieldUnitObj) External (_SB_.PCCD, UnknownObj) External (_SB_.PCCD.PENB, UnknownObj) External (_SB_.PCI0.B0D3.ABAR, FieldUnitObj) External (_SB_.PCI0.B0D3.BARA, IntObj) External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments External (_SB_.PCI0.GFX0.CLID, FieldUnitObj) External (_SB_.PCI0.GFX0.DD1F, UnknownObj) External (_SB_.PCI0.GFX0.DRDY, FieldUnitObj) External (_SB_.PCI0.GFX0.GSCI, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GSSE, FieldUnitObj) External (_SB_.PCI0.GFX0.STAT, FieldUnitObj) External (_SB_.PCI0.GFX0.TCHE, FieldUnitObj) External (_SB_.PCI0.PEG0, UnknownObj) External (_SB_.PCI0.PEG0.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP, UnknownObj) External (_SB_.PCI0.PEG1, UnknownObj) External (_SB_.PCI0.PEG1.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG2, UnknownObj) External (_SB_.PCI0.PEG2.HPME, MethodObj) // 0 Arguments External (D1F0, UnknownObj) External (D1F1, UnknownObj) External (D1F2, UnknownObj) External (DIDX, FieldUnitObj) External (GSMI, FieldUnitObj) External (PDC0, IntObj) External (PDC1, IntObj) External (PDC2, IntObj) External (PDC3, IntObj) External (PDC4, IntObj) External (PDC5, IntObj) External (PDC6, IntObj) External (PDC7, IntObj) External (SGMD, FieldUnitObj) And here you are a correctly disassembled Method ADBG, which refering to External Method MDBG with 1 Arg countВот пример корректно дизассемблированного метода ADBG, который ссылается на External метод MDBG c 1 Аргументом. External (MDBG, MethodObj) ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { Return (MDBG (Arg0)) // MDBG is an External reference Method, but there is no such method in ACPI tables. } Return (Zero) } But without ref.txt parsing will be incorrect and compiler will return an error, like this:Но без подключенного ref.txt файла парсинг кода пройдет неправильно и компилятор вернет ошибку компиляции: External (MDBG, IntObj) // Here is an ERROR ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { Return (MDBG) /* External reference */ // Here is an ERROR Arg0 // Here is an ERROR } Return (Zero) } Here is an original SSDT with MDBG method, which was lost. / Вот SSDT таблица c методом MDBG, которая была утеряна: DefinitionBlock ("MDBG.aml", "SSDT", 1, "Intel_", "ADebTabl", 0x00001000) { Scope (\) { Name (DPTR, 0x80000000) Name (EPTR, 0x80000000) Name (CPTR, 0x80000000) Mutex (MMUT, 0x00) Method (MDBG, 1, Serialized) { Store (Acquire (MMUT, 0x03E8), Local0) If (LEqual (Local0, Zero)) { OperationRegion (ABLK, SystemMemory, CPTR, 0x10) Field (ABLK, ByteAcc, NoLock, Preserve) { AAAA, 128 } Store (Arg0, AAAA) /* \MDBG.AAAA */ Add (CPTR, 0x10, CPTR) /* \CPTR */ If (LGreaterEqual (CPTR, EPTR)) { Add (DPTR, 0x10, CPTR) /* \CPTR */ } Release (MMUT) } Return (Local0) } } } =================== And more: if you need to decompile your custom DSDT with your patches and if it still has many External Methods, you need to use all of the SSDTs this time too. If you deleted all of the Externals and those dependencies in the code, then no need to decompile with SSDTs and refs. В дополнение: если вы решили декомпилировать свою кастомную DSDT с примененными патчами и в таблице все еще имеются в большом количестве External методы, в этом случае также требуется использовать терминал и включить в декомпиляцию все SSDT таблицы. Если вы удалили все External методы со всеми зависимостями в коде, тогда не требуется использовать при декомпиляции SSDT таблицы и реф.файлы. =================== Changelog: https://github.com/acpica/acpica/blob/master/documents/changes.txt
  11. What kernel to use with the Intel Atom N450? I am trying to install Mac OS X Mountain Lion. My netbook is the Acer Aspire One 532h. It has the Intel Atom N450 1.66 GHz. The N450 is 64-bit. I know that because, I put Windows 7 64-bit on this netbook, And because on the Intel ARK website it says it is 64-bit. ? What kernel should I use? I would like to get Mountain Lion on this Computer. I don't care if the Graphics Card work. That is another project for me. ? ? Thank You
  12. Version 20151124

    273 downloads

    ? The NEW version of MaciASL 1.4 b270 / ?ова? вер?и? MaciASL 1.4 b270 ? Intel ACPI tools. The NEW version 20151124 compiled by me from original sources. Use iasl compiler with your MaciASL, DSDTSE or another editor (or Terminal). To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl6 for MaciASL 1.4 b270+ builds) ? For Terminal: simply copy all the utilities to /usr/local/bin. Then type in Terminal iasl [space] [keys separated with spaces] [space] and then drag'n'drop needed files to the Terminal's window. Or type cd [space] then drag'n'drop origin folder (press F4 in Clover's GUI) [Enter], then simply type needed command, like this: iasl -da -dl SSDT*.aml DSDT.aml// or if there are only DSDT and SSDTs in origin folder (w/o APIC, FADT, HPET, etc.), then type:iasl -da -dl *.aml Intel ACPI тулзы. ?ова? вер?и? 20151124 ?компилирована мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором MaciASL, DSDTSE или другим (или Терминалом). Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl6 дл? ?овременных билдов MaciASL 1.4 b270+ ) ? Дл? Терминала: копируем в?е утилиты в папку /usr/local/bin. Затем в терминале набираем iasl [пробел] [ключи через пробел] [пробел] и перета?киваем на окно Терминала требуемые файлы. Либо набираем cd [пробел] и перета?киваем папку origin (?н?тую в ГУИ Кловера по F4) [Enter], затем набираем требуемую команду, например: iasl -da -dl SSDT*.aml DSDT.aml// или е?ли в папке origin только таблицы DSDT и SSDTs (без о?тальных APIC, FADT HPET и т.д.), то:iasl -da -dl *.aml Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities:AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables ? iASL HELP: Intel ACPI Component ArchitectureASL+ Optimizing Compiler version 20151124-64Copyright (c) 2000 - 2015 Intel CorporationSupports ACPI Specification Revision 6.0Usage: iasl [Options] [Files]Options:General: -@ <file> Specify command file -I <dir> Specify additional include directory -T <sig>|ALL|* Create table template file for ACPI <Sig> -p <prefix> Specify path/filename prefix for all output files -v Display compiler version -vo Enable optimization comments -vs Disable signonHelp: -h This message -hc Display operators allowed in constant expressions -hf Display help for output filename generation -hr Display ACPI reserved method names -ht Display currently supported ACPI table namesPreprocessor: -D <symbol> Define symbol for preprocessor use -li Create preprocessed output file (*.i) -P Preprocess only and create preprocessor output file (*.i) -Pn Disable preprocessorErrors, Warnings, and Remarks: -va Disable all errors/warnings/remarks -ve Report only errors (ignore warnings and remarks) -vi Less verbose errors and warnings for use with IDEs -vr Disable remarks -vw <messageid> Disable specific warning or remark -w1 -w2 -w3 Set warning reporting level -we Report warnings as errorsAML Code Generation (*.aml): -oa Disable all optimizations (compatibility mode) -of Disable constant folding -oi Disable integer optimization to Zero/One/Ones -on Disable named reference string optimization -ot Disable typechecking -cr Disable Resource Descriptor error checking -in Ignore NoOp operators -r <revision> Override table header Revision (1-255)Optional Source Code Output Files: -sc -sa Create source file in C or assembler (*.c or *.asm) -ic -ia Create include file in C or assembler (*.h or *.inc) -tc -ta -ts Create hex AML table in C, assembler, or ASL (*.hex) -so Create offset table in C (*.offset.h)Optional Listing Files: -l Create mixed listing file (ASL source and AML) (*.lst) -lm Create hardware summary map file (*.map) -ln Create namespace file (*.nsp) -ls Create combined source file (expanded includes) (*.src)Data Table Compiler: -G Compile custom table that contains generic operators -vt Create verbose template files (full disassembly)AML Disassembler: -d <f1 f2 ...> Disassemble or decode binary ACPI tables to file (*.dsl) (Optional, file type is automatically detected) -da <f1 f2 ...> Disassemble multiple tables from single namespace -db Do not translate Buffers to Resource Templates -dc <f1 f2 ...> Disassemble AML and immediately compile it (Obtain DSDT from current system if no input file) -df Force disassembler to assume table contains valid AML -dl Emit legacy ASL code only (no C-style operators) -e <f1 f2 ...> Include ACPI table(s) for external symbol resolution -fe <file> Specify external symbol declaration file -in Ignore NoOp opcodes -l Disassemble to mixed ASL and AML code -vt Dump binary table data in hex format within output fileDebug Options: -bf Create debug file (full output) (*.txt) -bs Create debug file (parse tree only) (*.txt) -bp <depth> Prune ASL parse tree -bt <type> Object type to be pruned from the parse tree -f Ignore errors, force creation of AML output file(s) -m <size> Set internal line buffer size (in Kbytes) -n Parse only, no output generation -oc Display compile times and statistics -x <level> Set debug level for trace output -z Do not insert new compiler ID for DataTables ACPISpec ver. 6.0 / ACPI Спецификации 6.0 ? ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 ACPISPec ver. 5.1 Errata A / ACPI ?пецификации 5.1 И?правлени? ? ? Attension / Внимание :: =========================== Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty Summary window, the bottom line shows correctly number of the errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's.? Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. =========================== ? IMPORTANT / В?Ж?О : =========================== To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : ? Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : ? New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.amliasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.amliasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml =============================== ? To decompile all DSDT & SSDTs use -da key / Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.amliasl -da -dl DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.amliasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe: =============================== External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with allocated Arguments count (text file ref.txt) iasl -fe ref.txt -e SSDT*.aml -dl DSDT.amliasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.amliasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.amliasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml =============================== ? The command in the Terminal should be like this (with full paths of the files): Команда в Терминале будет выгл?деть так (? полными пут?ми к файлам): 0:~ steve$ /Volumes/2\ UNIT\ 2T/MAC\ OS\ X\ \&\ HACK/ACPI/iASL_MAC/acpica-unix-20150619/iasl_20150619_64/iasl -fe /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt -e /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT*.aml -dl /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml After pressing the Return key you should see something like this. It means that all of SSDTs were connected to parsing (but this example shows that not all Externals were resolved). По?ле нажати? клавиши Return вы увидите что-то наподобие ?того. Это означает, что в?е ССДТ таблицы были прикреплены к пар?ингу (но в ?том примере не были ра?познаны в?е External методы). Intel ACPI Component ArchitectureASL+ Optimizing Compiler version 20150619-64Copyright (c) 2000 - 2015 Intel CorporationReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml - Length 00081138 (0x013CF2)ACPI: DSDT 0x0000000000000000 013CF2 (v02 _ASUS_ Notebook 00000012 INTL 20120711)Acpi table [DSDT] successfully installed and loadedReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-9.aml - Length 00006602 (0x0019CA)ACPI: SSDT 0x0000000000000000 0019CA (v01 OptRef OptTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-8.aml - Length 00006531 (0x001983)ACPI: SSDT 0x0000000000000000 001983 (v01 SgRef SgPeg 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-7.aml - Length 00017729 (0x004541)ACPI: SSDT 0x0000000000000000 004541 (v01 SaSsdt SaSsdt 00003000 INTL 20091112)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-6.aml - Length 00000664 (0x000298)ACPI: SSDT 0x0000000000000000 000298 (v01 SataRe SataTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-5x.aml - Length 00000281 (0x000119)ACPI: SSDT 0x0000000000000000 000119 (v01 PmRef ApCst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-4x.aml - Length 00000979 (0x0003D3)ACPI: SSDT 0x0000000000000000 0003D3 (v01 PmRef Cpu0Cst 00003001 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-3x.aml - Length 00001450 (0x0005AA)ACPI: SSDT 0x0000000000000000 0005AA (v01 PmRef ApIst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-2.aml - Length 00002776 (0x000AD8)ACPI: SSDT 0x0000000000000000 000AD8 (v01 PmRef CpuPm 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-1.aml - Length 00001337 (0x000539)ACPI: SSDT 0x0000000000000000 000539 (v01 PmRef Cpu0Ist 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-0.aml - Length 00000413 (0x00019D)ACPI: SSDT 0x0000000000000000 00019D (v01 Intel zpodd 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (1 arguments) MDBG/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (4 arguments) _SB_.PCI0.GFX0._DSM/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Imported 2 external method definitionsPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedFound 31 external control methods, reparsing with new informationPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedDisassembly completedASL Output: /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.dsl - 748426 bytesiASL Warning: There were 31 external control methods found duringdisassembly, but only 25 were resolved (6 unresolved). AdditionalACPI tables may be required to properly disassemble the code. Theresulting disassembler output file may not compile because thedisassembler did not know how many arguments to assign to theunresolved methods. Note: SSDTs can be dynamically loaded atruntime and may or may not be available via the host OS.If necessary, the -fe option can be used to specify a file containingcontrol method external declarations with the associated methodargument counts. Each line of the file must be of the form: External (<method pathname>, MethodObj, <argument count>)Invocation: iasl -fe refs.txt -d dsdt.aml Here is an example how disassembler parses the Externals. / Вот пример, как диза??емблер пар?ит External методы. External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.RP05.PEGP.EPON, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unresolved method, guessing 1 arguments External (PS0X, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (PS3X, MethodObj) // Warning: Unresolved method, guessing 0 arguments /* * External declarations that were imported from * the reference file [/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt] */ External (_SB_.PCI0.GFX0._DSM, MethodObj) // 4 Arguments External (MDBG, MethodObj) // 1 Arguments External (_PR_.CPU0._PPC, IntObj) External (_PR_.CPU0._PSS, PkgObj) External (_SB_.IAOE.ECTM, UnknownObj) External (_SB_.IAOE.FFSE, UnknownObj) External (_SB_.IAOE.IBT1, UnknownObj) External (_SB_.IAOE.ITMR, UnknownObj) External (_SB_.IAOE.PTSL, UnknownObj) External (_SB_.IAOE.RCTM, UnknownObj) External (_SB_.IAOE.WKRS, UnknownObj) External (_SB_.IFFS.FFSS, UnknownObj) External (_SB_.PCCD, UnknownObj) External (_SB_.PCCD.PENB, UnknownObj) External (_SB_.PCI0.B0D3.ABAR, FieldUnitObj) External (_SB_.PCI0.B0D3.BARA, IntObj) External (_SB_.PCI0.GFX0.ADVD, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments External (_SB_.PCI0.GFX0.CBLV, FieldUnitObj) External (_SB_.PCI0.GFX0.CLID, FieldUnitObj) External (_SB_.PCI0.GFX0.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GCBL, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GCDS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GLID, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GSCI, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GSSE, FieldUnitObj) External (_SB_.PCI0.GFX0.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.OPTS, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.OWAK, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.STAT, FieldUnitObj) External (_SB_.PCI0.GFX0.SWHD, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.TCHE, FieldUnitObj) External (_SB_.PCI0.GFX0.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0, UnknownObj) External (_SB_.PCI0.PEG0.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP, UnknownObj) External (_SB_.PCI0.PEG0.PEGP.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.EPON, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG1, UnknownObj) External (_SB_.PCI0.PEG1.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG2, UnknownObj) External (_SB_.PCI0.PEG2.HPME, MethodObj) // 0 Arguments External (GSMI, FieldUnitObj) External (LIDS, FieldUnitObj) External (PCCD, UnknownObj) External (PDC0, IntObj) External (PDC1, IntObj) External (PDC2, IntObj) External (PDC3, IntObj) External (PDC4, IntObj) External (PDC5, IntObj) External (PDC6, IntObj) External (PDC7, IntObj) External (SGMD, FieldUnitObj) And here you are a correctly disassembled Method ADBG, which refering to External Method MDBG with 1 Arg count Вот пример корректно диза??емблированного метода ADBG, который ??ылает?? на External метод MDBG c 1 ?ргументом. External (MDBG, MethodObj) ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG (Arg0)) // MDBG is an External reference Method, but there is no such method in ACPI tables. } Return (Zero) } But without ref.txt parsing will be incorrect and compiler will return an error, like this: ?о без подключенного ref.txt файла пар?инг кода пройдет неправильно и компил?тор вернет ошибку компил?ции: External (MDBG, IntObj) // Here is an ERROR// ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG) // Here is an ERROR Arg0 // Here is an ERROR } Return (Zero) } Here is an original SSDT with MDBG method, which was lost. / Вот SSDT таблица ? методом MDBG, котора? была утер?на: DefinitionBlock ("MDBG.aml", "SSDT", 1, "Intel_", "ADebTabl", 0x00001000){ Scope (\) { Name (DPTR, 0x80000000) Name (EPTR, 0x80000000) Name (CPTR, 0x80000000) Mutex (MMUT, 0x00) Method (MDBG, 1, Serialized) { Store (Acquire (MMUT, 0x03E8), Local0) If (LEqual (Local0, Zero)) { OperationRegion (ABLK, SystemMemory, CPTR, 0x10) Field (ABLK, ByteAcc, NoLock, Preserve) { AAAA, 128 } Store (Arg0, AAAA) /* \MDBG.AAAA */ Add (CPTR, 0x10, CPTR) /* \CPTR */ If (LGreaterEqual (CPTR, EPTR)) { Add (DPTR, 0x10, CPTR) /* \CPTR */ } Release (MMUT) } Return (Local0) } }} =================== And more: if you need to decompile your custom DSDT with your patches and if it still has many External Methods, you need to use all of the SSDTs this time too. If you deleted all of the Externals and those dependencies in the code, then no need to decompile with SSDTs and refs. ? В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами и в таблице в?е еще имеют?? в большом количе?тве External методы, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Е?ли вы удалили в?е External методы ?о в?еми зави?имо?т?ми в коде, тогда не требует?? и?пользовать при декомпил?ции SSDT таблицы и реф.файлы. =================== ? Changelog 20151124: ? 24 November 2015. Summary of changes for version 20151124: ? 1) ACPICA kernel-resident subsystem: Fixed a possible regression for a previous update to FADT handling. The FADT no longer has a fixed table ID, causing some issues with code that was hardwired to a specific ID. Lv Zheng. Fixed a problem where the method auto-serialization could interfere with the current SyncLevel. This change makes the auto-serialization support transparent to the SyncLevel support and management. Removed support for the _SUB predefined name in AcpiGetObjectInfo. This interface is intended for early access to the namespace during the initial namespace device discovery walk. The _SUB method has been seen to access operation regions in some cases, causing errors because the operation regions are not fully initialized. AML Debugger: Fixed some issues with the terminate/quit/exit commands that can cause faults. Lv Zheng. AML Debugger: Add thread ID support so that single-step mode only applies to the AML Debugger thread. This prevents runtime errors within some kernels. Lv Zheng. Eliminated extraneous warnings from AcpiGetSleepTypeData. Since the _Sx methods that are invoked by this interface are optional, removed warnings emitted for the case where one or more of these methods do not exist. ACPICA BZ 1208, original change by Prarit Bhargava. Made a major pass through the entire ACPICA source code base to standardize formatting that has diverged a bit over time. There are no functional changes, but this will of course cause quite a few code differences from the previous ACPICA release. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. ? Current Release:Non-Debug Version: 102.0K Code, 28.3K Data, 130.3K Total Debug Version: 199.6K Code, 81.8K Data, 281.4K Total Previous Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.3K Code, 81.4K Data, 280.7K Total ? 2) iASL Compiler/Disassembler and Tools:iASL/acpiexec/acpixtract/disassembler: Added support to allow multiple definition blocks within a single ASL file and the resulting AML file. Support for this type of file was also added to the various tools that use binary AML files: acpiexec, acpixtract, and the AML disassembler. The example code below shows two definition blocks within the same file: DefinitionBlock ("dsdt.aml", "DSDT", 2, "Intel", "Template", 0x12345678) {...} DefinitionBlock ("", "SSDT", 2, "Intel", "Template", 0xABCDEF01) {...} iASL: Enhanced typechecking for the Name() operator. All expressions for the value of the named object must be reduced/folded to a single constant at compile time, as per the ACPI specification (the AML definition of Name()). iASL: Fixed some code indentation issues for the -ic and -ia options (C and assembly headers). Now all emitted code correctly begins in column 1. iASL: Added an error message for an attempt to open a Scope() on an object defined in an SSDT. The DSDT is always loaded into the namespace first, so any attempt to open a Scope on an SSDT object will fail at runtime. ? OLD CHANCHELOG: ? ---------------------------------------- 30 September 2015. Summary of changes for version 20150930: ? 1) ACPICA kernel-resident subsystem:Debugger: Implemented several changes and bug fixes to assist support for the in-kernel version of the AML debugger. Lv Zheng. - Fix the "predefined" command for in-kernel debugger. - Do not enter debug command loop for the help and version commands. - Disallow "execute" command during execution/single-step of a method. Interpreter: Updated runtime typechecking for all operators that have target operands. The operand is resolved and validated that it is legal. For example, the target cannot be a non-data object such as a Device, Mutex, ThermalZone, etc., as per the ACPI specification. Debugger: Fixed the double-mutex user I/O handshake to work when local deadlock detection is enabled. Debugger: limited display of method locals and arguments (LocalX and ArgX) to only those that have actually been initialized. This prevents lines of extraneous output. Updated the definition of the NFIT table to correct the bit polarity of one flag: ACPI_NFIT_MEM_ARMED --> ACPI_NFIT_MEM_NOT_ARMED Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release:Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.3K Code, 81.4K Data, 280.7K Total Previous Release: Non-Debug Version: 101.3K Code, 27.7K Data, 129.0K Total Debug Version: 198.6K Code, 80.9K Data, 279.5K Total 2) iASL Compiler/Disassembler and Tools:iASL: Improved the compile-time typechecking for operands of many of the ASL operators: -- Added an option to disable compiler operand/operator typechecking (-ot). -- For the following operators, the TermArg operands are now validated when possible to be Integer data objects: BankField, OperationRegion, DataTableRegion, Buffer, and Package. -- Store (Source, Target): Both the source and target operands are resolved and checked that the operands are both legal. For example, neither operand can be a non-data object such as a Device, Mutex, ThermalZone, etc. Note, as per the ACPI specification, the CopyObject operator can be used to store an object to any type of target object. -- Store (Source, Target): If the source is a Package object, the target must be a Package object, LocalX, ArgX, or Debug. Likewise, if the target is a Package, the source must also be a Package. -- Store (Source, Target): A warning is issued if the source and target resolve to the identical named object. -- Store (Source, <method invocation>): An error is generated for the target method invocation, as this construct is not supported by the AML interpreter. -- For all ASL math and logic operators, the target operand must be a data object (Integer, String, Buffer, LocalX, ArgX, or Debug). This includes the function return value also. -- External declarations are also included in the typechecking where possible. External objects defined using the UnknownObj keyword cannot be typechecked, however. iASL and Disassembler: Added symbolic (ASL+) support for the ASL Index operator: - Legacy code: Index (PKG1, 3) - New ASL+ code: PKG1 [3] This completes the ACPI 6.0 ASL+ support as it was the only operator not supported. iASL: Fixed the file suffix for the preprocessor output file (.i). Two spaces were inadvertently appended to the filename, causing file access and deletion problems on some systems. ASL Test Suite (ASLTS): Updated the master makefile to generate all possible compiler output files when building the test suite -- thus exercising these features of the compiler. These files are automatically deleted when the test suite exits. ---------------------------------------- 18 August 2015. Summary of changes for version 20150818: ? 1) ACPICA kernel-resident subsystem:Fix a regression for AcpiGetTableByIndex interface causing it to fail. Lv Zheng. ACPICA BZ 1186. Completed development to ensure that the ACPICA Disassembler and Debugger are fully standalone components of ACPICA. Removed cross-component dependences. Lv Zheng. The max-number-of-AML-loops is now runtime configurable (previously was compile-time only). This is essentially a loop timeout to force-abort infinite AML loops. ACPCIA BZ 1192. Debugger: Cleanup output to dump ACPI names and namepaths without any trailing underscores. Lv Zheng. ACPICA BZ 1135. Removed unnecessary conditional compilations across the Debugger and Disassembler components where entire modules could be left uncompiled. The aapits test is deprecated and has been removed from the ACPICA git tree. The test has never been completed and has not been maintained, thus becoming rather useless. ACPICA BZ 1015, 794. A batch of small changes to close bugzilla and other reports: - Remove duplicate code for _PLD processing. ACPICA BZ 1176. - Correctly cleanup after a ACPI table load failure. ACPICA BZ 1185. - iASL: Support POSIX yacc again in makefile. Jung-uk Kim. - ACPI table support: general cleanup and simplification. Lv Zheng, Bob Moore. - ACPI table support: fix for a buffer read overrun in AcpiTbFindTable. ACPICA BZ 1184. - Enhance parameter validation for DataTableRegion and LoadTable ASL/AML operators. - Debugger: Split debugger initialization/termination interfaces. Lv Zheng. - AcpiExec: Emit OemTableId for SSDTs during the load phase for table identification. - AcpiExec: Add debug message during _REG method phase during table load/init. - AcpiNames: Fix a regression where some output was missing and no longer emitted. - Debugger: General cleanup and simplification. Lv Zheng. - Disassembler: Cleanup use of several global option variables. Lv Zheng. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 101.3K Code, 27.7K Data, 129.0K Total Debug Version: 198.6K Code, 80.9K Data, 279.5K Total Previous Release:Non-Debug Version: 100.9K Code, 24.5K Data, 125.4K Total Debug Version: 197.8K Code, 81.5K Data, 279.3K Total 2) iASL Compiler/Disassembler and Tools: AcpiExec: Fixed a problem where any more than 32 ACPI tables in the XSDT were not handled properly and caused load errors. Now, properly invoke and use the ACPICA auto-reallocate mechanism for ACPI table data structures. ACPICA BZ 1188 AcpiNames: Add command-line wildcard support for ACPI table files. ACPICA BZ 1190. AcpiExec and AcpiNames: Add -l option to load ACPI tables only. For AcpiExec, this means that no control methods (like _REG/_INI/_STA) are executed during initialization. ACPICA BZ 1187, 1189. iASL/Disassembler: Implemented a prototype "listing" mode that emits AML that corresponds to each disassembled ASL statement, to simplify debugging. ACPICA BZ 1191. Debugger: Add option to the "objects" command to display a summary of the current namespace objects (Object type and count). This is displayed if the command is entered with no arguments. AcpiNames: Add -x option to specify debug level, similar to AcpiExec. ---------------------------------------- 17 July 2015. Summary of changes for version 20150717: ? 1) ACPICA kernel-resident subsystem:Improved the partitioning between the Debugger and Disassembler components. This allows the Debugger to be used standalone within kernel code without the Disassembler (which is used for single stepping also). This renames and moves one file, dmobject.c to dbobject.c. Lv Zheng. Debugger: Implemented a new command to trace the execution of control methods (Trace). This is especially useful for the in-kernel version of the debugger when file I/O may not be available for method trace output. See the ACPICA reference for more information. Lv Zheng. Moved all C library prototypes (used for the local versions of these functions when requested) to a new header, acclib.hCleaned up the use of non-ANSI C library functions. These functions are implemented locally in ACPICA. Moved all such functions to a common source file, utnonansi.c Debugger: Fixed a problem with the "!!" command (get last command executed) where the debugger could enter an infinite loop and eventually crash. Removed the use of local macros that were used for some of the standard C library functions to automatically cast input parameters. This mostly affected the is* functions where the input parameter is defined to be an int. This required a few modifications to the main ACPICA source code to provide casting for these functions and eliminate possible compiler warnings for these parameters. Across the source code, added additional status/error checking to resolve issues discovered by static source code analysis tools such as Coverity. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 100.9K Code, 24.5K Data, 125.4K Total Debug Version: 197.8K Code, 81.5K Data, 279.3K Total Previous Release:Non-Debug Version: 100.6K Code, 27.6K Data, 128.2K Total Debug Version: 196.2K Code, 81.0K Data, 277.2K Total 2) iASL Compiler/Disassembler and Tools: iASL: Fixed a regression where the device map file feature no longer worked properly when used in conjunction with the disassembler. It only worked properly with the compiler itself. iASL: Implemented a new warning for method LocalX variables that are set but never used (similar to a C compiler such as gcc). This also applies to ArgX variables that are not defined by the parent method, and are instead (legally) used as local variables. iASL/Preprocessor: Finished the pass-through of line numbers from the preprocessor to the compiler. This ensures that compiler errors/warnings have the correct original line numbers and filenames, regardless of any #include files. iASL/Preprocessor: Fixed a couple of issues with comment handling and the pass-through of comments to the preprocessor output file (which becomes the compiler input file). Also fixed a problem with // comments that appear after a math expression. iASL: Added support for the TCPA server table to the table compiler and template generator. (The client table was already previously supported) iASL/Preprocessor: Added a permanent #define of the symbol "__IASL__" to identify the iASL compiler. Cleaned up the use of the macros NEGATIVE and POSITIVE which were defined multiple times. The new names are ACPI_SIGN_NEGATIVE and ACPI_SIGN_POSITIVE. AcpiHelp: Update to expand help messages for the iASL preprocessor directives. ---------------------------------------- ? 19 June 2015. Summary of changes for version 20150619: ? Two regressions in version 20150616 have been addressed:Fixes some problems/issues with the C library macro removal (ACPI_STRLEN, etc.) This update changes ACPICA to only use the standard headers for functions, or the prototypes for the local versions of the C library functions. Across the source code, this required some additional casts for some Clib invocations for portability. Moved all local prototypes to a new file, acclib.h Fixes several problems with recent changes to the handling of the FACS table that could cause some systems not to boot. ---------------------------------------- 16 June 2015. Summary of changes for version 20150616: ? 1) ACPICA kernel-resident subsystem: Across the entire ACPICA source code base, the various macros for the C library functions (such as ACPI_STRLEN, etc.) have been removed and replaced by the standard C library names (strlen, etc.) The original purpose for these macros is no longer applicable. This simplification reduces the number of macros used in the ACPICA source code significantly, improving readability and maintainability. Implemented support for a new ACPI table, the OSDT. This table, the "override" SDT, can be loaded directly by the host OS at boot time. It enables the replacement of existing namespace objects that were installed via the DSDT and/or SSDTs. The primary purpose for this is to replace buggy or incorrect ASL/AML code obtained via the BIOS. The OSDT is slated for inclusion in a future version of the ACPI Specification. Lv Zheng/Bob Moore. Added support for systems with (improperly) two FACS tables -- a "32-bit" table (via FADT 32-bit legacy field) and a "64-bit" table (via the 64-bit X field). This change will support both automatically. There continues to be systems found with this issue. This support requires a change to the AcpiSetFirmwareWakingVector interface. Also, a public global variable has been added to allow the host to select which FACS is desired (AcpiGbl_Use32BitFacsAddresses). See the ACPICA reference for more details Lv Zheng. Added a new feature to allow for systems that do not contain an FACS. Although this is already supported on hardware-reduced platforms, the feature has been extended for all platforms. The reasoning is that we do not want to abort the entire ACPICA initialization just because the system is seriously buggy and has no FACS. Fixed a problem where the GUID strings for NFIT tables (in acuuid.h) were not correctly transcribed from the ACPI specification in ACPICA version 20150515. Implemented support for the _CLS object in the AcpiGetObjectInfo external interface. Updated the definitions of the TCPA and TPM2 ACPI tables to the more recent TCG ACPI Specification, December 14, 2014. Table disassembler and compiler also updated. Note: The TCPA "server" table is not supported by the disassembler/table-compiler at this time. ACPI 6.0: Added definitions for the new GIC version field in the MADT. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release:Non-Debug Version: 100.6K Code, 27.6K Data, 128.2K Total Debug Version: 196.2K Code, 81.0K Data, 277.2K Total Previous Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total 2) iASL Compiler/Disassembler and Tools:Disassembler: Fixed a problem with the new symbolic operator disassembler where incorrect ASL code could be emitted in some cases for the "non-commutative" operators -- Subtract, Divide, Modulo, ShiftLeft, and ShiftRight. The actual problem cases seem to be rather unusual in common ASL code, however. David Box. Modified the linux version of acpidump to obtain ACPI tables from not just /dev/mem (which may not exist) and /sys/firmware/acpi/tables. Lv Zheng. iASL: Fixed a problem where the user preprocessor output file (.i) contained extra data that was not expected. The compiler was using this file as a temporary file and passed through #line directives in order to keep compiler error messages in sync with the input file and line number across multiple include files. The (.i) is no longer a temporary file as the compiler uses a new, different file for the original purpose. iASL: Fixed a problem where comments within the original ASL source code file were not passed through to the preprocessor output file, nor any listing files. iASL: Fixed some issues for the handling of the "#include" preprocessor directive and the similar (but not the same) "Include" ASL operator. iASL: Add support for the new OSDT in both the disassembler and compiler. iASL: Fixed a problem with the constant folding support where a Buffer object could be incorrectly generated (incorrectly formed) during a conversion to a Store() operator. AcpiHelp: Updated for new NFIT GUIDs, "External" AML opcode, and new description text for the _REV predefined name. _REV now permanently returns 2, as per the ACPI 6.0 specification. Debugger: Enhanced the output of the Debug ASL object for references produced by the Index operator. For Buffers and strings, only output the actual byte pointed to by the index. For packages, only print the single package element decoded by the index. Previously, the entire buffer/string/package was emitted. iASL/Table-compiler: Fixed a regression where the "generic" data types were no longer recognized, causing errors. --------------------------------------------- 08 April 2015. Summary of changes for version 20150515: ? This release implements most of ACPI 6.0 as described below. ? 1) ACPICA kernel-resident subsystem: Implemented runtime argument checking and return value checking for all new ACPI 6.0 predefined names. This includes: _BTH, _CR3, _DSD, _LPI, _MTL, _PRR, _RDI, _RST, _TFP, _TSN. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release:Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total Previous Release: Non-Debug Version: 99.1K Code, 27.3K Data, 126.4K Total Debug Version: 192.8K Code, 79.9K Data, 272.7K Total 2) iASL Compiler/Disassembler and Tools:iASL compiler: Added compile-time support for all new ACPI 6.0 predefined names (argument count validation and return value typechecking.) iASL disassembler and table compiler: implemented support for all new ACPI 6.0 tables. This includes: DRTM, IORT, LPIT, NFIT, STAO, WPBT, XENV. iASL disassembler and table compiler: Added ACPI 6.0 changes to existing tables: FADT, MADT. iASL preprocessor: Added a new directive to enable inclusion of binary blobs into ASL code. The new directive is #includebinary. It takes a binary file as input and emits a named ascii buffer object into the ASL code. AcpiHelp: Added support for all new ACPI 6.0 predefined names. AcpiHelp: Added a new option, -d, to display all iASL preprocessor directives. AcpiHelp: Added a new option, -t, to display all known/supported ACPI tables. ---------------------------------------- 10 April 2015. Summary of changes for version 20150410: Reverted a change introduced in version 20150408 that caused a regression in the disassembler where incorrect operator symbols could be emitted. ---------------------------------------- 08 April 2015. Summary of changes for version 20150408: ? 1) ACPICA kernel-resident subsystem:Permanently set the return value for the _REV predefined name. It now returns 2 (was 5). This matches other ACPI implementations. _REV will be deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2 for ACPI 2.0 and later. It should never be used to differentiate or identify operating systems. Added the "Windows 2015" string to the _OSI support. ACPICA will now return TRUE to a query with this string. Fixed several issues with the local version of the printf function. Added the C99 compiler option (-std=c99) to the Unix makefiles. Current Release: Non-Debug Version: 99.9K Code, 27.4K Data, 127.3K Total Debug Version: 195.2K Code, 80.7K Data, 275.9K
  13. Version 20150930

    402 downloads

    The NEW version of MaciASL 1.3 b265 / ?ова? вер?и? MaciASL 1.3 b265 Intel ACPI tools. The NEW version 20150930 compiled by me from original sources. Use iasl compiler with your MaciASL, DSDTSE or another editor (or Terminal). To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl51 for MaciASL 1.3 b262+ builds) Intel ACPI тулзы. ?ова? вер?и? 20150930 их ?компилирована мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором MaciASL, DSDTSE или другим (или Терминалом). Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl51 дл? ?овременных билдов MaciASL 1.3 b262+ ) Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables iASL HELP: Supports ACPI Specification Revision 6.0 Usage: iasl [Options] [Files] Options: General: -@ <file> Specify command file -I <dir> Specify additional include directory -T <sig>|ALL|* Create table template file for ACPI <Sig> -p <prefix> Specify path/filename prefix for all output files -v Display compiler version -vo Enable optimization comments -vs Disable signon Help: -h This message -hc Display operators allowed in constant expressions -hf Display help for output filename generation -hr Display ACPI reserved method names -ht Display currently supported ACPI table names Preprocessor: -D <symbol> Define symbol for preprocessor use -li Create preprocessed output file (*.i) -P Preprocess only and create preprocessor output file (*.i) -Pn Disable preprocessor Errors, Warnings, and Remarks: -va Disable all errors/warnings/remarks -ve Report only errors (ignore warnings and remarks) -vi Less verbose errors and warnings for use with IDEs -vr Disable remarks -vw <messageid> Disable specific warning or remark -w1 -w2 -w3 Set warning reporting level -we Report warnings as errors AML Code Generation (*.aml): -oa Disable all optimizations (compatibility mode) -of Disable constant folding -oi Disable integer optimization to Zero/One/Ones -on Disable named reference string optimization -ot Disable typechecking -cr Disable Resource Descriptor error checking -in Ignore NoOp operators -r <revision> Override table header Revision (1-255) Optional Source Code Output Files: -sc -sa Create source file in C or assembler (*.c or *.asm) -ic -ia Create include file in C or assembler (*.h or *.inc) -tc -ta -ts Create hex AML table in C, assembler, or ASL (*.hex) -so Create offset table in C (*.offset.h) Optional Listing Files: -l Create mixed listing file (ASL source and AML) (*.lst) -lm Create hardware summary map file (*.map) -ln Create namespace file (*.nsp) -ls Create combined source file (expanded includes) (*.src) Data Table Compiler: -G Compile custom table that contains generic operators -vt Create verbose template files (full disassembly) AML Disassembler: -d <f1 f2 ...> Disassemble or decode binary ACPI tables to file (*.dsl) (Optional, file type is automatically detected) -da <f1 f2 ...> Disassemble multiple tables from single namespace -db Do not translate Buffers to Resource Templates -dc <f1 f2 ...> Disassemble AML and immediately compile it (Obtain DSDT from current system if no input file) -df Force disassembler to assume table contains valid AML -dl Emit legacy ASL code only (no C-style operators) -e <f1 f2 ...> Include ACPI table(s) for external symbol resolution -fe <file> Specify external symbol declaration file -in Ignore NoOp opcodes -l Disassemble to mixed ASL and AML code -vt Dump binary table data in hex format within output file Debug Options: -bf Create debug file (full output) (*.txt) -bs Create debug file (parse tree only) (*.txt) -bp <depth> Prune ASL parse tree -bt <type> Object type to be pruned from the parse tree -f Ignore errors, force creation of AML output file(s) -m <size> Set internal line buffer size (in Kbytes) -n Parse only, no output generation -oc Display compile times and statistics -x <level> Set debug level for trace output -z Do not insert new compiler ID for DataTables ACPISpec ver. 6.0 / ACPI Спецификации 6.0 ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 ACPISPec ver. 5.1 Errata A / ACPI ?пецификации 5.1 И?правлени? ? Attension / Внимание :: =========================== Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty Summary window, the bottom line shows correctly number of the errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. =========================== IMPORTANT / В?Ж?О : =========================== To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : =========================== New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -da /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml =============================== To decompile all DSDT & SSDTs use -da key / Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe: =============================== External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with allocated Arguments count (text file ref.txt) iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.am liasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml =============================== The command in the Terminal should be like this (with full paths of the files): Команда в Терминале будет выгл?деть так (? полными пут?ми к файлам): 0:~ steve$ /Volumes/2\ UNIT\ 2T/MAC\ OS\ X\ \&\ HACK/ACPI/iASL_MAC/acpica-unix-20150619/iasl_20150619_64/iasl -fe /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt -e /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT*.aml -dl /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml After pressing the Return key you should see something like this. It means that all of SSDTs were attached correctly to parsing (but in this example there were not all Externals resolved). По?ле нажати? клавиши Return вы увидите что-то наподобие ?того. Это означает, что в?е ССДТ таблицы были прикреплены к пар?ингу (но в ?том примере не были ра?познаны в?е External методы). Intel ACPI Component ArchitectureASL+ Optimizing Compiler version 20150619-64Copyright (c) 2000 - 2015 Intel CorporationReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml - Length 00081138 (0x013CF2)ACPI: DSDT 0x0000000000000000 013CF2 (v02 _ASUS_ Notebook 00000012 INTL 20120711)Acpi table [DSDT] successfully installed and loadedReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-9.aml - Length 00006602 (0x0019CA)ACPI: SSDT 0x0000000000000000 0019CA (v01 OptRef OptTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-8.aml - Length 00006531 (0x001983)ACPI: SSDT 0x0000000000000000 001983 (v01 SgRef SgPeg 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-7.aml - Length 00017729 (0x004541)ACPI: SSDT 0x0000000000000000 004541 (v01 SaSsdt SaSsdt 00003000 INTL 20091112)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-6.aml - Length 00000664 (0x000298)ACPI: SSDT 0x0000000000000000 000298 (v01 SataRe SataTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-5x.aml - Length 00000281 (0x000119)ACPI: SSDT 0x0000000000000000 000119 (v01 PmRef ApCst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-4x.aml - Length 00000979 (0x0003D3)ACPI: SSDT 0x0000000000000000 0003D3 (v01 PmRef Cpu0Cst 00003001 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-3x.aml - Length 00001450 (0x0005AA)ACPI: SSDT 0x0000000000000000 0005AA (v01 PmRef ApIst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-2.aml - Length 00002776 (0x000AD8)ACPI: SSDT 0x0000000000000000 000AD8 (v01 PmRef CpuPm 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-1.aml - Length 00001337 (0x000539)ACPI: SSDT 0x0000000000000000 000539 (v01 PmRef Cpu0Ist 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-0.aml - Length 00000413 (0x00019D)ACPI: SSDT 0x0000000000000000 00019D (v01 Intel zpodd 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (1 arguments) MDBG/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (4 arguments) _SB_.PCI0.GFX0._DSM/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Imported 2 external method definitionsPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedFound 31 external control methods, reparsing with new informationPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedDisassembly completedASL Output: /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.dsl - 748426 bytesiASL Warning: There were 31 external control methods found duringdisassembly, but only 25 were resolved (6 unresolved). AdditionalACPI tables may be required to properly disassemble the code. Theresulting disassembler output file may not compile because thedisassembler did not know how many arguments to assign to theunresolved methods. Note: SSDTs can be dynamically loaded atruntime and may or may not be available via the host OS.If necessary, the -fe option can be used to specify a file containingcontrol method external declarations with the associated methodargument counts. Each line of the file must be of the form: External (<method pathname>, MethodObj, <argument count>)Invocation: iasl -fe refs.txt -d dsdt.aml Here is an example how disassembler parses the Externals. / Вот пример, как диза??емблер пар?ит External методы. External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.RP05.PEGP.EPON, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unresolved method, guessing 1 arguments External (PS0X, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (PS3X, MethodObj) // Warning: Unresolved method, guessing 0 arguments /* * External declarations that were imported from * the reference file [/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt] */ External (_SB_.PCI0.GFX0._DSM, MethodObj) // 4 Arguments External (MDBG, MethodObj) // 1 Arguments External (_PR_.CPU0._PPC, IntObj) External (_PR_.CPU0._PSS, PkgObj) External (_SB_.IAOE.ECTM, UnknownObj) External (_SB_.IAOE.FFSE, UnknownObj) External (_SB_.IAOE.IBT1, UnknownObj) External (_SB_.IAOE.ITMR, UnknownObj) External (_SB_.IAOE.PTSL, UnknownObj) External (_SB_.IAOE.RCTM, UnknownObj) External (_SB_.IAOE.WKRS, UnknownObj) External (_SB_.IFFS.FFSS, UnknownObj) External (_SB_.PCCD, UnknownObj) External (_SB_.PCCD.PENB, UnknownObj) External (_SB_.PCI0.B0D3.ABAR, FieldUnitObj) External (_SB_.PCI0.B0D3.BARA, IntObj) External (_SB_.PCI0.GFX0.ADVD, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments External (_SB_.PCI0.GFX0.CBLV, FieldUnitObj) External (_SB_.PCI0.GFX0.CLID, FieldUnitObj) External (_SB_.PCI0.GFX0.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GCBL, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GCDS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GLID, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GSCI, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GSSE, FieldUnitObj) External (_SB_.PCI0.GFX0.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.OPTS, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.OWAK, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.STAT, FieldUnitObj) External (_SB_.PCI0.GFX0.SWHD, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.TCHE, FieldUnitObj) External (_SB_.PCI0.GFX0.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0, UnknownObj) External (_SB_.PCI0.PEG0.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP, UnknownObj) External (_SB_.PCI0.PEG0.PEGP.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.EPON, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG1, UnknownObj) External (_SB_.PCI0.PEG1.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG2, UnknownObj) External (_SB_.PCI0.PEG2.HPME, MethodObj) // 0 Arguments External (GSMI, FieldUnitObj) External (LIDS, FieldUnitObj) External (PCCD, UnknownObj) External (PDC0, IntObj) External (PDC1, IntObj) External (PDC2, IntObj) External (PDC3, IntObj) External (PDC4, IntObj) External (PDC5, IntObj) External (PDC6, IntObj) External (PDC7, IntObj) External (SGMD, FieldUnitObj) And here you are a correctly disassembled Method ADBG, which refering to External Method MDBG with 1 Arg count Вот пример корректно диза??емблированного метода ADBG, который ??ылает?? на External метод MDBG c 1 ?ргументом. Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG (Arg0)) // MDBG is and External reference Method, but there is no such method in ACPI tables. } Return (Zero) } But without ref.txt parsing will be incorrect and compiler will return an error, like this: ?о без подключенного ref.txt файла пар?инг кода пройдет неправильно и компил?тор вернет ошибку компил?ции: External (MDBG, IntObj) // Here is an ERROR// ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG) // Here is an ERROR Arg0 // Here is an ERROR } Return (Zero) } Here is an original SSDT with MDBG method, which was lost. / Вот SSDT таблица ? методом MDBG, котора? была утер?на: DefinitionBlock ("MDBG.aml", "SSDT", 1, "Intel_", "ADebTabl", 0x00001000){ Scope (\) { Name (DPTR, 0x80000000) Name (EPTR, 0x80000000) Name (CPTR, 0x80000000) Mutex (MMUT, 0x00) Method (MDBG, 1, Serialized) { Store (Acquire (MMUT, 0x03E8), Local0) If (LEqual (Local0, Zero)) { OperationRegion (ABLK, SystemMemory, CPTR, 0x10) Field (ABLK, ByteAcc, NoLock, Preserve) { AAAA, 128 } Store (Arg0, AAAA) /* \MDBG.AAAA */ Add (CPTR, 0x10, CPTR) /* \CPTR */ If (LGreaterEqual (CPTR, EPTR)) { Add (DPTR, 0x10, CPTR) /* \CPTR */ } Release (MMUT) } Return (Local0) } }} =================== And more: if you need to decompile your custom DSDT with your patches and if it still has many External Methods, you need to use all of the SSDTs this time too. If you deleted all of the Externals and those dependencies in the code, then no need to decompile with SSDTs and refs. В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами и в таблице в?е еще имеют?? в большом количе?тве External методы, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Е?ли вы удалили в?е External методы ?о в?еми зави?имо?т?ми в коде, тогда не требует?? и?пользовать при декомпил?ции SSDT таблицы и реф.файлы. =================== Changelog 20150930: 30 September 2015. Summary of changes for version 20150930: 1) ACPICA kernel-resident subsystem: Debugger: Implemented several changes and bug fixes to assist support for the in-kernel version of the AML debugger. Lv Zheng. - Fix the "predefined" command for in-kernel debugger. - Do not enter debug command loop for the help and version commands. - Disallow "execute" command during execution/single-step of a method. Interpreter: Updated runtime typechecking for all operators that have target operands. The operand is resolved and validated that it is legal. For example, the target cannot be a non-data object such as a Device, Mutex, ThermalZone, etc., as per the ACPI specification. Debugger: Fixed the double-mutex user I/O handshake to work when local deadlock detection is enabled. Debugger: limited display of method locals and arguments (LocalX and ArgX) to only those that have actually been initialized. This prevents lines of extraneous output. Updated the definition of the NFIT table to correct the bit polarity of one flag: ACPI_NFIT_MEM_ARMED --> ACPI_NFIT_MEM_NOT_ARMED Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.3K Code, 81.4K Data, 280.7K Total Previous Release: Non-Debug Version: 101.3K Code, 27.7K Data, 129.0K Total Debug Version: 198.6K Code, 80.9K Data, 279.5K Total 2) iASL Compiler/Disassembler and Tools: iASL: Improved the compile-time typechecking for operands of many of the ASL operators: -- Added an option to disable compiler operand/operator typechecking (-ot). -- For the following operators, the TermArg operands are now validated when possible to be Integer data objects: BankField, OperationRegion, DataTableRegion, Buffer, and Package. -- Store (Source, Target): Both the source and target operands are resolved and checked that the operands are both legal. For example, neither operand can be a non-data object such as a Device, Mutex, ThermalZone, etc. Note, as per the ACPI specification, the CopyObject operator can be used to store an object to any type of target object. -- Store (Source, Target): If the source is a Package object, the target must be a Package object, LocalX, ArgX, or Debug. Likewise, if the target is a Package, the source must also be a Package. -- Store (Source, Target): A warning is issued if the source and target resolve to the identical named object. -- Store (Source, <method invocation>): An error is generated for the target method invocation, as this construct is not supported by the AML interpreter. -- For all ASL math and logic operators, the target operand must be a data object (Integer, String, Buffer, LocalX, ArgX, or Debug). This includes the function return value also. -- External declarations are also included in the typechecking where possible. External objects defined using the UnknownObj keyword cannot be typechecked, however. iASL and Disassembler: Added symbolic (ASL+) support for the ASL Index operator: - Legacy code: Index (PKG1, 3) - New ASL+ code: PKG1 [3] This completes the ACPI 6.0 ASL+ support as it was the only operator not supported. iASL: Fixed the file suffix for the preprocessor output file (.i). Two spaces were inadvertently appended to the filename, causing file access and deletion problems on some systems. ASL Test Suite (ASLTS): Updated the master makefile to generate all possible compiler output files when building the test suite -- thus exercising these features of the compiler. These files are automatically deleted when the test suite exits. ---------------------------------------- 18 August 2015. Summary of changes for version 20150818: 1) ACPICA kernel-resident subsystem: Fix a regression for AcpiGetTableByIndex interface causing it to fail. Lv Zheng. ACPICA BZ 1186. Completed development to ensure that the ACPICA Disassembler and Debugger are fully standalone components of ACPICA. Removed cross-component dependences. Lv Zheng. The max-number-of-AML-loops is now runtime configurable (previously was compile-time only). This is essentially a loop timeout to force-abort infinite AML loops. ACPCIA BZ 1192. Debugger: Cleanup output to dump ACPI names and namepaths without any trailing underscores. Lv Zheng. ACPICA BZ 1135. Removed unnecessary conditional compilations across the Debugger and Disassembler components where entire modules could be left uncompiled. The aapits test is deprecated and has been removed from the ACPICA git tree. The test has never been completed and has not been maintained, thus becoming rather useless. ACPICA BZ 1015, 794. A batch of small changes to close bugzilla and other reports: - Remove duplicate code for _PLD processing. ACPICA BZ 1176. - Correctly cleanup after a ACPI table load failure. ACPICA BZ 1185. - iASL: Support POSIX yacc again in makefile. Jung-uk Kim. - ACPI table support: general cleanup and simplification. Lv Zheng, Bob Moore. - ACPI table support: fix for a buffer read overrun in AcpiTbFindTable. ACPICA BZ 1184. - Enhance parameter validation for DataTableRegion and LoadTable ASL/AML operators. - Debugger: Split debugger initialization/termination interfaces. Lv Zheng. - AcpiExec: Emit OemTableId for SSDTs during the load phase for table identification. - AcpiExec: Add debug message during _REG method phase during table load/init. - AcpiNames: Fix a regression where some output was missing and no longer emitted. - Debugger: General cleanup and simplification. Lv Zheng. - Disassembler: Cleanup use of several global option variables. Lv Zheng. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 101.3K Code, 27.7K Data, 129.0K Total Debug Version: 198.6K Code, 80.9K Data, 279.5K Total Previous Release: Non-Debug Version: 100.9K Code, 24.5K Data, 125.4K Total Debug Version: 197.8K Code, 81.5K Data, 279.3K Total 2) iASL Compiler/Disassembler and Tools: AcpiExec: Fixed a problem where any more than 32 ACPI tables in the XSDT were not handled properly and caused load errors. Now, properly invoke and use the ACPICA auto-reallocate mechanism for ACPI table data structures. ACPICA BZ 1188 AcpiNames: Add command-line wildcard support for ACPI table files. ACPICA BZ 1190. AcpiExec and AcpiNames: Add -l option to load ACPI tables only. For AcpiExec, this means that no control methods (like _REG/_INI/_STA) are executed during initialization. ACPICA BZ 1187, 1189. iASL/Disassembler: Implemented a prototype "listing" mode that emits AML that corresponds to each disassembled ASL statement, to simplify debugging. ACPICA BZ 1191. Debugger: Add option to the "objects" command to display a summary of the current namespace objects (Object type and count). This is displayed if the command is entered with no arguments. AcpiNames: Add -x option to specify debug level, similar to AcpiExec. ---------------------------------------- 17 July 2015. Summary of changes for version 20150717: 1) ACPICA kernel-resident subsystem: Improved the partitioning between the Debugger and Disassembler components. This allows the Debugger to be used standalone within kernel code without the Disassembler (which is used for single stepping also). This renames and moves one file, dmobject.c to dbobject.c. Lv Zheng. Debugger: Implemented a new command to trace the execution of control methods (Trace). This is especially useful for the in-kernel version of the debugger when file I/O may not be available for method trace output. See the ACPICA reference for more information. Lv Zheng. Moved all C library prototypes (used for the local versions of these functions when requested) to a new header, acclib.hCleaned up the use of non-ANSI C library functions. These functions are implemented locally in ACPICA. Moved all such functions to a common source file, utnonansi.c Debugger: Fixed a problem with the "!!" command (get last command executed) where the debugger could enter an infinite loop and eventually crash. Removed the use of local macros that were used for some of the standard C library functions to automatically cast input parameters. This mostly affected the is* functions where the input parameter is defined to be an int. This required a few modifications to the main ACPICA source code to provide casting for these functions and eliminate possible compiler warnings for these parameters. Across the source code, added additional status/error checking to resolve issues discovered by static source code analysis tools such as Coverity. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 100.9K Code, 24.5K Data, 125.4K Total Debug Version: 197.8K Code, 81.5K Data, 279.3K Total Previous Release: Non-Debug Version: 100.6K Code, 27.6K Data, 128.2K Total Debug Version: 196.2K Code, 81.0K Data, 277.2K Total 2) iASL Compiler/Disassembler and Tools: iASL: Fixed a regression where the device map file feature no longer worked properly when used in conjunction with the disassembler. It only worked properly with the compiler itself. iASL: Implemented a new warning for method LocalX variables that are set but never used (similar to a C compiler such as gcc). This also applies to ArgX variables that are not defined by the parent method, and are instead (legally) used as local variables. iASL/Preprocessor: Finished the pass-through of line numbers from the preprocessor to the compiler. This ensures that compiler errors/warnings have the correct original line numbers and filenames, regardless of any #include files. iASL/Preprocessor: Fixed a couple of issues with comment handling and the pass-through of comments to the preprocessor output file (which becomes the compiler input file). Also fixed a problem with // comments that appear after a math expression. iASL: Added support for the TCPA server table to the table compiler and template generator. (The client table was already previously supported) iASL/Preprocessor: Added a permanent #define of the symbol "__IASL__" to identify the iASL compiler. Cleaned up the use of the macros NEGATIVE and POSITIVE which were defined multiple times. The new names are ACPI_SIGN_NEGATIVE and ACPI_SIGN_POSITIVE. AcpiHelp: Update to expand help messages for the iASL preprocessor directives. ---------------------------------------- 19 June 2015. Summary of changes for version 20150619: Two regressions in version 20150616 have been addressed: Fixes some problems/issues with the C library macro removal (ACPI_STRLEN, etc.) This update changes ACPICA to only use the standard headers for functions, or the prototypes for the local versions of the C library functions. Across the source code, this required some additional casts for some Clib invocations for portability. Moved all local prototypes to a new file, acclib.h Fixes several problems with recent changes to the handling of the FACS table that could cause some systems not to boot. ---------------------------------------- 16 June 2015. Summary of changes for version 20150616: 1) ACPICA kernel-resident subsystem: Across the entire ACPICA source code base, the various macros for the C library functions (such as ACPI_STRLEN, etc.) have been removed and replaced by the standard C library names (strlen, etc.) The original purpose for these macros is no longer applicable. This simplification reduces the number of macros used in the ACPICA source code significantly, improving readability and maintainability. Implemented support for a new ACPI table, the OSDT. This table, the "override" SDT, can be loaded directly by the host OS at boot time. It enables the replacement of existing namespace objects that were installed via the DSDT and/or SSDTs. The primary purpose for this is to replace buggy or incorrect ASL/AML code obtained via the BIOS. The OSDT is slated for inclusion in a future version of the ACPI Specification. Lv Zheng/Bob Moore. Added support for systems with (improperly) two FACS tables -- a "32-bit" table (via FADT 32-bit legacy field) and a "64-bit" table (via the 64-bit X field). This change will support both automatically. There continues to be systems found with this issue. This support requires a change to the AcpiSetFirmwareWakingVector interface. Also, a public global variable has been added to allow the host to select which FACS is desired (AcpiGbl_Use32BitFacsAddresses). See the ACPICA reference for more details Lv Zheng. Added a new feature to allow for systems that do not contain an FACS. Although this is already supported on hardware-reduced platforms, the feature has been extended for all platforms. The reasoning is that we do not want to abort the entire ACPICA initialization just because the system is seriously buggy and has no FACS. Fixed a problem where the GUID strings for NFIT tables (in acuuid.h) were not correctly transcribed from the ACPI specification in ACPICA version 20150515. Implemented support for the _CLS object in the AcpiGetObjectInfo external interface. Updated the definitions of the TCPA and TPM2 ACPI tables to the more recent TCG ACPI Specification, December 14, 2014. Table disassembler and compiler also updated. Note: The TCPA "server" table is not supported by the disassembler/table-compiler at this time. ACPI 6.0: Added definitions for the new GIC version field in the MADT. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 100.6K Code, 27.6K Data, 128.2K Total Debug Version: 196.2K Code, 81.0K Data, 277.2K Total Previous Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total 2) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with the new symbolic operator disassembler where incorrect ASL code could be emitted in some cases for the "non-commutative" operators -- Subtract, Divide, Modulo, ShiftLeft, and ShiftRight. The actual problem cases seem to be rather unusual in common ASL code, however. David Box. Modified the linux version of acpidump to obtain ACPI tables from not just /dev/mem (which may not exist) and /sys/firmware/acpi/tables. Lv Zheng. iASL: Fixed a problem where the user preprocessor output file (.i) contained extra data that was not expected. The compiler was using this file as a temporary file and passed through #line directives in order to keep compiler error messages in sync with the input file and line number across multiple include files. The (.i) is no longer a temporary file as the compiler uses a new, different file for the original purpose. iASL: Fixed a problem where comments within the original ASL source code file were not passed through to the preprocessor output file, nor any listing files. iASL: Fixed some issues for the handling of the "#include" preprocessor directive and the similar (but not the same) "Include" ASL operator. iASL: Add support for the new OSDT in both the disassembler and compiler. iASL: Fixed a problem with the constant folding support where a Buffer object could be incorrectly generated (incorrectly formed) during a conversion to a Store() operator. AcpiHelp: Updated for new NFIT GUIDs, "External" AML opcode, and new description text for the _REV predefined name. _REV now permanently returns 2, as per the ACPI 6.0 specification. Debugger: Enhanced the output of the Debug ASL object for references produced by the Index operator. For Buffers and strings, only output the actual byte pointed to by the index. For packages, only print the single package element decoded by the index. Previously, the entire buffer/string/package was emitted. iASL/Table-compiler: Fixed a regression where the "generic" data types were no longer recognized, causing errors. --------------------------------------------- 08 April 2015. Summary of changes for version 20150515: This release implements most of ACPI 6.0 as described below. 1) ACPICA kernel-resident subsystem: Implemented runtime argument checking and return value checking for all new ACPI 6.0 predefined names. This includes: _BTH, _CR3, _DSD, _LPI, _MTL, _PRR, _RDI, _RST, _TFP, _TSN. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total Previous Release: Non-Debug Version: 99.1K Code, 27.3K Data, 126.4K Total Debug Version: 192.8K Code, 79.9K Data, 272.7K Total 2) iASL Compiler/Disassembler and Tools: iASL compiler: Added compile-time support for all new ACPI 6.0 predefined names (argument count validation and return value typechecking.) iASL disassembler and table compiler: implemented support for all new ACPI 6.0 tables. This includes: DRTM, IORT, LPIT, NFIT, STAO, WPBT, XENV. iASL disassembler and table compiler: Added ACPI 6.0 changes to existing tables: FADT, MADT. iASL preprocessor: Added a new directive to enable inclusion of binary blobs into ASL code. The new directive is #includebinary. It takes a binary file as input and emits a named ascii buffer object into the ASL code. AcpiHelp: Added support for all new ACPI 6.0 predefined names. AcpiHelp: Added a new option, -d, to display all iASL preprocessor directives. AcpiHelp: Added a new option, -t, to display all known/supported ACPI tables. ---------------------------------------- 10 April 2015. Summary of changes for version 20150410: Reverted a change introduced in version 20150408 that caused a regression in the disassembler where incorrect operator symbols could be emitted. ---------------------------------------- 08 April 2015. Summary of changes for version 20150408: 1) ACPICA kernel-resident subsystem: Permanently set the return value for the _REV predefined name. It now returns 2 (was 5). This matches other ACPI implementations. _REV will be deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2 for ACPI 2.0 and later. It should never be used to differentiate or identify operating systems. Added the "Windows 2015" string to the _OSI support. ACPICA will now return TRUE to a query with this string. Fixed several issues with the local version of the printf function. Added the C99 compiler option (-std=c99) to the Unix makefiles. Current Release: Non-Debug Version: 99.9K Code, 27.4K Data, 127.3K Total Debug Version: 195.2K Code, 80.7K Data, 275.9K Total Previous Release: Non-Debug Version: 98.8K Code, 27.3K Data, 126.1K Total Debug Version: 192.1K Code, 79.8K Data, 271.9K Total 2) iASL Compiler/Disassembler and Tools: iASL: Implemented an enhancement to the constant folding feature to transform the parse tree to a simple Store operation whenever possible: Add (2, 3, X) ==> is converted to: Store (5, X)X = 2 + 3 ==> is converted to: Store (5, X) Updated support for the SLIC table (Software Licensing Description Table) in both the Data Table compiler and the disassembler. The SLIC table support now conforms to "Microsoft Software Licensing Tables (SLIC and MSDM). November 29, 2011. Copyright 2011 Microsoft". Note: Any SLIC data following the ACPI header is now defined to be "Proprietary Data", and as such, can only be entered or displayed as a hex data block. Implemented full support for the MSDM table as described in the document above. Note: The format of MSDM is similar to SLIC. Any MSDM data following the ACPI header is defined to be "Proprietary Data", and can only be entered or displayed as a hex data block. Implemented the -Pn option for the iASL Table Compiler (was only implemented for the ASL compiler). This option disables the iASL preprocessor. Disassembler: For disassembly of Data Tables, added a comment field around the Ascii equivalent data that is emitted as part of the "Raw Table Data" block. This prevents the iASL Preprocessor from possible confusion if/when the table is compiled. Disassembler: Added an option (-df) to force the disassembler to assume that the table being disassembled contains valid AML. This feature is useful for disassembling AML files that contain ACPI signatures other than DSDT or SSDT (such as OEMx or other signatures). Changes for the EFI version of the tools: 1) Fixed a build error/issue 2) Fixed a cast warning iASL: Fixed a path issue with the __FILE__ operator by making the directory prefix optional within the internal SplitInputFilename function. Debugger: Removed some unused global variables. Tests: Updated the makefile for proper generation of the AAPITS suite. ---------------------------------------- 04 February 2015. Summary of changes for version 20150204: This release is available at https://acpica.org/downloads ACPICA kernel-resident subsystem: Updated all ACPICA copyrights and signons to 2014. Added the 2014 copyright to all module headers and signons, including the standard Linux header. This affects virtually every file in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and the test suites. Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix GPE storm issues. A raw gpe handling mechanism was created to allow better handling of GPE storms that aren't easily managed by the normal handler. The raw handler allows disabling/renabling of the the GPE so that interrupt storms can be avoided in cases where events cannot be timely serviced. In this scenario, handlers should use the AcpiSetGpe() API to disable/enable the GPE. This APIwill leave the reference counts undisturbed, thereby preventing unintentionalclearing of the GPE when the intent in only to temporarily disable it. Rawhandlers allow enabling and disabling of a GPE by removing GPE registerlocking. As such, raw handlers much provide their own locks while using GPE API's to protect access to GPE data structures. Lv Zheng Events: Always modify GPE registers under the GPE lock. Applies GPE lock around AcpiFinishGpe() to protect access to GPE register values. Reported as bug by joe.liu@apple.com. Unix makefiles: Separate option to disable optimizations and _FORTIFY_SOURCE. This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This allows disabling the option without also having to disable optimazations. David Box Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.2K Code, 82.4K Data, 281.6K Total ------------------------------------------------------------- 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate(Concatenate (Concatenate (Concatenate ("", Arg0),": Unexpected value for "), Arg1), ", "), Arg2)," at line "), Arg3), Debug)(new) Printf ("%o: Unexpected value for %o, %o at line %o",Arg0, Arg1, Arg2, Arg3)(old) Store (Concatenate (Concatenate (Concatenate (Concatenate("", Arg1), ": "), Arg0), " Successful"), STR1)(new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent // Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X)// Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X)// Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: Legacy ASL:If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,0x03FB),0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))){And (MEMB, 0xFFFFFFF0, SRMB)Store (MEMB, Local2)Store (PDBM, Local1)And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)Store (SRMB,
  14. Olá. ? Passei por alguns problemas por querer usufluir do Clover na minha máquina, e depois de muito tentar consegui fazê-la subir sem problemas. ? 1?- Baixe a última versão do Clover -> http://sourceforge.net/projects/cloverefiboot/ 2?- Baixe FakeSMC e NullPowerManagement -> google.com 3?- Baixe o Clover Configurator (Classic p/ Mavericks e versões abaixo, Vibrante p/ Yosemite) -> http://www.hackintoshosx.com/files/file/49-clover-configurator/ 4?- Antes de instalar o Clover formate a sua partição EFI para fat32 -> sudo newfs_msdos -v EFI -F 32 /dev/rdisk0s1 -> Substitua o rdisk0s1 pelo que corresponde no seu OS X. 5?- Escolha entre UEFI ou Legacy (sem UEFI), no meu caso fui de legacy, pois quando mudo para EFI Compatible ROM na BIOS o monitor não dá sinal de imagem, deve ser por conta da minha placa de vídeo (R9 270). ? 6 - Assista o vídeo: https://www.youtube.com/watch?v=wBgK3vgW2NY&feature=youtu.be ? Obs: Deixarei o tópico incompleto pois preciso de algumas imagens para ilustrar e facilitar aos usuários, sendo assim quando estiver fora do expediente irei formular o resto do tópico, peço paciência. ? Obrigado. ? PS: Estou trabalhando, e mesmo assim tento ajudar os companheiros do fórum.
  15. Version 20150619

    758 downloads

    UPDATED BUILD ! The last commit. Intel ACPI tools. The NEW version 20150619 compiled by me from original sources. Use iasl compiler with your DSDTSE or another editor. To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. Or another way by Terminal: drag iasl on Terminal window (bash), (press Return (Enter) to see all keys) -> write some keys, drag Aml/Dsl file to compile/decompile. This way you can more deeply configure/clean your DSDT during compile (especially with -w3 key), find more warnings and junk code, empty / uninitialized methods. Have a nice day good compilings! For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl51 for MaciASL 1.3 b262+ builds) Intel ACPI тулзы вер?ии 20150619 ?компилированы мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором. Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl51 дл? ?овременных билдов MaciASL 1.3 b262+ ) Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables iASL HELP: Intel ACPI Component Architecture ASL+ Optimizing Compiler version 20150619-64 Copyright ? 2000 - 2015 Intel Corporation Supports ACPI Specification Revision 6.0 Usage: iasl [Options] [Files] Options: General: -@ <file> Specify command file -I <dir> Specify additional include directory -T <sig>|ALL|* Create table template file for ACPI <Sig> -p <prefix> Specify path/filename prefix for all output files -v Display compiler version -vo Enable optimization comments -vs Disable signon Help: -h This message -hc Display operators allowed in constant expressions -hf Display help for output filename generation -hr Display ACPI reserved method names -ht Display currently supported ACPI table names Preprocessor: -D <symbol> Define symbol for preprocessor use -li Create preprocessed output file (*.i) -P Preprocess only and create preprocessor output file (*.i) -Pn Disable preprocessor Errors, Warnings, and Remarks: -va Disable all errors/warnings/remarks -ve Report only errors (ignore warnings and remarks) -vi Less verbose errors and warnings for use with IDEs -vr Disable remarks -vw <messageid> Disable specific warning or remark -w1 -w2 -w3 Set warning reporting level -we Report warnings as errors AML Code Generation (*.aml): -oa Disable all optimizations (compatibility mode) -of Disable constant folding -oi Disable integer optimization to Zero/One/Ones -on Disable named reference string optimization -cr Disable Resource Descriptor error checking -in Ignore NoOp operators -r <revision> Override table header Revision (1-255) Optional Source Code Output Files: -sc -sa Create source file in C or assembler (*.c or *.asm) -ic -ia Create include file in C or assembler (*.h or *.inc) -tc -ta -ts Create hex AML table in C, assembler, or ASL (*.hex) -so Create offset table in C (*.offset.h) Optional Listing Files: -l Create mixed listing file (ASL source and AML) (*.lst) -lm Create hardware summary map file (*.map) -ln Create namespace file (*.nsp) -ls Create combined source file (expanded includes) (*.src) Data Table Compiler: -G Compile custom table that contains generic operators -vt Create verbose template files (full disassembly) AML Disassembler: -d <f1 f2 ...> Disassemble or decode binary ACPI tables to file (*.dsl) (Optional, file type is automatically detected) -da <f1 f2 ...> Disassemble multiple tables from single namespace -db Do not translate Buffers to Resource Templates -dc <f1 f2 ...> Disassemble AML and immediately compile it (Obtain DSDT from current system if no input file) -df Force disassembler to assume table contains valid AML -dl Emit legacy ASL code only (no C-style operators) -e <f1 f2 ...> Include ACPI table(s) for external symbol resolution -fe <file> Specify external symbol declaration file -in Ignore NoOp opcodes -vt Dump binary table data in hex format within output file Debug Options: -bf Create debug file (full output) (*.txt) -bs Create debug file (parse tree only) (*.txt) -bp <depth> Prune ASL parse tree -bt <type> Object type to be pruned from the parse tree -f Ignore errors, force creation of AML output file(s) -m <size> Set internal line buffer size (in Kbytes) -n Parse only, no output generation -ot Display compile times and statistics -x <level> Set debug level for trace output -z Do not insert new compiler ID for DataTables ACPISpec ver. 6.0 / ACPI Спецификации 6.0 ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 ACPISPec ver. 5.1 Errata A / ACPI ?пецификации 5.1 И?правлени? ? Attension / Внимание :: =========================== Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty Summary window, the bottom line shows correctly number of the errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. =========================== IMPORTANT / В?Ж?О : =========================== To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : =========================== New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -da /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml =============================== To decompile all DSDT & SSDTs use -da key / Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe: =============================== External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with designated Arguments count (text file ref.txt) iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml =============================== The command in the Terminal should be like this (with full paths of the files): Команда в Терминале будет выгл?деть так (? полными пут?ми к файлам): 0:~ steve$ /Volumes/2\ UNIT\ 2T/MAC\ OS\ X\ \&\ HACK/ACPI/iASL_MAC/acpica-unix-20150619/iasl_20150619_64/iasl -fe /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt -e /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT*.aml -dl /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml After pressing the Return key you should see something like this. It means that all of SSDTs were attached correctly to parsing (but in this example there were not all Externals resolved). По?ле нажати? клавиши Return вы увидите что-то наподобие ?того. Это означает, что в?е ССДТ таблицы были прикреплены к пар?ингу (но в ?том примере не были ра?познаны в?е External методы). Intel ACPI Component ArchitectureASL+ Optimizing Compiler version 20150619-64Copyright (c) 2000 - 2015 Intel CorporationReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.aml - Length 00081138 (0x013CF2)ACPI: DSDT 0x0000000000000000 013CF2 (v02 _ASUS_ Notebook 00000012 INTL 20120711)Acpi table [DSDT] successfully installed and loadedReading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-9.aml - Length 00006602 (0x0019CA)ACPI: SSDT 0x0000000000000000 0019CA (v01 OptRef OptTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-8.aml - Length 00006531 (0x001983)ACPI: SSDT 0x0000000000000000 001983 (v01 SgRef SgPeg 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-7.aml - Length 00017729 (0x004541)ACPI: SSDT 0x0000000000000000 004541 (v01 SaSsdt SaSsdt 00003000 INTL 20091112)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-6.aml - Length 00000664 (0x000298)ACPI: SSDT 0x0000000000000000 000298 (v01 SataRe SataTabl 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-5x.aml - Length 00000281 (0x000119)ACPI: SSDT 0x0000000000000000 000119 (v01 PmRef ApCst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-4x.aml - Length 00000979 (0x0003D3)ACPI: SSDT 0x0000000000000000 0003D3 (v01 PmRef Cpu0Cst 00003001 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-3x.aml - Length 00001450 (0x0005AA)ACPI: SSDT 0x0000000000000000 0005AA (v01 PmRef ApIst 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-2.aml - Length 00002776 (0x000AD8)ACPI: SSDT 0x0000000000000000 000AD8 (v01 PmRef CpuPm 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-1.aml - Length 00001337 (0x000539)ACPI: SSDT 0x0000000000000000 000539 (v01 PmRef Cpu0Ist 00003000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]Reading ACPI table from file /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/SSDT-0.aml - Length 00000413 (0x00019D)ACPI: SSDT 0x0000000000000000 00019D (v01 Intel zpodd 00001000 INTL 20120711)Acpi table [SSDT] successfully installed and loadedPass 1 parse of [SSDT]Pass 2 parse of [SSDT]/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (1 arguments) MDBG/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Importing method external (4 arguments) _SB_.PCI0.GFX0._DSM/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt: Imported 2 external method definitionsPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedFound 31 external control methods, reparsing with new informationPass 1 parse of [DSDT]Pass 2 parse of [DSDT]Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)Parsing completedDisassembly completedASL Output: /Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/DSDT.dsl - 748426 bytesiASL Warning: There were 31 external control methods found duringdisassembly, but only 25 were resolved (6 unresolved). AdditionalACPI tables may be required to properly disassemble the code. Theresulting disassembler output file may not compile because thedisassembler did not know how many arguments to assign to theunresolved methods. Note: SSDTs can be dynamically loaded atruntime and may or may not be available via the host OS.If necessary, the -fe option can be used to specify a file containingcontrol method external declarations with the associated methodargument counts. Each line of the file must be of the form: External (<method pathname>, MethodObj, <argument count>)Invocation: iasl -fe refs.txt -d dsdt.aml Here is an example how disassembler parses the Externals. Вот пример, как диза??емблер пар?ит External методы. External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.RP05.PEGP.EPON, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (_SB_.TPM_.PTS_, MethodObj) // Warning: Unresolved method, guessing 1 arguments External (PS0X, MethodObj) // Warning: Unresolved method, guessing 0 arguments External (PS3X, MethodObj) // Warning: Unresolved method, guessing 0 arguments /* * External declarations that were imported from * the reference file [/Volumes/Y/Users/stevebondaryan/Desktop/N551JM/origin/ref.txt] */ External (_SB_.PCI0.GFX0._DSM, MethodObj) // 4 Arguments External (MDBG, MethodObj) // 1 Arguments External (_PR_.CPU0._PPC, IntObj) External (_PR_.CPU0._PSS, PkgObj) External (_SB_.IAOE.ECTM, UnknownObj) External (_SB_.IAOE.FFSE, UnknownObj) External (_SB_.IAOE.IBT1, UnknownObj) External (_SB_.IAOE.ITMR, UnknownObj) External (_SB_.IAOE.PTSL, UnknownObj) External (_SB_.IAOE.RCTM, UnknownObj) External (_SB_.IAOE.WKRS, UnknownObj) External (_SB_.IFFS.FFSS, UnknownObj) External (_SB_.PCCD, UnknownObj) External (_SB_.PCCD.PENB, UnknownObj) External (_SB_.PCI0.B0D3.ABAR, FieldUnitObj) External (_SB_.PCI0.B0D3.BARA, IntObj) External (_SB_.PCI0.GFX0.ADVD, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments External (_SB_.PCI0.GFX0.CBLV, FieldUnitObj) External (_SB_.PCI0.GFX0.CLID, FieldUnitObj) External (_SB_.PCI0.GFX0.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GCBL, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GCDS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GLID, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.GSCI, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.GSSE, FieldUnitObj) External (_SB_.PCI0.GFX0.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.OPTS, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.OWAK, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.GFX0.STAT, FieldUnitObj) External (_SB_.PCI0.GFX0.SWHD, MethodObj) // 1 Arguments External (_SB_.PCI0.GFX0.TCHE, FieldUnitObj) External (_SB_.PCI0.GFX0.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0, UnknownObj) External (_SB_.PCI0.PEG0.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP, UnknownObj) External (_SB_.PCI0.PEG0.PEGP.DWBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.EPON, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.LCDD._DCS, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.NATK, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.PRST, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG0.PEGP.UPBL, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG1, UnknownObj) External (_SB_.PCI0.PEG1.HPME, MethodObj) // 0 Arguments External (_SB_.PCI0.PEG2, UnknownObj) External (_SB_.PCI0.PEG2.HPME, MethodObj) // 0 Arguments External (GSMI, FieldUnitObj) External (LIDS, FieldUnitObj) External (PCCD, UnknownObj) External (PDC0, IntObj) External (PDC1, IntObj) External (PDC2, IntObj) External (PDC3, IntObj) External (PDC4, IntObj) External (PDC5, IntObj) External (PDC6, IntObj) External (PDC7, IntObj) External (SGMD, FieldUnitObj) And here you are a correctly disassembled Method ADBG, which refering to External Method MDBG with 1 Arg count Вот пример корректно диза??емблированного метода ADBG, который ??ылает?? на External метод MDBG c 1 ?ргументом. Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG (Arg0)) // MDBG is and External reference Method, but there is no such method in ACPI tables. } Return (Zero) } But without ref.txt parsing will be incorrect and compiler will return an error, like this: ?о без подключенного ref.txt файла пар?инг кода пройдет неправильно и компил?тор вернет ошибку компил?ции: External (MDBG, IntObj) // Here is an ERROR// ... Method (ADBG, 1, Serialized) { If (CondRefOf (MDBG)) { MNIO (Arg0) MNIO ("\n") Return (MDBG) // Here is an ERROR Arg0 // Here is an ERROR } Return (Zero) } =================== And more: if you need to decompile your custom DSDT with your patches and if it still has many External Methods, you need to use all of the SSDTs this time too. If you deleted all of the Externals and those dependencies in the code, then no need to decompile with SSDTs and refs. В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами и в таблице в?е еще имеют?? в большом количе?тве External методы, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Е?ли вы удалили в?е External методы ?о в?еми зави?имо?т?ми в коде, тогда не требует?? и?пользовать при декомпил?ции SSDT таблицы и реф.файлы. =================== Changelog 20150619: 19 June 2015. Summary of changes for version 20150619: Two regressions in version 20150616 have been addressed: Fixes some problems/issues with the C library macro removal (ACPI_STRLEN, etc.) This update changes ACPICA to only use the standard headers for functions, or the prototypes for the local versions of the C library functions. Across the source code, this required some additional casts for some Clib invocations for portability. Moved all local prototypes to a new file, acclib.h Fixes several problems with recent changes to the handling of the FACS table that could cause some systems not to boot. ---------------------------------------- 16 June 2015. Summary of changes for version 20150616: 1) ACPICA kernel-resident subsystem: Across the entire ACPICA source code base, the various macros for the C library functions (such as ACPI_STRLEN, etc.) have been removed and replaced by the standard C library names (strlen, etc.) The original purpose for these macros is no longer applicable. This simplification reduces the number of macros used in the ACPICA source code significantly, improving readability and maintainability. Implemented support for a new ACPI table, the OSDT. This table, the "override" SDT, can be loaded directly by the host OS at boot time. It enables the replacement of existing namespace objects that were installed via the DSDT and/or SSDTs. The primary purpose for this is to replace buggy or incorrect ASL/AML code obtained via the BIOS. The OSDT is slated for inclusion in a future version of the ACPI Specification. Lv Zheng/Bob Moore. Added support for systems with (improperly) two FACS tables -- a "32-bit" table (via FADT 32-bit legacy field) and a "64-bit" table (via the 64-bit X field). This change will support both automatically. There continues to be systems found with this issue. This support requires a change to the AcpiSetFirmwareWakingVector interface. Also, a public global variable has been added to allow the host to select which FACS is desired (AcpiGbl_Use32BitFacsAddresses). See the ACPICA reference for more details Lv Zheng. Added a new feature to allow for systems that do not contain an FACS. Although this is already supported on hardware-reduced platforms, the feature has been extended for all platforms. The reasoning is that we do not want to abort the entire ACPICA initialization just because the system is seriously buggy and has no FACS. Fixed a problem where the GUID strings for NFIT tables (in acuuid.h) were not correctly transcribed from the ACPI specification in ACPICA version 20150515. Implemented support for the _CLS object in the AcpiGetObjectInfo external interface. Updated the definitions of the TCPA and TPM2 ACPI tables to the more recent TCG ACPI Specification, December 14, 2014. Table disassembler and compiler also updated. Note: The TCPA "server" table is not supported by the disassembler/table-compiler at this time. ACPI 6.0: Added definitions for the new GIC version field in the MADT. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 100.6K Code, 27.6K Data, 128.2K Total Debug Version: 196.2K Code, 81.0K Data, 277.2K Total Previous Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total 2) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with the new symbolic operator disassembler where incorrect ASL code could be emitted in some cases for the "non-commutative" operators -- Subtract, Divide, Modulo, ShiftLeft, and ShiftRight. The actual problem cases seem to be rather unusual in common ASL code, however. David Box. Modified the linux version of acpidump to obtain ACPI tables from not just /dev/mem (which may not exist) and /sys/firmware/acpi/tables. Lv Zheng. iASL: Fixed a problem where the user preprocessor output file (.i) contained extra data that was not expected. The compiler was using this file as a temporary file and passed through #line directives in order to keep compiler error messages in sync with the input file and line number across multiple include files. The (.i) is no longer a temporary file as the compiler uses a new, different file for the original purpose. iASL: Fixed a problem where comments within the original ASL source code file were not passed through to the preprocessor output file, nor any listing files. iASL: Fixed some issues for the handling of the "#include" preprocessor directive and the similar (but not the same) "Include" ASL operator. iASL: Add support for the new OSDT in both the disassembler and compiler. iASL: Fixed a problem with the constant folding support where a Buffer object could be incorrectly generated (incorrectly formed) during a conversion to a Store() operator. AcpiHelp: Updated for new NFIT GUIDs, "External" AML opcode, and new description text for the _REV predefined name. _REV now permanently returns 2, as per the ACPI 6.0 specification. Debugger: Enhanced the output of the Debug ASL object for references produced by the Index operator. For Buffers and strings, only output the actual byte pointed to by the index. For packages, only print the single package element decoded by the index. Previously, the entire buffer/string/package was emitted. iASL/Table-compiler: Fixed a regression where the "generic" data types were no longer recognized, causing errors. --------------------------------------------- 08 April 2015. Summary of changes for version 20150515: This release implements most of ACPI 6.0 as described below. 1) ACPICA kernel-resident subsystem: Implemented runtime argument checking and return value checking for all new ACPI 6.0 predefined names. This includes: _BTH, _CR3, _DSD, _LPI, _MTL, _PRR, _RDI, _RST, _TFP, _TSN. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total Previous Release: Non-Debug Version: 99.1K Code, 27.3K Data, 126.4K Total Debug Version: 192.8K Code, 79.9K Data, 272.7K Total 2) iASL Compiler/Disassembler and Tools: iASL compiler: Added compile-time support for all new ACPI 6.0 predefined names (argument count validation and return value typechecking.) iASL disassembler and table compiler: implemented support for all new ACPI 6.0 tables. This includes: DRTM, IORT, LPIT, NFIT, STAO, WPBT, XENV. iASL disassembler and table compiler: Added ACPI 6.0 changes to existing tables: FADT, MADT. iASL preprocessor: Added a new directive to enable inclusion of binary blobs into ASL code. The new directive is #includebinary. It takes a binary file as input and emits a named ascii buffer object into the ASL code. AcpiHelp: Added support for all new ACPI 6.0 predefined names. AcpiHelp: Added a new option, -d, to display all iASL preprocessor directives. AcpiHelp: Added a new option, -t, to display all known/supported ACPI tables. ---------------------------------------- 10 April 2015. Summary of changes for version 20150410: Reverted a change introduced in version 20150408 that caused a regression in the disassembler where incorrect operator symbols could be emitted. ---------------------------------------- 08 April 2015. Summary of changes for version 20150408: 1) ACPICA kernel-resident subsystem: Permanently set the return value for the _REV predefined name. It now returns 2 (was 5). This matches other ACPI implementations. _REV will be deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2 for ACPI 2.0 and later. It should never be used to differentiate or identify operating systems. Added the "Windows 2015" string to the _OSI support. ACPICA will now return TRUE to a query with this string. Fixed several issues with the local version of the printf function. Added the C99 compiler option (-std=c99) to the Unix makefiles. Current Release: Non-Debug Version: 99.9K Code, 27.4K Data, 127.3K Total Debug Version: 195.2K Code, 80.7K Data, 275.9K Total Previous Release: Non-Debug Version: 98.8K Code, 27.3K Data, 126.1K Total Debug Version: 192.1K Code, 79.8K Data, 271.9K Total 2) iASL Compiler/Disassembler and Tools: iASL: Implemented an enhancement to the constant folding feature to transform the parse tree to a simple Store operation whenever possible: Add (2, 3, X) ==> is converted to: Store (5, X)X = 2 + 3 ==> is converted to: Store (5, X) Updated support for the SLIC table (Software Licensing Description Table) in both the Data Table compiler and the disassembler. The SLIC table support now conforms to "Microsoft Software Licensing Tables (SLIC and MSDM). November 29, 2011. Copyright 2011 Microsoft". Note: Any SLIC data following the ACPI header is now defined to be "Proprietary Data", and as such, can only be entered or displayed as a hex data block. Implemented full support for the MSDM table as described in the document above. Note: The format of MSDM is similar to SLIC. Any MSDM data following the ACPI header is defined to be "Proprietary Data", and can only be entered or displayed as a hex data block. Implemented the -Pn option for the iASL Table Compiler (was only implemented for the ASL compiler). This option disables the iASL preprocessor. Disassembler: For disassembly of Data Tables, added a comment field around the Ascii equivalent data that is emitted as part of the "Raw Table Data" block. This prevents the iASL Preprocessor from possible confusion if/when the table is compiled. Disassembler: Added an option (-df) to force the disassembler to assume that the table being disassembled contains valid AML. This feature is useful for disassembling AML files that contain ACPI signatures other than DSDT or SSDT (such as OEMx or other signatures). Changes for the EFI version of the tools: 1) Fixed a build error/issue 2) Fixed a cast warning iASL: Fixed a path issue with the __FILE__ operator by making the directory prefix optional within the internal SplitInputFilename function. Debugger: Removed some unused global variables. Tests: Updated the makefile for proper generation of the AAPITS suite. ---------------------------------------- 04 February 2015. Summary of changes for version 20150204: This release is available at https://acpica.org/downloads ACPICA kernel-resident subsystem: Updated all ACPICA copyrights and signons to 2014. Added the 2014 copyright to all module headers and signons, including the standard Linux header. This affects virtually every file in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and the test suites. Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix GPE storm issues. A raw gpe handling mechanism was created to allow better handling of GPE storms that aren't easily managed by the normal handler. The raw handler allows disabling/renabling of the the GPE so that interrupt storms can be avoided in cases where events cannot be timely serviced. In this scenario, handlers should use the AcpiSetGpe() API to disable/enable the GPE. This APIwill leave the reference counts undisturbed, thereby preventing unintentionalclearing of the GPE when the intent in only to temporarily disable it. Rawhandlers allow enabling and disabling of a GPE by removing GPE registerlocking. As such, raw handlers much provide their own locks while using GPE API's to protect access to GPE data structures. Lv Zheng Events: Always modify GPE registers under the GPE lock. Applies GPE lock around AcpiFinishGpe() to protect access to GPE register values. Reported as bug by joe.liu@apple.com. Unix makefiles: Separate option to disable optimizations and _FORTIFY_SOURCE. This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This allows disabling the option without also having to disable optimazations. David Box Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.2K Code, 82.4K Data, 281.6K Total ------------------------------------------------------------- 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate(Concatenate (Concatenate (Concatenate ("", Arg0),": Unexpected value for "), Arg1), ", "), Arg2)," at line "), Arg3), Debug)(new) Printf ("%o: Unexpected value for %o, %o at line %o",Arg0, Arg1, Arg2, Arg3)(old) Store (Concatenate (Concatenate (Concatenate (Concatenate("", Arg1), ": "), Arg0), " Successful"), STR1)(new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent // Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X)// Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X)// Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: Legacy ASL:If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,0x03FB),0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))){And (MEMB, 0xFFFFFFF0, SRMB)Store (MEMB, Local2)Store (PDBM, Local1)And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)Store (SRMB, MEMB)Or (PDBM, 0x02, PDBM)}ASL+ version:If (((R510 & 0x03FB) == 0x02E0) ||((R520 & 0x03FB) == 0x02E0) ||((R530 & 0x03FB) == 0x02E0) ||((R540 & 0x03FB) == 0x02E0)){SRMB = (MEMB & 0xFFFFFFF0)Local2 = MEMBLocal1 = PDBMPDBM &= 0xFFFFFFFFFFFFFFF9MEMB = SRMBPDBM |= 0x02}Legacy ASL:Store (0x1234, Local1)Multiply (Add (Add (Local1, TEST), 0x20), Local2, Local3)Multiply (Local2, Add (Add (Local1, TEST), 0x20), Local3)Add (Local1, Add (TEST, Multiply (0x20, Local2)), Local3)Store (Index (PKG1, 0x03), Local6)Store (Add (Local3, Local2), Debug)Add (Local1, 0x0F, Local2)Add (Local1, Multiply (Local2, Local3), Local2)Multiply (Add (Add (Local1, TEST), 0x20), ToBCD (Local1), Local3)ASL+ version:Local1 = 0x1234Local3 = (((Local1 + TEST) + 0x20) * Local2)Local3 = (Local2 * ((Local1 + TEST) + 0x20))Local3 = (Local1 + (TEST + (0x20 * Local2)))Local6 = Index (PKG1, 0x03)Debug = (Local3 + Local2)Local2 = (Local1 + 0x0F)Local2 = (Local1 + (Local2 * Local3))Local3 = (((Local1 + TEST) + 0x20) * ToBCD (Local1))
  16. Version 20150515

    648 downloads

    The new 20150619 is here / ?ова? вер?и? 20150619 зде?ь :: http://www.hackintoshosx.com/files/file/4540-acpica-iasl-intel-acpi-tools/ Intel ACPI tools. The NEW version 20150515 compiled by me from original sources. Use iasl compiler with your DSDTSE or another editor. To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. Or another way by Terminal: drag iasl on Terminal window (bash), (press Return (Enter) to see all keys) -> write some keys, drag Aml/Dsl file to compile/decompile. This way you can more deeply configure/clean your DSDT during compile (especially with -w3 key), find more warnings and junk code, empty / uninitialized methods. Have a nice day good compilings! For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl51 for MaciASL 1.3 b262+ builds) Intel ACPI тулзы вер?ии 20150515 ?компилированы мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором. Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl51 дл? ?овременных билдов MaciASL 1.3 b262+ ) Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables iASL HELP: Supports ACPI Specification Revision 6.0Usage: iasl [Options] [Files]Options:General: -@ <file> Specify command file -I <dir> Specify additional include directory -T <sig>|ALL|* Create table template file for ACPI <Sig> -p <prefix> Specify path/filename prefix for all output files -v Display compiler version -vo Enable optimization comments -vs Disable signonHelp: -h This message -hc Display operators allowed in constant expressions -hf Display help for output filename generation -hr Display ACPI reserved method names -ht Display currently supported ACPI table namesPreprocessor: -D <symbol> Define symbol for preprocessor use -li Create preprocessed output file (*.i) -P Preprocess only and create preprocessor output file (*.i) -Pn Disable preprocessorErrors, Warnings, and Remarks: -va Disable all errors/warnings/remarks -ve Report only errors (ignore warnings and remarks) -vi Less verbose errors and warnings for use with IDEs -vr Disable remarks -vw <messageid> Disable specific warning or remark -w1 -w2 -w3 Set warning reporting level -we Report warnings as errorsAML Code Generation (*.aml): -oa Disable all optimizations (compatibility mode) -of Disable constant folding -oi Disable integer optimization to Zero/One/Ones -on Disable named reference string optimization -cr Disable Resource Descriptor error checking -in Ignore NoOp operators -r <revision> Override table header Revision (1-255)Optional Source Code Output Files: -sc -sa Create source file in C or assembler (*.c or *.asm) -ic -ia Create include file in C or assembler (*.h or *.inc) -tc -ta -ts Create hex AML table in C, assembler, or ASL (*.hex) -so Create offset table in C (*.offset.h)Optional Listing Files: -l Create mixed listing file (ASL source and AML) (*.lst) -lm Create hardware summary map file (*.map) -ln Create namespace file (*.nsp) -ls Create combined source file (expanded includes) (*.src)Data Table Compiler: -G Compile custom table that contains generic operators -vt Create verbose template files (full disassembly)AML Disassembler: -d <f1 f2 ...> Disassemble or decode binary ACPI tables to file (*.dsl) (Optional, file type is automatically detected) -da <f1 f2 ...> Disassemble multiple tables from single namespace -db Do not translate Buffers to Resource Templates -dc <f1 f2 ...> Disassemble AML and immediately compile it (Obtain DSDT from current system if no input file) -df Force disassembler to assume table contains valid AML -dl Emit legacy ASL code only (no C-style operators) -e <f1 f2 ...> Include ACPI table(s) for external symbol resolution -fe <file> Specify external symbol declaration file -in Ignore NoOp opcodes -vt Dump binary table data in hex format within output fileDebug Options: -bf Create debug file (full output) (*.txt) -bs Create debug file (parse tree only) (*.txt) -bp <depth> Prune ASL parse tree -bt <type> Object type to be pruned from the parse tree -f Ignore errors, force creation of AML output file(s) -m <size> Set internal line buffer size (in Kbytes) -n Parse only, no output generation -ot Display compile times and statistics -x <level> Set debug level for trace output -z Do not insert new compiler ID for DataTables ACPISpec ver. 6.0 / ACPI Спецификации 6.0 ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 ACPISPec ver. 5.1 Errata A / ACPI ?пецификации 5.1 И?правлени? ? Attension / Внимание :: Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty Summary window, the bottom line shows correctly number of the errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. __________________________________________________________ Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. IMPORTANT / В?Ж?О : To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : __________________________________________________________________________________________ Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -da /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml To decompile all DSDT & SSDTs use -da key / Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: _______________________________________________________________________ Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe: External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with designated Arguments count iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml And more: if you need to decompile your custom DSDT with your patches, you need to use all of the SSDTs this time too. ________________________________________________________ В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Changelog 20150515: 08 April 2015. Summary of changes for version 20150515: This release implements most of ACPI 6.0 as described below. 1) ACPICA kernel-resident subsystem: Implemented runtime argument checking and return value checking for all new ACPI 6.0 predefined names. This includes: _BTH, _CR3, _DSD, _LPI, _MTL, _PRR, _RDI, _RST, _TFP, _TSN. Example Code and Data Size: These are the sizes for the OS-independent acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The debug version of the code includes the debug output trace mechanism and has a much larger code and data size. Current Release: Non-Debug Version: 99.9K Code, 27.5K Data, 127.4K Total Debug Version: 195.2K Code, 80.8K Data, 276.0K Total Previous Release: Non-Debug Version: 99.1K Code, 27.3K Data, 126.4K Total Debug Version: 192.8K Code, 79.9K Data, 272.7K Total 2) iASL Compiler/Disassembler and Tools: iASL compiler: Added compile-time support for all new ACPI 6.0 predefined names (argument count validation and return value typechecking.) iASL disassembler and table compiler: implemented support for all new ACPI 6.0 tables. This includes: DRTM, IORT, LPIT, NFIT, STAO, WPBT, XENV. iASL disassembler and table compiler: Added ACPI 6.0 changes to existing tables: FADT, MADT. iASL preprocessor: Added a new directive to enable inclusion of binary blobs into ASL code. The new directive is #includebinary. It takes a binary file as input and emits a named ascii buffer object into the ASL code. AcpiHelp: Added support for all new ACPI 6.0 predefined names. AcpiHelp: Added a new option, -d, to display all iASL preprocessor directives. AcpiHelp: Added a new option, -t, to display all known/supported ACPI tables. ---------------------------------------- 10 April 2015. Summary of changes for version 20150410: Reverted a change introduced in version 20150408 that caused a regression in the disassembler where incorrect operator symbols could be emitted. ---------------------------------------- 08 April 2015. Summary of changes for version 20150408: 1) ACPICA kernel-resident subsystem: Permanently set the return value for the _REV predefined name. It now returns 2 (was 5). This matches other ACPI implementations. _REV will be deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2 for ACPI 2.0 and later. It should never be used to differentiate or identify operating systems. Added the "Windows 2015" string to the _OSI support. ACPICA will now return TRUE to a query with this string. Fixed several issues with the local version of the printf function. Added the C99 compiler option (-std=c99) to the Unix makefiles. Current Release: Non-Debug Version: 99.9K Code, 27.4K Data, 127.3K Total Debug Version: 195.2K Code, 80.7K Data, 275.9K Total Previous Release: Non-Debug Version: 98.8K Code, 27.3K Data, 126.1K Total Debug Version: 192.1K Code, 79.8K Data, 271.9K Total 2) iASL Compiler/Disassembler and Tools: iASL: Implemented an enhancement to the constant folding feature to transform the parse tree to a simple Store operation whenever possible: Add (2, 3, X) ==> is converted to: Store (5, X)X = 2 + 3 ==> is converted to: Store (5, X) Updated support for the SLIC table (Software Licensing Description Table) in both the Data Table compiler and the disassembler. The SLIC table support now conforms to "Microsoft Software Licensing Tables (SLIC and MSDM). November 29, 2011. Copyright 2011 Microsoft". Note: Any SLIC data following the ACPI header is now defined to be "Proprietary Data", and as such, can only be entered or displayed as a hex data block. Implemented full support for the MSDM table as described in the document above. Note: The format of MSDM is similar to SLIC. Any MSDM data following the ACPI header is defined to be "Proprietary Data", and can only be entered or displayed as a hex data block. Implemented the -Pn option for the iASL Table Compiler (was only implemented for the ASL compiler). This option disables the iASL preprocessor. Disassembler: For disassembly of Data Tables, added a comment field around the Ascii equivalent data that is emitted as part of the "Raw Table Data" block. This prevents the iASL Preprocessor from possible confusion if/when the table is compiled. Disassembler: Added an option (-df) to force the disassembler to assume that the table being disassembled contains valid AML. This feature is useful for disassembling AML files that contain ACPI signatures other than DSDT or SSDT (such as OEMx or other signatures). Changes for the EFI version of the tools: 1) Fixed a build error/issue 2) Fixed a cast warning iASL: Fixed a path issue with the __FILE__ operator by making the directory prefix optional within the internal SplitInputFilename function. Debugger: Removed some unused global variables. Tests: Updated the makefile for proper generation of the AAPITS suite. ---------------------------------------- 04 February 2015. Summary of changes for version 20150204: This release is available at https://acpica.org/downloads ACPICA kernel-resident subsystem: Updated all ACPICA copyrights and signons to 2014. Added the 2014 copyright to all module headers and signons, including the standard Linux header. This affects virtually every file in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and the test suites. Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix GPE storm issues. A raw gpe handling mechanism was created to allow better handling of GPE storms that aren't easily managed by the normal handler. The raw handler allows disabling/renabling of the the GPE so that interrupt storms can be avoided in cases where events cannot be timely serviced. In this scenario, handlers should use the AcpiSetGpe() API to disable/enable the GPE. This APIwill leave the reference counts undisturbed, thereby preventing unintentionalclearing of the GPE when the intent in only to temporarily disable it. Rawhandlers allow enabling and disabling of a GPE by removing GPE registerlocking. As such, raw handlers much provide their own locks while using GPE API's to protect access to GPE data structures. Lv Zheng Events: Always modify GPE registers under the GPE lock. Applies GPE lock around AcpiFinishGpe() to protect access to GPE register values. Reported as bug by joe.liu@apple.com. Unix makefiles: Separate option to disable optimizations and _FORTIFY_SOURCE. This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This allows disabling the option without also having to disable optimazations. David Box Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.2K Code, 82.4K Data, 281.6K Total ------------------------------------------------------------- 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate(Concatenate (Concatenate (Concatenate ("", Arg0),": Unexpected value for "), Arg1), ", "), Arg2)," at line "), Arg3), Debug)(new) Printf ("%o: Unexpected value for %o, %o at line %o",Arg0, Arg1, Arg2, Arg3)(old) Store (Concatenate (Concatenate (Concatenate (Concatenate("", Arg1), ": "), Arg0), " Successful"), STR1)(new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent // Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X)// Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X)// Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: Legacy ASL:If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,0x03FB),0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))){And (MEMB, 0xFFFFFFF0, SRMB)Store (MEMB, Local2)Store (PDBM, Local1)And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)Store (SRMB, MEMB)Or (PDBM, 0x02, PDBM)}ASL+ version:If (((R510 & 0x03FB) == 0x02E0) ||((R520 & 0x03FB) == 0x02E0) ||((R530 & 0x03FB) == 0x02E0) ||((R540 & 0x03FB) == 0x02E0)){SRMB = (MEMB & 0xFFFFFFF0)Local2 = MEMBLocal1 = PDBMPDBM &= 0xFFFFFFFFFFFFFFF9MEMB = SRMBPDBM |= 0x02}Legacy ASL:Store (0x1234, Local1)Multiply (Add (Add (Local1, TEST), 0x20), Local2, Local3)Multiply (Local2, Add (Add (Local1, TEST), 0x20), Local3)Add (Local1, Add (TEST, Multiply (0x20, Local2)), Local3)Store (Index (PKG1, 0x03), Local6)Store (Add (Local3, Local2), Debug)Add (Local1, 0x0F, Local2)Add (Local1, Multiply (Local2, Local3), Local2)Multiply (Add (Add (Local1, TEST), 0x20), ToBCD (Local1), Local3)ASL+ version:Local1 = 0x1234Local3 = (((Local1 + TEST) + 0x20) * Local2)Local3 = (Local2 * ((Local1 + TEST) + 0x20))Local3 = (Local1 + (TEST + (0x20 * Local2)))Local6 = Index (PKG1, 0x03)Debug = (Local3 + Local2)Local2 = (Local1 + 0x0F)Local2 = (Local1 + (Local2 * Local3))Local3 = (((Local1 + TEST) + 0x20) * ToBCD (Local1))
  17. Version 20150410

    64 downloads

    The new 20150515 version here / ?ова? вер?и? 20150515 зде?ь :: http://www.hackintoshosx.com/files/file/4524-iasl-intel-acpi-tools-x64/ Intel ACPI tools. The NEW version 20150410 compiled by me from original sources. Use iasl compiler with your DSDTSE or another editor. To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. Or another way by Terminal: drag iasl on Terminal window (bash), (press Return (Enter) to see all keys) -> write some keys, drag Aml/Dsl file to compile/decompile. This way you can more deeply configure/clean your DSDT during compile (especially with -w3 key), find more warnings and junk code, empty / uninitialized methods. Have a nice day good compilings! For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl51 for MaciASL 1.3 b262+ builds) Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables Intel ACPI тулзы вер?ии 20150410 ?компилированы мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором. Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl51 дл? ?овременных билдов MaciASL 1.3 b262+ ) ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 http://www.hackintoshosx.com/files/file/4155-iasl-intel-acpi-tools-x64/ Attension / Внимание :: Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty window Summary, the bottom line shows correctly the number of errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. IMPORTANT / В?Ж?О : To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -da /@full_path@/SSDT*.aml /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml To decompile all DSDT & SSDTs use -da key: Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with designated Arguments count iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -da -dl /@full_path@/SSDT*.aml /@full_path@/DSDT.aml And more: if you need to decompile your custom DSDT with your patches, you need to use all of the SSDTs this time too. В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Changelog 20150410: 10 April 2015. Summary of changes for version 20150410: Reverted a change introduced in version 20150408 that caused a regression in the disassembler where incorrect operator symbols could be emitted. ---------------------------------------- 08 April 2015. Summary of changes for version 20150408: 1) ACPICA kernel-resident subsystem: Permanently set the return value for the _REV predefined name. It now returns 2 (was 5). This matches other ACPI implementations. _REV will be deprecated in the future, and is now defined to be 1 for ACPI 1.0, and 2 for ACPI 2.0 and later. It should never be used to differentiate or identify operating systems. Added the "Windows 2015" string to the _OSI support. ACPICA will now return TRUE to a query with this string. Fixed several issues with the local version of the printf function. Added the C99 compiler option (-std=c99) to the Unix makefiles. Current Release: Non-Debug Version: 99.9K Code, 27.4K Data, 127.3K Total Debug Version: 195.2K Code, 80.7K Data, 275.9K Total Previous Release: Non-Debug Version: 98.8K Code, 27.3K Data, 126.1K Total Debug Version: 192.1K Code, 79.8K Data, 271.9K Total 2) iASL Compiler/Disassembler and Tools: iASL: Implemented an enhancement to the constant folding feature to transform the parse tree to a simple Store operation whenever possible: Add (2, 3, X) ==> is converted to: Store (5, X) X = 2 + 3 ==> is converted to: Store (5, X) Updated support for the SLIC table (Software Licensing Description Table) in both the Data Table compiler and the disassembler. The SLIC table support now conforms to "Microsoft Software Licensing Tables (SLIC and MSDM). November 29, 2011. Copyright 2011 Microsoft". Note: Any SLIC data following the ACPI header is now defined to be "Proprietary Data", and as such, can only be entered or displayed as a hex data block. Implemented full support for the MSDM table as described in the document above. Note: The format of MSDM is similar to SLIC. Any MSDM data following the ACPI header is defined to be "Proprietary Data", and can only be entered or displayed as a hex data block. Implemented the -Pn option for the iASL Table Compiler (was only implemented for the ASL compiler). This option disables the iASL preprocessor. Disassembler: For disassembly of Data Tables, added a comment field around the Ascii equivalent data that is emitted as part of the "Raw Table Data" block. This prevents the iASL Preprocessor from possible confusion if/when the table is compiled. Disassembler: Added an option (-df) to force the disassembler to assume that the table being disassembled contains valid AML. This feature is useful for disassembling AML files that contain ACPI signatures other than DSDT or SSDT (such as OEMx or other signatures). Changes for the EFI version of the tools: 1) Fixed a build error/issue 2) Fixed a cast warning iASL: Fixed a path issue with the __FILE__ operator by making the directory prefix optional within the internal SplitInputFilename function. Debugger: Removed some unused global variables. Tests: Updated the makefile for proper generation of the AAPITS suite. ---------------------------------------- 04 February 2015. Summary of changes for version 20150204: This release is available at https://acpica.org/downloads ACPICA kernel-resident subsystem: Updated all ACPICA copyrights and signons to 2014. Added the 2014 copyright to all module headers and signons, including the standard Linux header. This affects virtually every file in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and the test suites. Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix GPE storm issues. A raw gpe handling mechanism was created to allow better handling of GPE storms that aren't easily managed by the normal handler. The raw handler allows disabling/renabling of the the GPE so that interrupt storms can be avoided in cases where events cannot be timely serviced. In this scenario, handlers should use the AcpiSetGpe() API to disable/enable the GPE. This APIwill leave the reference counts undisturbed, thereby preventing unintentionalclearing of the GPE when the intent in only to temporarily disable it. Rawhandlers allow enabling and disabling of a GPE by removing GPE registerlocking. As such, raw handlers much provide their own locks while using GPE API's to protect access to GPE data structures. Lv Zheng Events: Always modify GPE registers under the GPE lock. Applies GPE lock around AcpiFinishGpe() to protect access to GPE register values. Reported as bug by joe.liu@apple.com. Unix makefiles: Separate option to disable optimizations and _FORTIFY_SOURCE. This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This allows disabling the option without also having to disable optimazations. David Box Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.2K Code, 82.4K Data, 281.6K Total ------------------------------------------------------------- 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate(Concatenate (Concatenate (Concatenate ("", Arg0),": Unexpected value for "), Arg1), ", "), Arg2)," at line "), Arg3), Debug)(new) Printf ("%o: Unexpected value for %o, %o at line %o",Arg0, Arg1, Arg2, Arg3)(old) Store (Concatenate (Concatenate (Concatenate (Concatenate("", Arg1), ": "), Arg0), " Successful"), STR1)(new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent ----------- ---------------------// Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X)// Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X)// Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: -----------------Legacy ASL:If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,0x03FB),0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))){And (MEMB, 0xFFFFFFF0, SRMB)Store (MEMB, Local2)Store (PDBM, Local1)And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)Store (SRMB, MEMB)Or (PDBM, 0x02, PDBM)}ASL+ version:If (((R510 & 0x03FB) == 0x02E0) ||((R520 & 0x03FB) == 0x02E0) ||((R530 & 0x03FB) == 0x02E0) ||((R540 & 0x03FB) == 0x02E0)){SRMB = (MEMB & 0xFFFFFFF0)Local2 = MEMBLocal1 = PDBMPDBM &= 0xFFFFFFFFFFFFFFF9MEMB = SRMBPDBM |= 0x02}Legacy ASL:Store (0x1234, Local1)Multiply (Add (Add (Local1, TEST), 0x20), Local2, Local3)Multiply (Local2, Add (Add (Local1, TEST), 0x20), Local3)Add (Local1, Add (TEST, Multiply (0x20, Local2)), Local3)Store (Index (PKG1, 0x03), Local6)Store (Add (Local3, Local2), Debug)Add (Local1, 0x0F, Local2)Add (Local1, Multiply (Local2, Local3), Local2)Multiply (Add (Add (Local1, TEST), 0x20), ToBCD (Local1), Local3)ASL+ version:Local1 = 0x1234Local3 = (((Local1 + TEST) + 0x20) * Local2)Local3 = (Local2 * ((Local1 + TEST) + 0x20))Local3 = (Local1 + (TEST + (0x20 * Local2)))Local6 = Index (PKG1, 0x03)Debug = (Local3 + Local2)Local2 = (Local1 + 0x0F)Local2 = (Local1 + (Local2 * Local3))Local3 = (((Local1 + TEST) + 0x20) * ToBCD (Local1))
  18. sh4rk16

    Intel HD 4000 Lenovo B590 artifacts

    i have a problem with graphics on my Intel HD 4000. i have installed yosemite with U{censored} without any bootflag, but when i come to login screen i get flickering screen and scrambled graphic but on HDMI out i dont have almost any problem and the same is in safe boot but only for 5-7 hours then it starts but its almost not noticable, comparing to normal mode without safe boot. i dont know much about dsdt patching and mac files editing. My Specs are:? CPU: i3-3110M GPU Intel HD 4000 ? ? i think that that specs only matters for graphics and i cannot set memory for graphic in bios. ? i can set in bios to use both(legacy and uefi), and which is first. please help me i dont know what to do anymore, i tried to fix it but i couldnt cause lack of mac knowledge. Thanks in advance. there are 2 pics and also video from youtube. yt :?https://youtu.be/b5h1aYCrn70
  19. Version 20150204

    596 downloads

    The new version 20150410 here / ?ова? вер?и? 20150410 зде?ь: http://www.hackintoshosx.com/files/file/4519-iasl-intel-acpi-tools-x64/ Intel ACPI tools. The NEW version 20150204 compiled by me from original sources. Use iasl compiler with your DSDTSE or another editor. To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. Or another way by Terminal: drag iasl on Terminal window (bash), (press Return (Enter) to see all keys) -> write some keys, drag Aml/Dsl file to compile/decompile. This way you can more deeply configure/clean your DSDT during compile (especially with -w3 key), find more warnings and junk code, empty / uninitialized methods. Have a nice day good compilings! For MaciASL simply drag iasl to Contents --> MacOS and rename it to iasl5 (or iasl51 for MaciASL 1.3 b262+ builds) Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables Intel ACPI тулзы вер?ии 20150204 ?компилированы мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором. Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. Дл? MaciASL перета?киваем в подпапку Contents --> MacOS и даем ему им? iasl5 (или iasl51 дл? ?овременных билдов MaciASL 1.3 b262+ ) ACPI Spec ver. 5.1 / ACPI ?пецификации вер?ии 5.1 http://www.hackintoshosx.com/files/file/4155-iasl-intel-acpi-tools-x64/ Attension / Внимание :: Simple replacement of iasl compiler (iasl --> iasl5) in MacIASL leads to an empty window Summary, the bottom line shows correctly the number of errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. IMPORTANT / В?Ж?О : To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key (to decompile in legacy ASL code mode you have to add -dl key instead of -d ) : Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: (дл? ра?паковки в лега?и код ASL вме?то ключа -d надо и?пользовать новый ключ -dl ) : New ASL+ decompile: / Декомпайл ASL+: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml Legacy ASL decompile / Декомпайл ASL лега?и: iasl -e SSDT*.aml -dl DSDT.aml iasl -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml To decompile all DSDT & SSDTs use -da key: Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe External (MDBG, MethodObj, 1) // <<<--- Unresolved Method with designated Arguments count iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -dl /@full_path@/DSDT.aml And more: if you need to decompile your custom DSDT with your patches, you need to use all of the SSDTs this time too. В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Changelog 20150204: 04 February 2015. Summary of changes for version 20150204: This release is available at https://acpica.org/downloads ACPICA kernel-resident subsystem: Updated all ACPICA copyrights and signons to 2014. Added the 2014 copyright to all module headers and signons, including the standard Linux header. This affects virtually every file in the ACPICA core subsystem, iASL compiler, all ACPICA utilities, and the test suites. Events: Introduce ACPI_GPE_DISPATCH_RAW_HANDLER to fix GPE storm issues. A raw gpe handling mechanism was created to allow better handling of GPE storms that aren't easily managed by the normal handler. The raw handler allows disabling/renabling of the the GPE so that interrupt storms can be avoided in cases where events cannot be timely serviced. In this scenario, handlers should use the AcpiSetGpe() API to disable/enable the GPE. This APIwill leave the reference counts undisturbed, thereby preventing unintentionalclearing of the GPE when the intent in only to temporarily disable it. Rawhandlers allow enabling and disabling of a GPE by removing GPE registerlocking. As such, raw handlers much provide their own locks while using GPE API's to protect access to GPE data structures. Lv Zheng Events: Always modify GPE registers under the GPE lock. Applies GPE lock around AcpiFinishGpe() to protect access to GPE register values. Reported as bug by joe.liu@apple.com. Unix makefiles: Separate option to disable optimizations and _FORTIFY_SOURCE. This change removes the _FORTIFY_SOURCE flag from the NOOPT disable option and creates a separate flag (NOFORTIFY) for this purpose. Some toolchains may define _FORTIFY_SOURCE which leads redefined errors when building ACPICA. This allows disabling the option without also having to disable optimazations. David Box Current Release: Non-Debug Version: 101.7K Code, 27.9K Data, 129.6K Total Debug Version: 199.2K Code, 82.4K Data, 281.6K Total ------------------------------------------------------------- 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate(Concatenate (Concatenate (Concatenate ("", Arg0),": Unexpected value for "), Arg1), ", "), Arg2)," at line "), Arg3), Debug)(new) Printf ("%o: Unexpected value for %o, %o at line %o",Arg0, Arg1, Arg2, Arg3)(old) Store (Concatenate (Concatenate (Concatenate (Concatenate("", Arg1), ": "), Arg0), " Successful"), STR1)(new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent ----------- --------------------- // Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X)// Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X)// Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: ----------------- Legacy ASL:If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual (And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530,0x03FB),0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))){And (MEMB, 0xFFFFFFF0, SRMB)Store (MEMB, Local2)Store (PDBM, Local1)And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM)Store (SRMB, MEMB)Or (PDBM, 0x02, PDBM)}ASL+ version:If (((R510 & 0x03FB) == 0x02E0) ||((R520 & 0x03FB) == 0x02E0) ||((R530 & 0x03FB) == 0x02E0) ||((R540 & 0x03FB) == 0x02E0)){SRMB = (MEMB & 0xFFFFFFF0)Local2 = MEMBLocal1 = PDBMPDBM &= 0xFFFFFFFFFFFFFFF9MEMB = SRMBPDBM |= 0x02}Legacy ASL:Store (0x1234, Local1)Multiply (Add (Add (Local1, TEST), 0x20), Local2, Local3)Multiply (Local2, Add (Add (Local1, TEST), 0x20), Local3)Add (Local1, Add (TEST, Multiply (0x20, Local2)), Local3)Store (Index (PKG1, 0x03), Local6)Store (Add (Local3, Local2), Debug)Add (Local1, 0x0F, Local2)Add (Local1, Multiply (Local2, Local3), Local2)Multiply (Add (Add (Local1, TEST), 0x20), ToBCD (Local1), Local3)ASL+ version:Local1 = 0x1234Local3 = (((Local1 + TEST) + 0x20) * Local2)Local3 = (Local2 * ((Local1 + TEST) + 0x20))Local3 = (Local1 + (TEST + (0x20 * Local2)))Local6 = Index (PKG1, 0x03)Debug = (Local3 + Local2)Local2 = (Local1 + 0x0F)Local2 = (Local1 + (Local2 * Local3))Local3 = (((Local1 + TEST) + 0x20) * ToBCD (Local1))
  20. alexusz2000

    Yosemite és HP laptop

    Sziasztok! ? Feltettem a Yosemite-t a laptopomra (HP 250 G2 F0Z43EA), de olyan problémák vannak mint például a fényerő szabályzó... ? Találtam egy Clover Installert (http://www.{censored}.com/hp-probook-yosemite/143675-guide-install-yosemite-hp-laptops-clover-uefi.html), de valahogy nem megy... ? DSDT-ből jó lenne a?HP ProBook 4540s-hez való? A Clovert hogy konfigurálja? ? Ittvan néhány adat:?https://drive.google.com/folderview?id=0B30oiA5kMk43fl9IQ2FOZElfak9QOEg4UEFTaDFUNDkzZGNlV2w2MW1vUGVQbE51M2NFN1U&usp=sharing ?
  21. Hello everyone. ? This guide will help everyone who has the Intel HD 4000 video, and as in my case, if you have a notebook and want to enable both the video and the audio from the HDMI output. I will be explaining in two ways the easiest way possible, but to succeed requires a lot of attention and patience. ? Before you begin: ? Check if you really need the issue of AppleIntelFramebufferCapri.kext to have HDMI audio. How? - Connect your Hack to a TV/Monitor HDMI input, if the video and audio is working, do not touch anything. ? If you really have problems, see the instructions below. ? What You Need. ? "AppleIntelFramebufferCapri.kext" what is in System/Library/ExtensionsPatches for audio and video present in the DSDT.An app for editing hexadecimal numbers - I recommend using the app Hex Fiend -?Download.TexEdit app for editing values​​.? This tutorial will use the ig-platform-id 3 = 03006601, which is in HD 4000 videos in Ivybridge CPUs. For more information on ig-platform-id and which to use, read here. I'll put some different values ​​of ig-platform-id that they may activate your HDMI. Which also requires the layout-id is using, if you use the AppleHDA. ? Method using DSDT - What else do works. ? Before applying either of these methods in your DSDT, first requires that the DTPG method already applied. Insert this patch in HDEF device in your DSDT: Method (_DSM, 4, NotSerialized) ?// _DSM: Device-Specific Method? ? ? ? ? ? {? ? ? ? ? ? ? ? Store (Package (0x0A)? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? "hda-gfx",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x0A)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? "onboard-1"? ? ? ? ? ? ? ? ? ? ? ? },??? ? ? ? ? ? ? ? ? ? ? ? "layout-id",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x04)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0x0C, 0x00, 0x00, 0x00? ? ? ? ? ? ? ? ? ? ? ? },?? ? ? ? ? ? ? ? ? ? ? ? "PinConfigurations",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (Zero) {}? ? ? ? ? ? ? ? ? ? }, Local0)? ? ? ? ? ? ? ? DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))? ? ? ? ? ? ? ? Return (Local0)? ? ? ? ? ? }? ? ? ? }If you use integrated graphic (e.g: Intel HD 4000) will have to rename the GFX device in DSDT for iGPU, and add this method in device iGPU: Method (_DSM, 4, NotSerialized) ?// _DSM: Device-Specific Method? ? ? ? ? ? {? ? ? ? ? ? ? ? Store (Package (0x0A)? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? "device-id",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x04)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0x66, 0x01, 0x00, 0x00? ? ? ? ? ? ? ? ? ? ? ? },?? ? ? ? ? ? ? ? ? ? ? ? "vendor-id",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x04)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0x86, 0x80, 0x00, 0x00? ? ? ? ? ? ? ? ? ? ? ? },?? ? ? ? ? ? ? ? ? ? ? ? "AAPL,ig-platform-id",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x04)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0x03, 0x00, 0x66, 0x01? ? ? ? ? ? ? ? ? ? ? ? },?? ? ? ? ? ? ? ? ? ? ? ? "hda-gfx",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x0A)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? "onboard-1"? ? ? ? ? ? ? ? ? ? ? ? },?? ? ? ? ? ? ? ? ? ? ? ? "layout-id",?? ? ? ? ? ? ? ? ? ? ? ? Buffer (0x04)? ? ? ? ? ? ? ? ? ? ? ? {? ? ? ? ? ? ? ? ? ? ? ? ? ? ?0x0C, 0x00, 0x00, 0x00? ? ? ? ? ? ? ? ? ? ? ? }? ? ? ? ? ? ? ? ? ? }, Local0)? ? ? ? ? ? ? ? DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))? ? ? ? ? ? ? ? Return (Local0)? ? ? ? ? ? }? ? ? ? }Check that there are no errors or warnings, if you have no errors, save the DSDT and put in right place.? ? Check that audio and video is working, if only the video worked and had no audio, we have to modify the AppleIntelFramebufferCapri.kext. See below: ? Applying patch in?your AppleIntelFramebufferCapri. 1 - Section. Information about the connections present in the video kext AppleIntelFramebufferCapri: ? Let's analyze what is present in this kext that enables the activation of Video. ? See the corresponding initial values​​, which are in hexadecimal numbers: 503 - LVDS (Laptop built-in display)602 - VGA?205/406/304 - HDMI/DVI/DP2 - Section. ? About hexadecimal numbers. ? In OS X Mavericks had a slight change in the values ​​present in the kext AppleIntelFramebufferCapri compared with the Mountain Lion, something that did not disturb in the activation of HDMI input. ? Values ​​of OS X Mountain Lion: 03 00 66 01 01 02 04 02 00 00 00 04?00 00 00 01 00 00 00 20 10 07 00 00?10 07 00 00 00 00 00 00 00 00 00 00?00 00 00 00 00 00 00 00 00 00 00 00?05 03 00 00 02 00 00 00 30 00 00 00?02 05 00 00 00 04 00 00 07 04 00 00?03 04 00 00 00 04 00 00 81 00 00 00?04 06 00 00 00 04 00 00 81 00 00 00?Values ​​of OS X Mavericks: 03 00 66 01 01 02 04 02 00 00 00 04?00 00 00 01 00 00 00 40 10 07 00 00?10 07 00 00 00 00 00 00 00 00 00 00?00 00 00 00 00 00 00 00 00 00 00 00?05 03 00 00 02 00 00 00 30 00 00 00?02 05 00 00 00 04 00 00 07 04 00 00?03 04 00 00 00 04 00 00 81 00 00 00?04 06 00 00 00 04 00 00 81 00 00 003 - Section. ? What will be changed for the functioning of the HDMI. ? As seen above changes were few, only one line. Now as mentioned in the beginning to obtain a fully functioning HDMI have to know which ig-platform-id is being used, see some values​​. ? After checking which value corresponds to your ig-platform-id, let's change the line that corresponds to HDMI input. ? Make a backup of the kext, then put the AppleIntelFramebufferCapri.kext on the Desktop,? click with right button and go to "Show Package Contents" then Contents/MacOS. ? See that within this folder is a file called "AppleIntelFramebufferCapri" open it with the app Hex Fiend, and run the command ⌘ + F will open a dialog box with the "Find" options, and "Replace". ? ? Now that you have the correct values of your ig-platform-id, enter the corresponding value (see list above) in the "Find" and press Enter, when the value is correct, the result will appear in blue, if not right "X" will appear on the left side. see: ? ? After making sure you're with the right values​​, copy and paste into a new document in TextEdit, and organize this way: ? ? Now let's change the values ​​for the functioning of the HDMI. All HDMI audio works independently of ig-platform-id that is using this value below: 02 05 00 00 00 08 00 00 06 00 00 00See how it will look: After modify, copy and paste the entire value in "Replace" field, and click in the "Replace" button that is below the fields. ? Save.? ? Now install the modified kext with KextWizard, and repair permissions and reload the cache, then run these 2 commands in Terminal: sudo touch /System/Library/Extensionsthen: sudo nvram -cNow restart. ? Patching AppleIntelFramebufferCapri - Using patch? ? There is a very functional method that allows to enable the HDMI port using only a patch. ? 1 - Download the patch:?HD4000.zip ? After downloading patch run this command in Terminal: cd Downloads/HD4000./list2 - Several files will be extracted, each one is for a different ig-platform-id. You already know what your, edit: ? As seen above, this value that I used is the HDMI value. 02 05 00 00 00 08 00 00 06 00 00 00After you changed, now apply the patch in kext - What's in System/Library/Extensions. ? Run this in Terminal: sudo ./patch?[insert here the name of the edited file]E.g: sudo ./patch?01660003-345264.txtThis method is 100% functional, but will only succeed if you have attention to the values and leave the formatting of the file as the original. ? That done, repair permissions, restart and reload the cache. ? 3 - Section: ? Connect your Hack with a TV/Monitor HDMI input, and go to System Preferences > Sound, you have to look like this: ? ? Go to About this Mac > System Info > Graphics > and see if the information on your TV/monitor is present, and it has to be with the "Television - Yes" information the last line. ? Additional Information.? ? For the HDMI audio work you have to have the audio running natively, either with AppleHDA or VoodooHDA.?For integrated devices (iGPU) usually pretty using "onboard-1" in the patches for DSDT. Some dedicated device (GFX) use "onboard-2" Credits Information - Toleda?Keep in mind that OS X will not provide the sound, only the TV/Monitor will provide the sound, high / low volume will be controlled by the TV/Monitor.To use the AppleHDA see it: Guide to patch AppleHDA for your codec? Thanks for help:?EMlyDinEsH, Bruxo, Toleda, Mirone and Oldnapalm.
  22. Hey folks out there, I've got my hackintosh working on my Packard Bell EasyNote LM85 using iAtkos L1. Wifi works fine, only audio is not working. I've tried several VoodooHDA's, but every time I'm getting a kernel panic on boot (yes, I have deleted AppleHDA.kext). Does anyone has a solution for it? 5 Series/3400 Series Chipset High Definition Audio Vendor ID 8086 Device ID 3b56 Mac OS X 10.7.4 Thanks in advance _____________ Intel Pentium P6100 Dual-Core (2,0GHz) 4GB DDR3 Memory 500GB HDD
  23. I use Chimera, the {censored} {censored} install method alongside {censored}, i didn't feel like reposting my problem so here it is straight from r/Hackintosh on reddit... :c seems this is the 2nd time i'm asking across all forums, and no help anywhere yet. ? http://www.reddit.com/r/hackintosh/comments/2sgpiu/help_having_intel_hd4600_graphics_problems/ ? If you want to know anything like my build, or parts, I'll list them.
  24. Hi I am currently running Ubuntu 14.04 LTS on my HP G42 laptop and since the software-center got messed up while I tried to install Virtual Box, I am sharing my system details via terminal (lshw). I have highlighted the information that seems more useful. Please let me know if installation of OSX would be possible on this machine or not? ? ?description: Notebook? ? product: HP G42 Notebook PC? ? vendor: Hewlett-Packard? ? version: 0599120000202710010010100? ? serial: CNF03552YR? ? width: 64 bits? ? capabilities: smbios-2.6 dmi-2.6 vsyscall32? ? configuration: boot=normal chassis=notebook family=103C_5335KV sku=XR689PA#ACJ uuid=434E4630-3335-3532-5952-60EB693CA004? *-core? ? ? ?description: Motherboard? ? ? ?product: 1425? ? ? ?vendor: Hewlett-Packard? ? ? ?physical id: 0? ? ? ?version: 54.46? ? ? ?serial: P X120 01 1Z ZE 7AT? ? ? ?slot: Base Board Chassis Location? ? ?*-firmware? ? ? ? ? description: BIOS? ? ? ? ? vendor: Hewlett-Packard? ? ? ? ? physical id: 0? ? ? ? ? version: F.23? ? ? ? ? date: 08/05/2010? ? ? ? ? size: 1MiB? ? ? ? ? capacity: 1472KiB? ? ? ? ? capabilities: pci upgrade shadowing cdboot bootselect edd int13floppynec int13floppytoshiba int13floppy360 int13floppy1200 int13floppy720 int13floppy2880 int9keyboard int10video acpi usb biosbootspecification? ? ?*-cpu? ? ? ? ? description: CPU? ? ? ? ? product: Intel? Core i3 CPU ? ? ? M 370 ?@ 2.40GHz? ? ? ? ? vendor: Intel Corp.? ? ? ? ? physical id: 16? ? ? ? ? bus info: cpu@0? ? ? ? ? version: Intel? Core i3 CPU ? ? ? M 370 ?@ 2.40GHz? ? ? ? ? slot: CPU? ? ? ? ? size: 933MHz? ? ? ? ? capacity: 2400MHz? ? ? ? ? width: 64 bits? ? ? ? ? clock: 1066MHz? ? ? ? ? capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt lahf_lm arat dtherm tpr_shadow vnmi flexpriority ept vpid cpufreq? ? ? ? ? configuration: cores=2 enabledcores=2 threads=4? ? ? ? *-cache:0? ? ? ? ? ? ?description: L3 cache? ? ? ? ? ? ?physical id: 17? ? ? ? ? ? ?slot: L3 Cache? ? ? ? ? ? ?size: 3MiB? ? ? ? ? ? ?capacity: 3MiB? ? ? ? ? ? ?capabilities: synchronous internal write-through unified? ? ? ? *-cache:1? ? ? ? ? ? ?description: L2 cache? ? ? ? ? ? ?physical id: 19? ? ? ? ? ? ?slot: L2 Cache? ? ? ? ? ? ?size: 256KiB? ? ? ? ? ? ?capacity: 256KiB? ? ? ? ? ? ?capabilities: synchronous internal write-through unified? ? ? ? *-cache:2? ? ? ? ? ? ?description: L1 cache? ? ? ? ? ? ?physical id: 1a? ? ? ? ? ? ?slot: L1 Cache? ? ? ? ? ? ?size: 32KiB? ? ? ? ? ? ?capacity: 32KiB? ? ? ? ? ? ?capabilities: synchronous internal write-through instruction? ? ?*-cache? ? ? ? ? description: L1 cache? ? ? ? ? physical id: 18? ? ? ? ? slot: L1 Cache? ? ? ? ? size: 32KiB? ? ? ? ? capacity: 32KiB? ? ? ? ? capabilities: synchronous internal write-through data? ? ?*-memory? ? ? ? ? description: System Memory? ? ? ? ? physical id: 1b? ? ? ? ? slot: System board or motherboard? ? ? ? ? size: 3GiB? ? ? ? *-bank:0? ? ? ? ? ? ?description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)? ? ? ? ? ? ?product: M471B5673FH0-CH9? ? ? ? ? ? ?vendor: Samsung? ? ? ? ? ? ?physical id: 0? ? ? ? ? ? ?serial: 484BADA1? ? ? ? ? ? ?slot: Bottom - Slot 1? ? ? ? ? ? ?size: 2GiB? ? ? ? ? ? ?width: 64 bits? ? ? ? ? ? ?clock: 1067MHz (0.9ns)? ? ? ? *-bank:1? ? ? ? ? ? ?description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)? ? ? ? ? ? ?product: HMT112S6TFR8C-H9? ? ? ? ? ? ?vendor: Hynix? ? ? ? ? ? ?physical id: 1? ? ? ? ? ? ?serial: 08318DCC? ? ? ? ? ? ?slot: Bottom - Slot 2? ? ? ? ? ? ?size: 1GiB? ? ? ? ? ? ?width: 64 bits? ? ? ? ? ? ?clock: 1067MHz (0.9ns)? ? ?*-pci:0? ? ? ? ? description: Host bridge? ? ? ? ? product: Core Processor DRAM Controller? ? ? ? ? vendor: Intel Corporation? ? ? ? ? physical id: 100? ? ? ? ? bus info: pci@0000:00:00.0? ? ? ? ? version: 02? ? ? ? ? width: 32 bits? ? ? ? ? clock: 33MHz? ? ? ? ? configuration: driver=agpgart-intel? ? ? ? ? resources: irq:0? ? ? ? *-display? ? ? ? ? ? ?description: VGA compatible controller? ? ? ? ? ? ?product: Core Processor Integrated Graphics Controller? ? ? ? ? ? ?vendor: Intel Corporation? ? ? ? ? ? ?physical id: 2? ? ? ? ? ? ?bus info: pci@0000:00:02.0? ? ? ? ? ? ?version: 02? ? ? ? ? ? ?width: 64 bits? ? ? ? ? ? ?clock: 33MHz? ? ? ? ? ? ?capabilities: msi pm vga_controller bus_master cap_list rom? ? ? ? ? ? ?configuration: driver=i915 latency=0? ? ? ? ? ? ?resources: irq:43 memory:d0000000-d03fffff memory:c0000000-cfffffff ioport:4050(size=8)? ? ? ? *-communication? ? ? ? ? ? ?description: Communication controller? ? ? ? ? ? ?product: 5 Series/3400 Series Chipset HECI Controller? ? ? ? ? ? ?vendor: Intel Corporation? ? ? ? ? ? ?physical id: 16? ? ? ? ? ? ?bus info: pci@0000:00:16.0? ? ? ? ? ? ?version: 06? ? ? ? ? ? ?width: 64 bits? ? ? ? ? ? ?clock: 33MHz? ? ? ? ? ? ?capabilities: pm msi bus_master cap_list? ? ? ? ? ? ?configuration: driver=mei_me latency=0? ? ? ? ? ? ?resources: irq:42 memory:d4406100-d440610f? ? ? ? *-multimedia? ? ? ? ? ? ?description: Audio device? ? ? ? ? ? ?product: 5 Series/3400 Series Chipset High Definition Audio? ? ? ? ? ? ?vendor: Intel Corporation? ? ? ? ? ? ?physical id: 1b? ? ? ? ? ? ?bus info: pci@0000:00:1b.0? ? ? ? ? ? ?version: 05? ? ? ? ? ? ?width: 64 bits? ? ? ? ? ? ?clock: 33MHz? ? ? ? ? ? ?capabilities: pm msi pciexpress bus_master cap_list? ? ? ? ? ? ?configuration: driver=snd_hda_intel latency=0? ? ? ? ? ? ?resources: irq:44 memory:d4400000-d4403fff? ? ? ? *-pci:0? ? ? ? ? ? ?description: PCI bridge? ? ? ? ? ? ?product: 5 Series/3400 Series Chipset PCI Express Root Port 1? ? ? ? ? ? ?vendor: Intel Corporation? ? ? ? ? ? ?physical id: 1c? ? ? ? ? ? ?bus info: pci@0000:00:1c.0? ? ? ? ? ? ?version: 05? ? ? ? ? ? ?width: 32 bits? ? ? ? ? ? ?clock: 33MHz? ? ? ? ? ? ?capabilities: pci pciexpress msi pm normal_decode bus_master cap_list? ? ? ? ? ? ?configuration: driver=pcieport? ? ? ? ? ? ?resources: irq:17 ioport:3000(size=4096) memory:d3400000-d43fffff ioport:d0400000(size=16777216)? ? ? ? ? ?*-network? ? ? ? ? ? ? ? description: Wireless interface? ? ? ? ? ? ? ? product: BCM4313 802.11bgn Wireless Network Adapter? ? ? ? ? ? ? ? vendor: Broadcom Corporation? ? ? ? ? ? ? ? physical id: 0? ? ? ? ? ? ? ? bus info: pci@0000:02:00.0? ? ? ? ? ? ? ? logical name: wlan0? ? ? ? ? ? ? ? version: 01? ? ? ? ? ? ? ? serial: --? ? ? ? ? ? ? ? width: 64 bits? ? ? ? ? ? ? ? clock: 33MHz? ? ? ? ? ? ? ? capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless? ? ? ? ? ? ? ? configuration: broadcast=yes driver=wl0 driverversion=6.30.223.141 (r415941) ip=192.168.1.2 latency=0 multicast=yes wireless=IEEE 802.11abg? ? ? ? ? ? ? ? resources: irq:16 memory:d3400000-d3403fff? ? ? ? *-storage? ? ? ? ? ? ?description: SATA controller? ? ? ? ? ? ?product: 5 Series/3400 Series Chipset 4 port SATA AHCI Controller? ? ? ? ? ? ?vendor: Intel Corporation? ? ? ? ? ? ?physical id: 1f.2? ? ? ? ? ? ?bus info: pci@0000:00:1f.2? ? ? ? ? ? ?version: 05? ? ? ? ? ? ?width: 32 bits? ? ? ? ? ? ?clock: 66MHz? ? ? ? ? ? ?capabilities: storage msi pm ahci_1.0 bus_master cap_list? ? ? ? ? ? ?configuration: driver=ahci latency=0? ? ? ? ? ? ?resources: irq:41 ioport:4048(size=8) ioport:405c(size=4) ioport:4040(size=8) ioport:4058(size=4) ioport:4020(size=32) memory:d4405000-d44057ff? ? ? ? *-disk? ? ? ? ? ? ?description: ATA Disk? ? ? ? ? ? ?product: ST9320423AS? ? ? ? ? ? ?vendor: Seagate? ? ? ? ? ? ?physical id: 0.0.0? ? ? ? ? ? ?bus info: scsi@0:0.0.0? ? ? ? ? ? ?logical name: /dev/sda? ? ? ? ? ? ?version: 0006? ? ? ? ? ? ?serial: 5VH4BK20? ? ? ? ? ? ?size: 298GiB (320GB)? ? ? ? ? ? ?capabilities: partitioned partitioned:dos? ? ? ? ? ? ?configuration: ansiversion=5 sectorsize=512 signature=000d529a? *-battery? ? ? ?description: Lithium Ion Battery? ? ? ?product: MU06047? ? ? ?vendor: SMP-SO22G6F? ? ? ?physical id: 1? ? ? ?slot: Primary? ? ? ?capacity: 4400mWh? ? ? ?configuration: voltage=10.8V
  25. Version 20141107

    740 downloads

    Intel ACPI tools. The NEW version 20141107 compiled by me from original sources. Use iasl compiler with your DSDTSE or another editor. To update your DSDTSE, simply right click on DSDTSE --> Show contents, drag'n'drop iasl into --> Contents --> Resources. Another editors have mostly the same way. Or another way by Terminal: drag iasl on Terminal window (bash), (press Return (Enter) to see all keys) -> write some keys, drag Aml/Dsl file to compile/decompile. This way you can more deeply configure/clean your DSDT during compile (especially with -w3 key), find more warnings and junk code, empty / uninitialized methods. Have a nice day good compilings! Amen. Major tools and utilities: iASL - ACPI Source Language Compiler, ACPI Table Compiler, and AML Disassembler AcpiExec - Load ACPI tables and execute control methods from user space AcpiDump - Obtain system ACPI tables and save in ASCII hex format AcpiXtract - Extract binary ACPI tables from an ASCII acpidump AcpiHelp - Help utility for ASL operators, AML opcodes, and ACPI Predefined Names Miscellaneous utilities: AcpiNames - Example utility that loads and displays the ACPI namespace AcpiSrc - Convert ACPICA code to Linux format AcpiBin - Miscellaneous manipulation of binary ACPI tables Intel ACPI тулзы вер?ии 20141107 ?компилированы мною из оригинальных ?ырцов. Дл? и?пользовани? ? ДСДТ редактором. Ин?талим ?юда: Открываем правой кнопкой по "любимому" редактору --> показать ?одержимое пакета --> Contents --> Resources --> перета?киваем драг-н-дропом на ?ту папку файл iasl, на замену ?оглашаем??. Имеем ?вежий компайлер. ACPI Spec ver. 5.1 also here / ACPI ?пецификации вер?ии 5.1 также зде?ь: http://www.hackintoshosx.com/files/file/4155-iasl-intel-acpi-tools-x64/ Attension / Внимание :: Simple replacement of iasl compiler iasl (iasl --> iasl5) in MacIASL leads to an empty window Summary, the bottom line shows correctly the number of errors / warnings / remarks, but the screen remains blank and errors addresses hard to find. This is the MacIASL's bug, not the compiler's. Про?та? замена компайлера iasl (iasl --> iasl5) в MacIASL ведет к пу?тому выхлопу окна Summary, то е?ть количе?тво ошибок / предупреждений / ремарок в нижней ?троке показывает корректно, но окно о?тает?? пу?тым и адре?а ошибок найти ?ложно. Это баг ?амого MacIASL, а не компил?тора. IMPORTANT / В?Ж?О : To have a correctly disassembled DSL file w/o unexpected errors, you need to use the Terminal to decompile AML binaries. If you have a modern platform and more than 1 SSDT in your ACPI, you need to decompile all of them correctly. To decompile only DSDT.aml use -e key: Чтобы получить корректно диза??емблированный DSL файл без непредвиденных ошибок декомпил?ции, нужно и?пользовать терминал дл? декомпил?ции бинарников. Е?ли вы владеете ?овременной платформой и ?реди ACPI таблиц при?ут?твует более 1 SSDT, необходимо их корректно декомпилировать. Чтобы декомпилировать только DSDT, и?пользуйте ключ -e: iasl -e SSDT*.aml -d DSDT.aml iasl -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml To decompile all DSDT & SSDTs use -da key: Чтобы декомпилировать в?е DSDT и SSDT таблицы, и?пользуйте ключ -da: iasl -da DSDT.aml SSDT*.aml iasl -da /@full_path@/DSDT.aml /@full_path@/SSDT*.aml Also add reference file ref.txt with unresolved External Methods and Argument count for each. Use -fe key: Также можно добавить дополнительный реф.файл ref.txt c перечи?лением в?е еще нера?познанных методов и количе?тво ?ргументов дл? каждого. И?пользуйте ключ -fe External (MDBG, MethodObj, 1) // <<<--- Unresolved Mothod with designated Arguments count iasl -fe /@full_path@/ref.txt -e /@full_path@/SSDT*.aml -d /@full_path@/DSDT.aml And more: if you need to decompile your custom DSDT with your patches, you need to use all of the SSDTs this time too. В дополнение: е?ли вы решили декомпилировать ?вою ка?томную DSDT ? примененными патчами, в ?том ?лучае также требует?? и?пользовать терминал и включить в декомпил?цию в?е SSDT таблицы. Changelog 20141107: 07 November 2014. Summary of changes for version 20141107: This release is available at https://acpica.org/downloads This release introduces and implements language extensions to ASL that provide support for symbolic ("C-style") operators and expressions. These language extensions are known collectively as ASL+. 1) iASL Compiler/Disassembler and Tools: Disassembler: Fixed a problem with disassembly of the UartSerialBus macro. Changed "StopBitsNone" to the correct "StopBitsZero". David E. Box. Disassembler: Fixed the Unicode macro support to add escape sequences. All non-printable ASCII values are emitted as escape sequences, as well as the standard escapes for quote and backslash. Ensures that the disassembled macro can be correctly recompiled. iASL: Added Printf/Fprintf macros for formatted output. These macros are translated to existing AML Concatenate and Store operations. Printf writes to the ASL Debug object. Fprintf allows the specification of an ASL name as the target. Only a single format specifier is required, %o, since the AML interpreter dynamically converts objects to the required type. David E. Box. (old) Store (Concatenate (Concatenate (Concatenate (Concatenate (Concatenate (Concatenate (Concatenate ("", Arg0), ": Unexpected value for "), Arg1), ", "), Arg2), " at line "), Arg3), Debug) (new) Printf ("%o: Unexpected value for %o, %o at line %o", Arg0, Arg1, Arg2, Arg3) (old) Store (Concatenate (Concatenate (Concatenate (Concatenate ("", Arg1), ": "), Arg0), " Successful"), STR1) (new) Fprintf (STR1, "%o: %o Successful", Arg1, Arg0) iASL: Added debug options (-bp, -bt) to dynamically prune levels of the ASL parse tree before the AML code is generated. This allows blocks of ASL code to be removed in order to help locate and identify problem devices and/or code. David E. Box. AcpiExec: Added support (-fi) for an optional namespace object initialization file. This file specifies initial values for namespace objects as necessary for debugging and testing different ASL code paths that may be taken as a result of BIOS options. 2) Overview of symbolic operator support for ASL (ASL+) ------------------------------------------------------- As an extension to the ASL language, iASL implements support for symbolic (C-style) operators for math and logical expressions. This can greatly simplify ASL code as well as improve both readability and maintainability. These language extensions can exist concurrently with all legacy ASL code and expressions. The symbolic extensions are 100% compatible with existing AML interpreters, since no new AML opcodes are created. To implement the extensions, the iASL compiler transforms the symbolic expressions into the legacy ASL/AML equivalents at compile time. Full symbolic expressions are supported, along with the standard C precedence and associativity rules. Full disassembler support for the symbolic expressions is provided, and creates an automatic migration path for existing ASL code to ASL+ code via the disassembly process. By default, the disassembler now emits ASL+ code with symbolic expressions. An option (-dl) is provided to force the disassembler to emit legacy ASL code if desired. Below is the complete list of the currently supported symbolic operators with examples. See the iASL User Guide for additional information. ASL+ Syntax Legacy ASL Equivalent----------- --------------------- // Math operatorsZ = X + Y Add (X, Y, Z)Z = X - Y Subtract (X, Y, Z)Z = X * Y Multiply (X, Y, Z)Z = X / Y Divide (X, Y, , Z)Z = X % Y Mod (X, Y, Z)Z = X << Y ShiftLeft (X, Y, Z)Z = X >> Y ShiftRight (X, Y, Z)Z = X & Y And (X, Y, Z)Z = X | Y Or (X, Y, Z)Z = X ^ Y Xor (X, Y, Z)Z = ~X Not (X, Z)X++ Increment (X)X-- Decrement (X) // Logical operators(X == Y) LEqual (X, Y)(X != Y) LNotEqual (X, Y)(X < Y) LLess (X, Y)(X > Y) LGreater (X, Y)(X <= Y) LLessEqual (X, Y)(X >= Y) LGreaterEqual (X, Y)(X && Y) LAnd (X, Y)(X || Y) LOr (X, Y)(!X) LNot (X) // Assignment and compound assignment operationsX = Y Store (Y, X)X += Y Add (X, Y, X)X -= Y Subtract (X, Y, X)X *= Y Multiply (X, Y, X)X /= Y Divide (X, Y, , X)X %= Y Mod (X, Y, X)X <<= Y ShiftLeft (X, Y, X)X >>= Y ShiftRight (X, Y, X)X &= Y And (X, Y, X)X |= Y Or (X, Y, X)X ^= Y Xor (X, Y, X) 3) ASL+ Examples: -----------------Legacy ASL: If (LOr (LOr (LEqual (And (R510, 0x03FB), 0x02E0), LEqual ( And (R520, 0x03FB), 0x02E0)), LOr (LEqual (And (R530, 0x03FB), 0x02E0), LEqual (And (R540, 0x03FB), 0x02E0)))) { And (MEMB, 0xFFFFFFF0, SRMB) Store (MEMB, Local2) Store (PDBM, Local1) And (PDBM, 0xFFFFFFFFFFFFFFF9, PDBM) Store (SRMB, MEMB) Or (PDBM, 0x02, PDBM) }ASL+ version: If (((R510 & 0x03FB) == 0x02E0) || ((R520 & 0x03FB) == 0x02E0) || ((R530 & 0x03FB) == 0x02E0) || ((R540 & 0x03FB) == 0x02E0)) { SRMB = (MEMB & 0xFFFFFFF0) Local2 = MEMB Local1 = PDBM PDBM &= 0xFFFFFFFFFFFFFFF9 MEMB = SRMB PDBM |= 0x02 }Legacy ASL: Store (0x1234, Local1) Multiply (Add (Add (Local1, TEST), 0x20), Local2, Local3) Multiply (Local2, Add (Add (Local1, TEST), 0x20), Local3) Add (Local1, Add (TEST, Multiply (0x20, Local2)), Local3) Store (Index (PKG1, 0x03), Local6) Store (Add (Local3, Local2), Debug) Add (Local1, 0x0F, Local2) Add (Local1, Multiply (Local2, Local3), Local2) Multiply (Add (Add (Local1, TEST), 0x20), ToBCD (Local1), Local3)ASL+ version: Local1 = 0x1234 Local3 = (((Local1 + TEST) + 0x20) * Local2) Local3 = (Local2 * ((Local1 + TEST) + 0x20)) Local3 = (Local1 + (TEST + (0x20 * Local2))) Local6 = Index (PKG1, 0x03) Debug = (Local3 + Local2) Local2 = (Local1 + 0x0F) Local2 = (Local1 + (Local2 * Local3)) Local3 = (((Local1 + TEST) + 0x20) * ToBCD (Local1))
×