Jump to content
oldnapalm

DSDT editor and patcher

1,000 posts in this topic

Recommended Posts

Advertisement

@oldnapalm,

Thank u dear.

Share this post


Link to post
Share on other sites

Follows a generated list with available patches to use with DSDT Editor.

 

Last updated: Tue Oct 5 15:42:06 2010

 

  • Patches
  • AD1988B.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • AD2000B.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • AHCI SATA orange icon.txt
    Change ID of SATA device to fake ESB2 AHCI (silver icons for internal HDs instead of orange ones)


  • ALC662.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • ALC883.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • ALC888.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • ALC889.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • ALC889A.txt
    Insert method _DSM into device with _ADR 0x001B0000


  • Alias.txt
    Remove aliases from scope _PR (cpus=1 fix)


  • Aspire 3690.txt
    Aspire 3690


  • Aspire 5920.txt
    Acer Aspire 5920


  • ASUS P5E.txt
    All patches used in ASUS P5E (also tested on P5E Deluxe, P5K Premium and Maximus Formula)


  • AZAL to HDEF.txt
    Rename device AZAL to HDEF and change all references to it


  • Dell M1330.txt
    Dell M1330 (Intel X3100 video)


  • DTGP.txt
    Add method DTGP to the main block, it's used by other patches


  • EHCI sleep.txt
    Fix for "AppleUSBEHCI::CheckSleepCapability - controller will be unloaded across sleep"


  • GA P35-DS3.txt
    Add method DTGP to the main block, it's used by other patches
    Change ID of SATA device to fake ESB2 AHCI (silver icons for internal HDs instead of orange ones)
    Rename device AZAL to HDEF and change all references to it
    Insert method _DSM into device with _ADR 0x001B0000
    Insert device GIGE into device with _ADR 0x001C0004
    (for Gigabyte motherboards)
    Change methods _STA and _CRS into device HPET (to avoid AppleIntelCPUPowerManagement panic)
    EHCI fix
    Change ID of USB devices to fake ICH10-R (sleep fix for ICH9)
    Remove IRQs from devices PIC, RTC and TMR, and add IRQs to device HPET
    Change ID of device with _ADR 0x001F0000 (LPC)
    Insert device SBUS into device PCI0
    Change method _PTS where Arg0 is 0x05 (shutdown)
    Insert return into method _WAK to fix warning
    (for Gigabyte motherboards)
    Change the length of IO segment in device RTC to 0x02 (fix CMOS reset)


  • GIGE.txt
    Insert device GIGE into device with _ADR 0x001C0004
    (for Gigabyte motherboards)


  • GMA950 desktop.txt
    Insert device PEGP into device PCI0


  • GMA950 laptop.txt
    Insert method _DSM into device with _ADR 0x00020000


  • HDEF.txt
    Insert device HDEF into device with _HID PNP0A08 (PCI0)


  • HPET.txt
    Change methods _STA and _CRS into device HPET (to avoid AppleIntelCPUPowerManagement panic)


  • ICH9 USB sleep.txt
    Change ID of USB devices to fake ICH10-R (sleep fix for ICH9)


  • IOATAFamily.txt
    Fix IDE Timing Register to avoid IOATAFamily on 10.6.0-10.6.2


  • IRQs.txt
    Remove IRQ from device PIC and move IRQs from devices RTC and TMR to device HPET


  • LAN0.txt
    Insert device LAN0 into device with _ADR 0x001C0002


  • LPC.txt
    Change ID of device with _ADR 0x001F0000 (LPC)


  • Mac devices.txt
    Rename devices to Mac specific ones (by fbifido)


  • nVidia 9800 GTX 512 MB.txt
    Insert device GFX0 into device with _ADR 0x00010000


  • RTC.txt
    Change the length of IO segment in device RTC to 0x02 (fix CMOS reset)


  • SBUS.txt
    Insert device SBUS into device PCI0


  • Shutdown ASUS.txt
    Change method _PTS to do nothing if Arg0 is 0x05 (shutdown)


  • Shutdown Gigabyte.txt
    Change method _PTS where Arg0 is 0x05 (shutdown)


  • Shutdown Intel.txt
    Change method _PTS where Arg0 is 0x05 (shutdown)


     

    [*]WAK.txt

    Insert return into method _WAK to fix warning
    (for Gigabyte motherboards)

Share this post


Link to post
Share on other sites

@el coniglio,

keep up the good work :P

One thing, how do I build it from src (got from svn)?

Share this post


Link to post
Share on other sites
@el coniglio,

keep up the good work :)

One thing, how do I build it from src (got from svn)?

 

Hey valv, that link is just for the editor component I used in the project, you don't really need to get it as it is packed with the rest of the application. Oldnapalm posted the link just to give the proper credits. =D

 

We are sending a beta version for those who are interested and as soon as some hard testing is passed I'll post a public release.

Share this post


Link to post
Share on other sites

This looks great! mayeb I can finlay patch my DSDT for my Bade 2! get some things working without kexts.

I hear that someone patched their DSDT for the Intel Bad Axe 2 mobo so well, they didnt need graphics,sound, nullcpu kexts.... Anyone else heard of this?

 

This DSDT editor looks amazing! very simple and easy to look at, hopefully easy to use!

Share this post


Link to post
Share on other sites
This DSDT editor looks amazing! very simple and easy to look at, hopefully easy to use!

 

Yep it is really easy to use if you have the patches already coded. In the zip there is a folder with some working examples (ASUS P5 Patches), if all are applied to a original extracted dsdt it will fix a bunch of issues. It could be applied from a single file containing all patches, making even more simple to the user. The patches inside the pack were tested for P5E, P5E Deluxe, P5K Premium and Maximus Formula.

 

As you can see in the examples, patches can (and may) be coded to avoid being applied more than once, so you can use a pack even if you already have applied part of it.

Share this post


Link to post
Share on other sites

Really interesting!

One thought though, If when selecting a section it jumps to it by making the first line appear on the right pane as the first to show, it 'd ease its use. At first sight I didn't knew it did jump to the requested section, as it showed its first line at the bottom (last line to appear).

Greetz

Share this post


Link to post
Share on other sites
Is it possible to compile it for windows? :D

You'd think it would work by extracting the jar files in the Resources folder from the app.

 

Yes I think it will work. It won't extract DSDT from IOReg or open an AML file instead of the DSL (it decompiles it if you select an AML file). The editor component support the Control + Something shortcuts by default, I just added the Meta (Command) + Something, so no problem with them. But try it, if it doesn't work I can check and build a version without the OS specific resources, so you can run it on Linux or Windows.

 

Edit: oldnapalm tested it on windows and worked. The simplest way is to create a ./lib with all jars but DSDTParser.jar and leave DSDTParser in ./ so you can run java -jar DSDTParser.jar (or double-click on the explorer) without any -cp parameters. I am going to check to make the dsdt extract work in linux and append iasl binaries for linux and windows, so most functions would work on all 3 OS.

 

Edit again: I tested and patches are not applying in windows cause of the \r windows uses in the line breaks. It will be fixed in the next release =)

Share this post


Link to post
Share on other sites

Looks fantastic - for a dyslexic like me it will be most useful to gain some order to pages of code.

 

Many Thanks -_-

Share this post


Link to post
Share on other sites

Looks WAY better than DSDTE, and both the automatic patching and device tree will be incredibly useful. Thanks for the great work!

 

EDIT: Spoke way too early. No system menu (tolerable) and no context menus (very f*cked up). Device tree is pretty much useless: the need to jump-unlock-edit-lock makes it nothing but a waste of time. I know these things seem small, but they're disproportionately annoying, even for a Java program. I hope they can be fixed somehow.

Share this post


Link to post
Share on other sites
EDIT: Spoke way too early. No system menu (tolerable) and no context menus (very f*cked up). Device tree is pretty much useless: the need to jump-unlock-edit-lock makes it nothing but a waste of time. I know these things seem small, but they're disproportionately annoying, even for a Java program. I hope they can be fixed somehow.

 

I understand your point. I see two possible solutions for the issue:

1. Remove the "toggle editable", but the tree will only refresh when you trig a button or shortcut;

2. Make a "node editor window" in a context menu, that allows you to edit a tree node, once the editing is done, the code is reparsed and tree refreshed

 

The main focus was the automated patching to help users who doesn't know how to apply a patch. The application isn't ready (compiling error handling missing) so bring your suggestions.

Share this post


Link to post
Share on other sites
2. Make a "node editor window" in a context menu, that allows you to edit a tree node, once the editing is done, the code is reparsed and tree refreshed.

 

not tried the app yet but I like the sound of option 2.) :)

Share this post


Link to post
Share on other sites

I agree, the main focus of this app is the automated patching, but the second option would be useful for those who want to edit manually.

Share this post


Link to post
Share on other sites

Almost any patch can be coded.

 

Here is the RTC patch (changes the last argument of the IO segment inside the device with _HID PNP0B00 to 0x02)

into device name_hid PNP0B00 code_regex (IO\s\((?:\s*[^,]+,\s*(?:\/\/\s.*)?\s*\n)+\s*)(\dx\d+)(,\s*(?:\/\/\s.*)?\s*\n\s*\)) replaceall_matched begin %10x02%3 end

Share this post


Link to post
Share on other sites

The only problem what i see (using new patch files) is, that they are (for me :D ) near unreadable :D

Would be fine if the patch files could have an section in "normal text) so see what it does.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By MaLd0n
      ---INSTALLATION TUTORIAL---
       
      ---Original Post---
      https://olarila.com/forum/viewtopic.php?f=45&t=9172
       
      ---USB---
      https://pikeralpha.wordpress.com/2016/07/13/simple-skylake-usb-fix-no-kexts-required/
       
      ---CLOVER FOLDER---
       
      CLOVER.zip
       
       
      --MOBO
      GigaByte Z390 M Gaming



      --PROCESSOR
      Intel Core i9-9900K


      --COOLER
      CoolerMaster MasterLiquid ML120R RGB


      --MEMORY
      Corsair Dominator Platinum 16GB (2 x 8GB)


      --GPU
      Sapphiretech Radeon RX 590 8 GB GDDR5


       
      --SSD
      Samsung 970 EVO NVMe M2 Flash Drive


      --POWER SUPPLY
      EVGA 750 N1, 750W


      --WIRELESS
      TP-Link Archer T9E


      --BLUETOOTH
      Orico BTA-403


      --CASE
      Thermaltake View 21 Tempered Glass Edition


      --DSDT Patches--
      -FIX ERRORS AND WARNINGS -FIX ACPI ERRORS -REMOVE UNUSED SCOPES / DEVICES -HIGH PRECISION EVENT TIMER -SATA SERIE 10 ID -DMAC -REMOVE 22K LINES, PROBLEMATIC and UNUSED -FIX K.P in REBOOT -NVRAM / REAL TIME CLOCK -SLPB -DARWIN / WINDOWS 2015 -XHCI -PLUGIN TYPE -HDAS to HDEF -HDEF -REAL TIME CLOCK -ARTC -IRQs -SBUS -MIKEY -BUS1 -MCHC -ALS0 -SHUTDOWN -UAR1 -LAN -FWHD -USBX -PMCR -PPMC -XSPI -GMM -IMEI -EC -PNLF -ARPT -GFX0 -NVME -DTGP -ACQUIRE MUT0 0XFFFF -OPERATION REGION GPIO -MUTEX MUT0 0x00 -EXTERNAL REFERENCES -UNKNOWNOBJ -HDMI / HDAU -FULL RENAMED DEVICES  
      --SCREENSHOTS--





























      --BruceX--
       
      --USB-C-- test with SanDisk Ultra USB-STICK 128gb


       
      -Credits and thanks to the old and new people in the community who developed patches, kexts and bootloaders!
      Slice, Kabyl, usr-sse2, jadran, Blackosx, dmazar, STLVNUB, pcj, apianti, JrCs, pene, FrodoKenny, skoczy, ycr.ru, Oscar09, xsmile, SoThOr, RehabMan, Download-Fritz, Zenit432, cecekpawon, Intel, Apple, Oracle, Chameleon Team, crazybirdy, Mieze, Mirone, Oldnapalm, netkas, Elconiglio, artut-pt, ErmaC, Pavo, Toleda, Master Chief and family, bcc9, The King, PMheart, Sherlocks, Micky1979, vit9696, vandroiy2013, Voodoo Team, Pike R. Alpha, lvs1974, Austere.J, CVad, Sampath007, onemanosx, erroruser, Jenny David, Olarila Facebook Community, Hackintosh Facebook Community and many others!
      We're all here to have fun and learn from each other!
    • By AppleBytes
      Hello,
      I'm working on a re-install of OSX on a dell inspiron 9400. I was finally able to get a copy of SL on it. But it still needs MUCH work, as the graphics (NVIDIA Geforce Go 7800) isn't properly recognized -- either by model, or installed VRAM.
      It has 512Mb, but only initializes 256Mb VESA.
      Anyway, as a start, I thought it best to use a valid dsdt.dsl for compilation, and start there. I've managed to remove all the warnings, and errors save 2
      OUTPUT:
      # sudo iasl -ta ./dsdt.dslll Intel ACPI Component Architecture ASL Optimizing Compiler version 20110527-64 [May 27 2011] Copyright (c) 2000 - 2011 Intel Corporation ./dsdt.dslll   3519:                                 Return (0x00) Error    4080 -           Invalid object type for reserved name ^  (found INTEGER, requires Buffer) ./dsdt.dslll   3956:                     Return (Package (0x00) {}) Remark   5072 -         Effective AML package length is zero ^ ASL Input:  ./dsdt.dslll - 4997 lines, 158533 bytes, 1633 keywords Compilation complete. 1 Errors, 0 Warnings, 1 Remarks, 577 Optimizations I'm attaching a copy of the above output, and the dsdt.dsl file in a tarball to this post in hopes someone with the required knowledge can help me fix it.
      FWIW
      SMBIOS I'm using indicates this is a MBP 3,1
      cpu: cd2 (T7400 @2.16Ghz)
      graphics: NVIDIA Geforce Go 7800 ( G70M? )
      ram: 4Gb
      dell inspiron 9400 (Laptop)
       
      Thank you for all your time, and consideration!
       
      --Chris
       
      DSDT-DSL.tar
    • By kylon
      Cloud Clover Editor allows you to manage Clover EFI and Ozmosis configs everywhere!
       
       
      WEB
      Open Cloud Clover Editor
       
      APP (MacOS - Discontinued)
      Clover flying editor ( Micky1979 )
       
       
       
       
      Sources: https://bitbucket.org/kylon/cloud-clover-editor-cce/overview


      To run CCE at home you will need:
       
      An HTTP server (Apache, Nginx, ...) PHP 5.3.3+ (latest PHP version is always recommended for better performances/security) Sqlite3 PHP extension  
       
      Some Features:
       
      Edit text in tables:
      Editable fields are marked with a text cursor.
      Double click, or tap and hold, to open the inline editor.
      You can now press Enter or click outside to save your changes.
       
       
      Tri-state checkboxes:
      There are 3 possible states for a checkbox: Checked, indeterminate and unchecked.
       
      Checked: Value is true;
      Indeterminate: Value is false;
      Unchecked: Value is not set (ie, removed from plist)
       
      Working with multiple configs:
      The right sidebar is your multitasking menu.
      Use the add button to create a new config and add it to the list.
      You can safely switch between all your configs, no changes will be lost.
      You can mix Clover EFI and Ozmosis configs.


      Config Upgrade feature:
      In the case you are using old configuration options, CCE gives you the ability to automatically upgrade your config.
       
       
      Copy to:
      You can copy patches between your configs (you will love this when you need to copy kernel and kext patches ;D ).
      You will find a yellow copy icon if that field does support the copyTo feature.
       
       
      Ozmosis Mode:
      A new setting, Cloud Clover Editor Mode, is now added in Cloud Clover Editor -> CCE Settings.
      This will let you switch from Clover EFI to Ozmosis mode.
      Changes to your current file will be lost.
       
       
      CCE Bank 2.0:
      Thanks to @cecekpawon for the idea.
       
      CCE Bank is a database where you can save/load Clover EFI and Ozmosis configs.
      You can protect your config from unwanted modifications or make a publicly editable config.
       
      To save a config in CCE Bank you only need to check the "Save to CCE Bank" option.
       
      Tick the box generate a new CID, if you don t have one.
       
      A CID (CCE ID) acts like a container and it is your authentication key.
      You can group multiple configs under the same CID or generate as many CIDs as you like.
       
      Edit Modes:
      Public: Anyone can make modifications, only the owner can change its settings. Private: Only the owner can make modifications and change its settings. MyBank: Only the owner can see this config, make modifications or change its settings.  
      MyBank is your private area.
      Change the 'view mode' to switch between the public bank and your personal bank.
       
      To manage your currently loaded config, go to Cloud Clover Editor -> Open config -> click the settings button.
       
       
      Notes:
      Locked/Private configs are marked with a padlock MyBank configs are only visibile in your private area Only the owner of a locked config can save the modifications in CCE Bank, hower you are free to do whatever you want in CCE and download the modified config If you loose your CID you can just reply or pm me No account is required!  
       
      Main Features:
      Left sidebar does support touch swipe on touch devices.
      No changes will be lost on page reload.
       
       
      Credits
      mackie100 - took some ideas from his app Clover EFI dev team Eric Slivka - new serial number Virtual1 - new serial number cecekpawon - PHP 5.3.3 patch, , help with the ACPI Loader Mode flag and more Micky1979 - Clover flying editor crusher. - Help with the ACPI Loader Mode flag Download-Fritz - Help with the ACPI Loader Mode flag Pavo - Ozmosis fields and values stehor - Ozmosis fields and values Sherlocks - General help and support gujiangjiang - General help and support Please let me know if i forgot you!
    • By penghubingzhou
      URL:https://github.com/penghubingzhou/VoodooI2C-DSDT
       
      VoodooI2C-DSDT is a repository that is aiming at collecting various successful DSDTs for Voodoo I2C.
      Purpose
      The purpose of this repository is to provide some useful code examples for people who haven't yet make Voodoo I2C work. Maybe It don't have your model of laptop, but code in this repository may have some help and references for you.
      Note that the code in this repository is ONLY FOR REFERENCES and it can‘t replace your own work!
      For Submission
      This repository welcomes everyone to submit DSDT code examples that have successfully made VoodooI2C work by PR. To submit your example, please put the DSDT file (or Hotpatch SSDT file), an ioreg without Voodoo I2C installed, and Info.txt in a folder named by your laptop model. Info.txt should include:
      Your CPU model (better for including CPU platform)
      Your touchpad Device ID
      The mode you use (GPIO interrupt or polling)
      Satellite Driver You Use
      Then, fork this repository and clone it, put your file in and commit it to your repository. After checking the conflicts, you can send your commit as a PR to me.
      An example for submitting can be found in Lenovo Xiaoxin Chao 7000-14.
      Credits
      @Alexandred for VoodooI2C @daggeryu for the idea in this repository @penghubingzhou and @williambj1 for maintaining
    • By Gorec
      Hi.
      I apologize in advance if I didn't post in the right category and if my title and description aren't specific enough :c
       
      My config in a nutshell:
      CPU: i7 5820k GPU: MSI GTX 1060 3GB RAM: 16 GB MOBO: MSI X99 SLI PLUS I attached RunMe output with all the details of my built.
       
      Some background:
      I have my Hackintosh for about half a year. That time I managed to make it works and fix major issues, but some of them left unresolved since then and I ignored them until now.
      I use my Hackintosh for Adobe projects (PR, AE, PS, IL, AU and a lot more) - most of them connected with video editing of course browsing with Chrome and other small tasks.
       
      Problems:
      Random restarts - this is the biggest one. I'm starting to work on bigger and bigger projects and at this time I think I can't allow this to happen that often. In the past, they happened like once a day or a couple of times a week. However, now it's just frustrating when it happens even 5 or more times a day. I've tried to observe and find out what can be the cause but I haven't managed to find any connections. I thought it happens when Premiere or another app is using GPU, but I haven't seen increased usage when it restarts. I think that it can be connected with GPU, memory or PSU or... meh, anything else. I don't have resources to check if it'll work with other components. There should be some fix for this. I will really appreciate any help with this :c Restart instead of shutdown & sleep doesn't work. I've tried to look through some Google results for this and tried many solutions (as you can see in attached Clover folder), but I think the right one for many of these issues is to make my own DSDT. Glitches, freezes and other things while encoding a video. It happens very often when I try to do this. Maybe it is an issue with GPU or (hopefully) only with GPU drivers which can be fixed with some patch. Today my headphones stopped working. I have a multi-output device configured in the Audio MIDI Setup app which includes my headphones (HyperX Cloud via USB) and Soundflowerbed virtual audio device for capturing system audio. Today while I was trying (like 15 times) to encode a video in Media Encoder in the background and watch video on YouTube I stopped hearing anything from my system. Of course, it restarted a couple of times as always, but even this didn't solve this. If I plug them directly with mini jack (not via USB Soundcard which was in the box and which I always used) in the front IO or the back I only hear some loud noise It takes EX-Fat formatted volumes a few minutes to mount after each restart. I found a workaround to format it with NTFS since I have Tuxera installed and I will reformat these volumes when I will find time for this, but maybe there is some fix for this. GPU is a little bit hot. HW Monitor shows it is only 45-55 degrees, but for my hand is a little bit hot, idk. Also related to GPU - glitch after POST but before entering Clover boot menu. It is a black screen with little white squared glitches for a few seconds. Maybe it indicates the GPU drivers are loading, but maybe it shouldn't be like this. And if I can ask about that - I can't make all applications hide on startup. I, obviously, have "Hide" checkbox checked on every login item in settings, but it doesn't work, none of the apps is hidden in the dock. Is there a way to fix this? Also a small but annoying problem - I can't turn off permanently Mojave update notification (since I tried to install it, and I had to reverse to High Sierra because I had a black screen and I didn't have time for repairing all of them. Tags are not working in Finder - every time I tag a file or folder and make a change in it (for example save a text file) the tag disappears.  
      So, with knowing all of that, is there a way to make a proper DSDT file for my Hackintosh? I tried to look through some guides on how to make it but I think I reached my abilities to understand how Mac OS works and what all of these things are, so I'm asking you guys politely, would someone like to help me? At least with these random restarts? :/
      I really begin to think that I'm a newbie in configuring all of that Clover things - even after what I managed to do with my PC. Help me, pleease... :c
       
      If you have any questions post it below, I will really appreciate any help <3
      Send me MBP-Gorec.home.zip
×