超詳細!Windows Moile完整ROM製作教學

今天要跟大家介紹的是Windows Mobile系統的ROM KITCHEN,為什麼網路上要常稱為KITCHEN呢?那是因為一個完整的ROM是由各個物件組合而成的!就像一道菜,是由各種不同材料調配膾炙而成! 所以才漸漸的開始有KITEHEN的稱呼出現,這樣解說大家應該都了解了吧!

今天要進行的這份教學也許難度有點高兒,不過學到了就是你的了!切記切記 ...因為以後要換你煮一手好菜囉!這次教學是以xda上的Ervius Visual Kitchen為主,而Ervius Visual Kitchen的核心則是名人Bepe寫的 !所以在教學之前,我們必須先搞懂bepe寫的核心構造,詳細請看下面:

特性:
- 支援各種HTC的裝置,但其實似乎也支援Eten / Asus等機型
- 簡單的XIP Porting,XIP簡單來說是系統的核心程式
- 從前我們在Cook ROM時,必須一個物件配上一組rgu機碼,但現在bepe的已經不用這麼麻煩了
- bepe的程式碼是原生C++所寫的,所以速度會比較快
- 新的Kitchen把常用程式放在EXT資料夾,會比較好配置及管理
- 支援在同一個Kitchen建立多種語言以及版本的ROM,這個應該還用不到,基本上一次可以COOK一個ROM就很了不起
- 現在XIP也改為採用封裝的方式了

EXT資料夾的結構(重要):(這裡的結構可於build_rom.bat指定,而若使用Visual Kitchen則有自己的自訂方式)

* .\我的EXT資料夾\
這部分名稱由你自訂
* .\我的EXT資料夾\files\
在files裡面的檔案,全部都會被build到ROM裡面去
* .\我的EXT資料夾\app.reg
REG檔一定要取微app.reg,格式可以是Unicode或ANSI,這個檔案就是從前的rgu檔,只是名稱改為reg
* .\我的EXT資料夾\app.dat
同app.reg的敘述,app.dat是程式的安裝路徑,這個檔案也是從前的initflashfiles.dat
* 最後app.reg & app.dat會被整合到.hv裡…,因而不會在系統裡留下許多rgu檔,加上其於ext資料夾不使用DSM,而也使得其被dump出來後無法以一般kitchen還原。

接下來大家看到0404沒,0404就是語言(繁體)代號,我們在build時,可以設定要製作何種語言的ROM!所以如果你在一個EXT的封裝裡面看到 0404或0409同時存在,它只會build你設定的資料夾,這個0404的結構跟EXT一樣,只是它是選擇性的
* .\我的EXT資料夾\0404\files\
* .\我的EXT資料夾\0404\app.reg
* .\我的EXT資料夾\0404\app.dat


+ rgu就是被app.reg取代了
+ 副檔名DSM可以直接刪掉,因為bepe的kitchen不需要了(從前是用來指示這個資料夾內包含的資訊)
+ 如果不知道如何把舊的OEM Package轉成EXT,BEPE也有提供一個工具給你轉換 (OEM2EXT)

Skip 檔:
skip檔是個非常重要的東西, 你可以把它放在 SYS, OEM, EXT packages各資料夾下,他的功能就是一旦你把skip檔放在其目錄下,bepe的程式便不會把內容cook進去ROM裡面,所以要切記!

Skip 檔做法:開一個純文字文件直接存檔…選擇顯示副檔名,把整個名稱改為_skip_xxxx,xxxx指得是你的版本名稱,參照build_rom.bat裡
set BUILD=xxxx
改掉副檔名後,它就不是純文字文件了…若還可以直接用筆記本開啟,表示你沒改到

影片教學:-使用OEM2EXT工具 http://www.bepe80.com/test/4

下載:- OEM2EXT工具 http://www.bepe80.com/preb/OEM2EXT.rar

========================================================================
上述教學看完後,有沒有頭暈暈的? 沒的話繼續 ......

一個以bepe Kitchen為結構的ROM主要會包含下列各個部分,以下會簡單的介紹一下

---Kitchen
|
----OEM
|
----SYS
|
|
----ROM
| |
| ---XIP
|
----Tools


1.OEM資料夾:主要是一些放置ROM的驅動程式及系預設程式檔案置放的地方,不懂最好不要亂動

2.SYS資料夾:主要是放置系統預設程式的地方,例如IE,MSN,OFFICE之類的,這裡有些東西是可以刪除的

3.ROM資料夾:這裡是放置XIP(核心)的地方,不懂也別動,除非你要替換核心

4.EXT資料夾:這裡是放置一些HTC的預設程式的地方,也是我們最常換料理的地方,請注意各OEM Package的相容性

5.Tools資料夾:這個不用去在意他,裡面放的是Kitchen程式需要運行的一些檔案

接下來是介紹Ervius Visual Kitchen的用法,為什麼會以Ervius為主呢?
因為它是一個核心採用bepe Kitchen的圖形化UI,簡化了你使用bepe的Kitchen時,會看到一堆DOS Command的指令

首先,我們去下載Evius Visual Kitchen v9.8 最新版 http://www.sendspace.com/file/kfl7qr
解壓縮後,我們會看到下圖的資料夾


點擊ErviusKitchen.exe,接下來你會看到如下圖所示的錯誤訊息!別擔心這是因為程式本身偵測不到資料夾內有任何關於ROM的東西所顯示的錯誤訊息。




接下來按完確定後,會出現整個Ervius Visual Kitchen的面貌



請熟記上圖各區的功能,因為一開始我們沒有Source,所以請隨便去找一款官方已經開放下載的ROM來當練習材料(例如我是用Touch Pro最新版的ROMCODE)


=======================================================================

,首先我們先下載官方的ROMCODE並用Winrar或7zip進行解壓縮,會得到下圖資料,在這裡我們只需要 RUU_Signed.nbh,接著把它取出來放到ervius visual Kitchen的目錄下,在上圖橘色框框的地方點擊DUMP,將官方的ROM分解出來

接下來DUMP出來後進入XXXXX_DUMP資料夾,會出現下圖


====================================================================

不知道各位消化完沒?
說真的看懂上面那些小弟當初也是花了兩個晚上狂K再加上之後配合Kitchen的實際操作才了解,如果還沒的話,就先止步吧,有問題趕緊提出,小弟會耐心的幫忙回覆 (真有這麼佛?)

再看完上篇那枯燥無味的解說後,接下來要開始介紹如何實際Cook了 !

續上一篇,我們把nbh放進去Kitchen的目錄裡後,會dump出一個結構完整的新Kitchen,之後再其目錄一樣先點擊 ErviusKitchen.exe,就會出現一開始的畫面,因為Ervius Visual Kitchen是一個將dos command指令整理成讓人容易使用的UI程式,所以我們只需要在下圖選擇所要Cook的機種及相關資訊即可




1.首先我們先看DEVICE的地方,因為我們Kitchen裡面的資料只有Raphael (就是Touch Pro),所以我們要選擇RAPHAEL

2.選擇Language (語言檔),0404為繁體中文,一但選了0404,到時候在build時只要不是0404資料夾下的檔案全都會被跳過,這就是visual Kitchen的好用處
3.DEVICE ID和OS id不用特意去調整,這部分Kitchen會幫你設定 !

4.EXT Build就是一開始dump出來時,如果官方的版號是20769,那此時Kitchen會以20764為預設目錄,把OEM Package放在這個地方

5.SYS 跟 XIP 同上,皆是以版號為預設目錄置放,到時候如果你想cook出不同版號的ROM,只要把選擇想搭配成份的即可

6.ROM RES基本上就是DUMP出來的640x480,如果不打算更換核心的話也不用去變動,因為這裡基本上改版內容也不會變動到(除非像 6.1 跳到 6.5,就有需要去了解內容有哪些更改)

在選擇完以上資訊後,你的Kitchen會出現如下圖所示



* Inculded:只要在此用滑鼠點兩下,就可以選擇要不要build此package
* Lang / DPI / DPI Lang / RES / RES Lang 基本上我是不會去看的,這裡是提示你此Package下還有哪些跟OS有關的資料夾
* Comment:這個功能真的好用!因為Cook一款ROM必須注意到各種OEM Package的搭配性,所以這裡可以填上你的心得,以免下去又發生同樣的情況。

接下來我們可以看到上圖兩個紅框處,一個是TACHI,一個是TF3D2,這個是Kitchen為了方便你歸類所設計的功能,只要你在 EXT \ Raphael \ 20764 \ 下 加上自己的命名的資料夾( 如下圖 ),重新Load之後 Kitchen就會顯示出來該資料夾下的Package囉! ( 如下圖 )


綜合以上,選擇好要cook的材料,接下來按下Build,過一陣子就會Cook出一到美味的佳餚啦!


接下來介紹一個好用的功能:Ervius Visual Kitchen提供的 Editon 功能


如上圖:我們只要選擇欲編輯的附檔內容後,或者選擇ALL也可,點擊Show Editor,就會出現下圖的畫面




當此畫面出現時,紅框處只要輸入內文的資料,程式就會自動幫我們找出內文有相關字串的檔案 !! ( 超 強 ),而在橘框處則是可以幫我們搜尋到相關檔名,只要你cook時出現問題,建議可以先來這裡找一下是不是有些值已經被其他地方的程式蓋到了 !
因為當我們在build時,kitchen會把所有的檔案都丟到同一個目錄下,所以常會有overwrite的現象。

好啦! Kitchen的教學就到此為止了 ~ 學到這邊只要用點心,你就可以把原廠ROM惡搞成精簡版了! 酷 ~~ 這才是愛Sogi的精神呀!


補充教學:

A.Touch Pro硬開機方法(手機所有資料恢復出廠狀態,慎用,用前記得備份連絡人之類東東)
1、開始/設置/系統/清除記憶體,輸入密碼1234。
2、或者按住左側音量減小鍵和方向鍵的中鍵不放,插PP(軟啟),直至畫面出現才放開那兩個鍵,然後按畫面提示進行操作(音量增加鍵硬啟、其餘鍵退出)

B.Touch Pro進入工程模式方法
* 按住左側音量減小鍵不放,插PP(軟啟),直至畫面出現才放開那兩個鍵

C.看ROM版本方法
* 以最新版5.07.709.5,5.07是驅動,709是地區代碼,5是版本號。因此,看你的Rom版本是否為最新,看後面的就知道了。千萬別被什麼707、709、405、502、783等等所迷惑。

D.驅動和核心的簡單說明
* 驅動你可以看做是電腦上的顯卡、主機板驅動,新的理論是會提高速度及修正BUG的
* 核心你可以看成電腦上的XP、VISTA的補丁號,理論上也是有提升及修正BUG的,不過目前官方正式版ROM核心最高是20769 AKU1.4,這個核心很穩定,速度也不錯。當然新核心在沒正式官方ROM出來都屬於測試版,雖然速度理論上會快一點點,但同時也有可能帶來不穩定及 BUG,不過同時也會帶來新的特性(比如大功能表和提醒增強就要AKU 1.6以上的版本才能完美運行),喜歡嘗鮮的可以試試。




有機會再教各位如何替換 XIP 及 SYS ~~ 下回見



本文主要討論集中於此,請儘量勿回於此版面,以免分散資源

太感謝了~~!!
加分先

Lord.Lucius wrote:
超詳細!Win...(恕刪)
綿羊頭~~~咩~~~~
不囉唆 5分送上

馬上收藏起來!!
很詳盡 感謝
先謝謝大大, 另外請問大大可以開一個教程教如何把一個英文ROM轉換成中文ROM嗎?因為手頭上有好多很好的英文ROM
Say what you need to say
老實說 看得真的有點頭暈暈的
因為看到字很多....
不過好文還是要推的啦
哪天應該會用大大的方法
Cook 自己想要的ROM
這麼好的文章,不用多說,直接送上5分!!
您真是Mobile01難得的熱心人士~
Craig Shih E-mail:craig0934149319@gmail.com
Lord.Lucius大大真的很細心有耐性!清清楚楚的將ROM製作順序一步一步的講解,已經懂一辦了!等等再啃一次;謝謝分享與教學。
謝謝各位的鼓勵與支持,我也要感謝太極前輩寫的一手好文帶我進入Kitchen的世界裡
希望大家能一起玩樂智慧型手機 ^^;

我剛剛要下載
Evius Visual Kitchen v9.8 最新版
http://www.sendspace.com/file/kfl7qr

已經出現檔案不存在~

請問還有其他載點嗎??

先謝了~

用google可以找到更新的版本,快去google吧
希望大家能一起玩樂智慧型手機 ^^;
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!