※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

【必要なもの】
ベースとするHERMES用WM6のROM
NBHExtract
aChef ROM Utils
mamaich IMGFS tools
NBH Generator
rgucomp
Custom RUU Updater
UTF16が扱えるエディタ
wince.nls
msgothic.ac3

aChef Rom Utilsを動かすのにJavaが必要なのでJREを入れておく。

【ファイルの追加/削除】
ベースとなるROMのRUU_Signed.nbhを取り出す。
コマンドプロンプトからNBHExtractを実行して、RUU_Signed.nbhを分解する。

 C:\work>nbhextract RUU_Signed.nbh
 === NBHextract v1.0
 === Extract contents from HTC NBH files
 === (c)2007 xda-developers.com
 === by: pof & TheBlasphemer based on itsme perl scripts
 
 Device:   HERM100
 CID:      SuperCID
 Version:  ROMBaker
 Language: XDADevelopers
 Extracting: 00_OS.nb
 
 C:\work>

00_OS.nbというファイルが出来ているので、これをaChef ROM Utilsを使って
imgfs_raw_data.binというファイルに変換する。

 C:\work>java -jar aChef.jar -1 00_OS.nb
 aChef Version 0.2.1
 ===================
 By ahlok_hk
 ===================
 Generate IMGFS...
 ..................
 done!

以後のファイル操作はimgfs_raw_data.binに対して行う。

まず、標準で入ってるwince.nlsはいらないので削除する。
そして、こっちで用意したwince.nlsとmsgothic.ac3を追加する。

 C:\work>DelFile.exe wince.nls
 Deleted
 
 C:\work>AddFile.exe wince.nls
 Total Sectors: 3ffc0
 Used Sectors : 19c2f
 Free Sectors : 26391
 
 C:\work>AddFile.exe msgothic.ac3
 Total Sectors: 3ffc0
 Used Sectors : 1b7e0
 Free Sectors : 247e0

【レジストリの改変】

imgfs_raw_data.binの内容をdumpする。

 C:\work>viewimgfs imgfs_raw_data.bin
 (略)

dumpディレクトリができ、そこにファイルがdumpされる。
dumpディレクトリ内にdefault.hvとuser.hvがあるので、それを編集できるように変換する。

 C:\work>rgucomp.exe -nologo -o dump\default.hv > default.rgu
 
 C:\work>rgucomp.exe -nologo -o dump\user.hv > user.rgu

default.rguとuser.rguにレジストリの内容がかかれているのを確認する。

UTF16が扱えるエディタでdefault.rguを開き、1行目にREGEDIT4と書く。
ファイルの末尾に以下の内容を追記する。

 [HKEY_LOCAL_MACHINE\nls]
   "LegacyLocaleMode"=dword:00000001
   "DefaultLCID"=dword:00000411
   "DefaultACP"=dword:000003a4
   "DefaultOCP"=dword:000003a4
   "SystemLCID"=dword:00000411
 
 [HKEY_LOCAL_MACHINE\Software\Microsoft\FontLink\SystemLink]
   "MS PGothic"="\\windows\\tahoma.ttf,Tahoma"
   "MS Gothic"="\\windows\\tahoma.ttf,Tahoma"
   "MS UI Gothic"="\\windows\\tahoma.ttf,Tahoma"
   "Courier New"="\\windows\\msgothic.ac3,MS UI Gothic"
   "Tahoma"="\\windows\\msgothic.ac3,MS UI Gothic"
 
 [HKEY_LOCAL_MACHINE\Software\Microsoft\FontLink\SkipTable]
   "Tahoma"="005c,00a5,007e,0391-03c9,2026,2116,221a,25a0-25ff"
   "Courier New"="005c"
 
 [HKEY_LOCAL_MACHINE\Software\Microsoft\International]
   "ACP"=dword:000003a4
   "LCID"=dword:00000411
 
 [HKEY_LOCAL_MACHINE\Software\OEM\Qwerty]
   "Layout"=dword:00030411
 
 [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Layouts\e0010411]
   "Keyboard Layout"="00000411"

同様にuser.rguを開き、1行目にREGEDIT4と書き、下記を末尾に追記する。

 [HKEY_CURRENT_USER\keyboard layout\Preload]
   @="e0010411"
 
 [HKEY_CURRENT_USER\keyboard layout\Preload\1]
   @="e0010411"

編集したdefault.rguとuser.rguをhvに変換する。

 C:\work>copy /Y default.rgu boot.rgu
 C:\work>rgucomp -b
 C:\work>copy /Y boot.hv default.hv

 C:\work>copy /Y user.rgu boot.rgu
 C:\work>rgucomp -b
 C:\work>copy /Y boot.hv user.hv

できあがったdefault.hvとuser.hvをimgfs_raw_data.binのデータと差し替える。

 C:\work>delfile default.hv
 C:\work>addfile default.hv
 C:\work>delfile user.hv
 C:\work>addfile user.hv

【ROMイメージの作成】

imgfs_raw_data.binをnb形式へ変換する。

 C:\work>java -jar aChef.jar -2 00_OS.nb
 aChef Version 0.2.1
 ===================
 By ahlok_hk
 ===================
 Import IMGFS...
 .............................done!

NBH Generatorを使用して00_OS.nbをNBH形式へと変換する為に、適当なファイル名で下記の内容のテキストを作る。

 ----------custom.txt----------
 HERM100
 SuperCID
 ROMBaker
 XDADevelopers
 400,00_OS.nb
 ----------custom.txt----------

NBH Generatorを使用して、NBH形式へと変換する。

 C:\work>nbhgen.exe custom.txt
 NBH Generator ver0.1 by bot
 
 00_OS.nb
 Completed.

RUU_signed.nbhができあがるのでCustom RUU Updaterを使用してX01HTに焼き込む。