ROM作成-その2

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

◆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にしています。