How to Build a Hackintosh ?

之前非常多的同事在更換電腦時,就換了 Mac Book Pro ,另外我也看到了一篇文章說在討論「為什麼我用Mac」。所以我非常的好奇, MAC OS X到底有什麼魔力可以讓這些人讚不絕口。在前些日子裡,我就有聽說在 pc 上其實是可以裝 MAC 的,但最主要的問題還是硬體支援的問題。所以下面我列出我所使用的硬體,而CPU、主機板、和顯示卡為三個最重要的要素,如果你的這三個硬體有 MAC OS X 支援的話,在安裝上就沒有太大的問題了。

第一步:準備硬體
我所使用的硬體如下:

第二步:準備軟體
所需要的軟體如下:

並且把 iboot 燒錄成 CD 等等要拿他來作為開機使用。

第三步:設定 bios
依照「How to Install Mac OS X on a PC (Without Using a Mac)」這篇所示所需更改的 bios 選項如下:

  • 把 cdrom 改為第一個開機選項。
  • 進入 Integrated Peripherals 選單,把 PCH SATA Control Mode 和 Onboard SATA/IDE Ctrl Mode 都改為 ACHI 。
  • 接著進入 Power Management Setup 選單,把 HPET Mode 調成 64-bit 模式。

第四步:安裝 MAC OS X
將剛剛燒好的 iboot 光碟放入光碟機中,然後先利用他作為光碟開機。看到 iboot-supported 畫面出現後,把 iboot 光碟拿出來,放入原板 Snow leopard DVD 進去,接著等三到五秒,然後按 F5 。你就會看到安裝的選項跑出來了。其他的安裝方式其實就下一步一直按而已,沒有很難。安裝後第一次開機,請記得使用 iboot 片來作為開機片,否則會出現錯誤。

第五步:安裝 boot loader & drivers
如果你的硬體跟我一樣,哪其他的步驟就照著我所說的選擇就好了,如果不一樣,可能就要上 「OSx86 Project」找看看別人怎麼選驅動程式。

  • 下載 MultiBeast
  • 下載 DSDT for the Gigabyte GA-H55M-USB3,然後改名為 DSDT.aml 並且放置於桌面上,等等開啟 multi beast 時才會自動抓到。
  • 開啟 mult beast ,並且選擇下列這些選項:
    • UserDSDT
    • System Utilities
    • Advanced Options > Kexts > Audio > LegacyHDA > ALC889
    • Advanced Options > Kexts > Graphics > NVEnabler
    • Advanced Options > Kexts > Network > RealtekR1000SL
    • Advanced Options > Patched Kernels > 10.3.1 Supported Kernel

    安裝完後,重新開啟,你就可以快快樂樂開開心心的使用黑金塔了!!

    在剛開始不習慣使用 MAC 的情況下,很多的思維可能不一樣,想找個偏好設定都找不太到,現在越來越順手了,以後再分享一些心得出來。

    參考網址:

growl for YUI

最近在練習使用 YUI ,剛好想到一個感覺滿炫的主題,就是作 growl style 的 notice 。主要的畫面是參考 Gritter: Growl Notification by jQuery 的畫面,然後再使用 YUI 來實作。

實作方式就是包一個 div 後再把 overlay 塞進去,讓他作 FADE 的顯示和消失,他就會漸漸的出現和漸漸的消失,比我想像中的還簡單。

使用方法如下,首先記得把下列所需的的 js 引入:

    <script type="text/javascript" src="http://yui.yahooapis.com/2.8.0r4/build/yuiloader/yuiloader-min.js"></script>
    <script type="text/javascript" src="http://yui.yahooapis.com/2.8.0r4/build/dom/dom-min.js"></script>
    <script type="text/javascript" src="http://yui.yahooapis.com/2.8.0r4/build/event/event-min.js"></script>
    <script type="text/javascript" src="http://yui.yahooapis.com/2.8.0r4/build/animation/animation-min.js"></script>
    <script type="text/javascript" src="http://yui.yahooapis.com/2.8.0r4/build/container/container-min.js"></script>

然後下載 yui-growl.tar.gz ,並且解開後,並且引用 yui-growl.js。

    <script type="text/javascript" src="js/yui-growl.js"></script>

在 <body> 之後加入:

<div id="notify"></div>

接著加入下列 css style 和 gritter.png 這個圖片,放置於 css 可以讀取到的地方。

 * html #notify {position:absolute; }
 #notify{position:fixed;right:0px;color:#fff;}
 .message{display:block;position:static;width:280px;visibility:hidden;margin:10px;}
 .message div.hd {height:10px;background:url("gritter.png") repeat-x scroll 0 -30px transparent}
 .message div.hd span {padding:10px 0 ;}
 .message div.bd {background:url("gritter.png") repeat-x scroll 0 -60px transparent}
 .message div.ft {height:10px;background:url("gritter.png") repeat-x scroll 0 -300px transparent}
 .message div.ft span {padding:10px 0 ;}

可以用下列的使用方法來使用:

// message : 顯示的訊息
// seconds : 保持顯示的秒數
Widget.growl(message,seconds);

像我的範例裡就是放置在 Click 事件裡面:

<input type="text" id="text">
<button value="" onclick="Widget.growl(YAHOO.util.Dom.get('text').value+ '<br/>'+Math.random(),2);" />Click me</button>

按下按鈕後,就會彈出訊息給使用者知道了。

可以在此看到 demo & source code

MUD eXtension Protocol

MUD eXtension Protocol (MXP) ,是由 Zugg Software維護,它可以利用特別的 Tag 讓 client 顯示時別的畫楮,來讓 Server 與 Client 之間互相通溝。所以玩家即可利用滑鼠進行遊戲操作,可大量降低使用者進入 Mud 的門檻。

Server 部份:

要啟動 MXP 除了 Client 要支援之外, Server 在送出資料時分為三種 Mode ,所以我們在送出資料前,要先送出這些資料是什麼模式,模式送錯,就只會顯示原始內容 。

  1. Open mode – 代號 1:
    這是預設的模式,在此模式下可以使用一般合法的 tag ,幾個常用的 Tag 如下:

    <bold> or <b>
    <underline> or <u>
    <italic> or <i>
    <color> or <c>
    <font>
    <strike> or <s>
    <strong>
    <small>
    <tt>
    
  2. Secure mode – 代號 2 :
    這個模式可以使用特別的 command 來與 client 端互動,例如:east,他就會出現有底線的 east ,使用者只要點 east ,就會自動往東走。其他相關的資訊請參考 Secure Tag
  3. Locked mode – 代號 3 :
    這是原始碼模式,這個部份將不會特別處理,直接顯示。
  4. 其餘模式請參考:MXP modes – secure, open and locked 這篇文章。

Client 部份:

目前支援 mxp 的 Client 只有 MUSHClientZmud 6.5 板以上,其他的 Client 並不支援。

目前狂想空間已經啟用了部份 mxp 的支援,例如在 npc 上點右鍵,可以得到 kill/fight/look 之類的動作。如果點到 item 上面,會有 get/drop 之類的動作。

你現在開啟 zmud 6.5 板以上,連到 fs.twkang.net 5555 ,並且在登入後,打「set mxp」這個指令,即可以開始享用用滑鼠玩 Mud 的樂趣了。

有圖有真像:zmud

Let’s Kill IE6 plugin for wordpress

How To Use :

  1. You can download from lets_kill_ie6.phps
  2. Rename lets_kill_ie6.phps to lets_kill_ie6.php.
  3. Put lets_kill_ie6.php to wordpress plugin directory.
  4. Active it , and enjoy it.

我在網路上看到由 mg12 所提供消滅建議昇級 IE6 的 javascript ,覺得非常的美觀和有趣。身為 web Developer ,對於萬惡的 IE 6 非常的痛恨是很正常的,尤於要花費非常多的心力來支援它,所以大家快點幫忙把 IE6 消滅吧。

所以為了讓 wordpress 非常方便的可以使用該功能,我就作了一個 wordpress plugin 來協助啟用他,才不用更動每一個 template 。下面介紹如何安裝這個 plugin :

  1. 下載 lets_kill_ie6.phps
  2. 把檔名改為 lets_kill_ie6.php.
  3. 將他放在 wordpress / wordpress mu 的 plugin 目錄下。
  4. 啟用他,你就可以看到效果了。

啟用後畫面如下:
sample