Hatena::ブログ(Diary)

英国○○○じぃ

NICQUE Freeware
 NICQUE Freeware

2006-01-06

[] ROM作成-補足 22:27

C:\Uni_ROMにオリジナルのROMアップデートファイルからコピーしたRUU.DLLはカレントにRUU.confが無いと動作しませんでした。RUU.DLLと一緒にRUU.confをC:\Uni_ROMにコピーした上で、MaUpgradeUt_noID.exeを実行してください。


また、レジストリーの情報は最初はいろいろと調整が必要になるかもしれませんので以下のみをROMに焼き直しました。最終的な調整が完了したら再度ROMに焼き直そうと思います。

◆DEFAULT.HV用
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SystemLink]
  "Tahoma"="\\windows\\msgothic.ac3,MS UI Gothic"
  "Courier New"="\\windows\\msgothic.ac3,MS UI Gothic"
  "MS UI Gothic"="\\windows\\tahoma.ttf,Tahoma"
  "MS Gothic"="\\windows\\tahoma.ttf,Tahoma"
  "MS PGothic"="\\windows\\tahoma.ttf,Tahoma"

◆USER.HV用
[HKEY_CURRENT_USER\keyboard layout\Preload]
  @="e0010411"

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

上記のレジストリーのみを追加した場合、コントロールパネルでATOKの設定が行えません。またNotesやIE日本語の入力が出来ないなどの不都合が発生します。


いろいろとレジストリーの調整をして試行錯誤していますが、まだうまくいっていません。ROMにはレジストリーは全く含めない形で、PC上でテキストファイルを作成してTREなどのレジストリエディターでインポートして自分なりの環境を決めるまでテストした方が良さそうです。自分にマッチしたレジストリーが出来たら再度ROM焼きする方向で・・・ (^^ゞ

現在の問題点はオプションなどのダイアログでフォントがデフォルト状態ではなくチェックボックスの□が||のように切れていることです。

[] ROM作成-その3 22:16

レジストリーファイルの準備が出来たので、デフォルトのHVファイル差し替えを行い、最終的なカスタムROMの作成を行います。

◆HVファイル差し替え

1)DOS窓でdelfile.exe DEFAULT.HVを実行します。

C:\Uni_ROM>delfile.exe DEFAULT.HV
Deleted

2)DOS窓でaddfile.exe DEFAULT.HVを実行します。

C:\Uni_ROM>addfile.exe DEFAULT.HV
Total Sectors: 3ffc0
Used Sectors : 14d4d
Free Sectors : 2b273

同様にUSER.HVも差し替えを行います。


イメージファイルの変換

1)make_imgfs.exeの実行

C:\Uni_ROM>make_imgfs.exe nk.fat -nosplit
Searching for IMGFS start... Found at 00610000
Fixing... Done!


◆ROMアップデートファイルの変換

1)HTC64 Extended ROM Tool.exeを実行

2)Encodeボタンを実行

3)Project fileでnk.prjを選択

4)Next->ボタンを実行

5)Encodeボタンを実行(変更無し)

  「Overwrite existing ROM file?」の確認が出る場合があります。元のNK.NBFが別途保存してある場合は無視して上書きします。

  「FAT16 file is too large Continue at your own risk」というエラーが表示されますが無視してOKを押します。

完了

NK.NBF(ROMアップデート用ファイル)が作成されているはずです、ファイルスタンプが現在の時刻に変わっていると思います。


◆ROMのアップデート

1)MaUpgradeUt_noID.exeを実行してROMのアップデートを行います。

これでカスタムROMが焼けていると思いますが、起動しないなどのトラブルもありえます。その場合は、最初から手順を確認してみてください。特にRGUファイル編集によって手順や作業内容が誤っている場合は注意が必要です。今回は最低限のファイルとレジストリの追加・修正のみでしたが、応用によってはもっと幅が広がると思います。リスクはつきものですのでくれぐれもご利用にはご注意下さい。(Own your riskです。)

[] ROM作成-その2 21:48

今回はレジストリーの準備です。

◆viewimgfs.exeの実行(ROMイメージのDUMP)

1)DOS窓でviewimgfs.exe imgfs_raw_data.binを実行します。

C:\Uni_ROM>viewimgfs.exe imgfs_raw_data.bin
画面に大量の情報が表示されます。

dump

フォルダーがC:\Uni_ROMに作成されます。


◆HVファイルコピー(レジストリーファイルの取得)

1)dumpフォルダーにあるDEFAULT.HVとUSER.HVをC:\Uni_ROMにコピーします。


◆HVファイルテキスト形式に変換(HV→RGU形式)

1)DOS窓で環境変数をセットする。

C:\Uni_ROM>set _FLATRELEASEDIR=C:\Uni_ROM

2)HV→RGU変換

C:\Uni_ROM>rgucomp -o DEFAULT.HV -nologo > DEFAULT.RGU
C:\Uni_ROM>rgucomp -o USER.HV    -nologo > USER.RGU

下記のエラーがRGUファイルに書き込まれていたら環境変数_FLATRELEASEDIRの設定に誤りがあります。再設定の必要があります。

wmain: (RGUComp) !ERROR the _FLATRELEASEDIR environment variable is not set


◆RGUファイル編集(レジストリ情報の編集

1)テキストエディターでDEFAULT.RGUを開く。

2)追加したいレジストリ情報を書き込む。

3)BOOT.RGUと言うファイル名で保存する。

4)RGUCOMP -bを実行

C:\Uni_ROM>rgucomp -b
Microsoft (R) RGUComp Version 1.0.000
Registry file processor and hive builder.
Copyright (C) 2004 Microsoft Corporation All Rights Reserved.
built: Nov 19 2004 15:17:13
importing registry file "c:\uni_rom\boot.rgu"...
(RGUComp) done!

BOOT.HVが作成されます。

5)BOOT.HVをDEFAULT.HVにリネーム

USER.RGUも1)〜5)の手順を繰り返す。(DEFAULT.*はUSER.*と読み替える)


以下はAsukal師範からの教えによるRGUファイル修正の注意点です

注意
*最初のレジストリとREGEDIT4の間は行間を入れない。
例:
REGEDIT4
[HKEY_CURRENT_USER\keyboard layout\Preload]
  @="e0010411"
[HKEY_CURRENT_USER\keyboard layout\Preload\1]
  @="e0010411"

*各レジストリヘッダーは左端に寄せる。
*そのヘッダーの下のエントリーは英数モードで頭にスペース二つ分の空白を置く
例:
[HKEY_LOCAL_MACHINE\nls]
  "DefaultLCID"=dword:00000411
  "DefaultACP"=dword:000003a4
  "DefaultOCP"=dword:000003a4
  "SystemLCID"=dword:00000411
  "LegacyLocaleMode"=dword:00000001

*フォントレジストリ等は \マークを二つ置く
例:
○ \\windows\\MSGothic.ac3\\MSGothic
×  \windows\MSGothic.ac3\MSGothic

*最後の行の下に空白一行を必ず置く

エラーがでた場合は上記の注意事項を再度確認



これでROMに差し替えるためのレジストリーファイルDEFAULT.HVとUSER.HVファイルの準備が完了しました。下記は私が利用した内容です。

◆DEFAULT.HV用
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SystemLink]
  "Tahoma"="\\windows\\msgothic.ac3,MS UI Gothic"
  "Courier New"="\\windows\\msgothic.ac3,MS UI Gothic"
  "MS UI Gothic"="\\windows\\tahoma.ttf,Tahoma"
  "MS Gothic"="\\windows\\tahoma.ttf,Tahoma"
  "MS PGothic"="\\windows\\tahoma.ttf,Tahoma"

[HKEY_LOCAL_MACHINE\nls]
  "LegacyLocaleMode"=dword:1
  "DefaultLCID"=dword:411
  "SystemLCID"=dword:411  *)またはdword:409
  "DefaultOCP"=dword:3a4
  "DefaultACP"=dword:3a4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\International]
  "LCID"=dword:411
  "ACP"=dword:3a4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SkipTable]
  "Courier New"="005c"
  "Tahoma"="005c, 00a5, 007e, 0391-03c9, 2026, 2116, 221a, 25a0-25ff"


◆USER.HV用
[HKEY_CURRENT_USER\keyboard layout\Preload]
  @="e0010411"

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

[HKEY_LOCAL_MACHINE\nls]

"SystemLCID"=dword:411  *)またはdword:409

411:NotesやIEでの日本語入力の問題が解決されますが、画面に表示されるフォントが細く縦長になります。

409:表示はデフォルトフォントの状態ですが、NotesやIE日本語入力が出来ないなどの不都合が発生します。

当方ではPQzの開発の為に画面のレイアウトがデフォルトの状態が好ましいので409にしています。

[] ROM作成-その1 11:58

まずはOSのイメージファイルを簡単に編集してみます。下準備で用意したファイルはC:\Uni_ROMと言うフォルダーに移動して作業することにします。

◆HTC64 Extended ROM Tool.exeの実行

1)Decodeボタンを押します。

2)Extended ROM fileでC:\Uni_ROM\NB.NKFを選択後、Next->ボタンを実行

3)詳細情報の表示画面でDecodeボタンを実行します。(デフォルトの状態)

C:\Uni_ROM\NK.PRJ

C:\Uni_ROM\NK.FAT

2つのファイルが作成されます。


◆prepare_imgfs.exeの実行

1)DOS窓を開きます。

2)DOS窓でCD C:\Uni_ROMを実行してディレクトリーを移動します。

3)prepare_imgfs.exe NK.FAT -nosplitを実行します。

C:\Uni_ROM>prepare_imgfs.exe nk.fat -nosplit
Searching for IMGFS start... Found at 00610000
Dumping... Done!

imgfs_raw_data.bin

imgfs_removed_data.bin

2つのファイルが作成されます。


◆NLSの差し替え

1)DOS窓でdelfile.exe wince.nlsを実行します。(WINCE.NLSの削除)

C:\Uni_ROM>delfile.exe wince.nls
Deleted

2)DOS窓でaddfile.exe wince.nlsを実行します。(WINCE.NLSの追加)

C:\Uni_ROM>addfile.exe wince.nls
Total Sectors: 3ffc0
Used Sectors : 14d4d
Free Sectors : 2b273


◆フォント(MSGOTHIC.AC3)の追加

1)DOS窓でaddfile.exe MSGOTHIC.AC3を実行します。

C:\Uni_ROM>addfile msgothic.ac3
Total Sectors: 3ffc0
Used Sectors : 168fa
Free Sectors : 296c6


◆ATOKのファイルを追加(ATOK*.* 12ファイル

上記と同様の手順でATOKのファイルを全て追加します。

手入力が面倒な場合

addfile ATOKIMM.DLL

addfile ATOKP.CPL

addfile ATOKP.DIC

addfile ATOKPCE.DLL

addfile ATOKPFI.DIC

addfile ATOKPRE.DAT

addfile ATOKPSIP.DLL

addfile ATOKPTE.EXE

addfile ATOKPTKJ.DIC

addfile ATOKPTMP.DAT

addfile ATOKPUT.EXE

addfile ATOKPW.DLL

これをコピペして、ATOK.BATに保存後

C:\Uni_ROM>ATOK.BATを実行すると自動でファイルを追加してくれます。

これまでの作業でカスタムROMの日本語ロケールを含んだNLSとフォント、ATOKの準備が出来ました。次回はレジストリー情報の作成です。ちなみにこれらの作業手順はAsukal師範の教えに従ったものです。

[] カスタムOS ROMの下準備 09:42

カスタムROMを作成するのに必要なツールやデータなどの準備をします。

◆Mamaich ROM Editer + Mamaich registry tool

imgfs_tools.rar 104.5KB + make_hv.rar 54.22KB

ROMイメージ編集ツール + レジストリー編集ツール


◆Bal666 Converter nbf

HTC64_Extended_ROM_Tool_v1.1.zip 41.59KB

NBF変換ツール


◆MaUpgradeUt_noID.exe

XDA-DevelopersのFTPからダウンロード


下記のファイルは別途準備が必要です。

◆OSイメージファイル(NK.NBF)HTC Universalのアップデータに含まれている

◆WINCE.NLS(日本語ロケールを含むもの)

◆FONT(MSGOTHIC.AC3)または任意のフォント

◆Atok(PPC2003用)日本語の入力機能をROM内に含まない場合は不要


下準備でそろえるファイル一覧

これらをROMに焼いてしまえば、ハードリセットの後すぐに日本語の表示や入力が可能になります。

maitomomaitomo 2006/01/06 10:04 昨日、UniversalのROMの書き換えに初挑戦しました。Asukalさんとこの腫れちゃう物を使わせていただいたのですが、今度は自分のカスタムROMを作れるように勉強します。じぃちゃんのエントリが、とても解りやすいので助かっています。

itokoichiitokoichi 2006/01/06 16:00 おひさです。PQzをW-ZERO3で使わせていただきました。ありがとうございます。

GzhGzh 2006/01/07 10:07 maitomoさん>どもども、Uni用のツールが結構使いやすいので簡単にロム焼きができて助かりますね。
itokoichiさん>おめでとうございます。日本ではW-ZERO3でにぎわっているようで楽しそうですね〜

tt-beartt-bear 2006/01/10 16:56 フェーン。何が原因かわかりませんがdumpファイルの中にDEFAULT.HVとUSER.HVが生成されません。(TT)
なんか手順が悪いのでしょうか・・・。

tt-beartt-bear 2006/01/10 22:14 解決しました。
理由は「保護されたオペレーティングシステムファイルを表示しない」
のチェックが付いていたことでした。
すみんません。いつもながら素人で、お手数おかけしました。

GzhGzh 2006/01/10 22:27 予想外の展開でありゃ〜〜と言う感じですが、何はともあれ無事に展開出来たご様子でなによりでありました。(^^ゞ

tt-beaertt-beaer 2006/01/11 02:11 申し訳ございません!!お手数をおかけいたしました。
いや、Windowsは使い始めて半年で、、、などと言い訳しても所詮ドシロウトとお笑いくださいませ。

tt-beartt-bear 2006/01/13 16:06 お手数おかけしました。無事完成しました。
ありがとうございました。

easyboyeasyboy 2006/01/15 16:06 こんにちは。以前にPQzにコメントさせてもらったものです。
このプログを参考にしながらUniversalのROMの書き換えに初挑戦中です。WINCE.NLSの追加でSectorsの数値が、じぃ様の数値と違うのですが、NLSの数値は同じでなければならないのでしょうか?