crazybirdy 发表于 2011-4-4 20:09

ATI Mobility 4330在Lion开了QE/CI 直接用boot或dsdt或ATY_Init,免改ATIFramebuffer

本帖最后由 crazybirdy 于 2013-6-7 09:49 编辑

更新:10.8 同解
更新:免改ATIFramebuffer了,直接用boot或dsdt或ATY_Init.kext识别驱动显卡即可。{:5_294:}

   分辨率高于1366x768的,貌似未成功。可自行修改dsdt加入DualLink试试。
   雪豹 Snow Leopard 10.6.8 驱动方法

新方法:免改ATIFramebuffer,VGA可用,DVD退出,PPT不可拨,国际象棋依旧死机。
旧方法:要改ATIFramebuffer,VGA可用,DVD可用,PPT可播放,国际象棋依旧死机。

新方法 安装:
一、全部使用Lion原始的kext,不用任何修改 http://dl.dbank.com/c0f3hgjco8
  ATI4600Controller.kext (加入ID)
  ATIFramebuffer.kext
  ATISupport.kext
  ATIRadeonX2000.kext (确认有ID)
  ATIRadeonX2000GA.plugin
  ATIRadeonX2000GLDriver.bundle
  ATIRadeonX2000VADriver.bundle

二、只要将4330的ID ( 0x95521002 ) 加入到ATI4600Controller.kext的Info.plist。
  (复制/S/L/E/ATI4600Controller.kext到桌面)ATI4600Controller.kext/Contents/Info.plist
    <key>IOPCIMatch</key>
    <string>0x95521002 0x94881002</string>

  须确认ATIRadeonX2000.kext/Contents/Info.plist有原生ID的支持。
    <key>IOPCIMatch</key>
    <string>0x95521002 0x95531002 0x94801002</string>

  自己手动修改显示名称ATI4600Controller.kext/Contents/MacOS/ATI4600Controller(修改两处)
  

三、显卡识别(三选一 即可)采用Lion及10.6.8没有的Peregrine,会自动采用ATYRadeonFramebuffer。

 1. 采用直接安装修改过的变色龙boot pkg安装包即可。(修改内容过于复杂,不说明了)
  <key>GraphicsEnabler</key>
  <string>Yes</string>
  适用笔记本ATI 4xxx系列移动版显卡,支持FaceTime, iCloud, 10.8修改版 wowpc.iso使用方法
  
  

 2. 采用dsdt 识别驱动,请用boot驱动后,取附件按下面教程(六、dsdt 内容)进行。
  

 3. 安装ATY_Init.kext。安装EE或SLE皆可。
  4330m为0x10029552
  
  以下皆为0x10029553
  
  
  
  
  以下为0x10029480
  

四、直接使用Kext Wizard安装kext,及修复权限、重建cache、mkext等,即可重新开机开启QE/CI。
  还无法驱动的,将myfix复制到/usr/sbin/myfix后,终端执行 myfix 键入密码选磁盘修复即可。
  
  
完全不用改kext的ATIFramebuffer,以下内文可以完全忽略不看了

旧方法:适用笔记本ATI 4xxx系列移动版显卡,支持FaceTime, iCloud, 10.8修改版 
  

Q/A:绝情奶牛 提供设置 Photoshop 绿色的问题的解决方法(497F)。

更新:系统更新10.7.2发生黑屏的,一样可以用10.7.2的所有ATI kext驱动,但是要注意几件事
   1.加入EDID
   2.改用10.6.7的3个PCI kext文件替换10.7.2
   3.一定要用Kext Wizard安装kext,及修复权限、重建cache、mkext等。
   4.开机可能会要用 -f 进入。

   我的4330m用10.7.2的ATI4600Controller.kext去改,很稳定咧~~

更新:Lion及10.6.6(MBP 2011),10.6.7(MBP 2011), 10.6.8,请改用Shrike修改ATI4600Controller.kext
   Retail 10.6.3 update 10.6.6 (10.6.7),请改用Shrike修改ATIFramebuffer.kext
   10.6.8 及 10.7.x 的Framebuffer如附件。请按ATIxx00Controller分类取用。
   

已知成功及Q/A看 原帖5楼千万不要问我,你的显卡行不行驱动,因为我也不知道。

以下说明修改方法 (最好是10.6.6已经开启QE/CI了)
附注:为让同一个dsdt.aml可以在10.6.7及Lion下共用,本文统一使用Shrike为Framebuffer作修改
   包含iDSDT生成的及自制的dsdt.aml、trunk boot、ATIFramebuffer(10.6.7)、ATI4600Controller(10.7)

参照:发图庆祝ATI Mobility HD 4330 终于开QE/CI 及ATIFramebuffer修改解说
一、提取显卡rom及接口资料
二、使用RadeonHD.kext取显卡接口资料
三、修改ATI4600Controller的framebuffer参数
四、将4330的ID加入到ATI4600Controller.kext的Info.plist
五、安装4330m(0x95521002)专用Mac版变色龙trunk boot
六、利用iDSDT生成dsdt,并修改dsdt识别显卡
七、内置显示器考虑是否再加入EDID试试看

主要内容部分修改,如以下方式
一、操作参照上面(4330 开QE/CI 及ATIFramebuffer修改解说)之同段内容操作

二、操作参照上面(4330 开QE/CI 及ATIFramebuffer修改解说)之同段内容操作

三、在Mac用HexEdit软件修改10.7的ATI4600Controller的framebuffer参数,4xxx系列固定以Shrike为主。
  (复制/S/L/E/ATI4600Controller.kext到桌面)ATI4600Controller.kext/Contents/MacOS/ATI4600Controller
 1.调整Acer 4810TZG参数为一排数字
  02 00 00 00 40 00 00 00 09 01 00 00 12 00 00 07LVDS
  10 00 00 00 10 00 00 00 00 01 00 00 00 10 01 01VGA
  00 08 00 00 00 02 00 00 00 01 00 00 10 01 02 02HDMI(无第三接口的,请随意引用,并设置port 02)
  改为一排数字
02 00 00 00 40 00 00 00 09 01 00 00 12 00 00 07 10 00 00 00 10 00 00 00 00 01 00 00 00 10 01 01 00 08 00 00 00 02 00 00 00 01 00 00 10 01 02 02
 2.调整原始Shrike参数为一排数字(参考附件Birds_FB.rtf)
  02 00 00 00 40 00 00 00 09 01 00 00 02 01 00 03
  02 00 00 00 00 01 00 00 09 01 00 00 20 01 02 02
  00 04 00 00 04 03 00 00 00 01 00 00 10 00 01 01
  改为一排数字
02 00 00 00 40 00 00 00 09 01 00 00 02 01 00 03 02 00 00 00 00 01 00 00 09 01 00 00 20 01 02 02 00 04 00 00 04 03 00 00 00 01 00 00 10 00 01 01
 3.利用HexEdit软件(附件)替换Shrike参数(一排数字)为Acer 4810TZG的参数(一排数字),共两处,第一个是
  x86_64用 ,第二个是i386用。
  

四、将4330的ID ( 0x95521002 ) 加入到ATI4600Controller.kext的Info.plist。
  (复制/S/L/E/ATI4600Controller.kext到桌面)ATI4600Controller.kext/Contents/Info.plist
            <key>IOPCIMatch</key>
            <string>0x95521002 0x94881002</string>
  直接使用Kext Wizard 安装kext,及修复权限、重建cache、mkext等。

  

  全部ATI的10.7.GM的kext驱动下载 ATI.kexts.10.7.GM(2011.6.24).zip
  http://dl.dbank.com/c0f3hgjco8

  全部使用原版文件如下
  修改ATI4600Controller.kext
  原始ATIFramebuffer.kext
  原始ATIRadeonX2000.kext
  原始ATIRadeonX2000GA.plugin
  原始ATIRadeonX2000GLDriver.bundle
  原始ATIRadeonX2000VADriver.bundle
  原始ATISupport.kext

  须确认ATIRadeonX2000.kext/Contents/Info.plist有加入ID的支持。
  <key>IOPCIMatch</key>
  <string>0x95521002 0x95531002 0x94801002</string>
  其他ATI显卡请自行判断使用ATIRadeonX1000/2000/3000.kext及ATI3x00/4x00/5000Controller.kext。

五、安装Mac版变色龙Rev 780 (安装方法不在本文讨论),附件4330 (0x10029552) 专用的pkg安装boot即可,
  直接在/Extra/com.apple.Boot.plist内容加入下面设置即可。(附件下载已编译4330m_Shrike_pkg安装)
      <key>GraphicsEnabler</key>
      <string>Yes</string>
 想自行编译trunk boot的,请自行按以下步骤编译即可 。
 1.想自行编译trunk boot的,可在Mac下载源码。( 2 选 1 )
  a. 780版之前(版本一)
    终端$    svn co -r 780 http://forge.voodooprojects.org/svn/chameleon/trunk/
  b. 最新版(版本二)
    终端$    svn co http://forge.voodooprojects.org/svn/chameleon/trunk/
 2.安装/Mac OS X Install DVD/Optional Installs.localized/Xcode.mpkg (以10.6.x 为例)
    ( Rev 881版 起,才可在 Lion 用 Xcode 4.2 Lion专用版 编译boot )
 3.修改加入trunk/i386/libsaio/ati.c 如下,有两种不同版本(只会遇到一种)

  版本一:
      第一段
      { 0x10029552,"ATI Mobility Radeon HD 4330"},
      第二段
      { 0x10029552,"Shrike"},
  版本二:
{ 0x9552, 0x00000000, CHIP_FAMILY_RV710, "ATI Mobility Radeon HD 4330", kShrike },

  终端执行$   cd trunk      进入trunk文件夹(内有Makefile)
  终端trunk$   make    编译得到trunk/sym/i386/boot引导开机文件。  
  替换Mac硬盘 / 的boot即可。

顺利的话,重新开机后,就可以用 Shrike boot 来识别显卡开启 QE/CI 特效了。

 如果想用dsdt.aml识别驱动显卡的话,请继续按下面教程进行修改。

 4.成功识别显卡后,藉由IORegistryExplorer键入display后,取得资料,并修改格式如下,
                              "assigned-addresses",
                              Buffer (0x50)
                              {
                                    /* 0000 */    0x10, 0x00, 0x01, 0xC2, 0x00, 0x00, 0x00, 0x00,
                                    /* 0008 */    0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00,
                                    /* 0010 */    0x00, 0x00, 0x00, 0x10, 0x14, 0x00, 0x01, 0x81,
                                    /* 0018 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00,
                                    /*      其余内容非常多,此处略过说明      */
                              },
  直接点击后,可编辑,再copy,可以用替换空白" "为", 0x"换成正确格式,很快。
  /* 0000 */ /* 0008 */...这些注解可以不用理它,它在生成dsdt.aml后,反绎时会自动出现。
  
六、利用 iDSDT 生成dsdt,并修改dsdt识别显卡
  (dsdt相关修改知识,请参阅紫米的DSDT修改讨论,不在本文讨论)
 1.利用 iDSDT (引入已正常使用中的dsdt.aml)及显卡rom,生成初步带有显卡的dsdt.aml。
  本处取得的显卡dsdt.aml(因为有bin_image,编译时间非常久),可以先测试是否可以正常开机
  (须暂时移除ATI**.**驱动kext)如可以正常开机,再进行4330显卡识别修改。
  在测试dsdt.aml时,/Extra/com.apple.Boot.plist内容要改为
      <key>GraphicsEnabler</key>
      <string>No</string>    才能用/Extra/dsdt.aml开机识别显卡
  取得以下dsdt内容,
                               "ATY,bin_image",
                              Buffer (0xF800)
                              {
                                    /* 0000 */    0x55, 0xAA, 0x7C, 0xE9, 0x21, 0x02, 0x00, 0x00,
                                    /* 0008 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                                    /* 0010 */    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                                    /* 0018 */    0xD4, 0x01, 0x00, 0x00, 0x00, 0x00, 0x49, 0x42,
                                    /*      其余内容非常多,此处略过说明      */
                              },
 2.将附件dsdt-4330m.txt的内容,替换 iDSDT生成的dsdt.aml中的显卡dsdt内容。
  并修改以下内容后,完成dsdt识别显卡。
                              "model",
                              Buffer (0x1C)                  /* 0x1C=1x16+12=28=27字+1 */
                              {
                                    "ATI Mobility Radeon HD 4330"                        /* 27字 */
                              },
                              "VRAM,totalsize",
                              Buffer (0x04)
                              {
                                    0x00, 0x00, 0x00, 0x20   /* 0x10=256MB, 0x20=512MB, 0x40=1024MB */
                              },
                              "assigned-addresses",
                              Buffer (0x50)                  /* 0x50=5x16+0=80=80个字串 0x10 */
                              {
                                    /* 0000 */    0x10, 0x00, 0x01, 0xC2, 0x00, 0x00, 0x00, 0x00,
                                    /* ****** 本处内容请自行替换修改 ****** */
                              },
                              "ATY,bin_image",
                              Buffer (0xF800)               /* 0xF800=直接取用iDSDT的资料 */
                              {
                                    /* 0000 */    0x55, 0xAA, 0x7C, 0xE9, 0x21, 0x02, 0x00, 0x00,
                                    /* ****** 本处内容请自行替换修改 ****** */
                                 }
 3.测试方法及顺序,全部使用Shrike。
  a.在10.7下,使用Shrike的trunk boot及ATI4600Controller,确认ATI4600Controller正常且可开启QE/CI。
  b.在10.7下,使用Shrike的dsdt.aml及ATI4600Controller,确认ATI4600Controller正常且可开启QE/CI。

顺利的话,重新开机后,就可以改用 dsdt 来识别显卡开启 QE/CI 特效了。

七、因为使用 Shrike boot 及 dsdt.aml 的方法都会发生,睡眠重启屏幕变成花屏的问题
经过 Nezzdivya 及 seanhut 的努力,可以藉由 ATY_Init.kext 来识别显卡,解决花屏的问题,9553 貌似也可以解决 16 位色的问题,不过我的 9552 ATI4330m 还是 16 位色。

ATY_Init.kext 的使用方法:(只是识别显卡用,还是要修改ATI4600Controller.kext为Shrike)
1.将 /Extra/com.apple.Boot.plist 内容改为
      <key>GraphicsEnabler</key>[
      <string>No</string>
2.将 dsdt.aml 的显卡内容删掉。
3.用 Kext Wizard 把 ATY_Init.kext 安装到 /Extra/Extensions 或 /System/Library/Extensions 即可。有必要的话,再用 Kext Wizard 修复权限、重建cache、mkext等。

9552 修改方法如下:这边借用 seanhut 的 ATY_Init.kext.ForATI HD545V.zip,
1.把 ATY_Init.kext/Contents/Info.plist 中 ATI Radeon 4600 Series 的 model 改为 ATI Mobility Radeon HD 4330 。
2.用 HexEdit 软件修改 ATY_Init.kext/Contents/MacOS/ATY_Init ,先把原来的 9552 改为没用的 9551 ,再把 9553 改为 9552 ,就可以解决 4330m 的花屏了。

附上几个 9552 + 9553 + 9480 的 Shrike 修改版本。


4330m为0x10029552

以下皆为0x10029553




以下为0x10029480


顺利的话,重新开机后,就可以改用 ATY_Init.kext 来识别显卡开启 QE/CI 特效了。

八、内置显示器考虑是否再加入EDID试试看。其余操作,参照(4330 开QE/CI 及ATIFramebuffer修改解说)之内容操作

以下附件dsdt-4330m.txt是以变色龙r780 boot的ati.c取得后,导入dsdt.aml,内容以4xxx系列及Shrike为主,如有不符需求,请自行修改内容。



以下皆为0x10029553,也可使用Windows版变色龙:wowpc.iso使用方法




以下为0x10029480

   以下 ID 适用本文附件r780 Shrike boot识别显卡,未验证是否完全适用开启QE/CI,请自行测试。
   { 0x10029490,"ATI Radeon 4670 Series"},
   { 0x10029498,"ATI Radeon 4650 Series"},
   { 0x10029490,"ATI Radeon 4600 Series"},
   { 0x10029498,"ATI Radeon 4600 Series"},
   { 0x1002949E,"ATI Radeon 4600 Series"},
   { 0x10029480,"ATI Radeon 4600 Series"},
   { 0x10029488,"ATI Radeon 4600 Series"},
   { 0x10029540,"ATI Radeon 4500 Series"},
   { 0x10029541,"ATI Radeon 4500 Series"},
   { 0x1002954E,"ATI Radeon 4500 Series"},
   { 0x10029552,"ATI Mobility Radeon HD 4330"},
   { 0x10029553,"ATI Radeon 4500 Mobility Series"},
   { 0x1002954F,"ATI Radeon 4300 Series"} ,
   { 0x100294B3,"ATI Radeon 4770 Series"} ,
   { 0x100294B5,"ATI Radeon 4770 Series"} ,

Expose 取消勾选 将Dashboard显示为空间 (才有水波纹效果)

水波纹效果,一且正常。

已经不是绿苹果了

display显示不是显示器,而是机子一台,还挺怪的。

ATI kexts全部加载成功

色彩一切正常

睡眠唤醒之后色彩全变了,那就永不睡眠吧!(已可改用 ATY_Init.kext 修正)

goodfull 发表于 2011-4-4 20:34

不错~~,我也是 设定永远不睡眠的,台式机嘛,无所谓!{:5_284:}
dock 图标那么小,点击困难啊{:5_288:}

crazybirdy 发表于 2011-4-4 20:42

回复 goodfull 的帖子

dock会自动变大的,你可以设定的. 鼠标过去自动变大..

catkids 发表于 2011-4-4 21:25

唤醒后真恐怖 = =

话说我同学的545v开了QE/CI后也出现颜色不正常(看起来像16位的,不是32位真彩),不知道和什么有关。。

crazybirdy 发表于 2011-4-4 21:53

回复 catkids 的帖子

是很恐怖,不过至少不睡眠,是可以正常使用的,也不是绿苹果
SL下,绿苹果貌似有些不完全驱动,不知道确切的原因了,暂时还是只能凑合著用了,哈哈~

idream 发表于 2011-4-4 23:05

追求无止境

djbasse 发表于 2011-4-5 14:42

crazybirdy 发表于 2011-4-4 20:09 static/image/common/back.gif
分享一下..

因为不能用变色龙boot,所以,改用dsdt让ATI Mobility 4330 在Lion 11A419下..开了QE/CI


不知道可以帮我改下不?这是dsdt 加机子配置

是用这两个驱动的   ATI4600Controller.kext 没办法上传啊?大于200kb 死是定了

crazybirdy 发表于 2011-4-5 14:45

1.没办法,这个要用iDSDT+rom才能改,其中iDSDT要在自己的机子才能改
2.利用iDSDT生成dsdt.aml后,还要再修改,有点复杂
如果你想自己动手改,我可以告诉你怎么改,但是无法帮你改的

梵天 发表于 2011-4-5 18:33

用 在10.6上可能就可以解决绿苹果的问题了吧
还有颜色正常不

crazybirdy 发表于 2011-4-5 18:38

回复 梵天 的帖子

在10.6只用下面几个10.7的kext,其他ATIRadeonX2000***,用了就无法QE
ATI4600Controller.kext
ATIFramebuffer.kext
ATISupport.kext

但是10.6.6用10.7的三个kext还是绿苹果....看来还是升级10.7好了,就叫NB别睡了
你有空可以试试看,验证一下

chenhengjie123 发表于 2011-4-5 20:26

好复杂…………
还是等黑苹果把

crazybirdy 发表于 2011-4-5 20:31

本帖最后由 crazybirdy 于 2011-4-5 20:39 编辑

等黑苹果????
这不就是....黑苹果

tam1234 发表于 2011-4-5 21:18

追求无止境{:5_288:}

bigslowfat 发表于 2011-4-5 21:32

1.10.7的kext能不能拿到10.6下面用以解决绿苹果的问题?
2.反过来呢(10.6's on 10.7)?

crazybirdy 发表于 2011-4-5 21:42

回复 bigslowfat 的帖子

10楼有提到,10.7的kext无法解决绿苹果
10.6的kext放在10.7,我记得是不能用,忘了结果是怎样

梵天 发表于 2011-4-7 11:37

没有水波纹吗??
那还是不行啊

crazybirdy 发表于 2011-4-18 20:34

回复 梵天 的帖子

同一个dsdt.aml在10.6.7及Lion下,水波纹效果一切正常
   (Expose 取消勾选 将Dashboard显示为空间)

梵天 发表于 2011-4-19 11:17

我很关心颜色过渡正常不
希望楼主可以
说明一下
谢谢

crazybirdy 发表于 2011-4-19 11:38

回复 梵天 的帖子

我看起来是正常,不知你有啥图片可以检查看看?
可能因为不是绿苹果的关系吧

绿苹果的,貌似RGB会有问题

youminbuluo 发表于 2011-4-19 12:42

这个对台式有效么
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: ATI Mobility 4330在Lion开了QE/CI 直接用boot或dsdt或ATY_Init,免改ATIFramebuffer