MAC关于DSDT的修改及一些问题

合集下载

搞定声卡,修改DSDT+legacyHDA解决声卡驱动,用上原版AppleHDA

搞定声卡,修改DSDT+legacyHDA解决声卡驱动,用上原版AppleHDA

搞定声卡,修改DSDT+legacyHDA解决声卡驱动,用上原版AppleHDA2009年12月1日更新——写在前面的话:这个贴子的主要目的是DSDT+Legac yHDA的方法驱动原版的AppleHD A.kext,而不是简单的使用VoodooHD A.kext这个万能声卡,所以需要折腾两个东西:一个是LegacyHD A.kext,这个详细大家参考紫米和其他作者的教程。

第二个是dsd t中加入声卡的代码,具体参考威廉第三的相关教程,使用bbs的搜索功能即可。

这个教程的原理就在于此,上面两个步骤是关键。

本贴中的方法是基于上面两个步骤的。

HdaEnabler.kext和dsd t的作用是一样的,而dsd t的方法更好,所以笔者最后归于了dsd t的方法。

在这里说清楚,大家不要走弯路,我的贴子只是作为一个参考,具体以上面两个关键步骤为主,一个dsd t,一个LegacyHD A。

第一部分:喜欢折腾的同学们看第二部分,不喜欢折腾的同学就用voodoohda万能声卡驱动voodooHDA最新版(带麦克风输入的)下载:h ttp:///thread-581380-1-1.html-----------------------09年09月17日更新(这个版本比较老了,不过还是能用的,最新版请到上面的连接去下)实在不会的朋友,就用万能驱动voodooHD A,照样输入输出正常这些是slice制作的最新voodooHD A,我的alc272测试,输入输出完美:输出需要Voodo oHDA.prefPane,系统设置中配置一下麦克风即可。

voodoohda.png第二部分:原始贴------------------------------------威廉第三的教程链接:/viewthread.php?tid=484842&;highlight=%CD%FE%C1%AE%B5%DA%C8%FD该教程主要解决了通过DSDT的修改,达到替代HD Aenabler.kext、efi string以及其他第三方驱动插件,直接用上原版的驱动的目的(让黑苹果无限逼近真苹果)。

原创DSDT最完整的修改教程

原创DSDT最完整的修改教程

DSDT修改教程这就是重点了,实际上整个一个星期的工作绝大部分都是在如果驱动硬件上做文章了,虽然期间重装了三遍系统,但感觉轻车熟路,玩一样的。

在驱动问题上确实走了很多的弯路,但是这个弯路有时候有事必须的,因为人总想做的完美一些,只有不停地尝试才能找到更好的办法。

1、显卡装完雪豹第一个想法就是希望能看到华丽的而且和windows不一样的界面,但事实又总是和想象的有所区别,界面是变了,但是连进入系统式欢迎动画都是卡卡卡!!所以第一个想法也是把显卡的驱动装上,于是google,一堆的驱动,一堆的方法,只是没有哪个具体说了怎样驱动 9300m gs的,没办法只好一个一个的试了,几乎把所有的驱动都试过了(没找到的,不知道的,不算),NVkushInstaller、NVinstaller v.52、NVIDIA_9000_Series_Driver_v2、NVdarwinInstaller1.2.5、Natit.kext一样的不一样的都试了一遍,统统不行!!然后又试EFI String,用OSX86Tools_1.0.150(这是个好东西),但是顶多就是强制分辨率,驱动的不能。

还有人介绍的就是在 com.apple.Boot.plist里面加入1.<key>GraphicsEnabler</key>2.<string>y</string>不知是不是人品不好,这个东东在别人那挺好,在我这统统不管用。

pcbeta逛了逛才接触到通过dsdt的修改来驱动显卡,让我兴奋的不得了,凭直觉觉得用dsdt来驱动硬件应该是比较完美的方法,于是全身心投入到了dsdt的研究当中,由于之前一点都没有接触过dsdt(java编程还是会的),只能在网上找方法然后依葫芦画瓢,但是开始根本不知道从何入手,比较简单的方法就是威廉的acpi patch,但是又不支持我这个类型的bios,只能手动修改!彷徨中一个大侠的出现让我看到了曙光,[url=space.php?uid=487636]xchobits[/url]大侠把他自己的dsdt文件给了我,因为我们的本子都是差不多的,我把他的dsdt.aml放入drawn文件夹下后,奇迹出现了,透明效果一下出来了,高兴的不得了!!!甚至安装了legacyHDA后,声卡也出声了!!!但问题也接踵而来,就是每次进系统时总是先要五国一次,然后强制重启就能正常进入,郁闷的不得鸟!!我分析,毕竟我的硬件不完全就是他的硬件,是不是某些地方的不同导致了五国,于是我决定自己修改dsdt!!==========================================================2、DSDT首先要把xchobits的 aml文件反编译,干吗?学习!!下载了iasl-win-20080729,反编译命令1.2.iasl -d dsdt.aml得到dsdt.dsl 文件,一开始我一直用写字板编辑,后来发现用UltraEdit-32相当的方便,在视图里面选择查看方式选择perl,看到左边的加号了,确保了每个{ }都不会错,大大降低了出错的几率。

DSDT

DSDT

DSDT百科名片DSDT是主板BIOS中ACPI的一个表。

什么是ACPI呢,它是BIOS的一个高级功能模块。

黑苹果由于硬件兼容性问题,多使用修改DSDT的方法来解决。

例如显卡,声卡驱动。

那什么是DSDT呢,我们先需要了解一下它。

下面咱稍微详细的从最大的开始说:一、首先,BIOS(略)二、ACPIACPI是Hewlett-Packard, Intel, Microsoft, Phoenix, 和Toshiba共同制定的一个开放的行业规范。

是The Advanced Configuration and Power Interface 的缩写,也就是“电源管理模式和配置管理的接口规范”。

从名字可以看出主要是“电源管理”和“配置管理”。

更多详细描述可以访问Intel technology 下载PDF描述文档。

它主要涵盖的功能包括:System power management(系统电源管理)Device power management(设备电源管理)Processor power management(处理器电源管理)Device and processor performance management(设备及处理器性能管理)Configuration / Plug and Play(配置/即插即用)System Events(系统事件)Battery management(电池管理)Thermal management(温度管理)Embedded Controller(嵌入式控制器)SMBus Controller(SMBus控制器)在计算机应用平台,ACPI越来越重要。

ACPI由很多表组成,包括:RSDP,SDTH,RSDT,F ADT,F ACS,DSDT,SSDT,MADT,SBST,XSDT,ECDT,SLIT,SRAT。

(略写了,不用太详细介绍)其中DSDT就是它的一个重要的描述表。

三、DSDT它是The Differentiated System Description Table的简写。

五步教你用idsdt软件来驱动你的显声卡驱动(更新cedoc文件)

五步教你用idsdt软件来驱动你的显声卡驱动(更新cedoc文件)

本帖最后由c24047 于2011-10-5 18:07 编辑现在idsdt这个软件,越来越成熟,我感觉我的教程可能是要过时了!而且现在出现一些同学无法提取rom,这个我也没办法,可以尝试一下网上搜索一下关于软件问题不要向我求助,毕竟软件不是我编写,如果发现程序友什么bug,可以向hjmac求助显卡的rom50楼上有hjmac的新版本介绍,关于声卡驱动的,有兴趣的可以翻页去看看,新版已经支持声卡前后面板切换了!关于这个帖子,我准备从写一下,美化一下帖子,更新更多的cedoc文件!我正在准备资源,学习如何排版,各位静候佳音把--------------------------------在教程之前我还要说一句dsdt只是描述你硬件的文件,他起不到驱动硬件的功效,他只是告诉你的mac系统你的主板上都有什么然而你的操作系统不支持某一硬件,即使你使用了正确的dsdt 文件还是有可能无法驱动你的显卡所以,我不建议过分依赖于dsdt 文件,毕竟你的电脑不是真正的mac--------------------------------windows下!--------------------------------第一步.下载所需软件首先我们下载我们所需要的工具(提供下载链接)下载EVEREST Ultimate Edition(非常专业的硬件检测软件)/soft/6501.htmlgpu-z(非常专业的显卡检测软件)/soft/61779.htmidsdt软件最新版本链接/folder/f682566642a----------------------------------第二步.提取主板bios文件打开我们刚才下载的软件EVEREST Ultimate Edition 在软件的状态栏(或称信息栏点击鼠标右键,选择acpi tool)这时会出现一大堆的信息,我们无视他直接按save dsdt保存到此我们就拿到了我们主板的bios文件,好啦关闭软件-------------------------------------------------第三步.提取显卡rom文件这时就需要我们下载的gpu-z软件了,软件界面如下点击我们图上的绿色按钮,然后点击保存为文件这里注意一下,gpu-z默认保存的显卡rom文件扩展名为bin,但是idsdt软件所识别的格式为rom所以在保存之后要更改文件扩展名为rom到此win的工作就结束了-----------------------------------------------第四步.提取声卡ceodc文件对于这个codec文件对新手来说真是一头雾水,究竟这个codec是个什么玩意呢?我们来看看网上的说法在声卡上往往可以找到1颗或者2颗甚至3颗4面有引脚的正方形芯片,面积一般为0.5-1.0平方厘米。

DSDT修改讨论

DSDT修改讨论

『前言』请务必考量自己目前的系统使用状况(11/27)还是强调一下,这并非教程,我对于里面参数了解有限,只是想开个帖跟大家一起讨论DSDT 的修改。

为了让你的苹果运作更贴近真苹果,我想你绝对少不了使用DSDT 这个文件,而善用DSDT 可以帮助你减少使用很多不必要的第三方驱动。

看到国外有些高手正努力在DSDT 下工夫,而远景似乎尚未有这样的讨论。

有鉴于此,所以发了这样的讨论帖。

然而各厂的主机板对于DSDT 里的参数设定仍有差距,没有办法一概而论,因此,在此只是针对技嘉主机板做讨论。

而且最好是Intel 晶片组,若是AMD 或是NVIDIA 晶片组,因为差距颇大。

所以,不列入讨论。

当然,非技嘉主机板的朋友请自行考量测试。

最后,DSDT 的修改有一定风险,请务必准备第二个救援系统,方便在修改失败后,还能更正回来。

目前,我也是把旧的80G 磁碟独立做了一个苹果系统,然后并未插在主机板上,只在系统出问题才拿来使用。

所以,除非你有万全准备,请千万别做太过大胆尝试。

以免造成遗憾。

先对紫米目前的设备做个简介 :CPU : Intel E6400 2.13GHzMB : GA-965P-DS4 rev1.0GPU : ASUS 9800 GT Top (改8800 GT 的ROM) 解决滑鼠的延迟问题记忆体: A-DATA DDR800 1G X 4音效卡: Realtek ALC883网路卡: Marvell Yukon 88E8053目前的使用状况 :1. 手动的睡眠正常。

2. 唤醒正常,可使用键盘、滑鼠、电源钮正常唤醒。

3. USB 设备皆显示为内建,睡眠不会出现设备移除的提示。

4. 开机Log 讯息没有错误讯息。

5. 关机、重新启动可以断电。

待解决的问题 :1. 能源节约器的让电脑进入睡眠的设定无法正常作用。

(萤幕会休眠但主机仍运转)使用的第三方驱动或仿冒驱动: (02/03)1. fakesmc.kext 非用不可的驱动2. LegacyHDA.kext 自制的仿冒驱动,为了使用5.1 声道已经不需要EvOreboot.kext 关机/重新启动不断电的驱动(02/03)已经不需要PlatformUUID.kext UUID 错误(12/16)近况说明:(12/16)最近,再次拿弟弟的Aspire One 来玩Snow Leopard,刚好发现了一些问题与事实。

威廉第三的MAC系列教程(一) ——使用ACPI Patcher制作DSDT补丁

威廉第三的MAC系列教程(一) ——使用ACPI Patcher制作DSDT补丁

威廉第三的MAC系列教程(一)——使用ACPI Patcher制作DSDT补丁很早就开始接触Hacintosh了,也经常出没在各个hacintosh论坛,因此也积累了不少知识,但是很多东西都是英文的,却没有人引进到国内,导致很多人都不了解Hacintosh社区最新的进展,或者知其然不知其所以然,因此我在这里抛砖引玉,把自己知道的一些知识写出来和大家分享,也是想引出更多高手来。

第一篇我想给大家介绍如何使用ACPI Pa tcher制作DS DT补丁。

很多人都知道使用DSDT补丁可以开双核,但DS DT的功能不仅仅如此,除了开双核,还可以可以修复A CPI缺陷(不需要Disabler.kext,原版cpupowermanagement正常使用),RTC,HPET缺陷(原版kext正常工作),显卡(代替efistring),声卡(只是代替了HDAEna bler.kext),网卡(包括TimeMachine问题),此外还可以解决其他很多奇奇怪怪的问题,因此建议尽可能使用DS DT补丁。

但是DSDT到底是什么东西,怎么这么神奇呢?这个要从ACPI说起了,ACPI是Intel(i386,x86_64,IA64)平台的标准固件规范,绝大部分OS 需要从BIOS得到的信息都可以从ACPI得到,并且现在的趋势是未来的任何新的特性相关的信息都只能从ACPI得到。

ACPI的信息包括:配置信息:这些信息从legacy PNP设备的配置,到多处理器,到NUMA,比如现在的MultipleCore的信息就只能从A CPI得到。

Linux启动很多代码就是处理这些配置信息,比如A PIC,I OAPIC设置等。

ACPI相关设备,主要是笔记本电脑相关的设备,包括电源按钮,电池,外接电源,风扇,热键等。

底层硬件,比如PCI中断路由,chipset(主要是南桥PCI-to-LPCbridge)操作等。

电源管理,A CPI定义的电源管理包括CPU的电源管理(调频率P-state,idleC-state,throtting T-sta te),设备电源管理(D-state),系统电源管理(Suspend-to-Ram,Suspend-to-Disk, power off)等。

使用ACPI_Patcher制作DSDT补丁

使用ACPI_Patcher制作DSDT补丁

威廉第三的MAC系列教程(一)——使用ACPI Patcher制作DSDT补丁很早就开始接触Hacintosh了,也经常出没在各个hacintosh论坛,因此也积累了不少知识,但是很多东西都是英文的,却没有人引进到国内,导致很多人都不了解Hacintosh社区最新的进展,或者知其然不知其所以然,因此我在这里抛砖引玉,把自己知道的一些知识写出来和大家分享,也是想引出更多高手来。

第一篇我想给大家介绍如何使用ACPI Patcher制作DSDT补丁。

很多人都知道使用DSDT补丁可以开双核,但DSDT的功能不仅仅如此,除了开双核,还可以可以修复ACPI缺陷(不需要Disabler.kext,原版cpupowermanagement正常使用),RTC,HPET缺陷(原版kext正常工作),显卡(代替efistring),声卡(只是代替了HDAEnabler.kext),网卡(包括TimeMachine问题),此外还可以解决其他很多奇奇怪怪的问题,因此建议尽可能使用DSDT补丁。

但是DSDT到底是什么东西,怎么这么神奇呢?这个要从ACPI说起了,ACPI是Intel(i386,x86_64,IA64)平台的标准固件规范,绝大部分OS需要从BIOS得到的信息都可以从ACPI得到,并且现在的趋势是未来的任何新的特性相关的信息都只能从ACPI得到。

ACPI的信息包括:配置信息,这些信息从legacyPNP设备的配置,到多处理器,到NUMA,比如现在的MultipleCore的信息就只能从ACPI得到。

Linux启动很多代码就是处理这些配置信息,比如APIC,IOAPIC设置等。

ACPI相关设备,主要是笔记本电脑相关的设备,包括电源按钮,电池,外接电源,风扇,热键等。

底层硬件,比如PCI中断路由,chipset(主要是南桥PCI-to-LPCbridge)操作等。

电源管理,ACPI定义的电源管理包括CPU的电源管理(调频率P-state,idleC-state,throttingT-state),设备电源管理(D-state),系统电源管理(Suspend-to-Ram,Suspend-to-Disk, power off)等。

mac os 10.6的idsdt

mac os 10.6的idsdt

本帖最后由oscnet 于2011-6-17 21:06 编辑2011.6.17我小鱼回来了,从3月开始,因为负责单位的软件工程,暂时没有时间和精力更新软件,请网友谅解,现在这个事终于能告一段落,虽然比以前忙了些,但想想应该还是能抽点时间完善程序的。

我在这里写下这些,另一个意思也是鞭策自己,提醒自己的不要忘了自己在这里的承诺。

时间是挤出来的,而偷懒却很容易。

PS:有一段时间没有搞过这个程序了,重新拾起来还真是有点头痛。

同时希望网友能提保贵意见,但不太欢迎初哥,哥实在是没有时间,讨论安装等初级问题。

论坛的置顶合贴很不错,我也是从这里入门的。

让我有时间做更有意义的事情,谢谢了。

2011.3.18近期事务繁忙,已没有时间帮网友答疑,望谅解!2011.3.11好消息Auraking加盟参与ATI显卡的测试,在auraking的帮助和努力下,相信下一版本对ati用户的支持会有很大的提高!谢谢auraking君!目前程序只有HJmac,auraking参与测试。

2011.3.9经HJMac 的测试发现原关机断电代码存在很多主机上不适用的问题,HJMac 还收集了四种主板型号关机断电的代码供我参考,在HJMac 的热心帮助下,经过3.8 一个晚上的开发和测试,关机断电代码已经更为通用,也解决了我自己的电脑原来关机断电不太有效的问题,请各网友测试和反馈。

下载地址:/folder/f682566642a网友c4027发的教程:已完成(idsdt的简单使用方法)没声卡,显卡驱动的来看看,这个工具貌似被很多人无视_____________________________________________________________________________________ 2011.3.6 经HJmac测试通过后,发布更新版本。

在此谢谢HJMac及各位反馈问题的网友。

内容如下:一、iDSDT 新增的DSDT 错误及警告修复:Error 4080 - Invalid object type for reserved name (found INTEGER, requires Buffer) Error 4125 - _HID string must be exactly 7 or 8 characterserror 4001 - String must be entirely alphanumeric新增关机断电代码二、更新日志:1.在没有VoodooHDA 下能正确检测到声卡地址;2.使用最新iasl 编译器;3.加入对某些笔记本DSDT 的支持;4.加入声卡驱动的自动安装功能;5.加入显卡声卡的硬件名称检测,如果系统检测到多个显卡或声卡,需选择要驱动的相应的硬件;6.程序集成原版AppleHDA,加入的DSDT 代码在前面加相应的空格,使更符合原代码;7.生成的文件不再放在桌面上,而是按mac 习惯放在了~/Library/Application Support/iDSDT 目录下;8.生成DSDT-diff.dsl 文件,在此文件中您可以看到程序对DSDT 的所作的修改。

Mac命令行系统维护技巧修复权限和验证磁盘

Mac命令行系统维护技巧修复权限和验证磁盘

Mac命令行系统维护技巧修复权限和验证磁盘Mac命令行系统维护技巧:修复权限和验证磁盘在Mac电脑上使用命令行维护系统是一种快速而有效的方式,特别是在修复权限和验证磁盘方面。

本文将介绍如何使用命令行工具来修复权限和验证磁盘,以确保系统的稳定性和正常运行。

一、修复权限修复权限是一种常见的系统维护操作,它可以确保系统文件的权限设置正确,以避免出现一些奇怪的问题。

在命令行中,我们可以使用"diskutil"命令来进行修复权限操作。

1. 打开终端在“应用程序”文件夹中找到“实用工具”文件夹,然后双击打开“终端”应用。

2. 运行修复权限命令在终端中,输入以下命令并按下回车键:```bashsudo diskutil repairPermissions /```这条命令会将权限修复应用到根目录下的所有文件和文件夹。

输入密码并按下回车键,然后等待命令完成。

3. 等待完成命令行会显示权限修复的进度,可能需要一些时间才能完成。

一旦完成,你就可以通过显示"Permissions repair complete"来确保权限修复成功。

二、验证磁盘验证磁盘是另一个重要的系统维护操作,它可以检测磁盘中的错误并修复它们,以确保系统的稳定性。

在命令行中,我们可以使用"diskutil"命令来进行磁盘验证操作。

1. 打开终端同样,在“应用程序”文件夹中找到“实用工具”文件夹,然后双击打开“终端”应用。

2. 运行磁盘验证命令在终端中,输入以下命令并按下回车键:```bashsudo diskutil verifyVolume /```这条命令会对根目录进行磁盘验证操作。

输入密码并按下回车键,然后等待命令完成。

3. 等待完成命令行会显示磁盘验证的进度,可能需要一些时间才能完成。

一旦完成,你就可以通过命令行显示的结果来判断磁盘是否有错误。

如果有错误,你可以尝试使用"sudo diskutil repairVolume /"命令来修复它们。

手把手教你如何提取自己主板的DSDT

手把手教你如何提取自己主板的DSDT

手把手教你如何提取自己主板的DSDT
本人也是从一个菜鸟开始学起了,关于DSDT的文章看了不少,但是具体很详细的倒不是很多,下面我系统的说一说如何提取自己电脑主板中的DSDT,这个文件对应每个主板是不一样的,它可以解决很多PC机装MAC驱动兼容问题以及开机超慢的问题。

整个过程需要两个软件,一个是Patcher02Beta5,一个是everestultimate_build_1977,这两个在下面可以下载。

好了,进入正题:
第一步,解压everestultimate_build_1977,运行everest.exe,如图
1.j pg
第二步,选择主板---ACPI---选中最左下角的ACPI点击右键---ACPI Tool---Save DSDT---保存在桌面上,保存文件格式是bin,如图
2.j pg
第三步,得到文件如图:
3.j pg
第四步,解压Patcher02Beta5,打开ACPI Patcher.exe,如图
企鹅王企鹅.jpg
第五步,选择DSDT Patch,第一个选择刚才生成的bin文件,第二个选择需要放入的路径,Force DSDT compilation一定要勾选。

最后点击Patch AML,即可得到f ixeddsdt.aml这个文件,只需把f ixeddsdt名字改为DSDT即可,如图
4.j pg
以上就把自己的DSDT制作好了,但是有时候也会出现问题,这就要对应自己的硬件选择对应的补丁,Patcher02Beta5左边有对应的补丁,不
会的看一看威廉出的教程。

本文就介绍完毕。

2019年DSDT的入门知识

2019年DSDT的入门知识

:DSDT是主板BIOS用来描述主板上硬件设备的代码集合,通过代码告诉操作系统自己的主板上插有什么样的设备,以及对设备具体的描述。

想使用DSDT驱动显卡的前提是,你必须使用第三方KEXT驱动了你的显卡,然后获得了一些关于你显卡的具体技术数据。

完美驱动还是不完美驱动并不重要,我们需要的是得到NVCAP的值。

2.退一步,如果你找不到KEXT来驱动你的显卡,你需要做的就是用相似的显卡NVCAP的值加入DSDT,运气好的话也能驱动。

善用论坛搜索的作用仅仅是描述你硬件(包括硬件位置,ID,型号,一些必须的值比如NVCAP),告诉MAC系统你有显卡这么个东西,MAC系统然后检查下自己的驱动库里有这么个硬件的驱动没,如果有的话就驱动了,没有的话,你DSDT写的再好,MAC也会告诉你,对不起,我不认识你的东西。

当然,MAC系统也可能认错,比如你的显卡是256M NV 9200M GS,放入,驱动之后系统概述里显示的是8400GT,显存只有128,这并不影响你使用,这个时候你就要在DSDT里加入代码告诉他你是9200的不是8400,它读到之后就正确显示了。

后面会告诉你如何获得NACAP的值。

的值并不是每个显卡都不同,相似显卡的NACAP的值是一样的,多尝试尝试。

下面开始修改显卡的DSDT部分。

我是Insyde的BIOS,所以我会以这个BIOS为例子。

其他主板修改方法类似。

修改之前要明白几个DSDT的架构,想详细了解的可以参考论坛紫米的帖子,我通俗的描述下我的思路1 显卡在MAC里通常描述成PEGP,有些新手可能会发现,自己的DSDT中根本找不到PEGP,咋办呢~好办。

方法1,启动MAC系统,用IORegistryExplorer查看你显卡的位置,一般情况下都是PCI0的分支下,同样,它肯定也是在你DSDT中的DEVICE (PCI0)分支下。

具体的名字每个主板可能都不一样了,比如我的DSDT中叫PVGA。

也有可能叫POP2,名字不重要。

修改DSDT文件详细步骤,新手必看,附带全部工具,图文并茂超详细。

修改DSDT文件详细步骤,新手必看,附带全部工具,图文并茂超详细。

今天给大家说一下DSDT文件怎么修改。

据说修改DSDT文件可以驱动显卡和声卡,介于很多小鸟不知道怎么修改DSDT文件和不知道如何提取自己硬件文件。

所以我才出这个帖子。

方便其它小鸟研究和学习,我就先给大家引导一下。

我希望你们能驱动成功,我祝你们好运。

下面我们先来做准备工作,我要做准备工作的话需要准备好多软件,当然这些软件我会提供给大家,所以你们不用满世界去找了,尤其是小鸟。

都在附件里,我们先说一下我们要准备的东西。

1.硬件检测工具AID64 很多人说是要用EVEREST其实都是一个东西,只不过以前这个软件是叫EVEREST现在改名了,叫AID642.硬件检测工具 GPU-Z3.DSDTFixer用来修复MAC错误警告的自动修复工具。

4.Ubuntu 这个很多新闻不知道是啥,这个是linux操作系统的一个分支。

很不错的官方下载地址:/getubuntu/download/迅雷离线下载 I386 CD版:/d/WNBFDEYTVXLY迅雷离线下载64位DVD版:/d/WEJFSCUJEABP请各位自己自行下载。

这个系统我们用来提取声卡的驱动文件。

好了。

我们开始准备了。

5。

iDSDT这个我之前已经发布了。

是中文版的,而且里面已经附带了中文的说明文档,请仔细看。

到这里下载:/viewthread-996143-1-1.html步骤开始第一步:启动AID64AID64启动之后选择主板-》BIOS-》在软件底部鼠标右键,ACPI Tool-》弹开新窗口选择 Save DSDT提取主板BIOS文件保存为.aml格式的第二步:提取显卡的BIOS文件使用AID64或GPU-Z提取显卡的BIOS文件保存为扩展名rom的文件。

步骤和提取主板的相同,这里不上图了。

只写步骤。

选择显示设备-》PCI/AGP视频-》在软件底部鼠标右键,ACPI Tool-》弹开新窗口选择 Save DSDTOK。

前两步完事了。

我们开始提取声卡的文件。

DSDTSE简易教程

DSDTSE简易教程

DSDTSE 1.4.3 正體中文版簡易說明之一分類:dsdt 修改2010/10/28 13:46dsdt 的修改軟體之前有介紹WIN版軟體ACPI Pather 今天來介紹Mac版軟體DSDTSE DSDTSE 官網功能很強大可惜只有英文/ 西班牙語言於是乎小弟就手賤給它中文化(簡/ 繁都支援)前言:1.中文化部份可能不是很完善.主要是讓看到英文顯示.... 就止步的朋友..... Orz能簡單的操作這個工具2.LV 主題是我改的如不喜歡.... 可將中文包放到你原來官網下載的DSDTSE裡面路徑如下:下載開始:主面板介紹:A 這裡有轉譯失敗提示的修改方法B 運用於黑蘋果的修改寫法C 硬體位置idD 自定代碼部份..... 後面再補充E 提取檔案要先選擇檔案類型 .不然後會出現如下的提示窗口F 這個最簡單就是提取主機的dsdt檔G 打開轉譯器面板接下來就是操作1. 假設我沒事先在WIN之提取dsdt直接點“ 提取DSDT" // 或是用E 的方法.也可獲得2.我已經有dsdt.aml 或者從網路上下載別人製作好的可以直接打開它進行觀看3. 我們有了dsdt.aml 檔之後就是要進行修改我們可以直接在視窗之下修改/ 轉譯4. 也可以用G的方式開啓轉譯器視窗下操作修改可選擇直接轉成aml檔DSDTSE 1.4.3 正體中文版簡易說明之二分類:dsdt 修改2010/10/29 12:50 接下來.來介紹些簡單方便的功能我採“提取DSDT “ 方式透過右側工具欄的運用配合這裡就我直接來進行修改...... 過程中就會介紹右側工具欄的功能首先主面板開啓"DSDT 修正參考" 這項由於dsl 無法添加中文註解..自帶的英文說明圖片,我就不翻譯了直接說明操作01. 這段代碼是往後我們添加如:音.顯.網...等等所必須的可添加於開頭第一個左中括號之後接下來.基本修正.由於主機版/BIOS 廠商緣故 .也許選項的命名.會不同或者原生就有幫我們添加了.只需從這裡快速尋找_WAK 部份:在最後的右中括號之前添加一段再來是HPET 改成我的P55 的RTC 是無須修改其他主機板如須修改其他具體要修改可參考這個然後進行修改或者參考我添加的自定義代碼DSDTSE正體中文版1.4.3 簡易說明之三分類:dsdt 修改2010/11/03 01:47 運用一:音效改法原本888 改889你是想改889就能出現16進制的值再將它寫入0x79,0x03,0x00,0x00運用二:網路下載高手修改好的dsdt.aml ( 可是我想改顯卡名稱)如:以9400-1G 改GTS 250-512M 例子填入你想改的型號如:GeForce GTS 250 將它寫入“ ” 裡面再算出實際數字"rom-revision" 這項與上方方法一樣就不重覆啦運用三:網卡具體型號沒修改之下:我們只需打開“硬體裝置資訊”就能查出網卡具體ID 位址PEX1打開你的DSDT 搜尋PEX1PEX1 最後右中刮號之前添加顯示如下:或著你想要顯示類型:乙太網路控制器.............“中文”顯示如下:運用三:PCI卡可顯示(一般運用於無線網卡) 查出具體ID位址PEX3打開你的DSDT 搜尋PEX3PEX3 最後右中刮號之前添加顯示如下:接下來是其他運用。

修改DSDT仅打补丁教程(windows)

修改DSDT仅打补丁教程(windows)

修改DSDT仅打补丁教程(windows) 目录:1.提取篇.2.修改篇.3.打补丁篇.4.使用篇.1.提取篇:首先,想要学DSDT的话,第一步,先还是提取DSDT文件再说:我给大家演示这几个工具哦,呵呵.AID64: 先点工具-ACPI浏览器-SaveDSDT,然后然后,保存为:最后点保存按钮,就完成了哦,保存地址:盘符:/Mac DSDT && SSDT/ACPI_DSDT里哦.(要自己创造文件夹哦.)这就是AID64提取过程,AID64工具马上就发过来哦.接着,在DSDT Editor V0.8提取DSDT过程:这么简单,那就是File-Extract DSDT哦.DSDT Editor界面:提取后,点DSDT Editor里的iASL-Compile(编译)编译:第一次可以点Fix errors,第二次只有自己修改哦.修改后,再来Compile哦,直到修改成功为止,才能保存哦.修改没得Error之后,才能保存哦.保存为:Save AML as.....保存界面:保存地址:盘符:/Mac DSDT && SSDT/DSDT接下来,提取SSDT了哦:AID 64:工具-ACPI 浏览器-Save T able 里的有SSDT @ 开头的哦. 保存界面:如果SSDT是bin或者DSDT是bin的话,去改后催名为.aml哦.这是我常用的工具哦.其实,提取DSDT的工具很多哦,如:everestultimate工具,DSDT SE,DSDT Fetcher 此DSDT SE windows版很难哦.提取DSDT和SSDT就完成哦.2.修改篇:先去修改的,可以去:地址:/forum.php?mod=viewthread&tid=1020621/forum.php?mod=viewthread&tid=1020621 /viewthread-1277786-1-1.html/forum.php?mod=viewthread&tid=1084354 /viewthread-748485-1-1.html/viewthread-1475332-1-1.html/viewthread-1474471-1-1.html这几个之后,修复错误过去了哦.3.打补丁篇:此时,我们修改完了,保存完了,放在引导旁边,结果,什么都没有驱动哦.所以说呢,要先开始打补丁哦.1.DSDT Editor v0.8:点Patch-Open....,然后,找.txt以内的补丁,点2哈,patch界面出来哦:然后,点Apply按钮哦.补丁是不是打出来了哦,但是,有些打补丁之后,会出错误了哦.保存之后,就可以,出现打补丁的地址哦,也就是不是很有用啊?呵呵.所以说呢,我们还是保存DSDT文件哦,保存在当前的DSDT的文件哦.呵呵.那好,可是,DSDT文件的怎么使用呢,请在”4.使用篇”里讲解哦.4.使用篇:呵呵,其实,怎么使用呢,一些新手怎么用DSDT文件都不晓得的,但是,我给你指出来放在的地址哦.1.chameleon:放在Mac盘的Extra文件夹的根目录下面,然后重启并用-v -f参数试试,如果出现五国,请还是把DSDT文件删除,在修改错误一下,然后保存,再来放在放DSDT文件的地方哦,然后重启,就当前的操作,如果没有五国并顺利进去了的,可不可以用哦,如果可以用,恭喜你,可以完美某个驱动哦,呵呵,还有,SSDT文件也可以放在Extra文件夹根目录哦,跟放DSDT 的地方一样哦.呵呵,chameleon的讲解完了,呵呵.接着,讲clover引导的放DSDT和SSDT的地方指点哦,clover引导:DSDT和SSDT存放的地方的路径:/EFI/CLOVER/ACPI/patched里面的根目录哦,必须放没得错误和打了补丁的DSDT文件哦,不然,就出现五国哦,呵呵.好了,今天在四个方面里讲解了怎么提取,修改错误,打补丁,以及怎么使用DSDT和SSDT文件哦,我由于在两天里写了,所以说呢,想讲(黑苹果/Mac OS/白苹果)版的DSDT教程,如果我有时间的话,肯定会写(黑苹果/Mac OS/白苹果)版的DSDT教程的话,那就只能麻烦大家了,因为讲两个版本哦,呵呵.如果有错误之处,大家可以指出本教程的缺点哦,呵呵.今天,我们该说再见的时候,我们说:你们在DSDT的路途中祝你成功,大家再见,拜拜!注:DSDT有错误的话,必须改,但SSDT,如果有错误的话,更要改哦,呵呵.在DSDT里,如果有错误的话,不能保存哦,我们就把话说到这里哦,。

oc 生成dsdt

oc 生成dsdt

oc 生成dsdt全文共四篇示例,供读者参考第一篇示例:在Hackintosh 的制作过程中,生成DSDT 是一个非常关键的步骤,它能够帮助我们修复电源管理、USB 端口、声卡以及其他硬件兼容性问题。

通过正确生成DSDT,我们可以让我们的Hackintosh 系统更加稳定、流畅。

## 什么是DSDT?DSDT,全称为Differentiated System Description Table,是一种用于ACPI(Advanced Configuration and Power Interface)的表格,它描述了系统中的硬件设备以及如何与操作系统进行交互。

在Hackintosh 中,我们通常需要通过修改或者生成DSDT 表格来提高系统的兼容性和稳定性。

DSDT 表格通常存在于计算机的BIOS 中,由主板制造商提供。

在一些特定的情况下,我们可能需要手动生成DSDT 来适配我们的Hackintosh 系统。

在Hackintosh 系统中,由于我们使用的是非苹果原生硬件,有时候会出现一些兼容性问题。

通过生成DSDT,我们可以定制化硬件与操作系统之间的交互方式,进而解决一些驱动和设备兼容性的问题。

通过正确生成DSDT,我们可以实现以下功能:1. 修复电源管理问题,包括睡眠唤醒、CPU 管理等;2. 修复硬件兼容性问题,包括声卡、USB 端口、网卡等;3. 优化系统性能,提升系统稳定性和流畅度。

在一些情况下,我们也可以通过修改DSDT 来实现功能的添加和定制化,使得我们的Hackintosh 系统更加符合个人需求。

生成DSDT 主要分为两种方法:自动生成和手动生成。

自动生成DSDT 通常使用工具或者脚本来自动提取系统中的DSDT 文件,并生成一个可以直接在Hackintosh 系统中使用的修复补丁。

一些常用的自动生成DSDT 的工具包括:`MaciASL`、`RehabMan`、`patchmatic` 等。

原创DSDT最完整的修改教程

原创DSDT最完整的修改教程

DSDT修改教程这就是重点了,实际上整个一个星期的工作绝大部分都是在如果驱动硬件上做文章了,虽然期间重装了三遍系统,但感觉轻车熟路,玩一样的。

在驱动问题上确实走了很多的弯路,但是这个弯路有时候有事必须的,因为人总想做的完美一些,只有不停地尝试才能找到更好的办法。

1、显卡装完雪豹第一个想法就是希望能看到华丽的而且和windows不一样的界面,但事实又总是和想象的有所区别,界面是变了,但是连进入系统式欢迎动画都是卡卡卡!!所以第一个想法也是把显卡的驱动装上,于是google,一堆的驱动,一堆的方法,只是没有哪个具体说了怎样驱动 9300m gs的,没办法只好一个一个的试了,几乎把所有的驱动都试过了(没找到的,不知道的,不算),NVkushInstaller、NVinstaller v.52、NVIDIA_9000_Series_Driver_v2、NVdarwinInstaller1.2.5、Natit.kext一样的不一样的都试了一遍,统统不行!!然后又试EFI String,用OSX86Tools_1.0.150(这是个好东西),但是顶多就是强制分辨率,驱动的不能。

还有人介绍的就是在 com.apple.Boot.plist里面加入1.<key>GraphicsEnabler</key>2.<string>y</string>不知是不是人品不好,这个东东在别人那挺好,在我这统统不管用。

pcbeta逛了逛才接触到通过dsdt的修改来驱动显卡,让我兴奋的不得了,凭直觉觉得用dsdt来驱动硬件应该是比较完美的方法,于是全身心投入到了dsdt的研究当中,由于之前一点都没有接触过dsdt(java编程还是会的),只能在网上找方法然后依葫芦画瓢,但是开始根本不知道从何入手,比较简单的方法就是威廉的acpi patch,但是又不支持我这个类型的bios,只能手动修改!彷徨中一个大侠的出现让我看到了曙光,[url=space.php?uid=487636]xchobits[/url] 大侠把他自己的dsdt 文件给了我,因为我们的本子都是差不多的,我把他的dsdt.aml放入drawn文件夹下后,奇迹出现了,透明效果一下出来了,高兴的不得了!!!甚至安装了legacyHDA后,声卡也出声了!!!但问题也接踵而来,就是每次进系统时总是先要五国一次,然后强制重启就能正常进入,郁闷的不得鸟!!我分析,毕竟我的硬件不完全就是他的硬件,是不是某些地方的不同导致了五国,于是我决定自己修改dsdt!!==========================================================2、DSDT首先要把xchobits的 aml文件反编译,干吗?学习!!下载了iasl-win-20080729,反编译命令1.2.iasl -d dsdt.aml得到dsdt.dsl 文件,一开始我一直用写字板编辑,后来发现用UltraEdit-32相当的方便,在视图里面选择查看方式选择perl,看到左边的加号了,确保了每个{}都不会错,大大降低了出错的几率。

Mac命令行文件权限修复技巧如何修复文件权限问题

Mac命令行文件权限修复技巧如何修复文件权限问题

Mac命令行文件权限修复技巧如何修复文件权限问题在Mac操作系统中,文件权限问题可能会导致访问限制、程序异常等各种不良情况。

为了解决这些问题,我们可以通过命令行工具修复文件权限。

本文将介绍一些常用的Mac命令行文件权限修复技巧,帮助你解决文件权限问题。

1. 查看文件权限首先,我们需要了解当前文件的权限情况。

可以通过使用"ls -l"命令查看文件权限。

打开终端应用程序,并输入以下命令:```bashls -l 文件路径```这将显示文件的权限信息,包括所有者、组和其他用户的读、写和执行权限。

2. 修改文件权限如果文件权限出现问题,我们可以使用"chmod"命令修改权限。

输入以下命令:```bashchmod 权限值文件路径```你可以使用不同的权限值来设置不同的权限。

例如,使用"chmod 777 文件路径"命令可以将权限设置为所有者、组和其他用户均可读、写和执行。

3. 修复文件权限当某个目录下的文件权限出现问题时,我们可以使用"chmod"和"chown"命令组合进行修复。

首先,我们使用"chmod"命令修复文件权限,然后使用"chown"命令修改文件所有者。

```bashsudo chmod -R 权限值目录路径sudo chown -R 用户名:组名目录路径```其中,"sudo"表示以管理员身份运行命令,"-R"表示递归修改整个目录下的文件权限。

4. 修复系统文件权限有时候,系统文件的权限问题可能会导致系统崩溃或无法启动。

为了修复这些问题,我们可以使用磁盘工具的修复权限功能。

首先,打开“应用程序”文件夹下的“实用工具”文件夹,找到并打开“磁盘工具”应用程序。

然后,选择你的Mac硬盘,在顶部导航栏中选择“修复文件权限”。

DSDT基本修改

DSDT基本修改

此文档如有错误之处,还请高手指出。

一.解决BIOS重置查找RTC字段,将里面的0x04, //Length改成0x02, //Length【有两处的要改两处】------------------------------------------------------------------------------------------------------------分割线------------------------------------------------------------------------------------------------------------二.LPCB电源管理【有些主板原生支持电池管理(不用Nullintel 且没删除SLE下的intelpower….kext也能进系统),如果原生支持电源管理,跳过此处】最近比较新的主板很少能通过修改dsdt来加载电源管理,如果添加以下代码后还不能加载电源管理,别问为什么,这很正常。

那就乖乖对kext打补丁吧搜索 0x001F0000加入(2916)Device (PX40){Name (_ADR, 0x001F0000)Method (_DSM, 4, NotSerialized){Store (Package (0x02){"device-id",Buffer (0x04){0x16, 0x29, 0x00, 0x00}}, Local0)DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))Return (Local0)}OperationRegion (PREV, PCI_Config, 0x08, One)Scope (¥){Field (¥_SB.PCI0.PX40.PREV, ByteAcc, NoLock, Preserve) {REV0, 8}}或加入(3A18)Device (PX40){Name (_ADR, 0x001F0000)Method (_DSM, 4, NotSerialized){Store (Package (0x02){"device-id",Buffer (0x04){0x18, 0x3A, 0x00, 0x00}}, Local0)DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))Return (Local0)}OperationRegion (PREV, PCI_Config, 0x08, One)Scope (¥){Field (¥_SB.PCI0.PX40.PREV, ByteAcc, NoLock, Preserve) {REV0, 8}}如果不能通过修改DSDT来加载原生电源管理,可以使用以下软件对kext打补丁。

DSDT完美解决显卡驱动后关机不断电,重启,睡眠,UUID

DSDT完美解决显卡驱动后关机不断电,重启,睡眠,UUID

DSDT完美解决显卡驱动后关机不断电,重启,睡眠,UUID首先感谢InfiniteMac的Sweaty和mm67。

我在他们的代码基础上做了少许改动,因为原搬代码会造成睡眠出现问题。

相信大家看得懂英语,我就不再写成中文了。

Many thanks to Sweaty and mm67 from InfiniteMac. I just made a small change to Method (_PTS, 1, NotSerialized) in order to resolve sleep issue on my notebook CQ60-202TX. By Ping Zheng 郑德平。

Follow below to patch DSDT. If you don't know how to patch dsdt, please google.*为Google退出China而沉痛悼念,为Google的***道德高于经济利益而泪洒. 偶在高高的铁Wall之下唯有痛恨生活在此... ...,尽管偶非常爱这个生我养我的国度*1 Add OperationRegion below before Method (_PTS, 1, NotSerialized)OperationRegion (DEBG, SystemIO, 0x80, One)Field (DEBG, ByteAcc, NoLock, Preserve){DBG1, 8}OperationRegion (PMRS, SystemIO, 0x0430, 0x13)Field (PMRS, ByteAcc, NoLock, Preserve){, 4,SLPE, 1,Offset (0x08),GPSE, 16,GPSS, 16,Offset (0x12),, 1,SWGC, 1}2 Check Device (LPC) if there is a similar Operation Region "LPC0" like below. If you don't have LPC device, just search Name (_ADR, 0x001F0000), sometimes the device name is different. Device (LPC){Name (_ADR, 0x001F0000)OperationRegion (LPC0, PCI_Config, 0xA4, 0x02)Field (LPC0, ByteAcc, NoLock, Preserve){AG3E, 1}If there is no OperationRegion LPC0, please add code above. In my dsdt's OperationRegion LPC0, there is an EXPE instead of AG3E. So I did not modify it, but had to change a bit in Method (_PTS, 1, NotSerialized) . See mine below:OperationRegion (LPC0, PCI_Config, 0x40, 0xC0)Field (LPC0, AnyAcc, NoLock, Preserve){Offset (0x60),, 10,EXPE, 1}3 Add code below in Method (_PTS, 1, NotSerialized) like thisMethod (_PTS, 1, NotSerialized){Or (Arg0, 0xF0, Local0)Store (Local0, DBG1)Store (Zero, \_SB.PCI0.LPC.EXPE) //Please change to \_SB.PCI0.LPC.AG3E if you don't have the EXPE, but add AG3E.If (LEqual (Arg0, 0x05)){Store (Zero, SLPE)Sleep(0x10)}Else{//**Original... ...这里是把你的原始代码放到这里面来,解决可能的睡眠破坏问题}}//mm67写的关于address 0x0430的说明。

新手DSDT修复系列(显卡)附完美DSDT,显卡,声卡,内建,网卡,原生电源管理,降频

新手DSDT修复系列(显卡)附完美DSDT,显卡,声卡,内建,网卡,原生电源管理,降频

新手DSDT修复系列(显卡)附完美DSDT,显卡,声卡,内建,网卡,原生电源管理,降频在拜读了论坛各位大大的帖子之后,做为一个新手成功的模仿了DSDT的修改,包括显卡,声卡,原生电源,自动降频,全部内建USB,网卡,无线网卡完美,不过由于使用的BOOTTHINK for win 版,关机断电重启还是需要OpenHaltRestart.kext。

鉴于大家装完雪豹最希望的都是想看到SL华丽的界面(我就是这样),所以跟大家分享下显卡DSDT的修补方法。

我只能把我自己模仿的经验告诉新手,让你们知道如何去模仿,不算是教程,如果想了解更多请参考论坛里帖子。

老手就随便看看吧。

(KEXT论坛自己搜索下)我们先理解一些概念:1.DSDT:DSDT是主板BIOS用来描述主板上硬件设备的代码集合,通过代码告诉操作系统自己的主板上插有什么样的设备,以及对设备具体的描述。

想使用DSDT驱动显卡的前提是,你必须使用第三方KEXT驱动了你的显卡,然后获得了一些关于你显卡的具体技术数据。

完美驱动还是不完美驱动并不重要,我们需要的是得到NVCAP的值。

2.退一步,如果你找不到KEXT来驱动你的显卡,你需要做的就是用相似的显卡NVCAP的值加入DSDT,运气好的话也能驱动。

善用论坛搜索3.DSDT的作用仅仅是描述你硬件(包括硬件位置,ID,型号,一些必须的值比如NVCAP),告诉MAC系统你有显卡这么个东西,MAC系统然后检查下自己的驱动库里有这么个硬件的驱动没,如果有的话就驱动了,没有的话,你DSDT写的再好,MAC也会告诉你,对不起,我不认识你的东西。

当然,MAC 系统也可能认错,比如你的显卡是256M NV 9200M GS,放入 Natit.kext,驱动之后系统概述里显示的是8400GT,显存只有128,这并不影响你使用,这个时候你就要在DSDT里加入代码告诉他你是9200的不是8400,它读到之后就正确显示了。

后面会告诉你如何获得NACAP的值。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MAC关于DSDT的修改及一些问题
一、如果3项都选择会出现2个Errors 如果是3项都不选 0 Errors 通过实验是HPET 补丁的问题选的话有2个Errors不选无Errors 。

而 Aliases补丁和RTC补丁选不选都没有错误出现。

问:Aliases补丁和RTC补丁在修补的时候选还是不选?
二、我提取的DSDT中有 13个Warnings 如果 4个都选上变为 7个。

于是开始尝试单个的选。

local0 与 DGPT 选不选无影响。

单独选WAK 为14个Warnings。

单独选 MUTE 为6个Warnings
问:local0 与 DGPT 选与不选?
三、本人把不影响错误警告之类的修复都选上了最终0 Errors, 6 Warnings, 25 Remarks, 98 Optimizations
四、开始纠错。

1.Remarks 的修改
我的DSDT 中有25个类似的错误
dsdt.dsl 2254: Name (_T_0, Zero)
Remark 5110 - Use of compiler reserved name ^ (_T_0)
例子: If (LEqual (_T_0, 0x03))
{
SIT3 (PRM0, PRM1, PRM2)
}
Else
{
If (LEqual (_T_0, 0x04))
………………
}
将其中的 _T_0 都改为 T_0 即可或者将_T_0 改为 T0_0
好了 25个 Remarks 消失了。

2. Warnings 的修改
这个错误有很多种类。

我的DSDT 中有两种
第一种: dsdt.dsl 7668: Method (TGET, 1, NotSerialized) Warning 1087 - ^ Not all control paths return a value (TGET) 第二种 dsdt.dsl 7827: Store (FGET (Local0), Local1)
Warning 1092 - ^ Called method may not always return a value 先来第一种:
Method (FGET, 1, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Return (^^SIOR.HWF1 ())
}
If (LEqual (Arg0, One))
{
Return (^^SIOR.HWF2 ())
}
If (LEqual (Arg0, 0x02))
{
Return (^^SIOR.HWF3 ())
}
}
有两种改法一种是:在末加入 Return (Zero) 一种是在末尾加入
Else
{
Return(Package(0x02){0x00, 0x00})
}
Method (FGET, 1, NotSerialized) {
If (LEqual (Arg0, Zero))
{
Return (^^SIOR.HWF1 ())
}
If (LEqual (Arg0, One))
{
Return (^^SIOR.HWF2 ())
}
If (LEqual (Arg0, 0x02))
{
Return (^^SIOR.HWF3 ())
}
Return (Zero)
}
或者
Method (FGET, 1, NotSerialized) {
If (LEqual (Arg0, Zero))
{
Return (^^SIOR.HWF1 ())
}
If (LEqual (Arg0, One))
{
Return (^^SIOR.HWF2 ())
}
If (LEqual (Arg0, 0x02))
{
Return (^^SIOR.HWF3 ())
}
Else
{
Return(Package(0x02){0x00, 0x00})
}
}
两种都能解决 Warnings 但是究竟用那个? 爬文中例子都是用第二中由于最先看到的是第一种方法所以两个都尝试了一下。

注意:这个时候出现了个有趣的事情。

6个Warnings 当修改了一个上例错误后消失了2个Warnings 也就是说就该了一个第一种 Warnings 随之就少了一个第二种Warnings
望高手能解答一下这种现象。

第二种 Warnings 这个不会爬文也没有找到,而其改了 3个第一种Warnings 3个第二种Warnings 也随之消失了。

费解中ING
好了再写一些我找到的修改
11dsdt.dsl 1101: Add (Local0, 0x02)
Warning 1105 - ^ Result is not used, operator has no effect
采用把 (Local0, 0x02)改为 (Local0, 0x02, Local0)即可解决
dsdt.dsl 1193: And (CAPB, 0xFFFFFFFC)
Warning 1104 - ^ Result is not used, operator has no effect
这种问题就把“And (CAPB, 0xFFFFFFFC)"改为"And (CAPB, 0xFFFFFFFC,CAPB)" dsdt.dsl 1238: Method (_OSC, 5, NotSerialized)
Warning 1076 - ^ Reserved method has too many arguments (_OSC requires 4) 这种问题就把_OSC后面的5改成4即可。

相关文档
最新文档