Jump to content

DSDT editor and patcher

DSDT editor patcher

  • Please log in to reply
991 replies to this topic

#21
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
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.

#22
Smith@@™

Smith@@™

    InsanelyMac LOL

  • Retired
  • 2,928 posts
  • Gender:Male
  • Location:Somewhere over the rainbow...ITALIA!
  • Interests:Dark matter and dark energy. E basta. HD3000. E basta.
Sounds good;)

#23
Hacktrix2006

Hacktrix2006

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 423 posts
  • Gender:Male
Must say nice app. Is there any generic patches such as RTC etc available?

#24
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
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


#25
mitch_de

mitch_de

    InsanelyMacaholic

  • Retired
  • 2,896 posts
  • Gender:Male
  • Location:Stuttgart / Germany
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.

#26
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
Good idea, for the next release we will add comments to the included patch files.

For now the included patches are the ones I use in my Asus P5E, you can find their descriptions here
http://www.insanelym...howtopic=199816

Most patches just insert code in a device.

Example:

into method label _DSM parent_adr 0x001F0002 remove_entry;
Removes method _DSM (if exists) which parent _ADR is 0x001F0002 (SATA device).

into device name_adr 0x001F0002 insertbeginMethod (_DSM, 4, NotSerialized)\n{\n    Store (Package (0x02)\n        {\n            "device-id", \n            Buffer (0x04)\n            {\n                0x81, 0x26, 0x00, 0x00\n            }\n        }, Local0)\n    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n    Return (Local0)\n}\nend
Inserts the code between begin and end in the device with _ADR 0x001F0002 (note that the \n in the end of each line is needed).

#27
macusers

macusers

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 195 posts
  • Gender:Male
  • Location:S.California

Good idea, for the next release we will add comments to the included patch files.

For now the included patches are the ones I use in my Asus P5E, you can find their descriptions here
http://www.insanelym...howtopic=199816

Most patches just insert code in a device.

Example:

into method label _DSM parent_adr 0x001F0002 remove_entry;
Removes method _DSM (if exists) which parent _ADR is 0x001F0002 (SATA device).

into device name_adr 0x001F0002 insertbeginMethod (_DSM, 4, NotSerialized)\n{\n    Store (Package (0x02)\n        {\n            "device-id", \n            Buffer (0x04)\n            {\n                0x81, 0x26, 0x00, 0x00\n            }\n        }, Local0)\n    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n    Return (Local0)\n}\nend
Inserts the code between begin and end in the device with _ADR 0x001F0002 (note that the \n in the end of each line is needed).



It sounds like an interesting Utility, but wonder where i can find the patch codes from, for instant codes for my graphic card ?. Sorry if this is a dump question.

#28
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
As the app was just released and is still in development, there aren't many patches in this format yet.

We are thinking about a way to centralize the patches, so experienced users could make their patches available in the "automated patch" format, and users without DSDT patching knowledge could easily find and apply the patches to their DSDT.

Maybe we can make a topic or a site with the patches, but the contribution from experienced users is essential.

#29
el coniglio

el coniglio

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 101 posts
The original post have been updated with the latest release. I don't know how the "compile" error handling will perform on Windows and Linux since I couldn't test. Please report if something is not working.

#30
jlvaio

jlvaio

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 220 posts

The original post have been updated with the latest release. I don't know how the "compile" error handling will perform on Windows and Linux since I couldn't test. Please report if something is not working.


anyway to have a fix for vaio snc aka s"sony notebook control" aka sny50001 aka sny60001 aka sonypi (linux) that enable fn keys, lan ,qe/ci on internal screen memory card reader etc... on all vaio

thanx for attention :D

#31
Hacktrix2006

Hacktrix2006

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 423 posts
  • Gender:Male
This makes DSDT editing a Breeze, Would love Generic Patches though as this would help aid me to finish my Boot-132 for Lenovo G550 users.
Keep up the work

#32
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
We don't have Sony or Lenovo notebooks, but if you know the needed patches, or have a patched and the original DSDT, we can help to make the automated patches, so it would be easy for other people with similar notebooks to patch their DSDT.

#33
jlvaio

jlvaio

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 220 posts
hi
thx for reply

i hope you can help all i can give is related information by g""gle about sonypi sonypi is the name in linux for the equivalent of snc

i'v found this:
http://sony-tools.ho...x.net/sony.html

that give script to have info or control of snc

more links about documentation:

http://www.insanelym...p...18556&st=60

read my post and those of mammoth they contains some of thethings i ve found about snc component
search the file:
SONY_VAIO_INFO_JLVAIO.zip :)


thanx for your attention

i can t do more i m so noob

regards

#34
el coniglio

el coniglio

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 101 posts
I've just finished the dsdt extraction for windows, so in the next release it will have all options on all 3 OSes. I'm working on adding some error handlings to warn the user of problems the program may encounter (as trying to read the dsdt in linux w/o permission). If you find any issue please report so I can take a look on it before releasing a new version. =)

#35
kellis

kellis

    InsanelyMac Protégé

  • Members
  • PipPip
  • 93 posts
  • Gender:Male
  • Location:Austin, tx
Hi, this looks to be the best patcher thus far.
I have questions though.
When i extract the dsdt dynamically, it's like 8000 lines. the tool only has a row showing 3 digits for the line numbers.
Is it possible to make it 1 digit wider? or adjustable maybe?

2nd question:
when i extract dsdt, then recompile it without any changes, it has tons of errors.
I read that it's because my bios is "buggy". but this buggy bios works in windows and mac etc.
so even if i fix the errors, recompiling it without errors would then work, but the dsdt is unusable, i can't boot with it. macos complains about some acpi stuff and locks right there (no Kernel panic though).
how is it possible that i extract my bios. not make any changes other than the if loops that complained, and the dsdt is not useable.
PS: i have an HP insyde bios. (dv7 3180us). with the latest bios installed.
any idea?

#36
el coniglio

el coniglio

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 101 posts

When i extract the dsdt dynamically, it's like 8000 lines. the tool only has a row showing 3 digits for the line numbers.
Is it possible to make it 1 digit wider? or adjustable maybe?


It is an issue from the editor component, we opened a report about this and it is fixed in the svn, the next release will have the updated library so this won't happen.

About the second question, I've experienced a similar situation with dsdt of a hp mini, removing the compilation errors made it to compile but it didn't work (boot) until I added some patches. I think this happes due to the decompiler. oldnapalm can help you out more since he has more experience.

#37
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil

when i extract dsdt, then recompile it without any changes, it has tons of errors.
I read that it's because my bios is "buggy". but this buggy bios works in windows and mac etc.
so even if i fix the errors, recompiling it without errors would then work, but the dsdt is unusable, i can't boot with it. macos complains about some acpi stuff and locks right there (no Kernel panic though).
how is it possible that i extract my bios. not make any changes other than the if loops that complained, and the dsdt is not useable.
PS: i have an HP insyde bios. (dv7 3180us). with the latest bios installed.
any idea?

Does Mac OS boot without a dsdt.aml file? (using original DSDT from BIOS)
Can you attach your original DSDT and the fixed/recompiled one? What message do you see in verbose boot before it locks?
Maybe you need another patch, or fix the errors another way.

#38
kellis

kellis

    InsanelyMac Protégé

  • Members
  • PipPip
  • 93 posts
  • Gender:Male
  • Location:Austin, tx

Does Mac OS boot without a dsdt.aml file? (using original DSDT from BIOS)
Can you attach your original DSDT and the fixed/recompiled one? What message do you see in verbose boot before it locks?
Maybe you need another patch, or fix the errors another way.


oh man that would be great if you could help yeah!

Yes i can boot very nicely in the macos without any dsdt file.
I wanted to fix little details by editing the dsdt itself.

I will attach the original DSDT as extracted, then the 2nd "fixed" one as soon as i boot that computer.

i have seen 2 types of messages.
Either a KP, with some acpi exceptions.
2nd message was without any exception, it just locked at NULLCPUxxxx
also, one thing that confused me,
iasl -c file would show 0 errors.
but iasl -ta would show 8 errors or so.
why the inconsistency?

#39
kellis

kellis

    InsanelyMac Protégé

  • Members
  • PipPip
  • 93 posts
  • Gender:Male
  • Location:Austin, tx

Does Mac OS boot without a dsdt.aml file? (using original DSDT from BIOS)
Can you attach your original DSDT and the fixed/recompiled one? What message do you see in verbose boot before it locks?
Maybe you need another patch, or fix the errors another way.



Here are the 2 dsl files.

1 is directly an extract from bios.
2nd one is one i tried to fix using a post here on insanelymac, saying to remove some if() as they were invalid.
It indeed dropped the numbers of errors by a lot.
All i really need is able to compile the "original" by cleaning it. leaving all standard statements and definitions identical to the original BIOS. Once i know i have a stable, unpatched dsl file, then i can play with it and make modifications.

Hope you can help :D
Thank you so much!

Attached Files



#40
oldnapalm

oldnapalm

    InsanelyMac V.I.P.

  • Moderators
  • 6,857 posts
  • Gender:Male
  • Location:Brazil
The errors are caused by the If (IGDS) inside Device (RP05). If you remove If and Else but leave the code inside both, you will have devices PXSX and J380-J384 at the same time, while the original code defines the first or the others, depending on IGDS.

I believe you need to remove the code from one of the blocks, as well as the references to it.

Attached File  dsdt.dsl.zip   41.75KB   35 downloads





Also tagged with one or more of these keywords: DSDT, editor, patcher


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy