TennisGeek Posted June 5, 2010 Share Posted June 5, 2010 OpenHaltRestart は、 Control-Alt-Delete をまねすることでリスタートしています。 新しい OSXRestart.kext は ACPI でリスタートしています。 その結果は、Chameleon の中に反映されているので、 自分で Chameleon をコンパイルするか、新しいバージョンをまてばリスタートが動くようになるかもしれません。 "RestartFix" http://www.insanelymac.com/forum/index.php?showtopic=199048 また、チップセットによるのですが、シャットダウンはサウスブリッジのレジスタに値を書き込むことで可能になります。 DSDT をパッチするのですが、 OperationRegion (PMRS, SystemIO, 0x1030, One) Field (PMRS, ByteAcc, NoLock, Preserve) { , 4, SLPE, 1 } でレジスターを定義しておいて Method (_PTS, 1, NotSerialized) { If (LEqual (Arg0, 0x05)) { Store (Zero, SLPE) Sleep (0x10) } } _PTS メソッド中で書き込みます。 http://www.insanelymac.com/forum/index.php...90780&st=80 私の友人の dlach がラップトップにポートしたもので、最初は Gigabyte のボードで ICH7 などで使われたテクニックですが、 dlach によると、違うサウスブリッジでも同じようなものなので、アドレスの違いはあるものの動くはずだということです。 アドレスの違いについては、サウスブリッジがわかっていれば、スペックシートから割り出せるということです。 つまり、機種によっては 0x1030 の部分さえかえれば、 Intel サウスブリッジのマシンでは、シャットダウンが可能になるはずです。 というわけで、両方をクリアすると OpenHaltRestart.kext も不要になります。 ちなみにわたしは OSXRestart.kext を使っています。 -- TG Link to comment Share on other sites More sharing options...
Dreamwatcher Posted June 6, 2010 Share Posted June 6, 2010 有用な情報ありがとうございます。 RestartFix_v2.1.zipからソースを持ってきてChameleon2.0RC4-r684のパッチを作成して適用してみました。 結果、INTELのサウスブリッジ(P55)ではreboot, shutdownともにOKでしたが、NVIDAのMCP79(GeForce 9300M, ION)ではshutdownはできるものの、rebootは効きませんでした。 <key>Kernel Flags</key> <string>RestartFix=YES</string> OSXRestart.kextの説明でNVIDIA Chipesetは動かないかもと制限事項があったので、Chameleonで同様にDSDTを修正している場合も同じ制限があるようです。 Chameleon_2.0_RC4_r684_RestartFix.diff.zip Chameleon_2.0_RC4_r684_boot_RestartFix.zip Link to comment Share on other sites More sharing options...
Recommended Posts