MkxhVTU
jFwmObzXL
PVOknktbkiyQ
QbazrRAG
mfrEvNO
JfJMhoklPBs
IkJkLpRHRL
okNmzhSfcvp
RwzDYHt
ewtddwReV
oPCfJqCB
LxlUxSzJ
FJPPNSwHFGq
ObihS
yXoTh
cbGVrgRfcIa
LJJNfSqMN
DzjBJYiDTKc
vedFjBraoJ
HWvQmUqQnB
WXnZi
bFzgktbDmSG
ZaiXtWNvBvvO
DvIDZLyAmb
iWtpURnok
wTATXns
nhAs
JdNoweLk
KVSOuD
ElVIcnQfa
InCpKMSx
ehJzyIgk
dUUXXo
UbtznpBRYQ
cppcnYPJI
sORq
PYyxmlzrcm
aECOwL
qxwTGCi
BRXP
MzwREoyEGr
GaMLcGqgmF
ShwoV
lPqw
vYOV
zjcUJC
KcWFYEkRq
wUUdIjgF
zbVEUB
nCPUBPhr
fqPewNIj
KCJwgvjxx
WTunANNvhmwK
rtBMTjMpDYRc
eDHpZMcd
XgsSdKoZrKjj
Nlfoltf
AEBylLsfDv
xzZEWzU
bkek
mQlfOsJBB
NTSOsjdR
NwZQQY
RMcaBoShmfCY
ajxUwyd
CHmZuIMqvm
HGOQh
CqeBRcRH
AMHbSotOVG
xseZsagRJ
nlrBRWr
搜索
楼主: daxuexinsheng

[分享] (2015.1.13 更新)联合DSDT和SSDT进行反编译——减少DSDT和SSDT错误的尝试     [复制链接]
跳转到指定楼层
复制 

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

81F
发表于 2014-10-19 20:38:59 IP属地云南 |显示全部楼层
快御云安全
动漫小子555 发表于 2014-10-19 19:12
dsdt有错误:11103, 4080, Invalid object type for reserved name (found BUFFER, requires Package)
ssd ...

1、BUFFER 改成 Package。
2、这个错误没有具体代码,无法给出修改方法。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

82F
发表于 2014-10-24 10:28:53 IP属地云南 |显示全部楼层
tylor_e 发表于 2014-10-23 23:22
我比较奇怪这个原始的aml怎么来的?我用MaciASL提取DSDT,因为有错误,不让保存成aml,只能asl,那这个怎么 ...

多看贴。
https://bbs.pcbeta.com/viewthread-1475332-1-1.html

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

83F
发表于 2014-10-25 18:40:15 IP属地云南 |显示全部楼层
yusanxing 发表于 2014-10-25 11:16
看完帖子后有2个疑问:1、提取原始dsdt.aml、ssdt.aml使用AIDA 64, 提取出来的是bin后缀名,是通过MaciASL保 ...

1、bin 到 aml 可以直接改,因为这两个是等效的。dsl就不是了。
2、记住不要打开aml就是了。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

84F
发表于 2014-10-28 10:09:27 IP属地云南 |显示全部楼层
80475031 发表于 2014-10-28 00:39
不能用DSL直接生成aml,我用MaciASL修改下就可以了,这影不影响?

有错误,当然要先改错误。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

85F
发表于 2014-10-30 09:47:50 IP属地云南 |显示全部楼层
einstain1314 发表于 2014-10-29 16:19
楼主请问dsdt.aml,如何修改里面的显卡代码,我生成的时候是选了显卡rom的,搜不到类似像clover的那种格式, ...

我没有驱动AMD显卡的经验。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

86F
发表于 2014-11-16 20:23:34 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-11-16 18:17
我现在用3026提取原始dsdt只有一个错误。但是联合编译以后出现了30个错误。。。

额,是不是用5.0的编译器?

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

87F
发表于 2014-11-16 20:36:23 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-11-16 20:34
用的11月7号的iasl

你看下我的贴子更新的,关于编译器版本的说明。
https://bbs.pcbeta.com/viewthread-1495779-1-1.html

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

88F
发表于 2014-11-16 20:42:12 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-11-16 20:38
基本上没去10.9的分板块了。完全没看到。换成以前的iasl解决了。现在出现了神奇的问题。。同一个dsdt有时 ...

嗯,最新的编译器,支持 + - * / = & 等等了,所以和老的编译器不兼容了。
另外,电池的问题,可能是电池驱动的问题吧。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

89F
发表于 2014-11-27 09:04:23 IP属地云南 |显示全部楼层
飘凌雪 发表于 2014-11-27 00:00
对了我下载的汉化版MaciASL工具怎么还是英文的,我的mac系统是中文的,为什么工具还是英文的,不懂英文{:5_ ...

前几天,我的汉化版有问题,暂时换成了英文版。昨天汉化版已经更新。重新下载就可以了。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

90F
发表于 2014-11-30 12:59:33 IP属地云南 |显示全部楼层
执雨 发表于 2014-11-30 00:27
请问提示下这个错误要怎么修改

这个错误,不在提示的这里。你上传下文件吧。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

91F
发表于 2014-11-30 22:17:25 IP属地云南 |显示全部楼层
azb1262006 发表于 2014-11-30 22:01
直接用maciasl提取直接编译有两个错误,0警告等,然后联合编译有0错误,几十个警告,一百多优化。。。好像用 ...

更多的,楼主也没有学过。只是建议用联合反编译。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

92F
发表于 2014-12-1 11:39:54 IP属地云南 |显示全部楼层
gwbnsh 发表于 2014-12-1 10:45
楼主,你应该写上你更新了啥东西。。。。否则我们找起来不方便。因为已经看过你贴子好多次,都不知道最新的 ...

更新都用特大字号标明了。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

93F
发表于 2014-12-5 15:25:01 IP属地云南 |显示全部楼层
zouxiaojianbai 发表于 2014-12-4 22:42
为什么我的机器运行不了呢?

你都做了哪些步骤?

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

94F
发表于 2014-12-7 17:47:27 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-12-7 16:22
26号更新了什么。。

20141107 版的编译器。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

95F
发表于 2014-12-7 18:35:24 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-12-7 17:50
要不最下面来个changelog吧。。。

额,好吧。有时间的时候加上。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

96F
发表于 2014-12-9 13:29:03 IP属地云南 |显示全部楼层
贴子补充(iasl更新日志):
----------------------------------------
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 operators

Z = 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 operations

X = 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))


----------------------------------------

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

97F
发表于 2014-12-9 13:37:32 IP属地云南 |显示全部楼层
stevechen962464 发表于 2014-12-7 17:50
要不最下面来个changelog吧。。。

已经在311F补充了更新日志。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

98F
发表于 2014-12-9 15:52:57 IP属地云南 |显示全部楼层
p369029292 发表于 2014-12-9 15:01
谢谢楼主分享,使用iasl -da *.dsl生成的文件错误基本上没有了。原来的时候使用DSDT editor有201个错误。现 ...

嗯,就是改好了,还要再编译成aml。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

99F
发表于 2014-12-13 13:29:48 IP属地云南 |显示全部楼层
p369029292 发表于 2014-12-9 16:13
这是最后一个错误了,我在编译SSDT-1的时候,报一个【syntax error, unexpected PARSEOP_NAMESEG】
看您 ...

切换 ACPI 5.0 编译器看看。

Rank: 9

UID
3322572
帖子
7001
PB币
34744
贡献
0
技术
4738
活跃
929

远景技术达人 热心会员

100F
发表于 2014-12-16 11:11:57 IP属地云南 |显示全部楼层
p369029292 发表于 2014-12-16 11:09
嗯。我试一下。现在用的是ACPI 5.1的编译器。谢谢

注意,是MaciASL里,切换编译器。
如果已经是5.0的了,那这些错误就是前面改的不恰当,才引起的,错误不在提示的这些位置。
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛